|**银杏科技有限公司旗下技术文档发布平台** |||| |技术支持电话|**0379-69926675-801** ||| |技术支持邮件|Gingko@vip.163.com ||| ^ 版本 ^ 日期 ^ 作者 ^ 修改内容 ^ | V1.0 | 2020-11-14 | gingko | 初次建立 | \\ \\ ===== 实验十一:DAC实验——输出直流电压===== ==== 一、实验目的与意义 ==== - 了解GD32 DAC结构 - 了解GD32 DAC特征 - 了解 DAC特征和应用领域 - 掌握 GD32固件库中DAC属性的配置方法 - 掌握KEIL MDK集成开发环境使用方法 ==== 二、实验设备及平台 ==== - iCore3L 双核心板 - JLINK(或相同功能)仿真器 - Micro USB线缆 - Keil MDK 开发平台 -装有WIN XP(及更高版本)系统的计算机 ==== 三、实验原理 ==== **GD32 DAC简介** * GD32的数字/模拟转换器可以将 12 位的数字数据转换为外部引脚上的电压输出。数据可以采用 8 位或12 位模式,左对齐或右对齐模式。当使能了外部触发,DMA 可被用于更新数字数据。在输出电压时,可以利用 DAC 输出缓冲区来获得更高的驱动能力。两个DAC可以独立或并发工作。 **DAC主要特征** * 8 位或 12 位分辨率,数据左对齐或右对齐; * DMA 功能并带有下溢错误检测; * 同步更新转换; * 外部事件触发转换; * 可配置的内部缓冲区; * 输入参考电压 VREF+; * 噪声波发生器(LSFR 噪声模式和三角噪声模式); * 双 DAC 并发模式。 * DAC结构框图如图所示: {{ :icore3l:arm_11_1.jpg?400 |}} **DAC数模转换** * 如果使能外部触发(通过设置DAC_CTL寄存器的DTENx位),当已经选择的触发事件发生,DAC保持数据(DACx_DH)会被转移到DAC数据输出寄存器(DACx_DO)。否则,在外部触发没有使能的情况下,DAC保持数据(DACx_DH)会被自动转移到DAC数据输出寄存器(DACx_DO)。 * 当DAC保持数据(DACx_DH)加载到DACx_DO寄存器时,经过tSETTLING时间之后,模拟输出变得有效,tSETTLING 的值与电源电压和模拟输出负载有关,具体时序如图所示。 {{ :icore3l:arm_11_2.jpg?400 |}} * 本实验基于GD32使PA4端口处输出特定的电压值为例,硬件连接示意图如下图所示: {{ :icore3l:arm_11_3.jpg?400 |}} ====四、实验步骤==== - 把仿真器与iCore3L的SWD调试口相连(直接相连或者通过转接器相连); - 把iCore3L通过Micro USB线与计算机相连,为iCore3L供电; - 打开Keil MDK 开发环境,并打开本实验工程; - 烧写程序到iCore3L上; - 也可以进入Debug 模式,单步运行或设置断点验证程序逻辑。 ====五、实验现象==== 用万用表直流档测量 PA4端口直流电压值,其结果如图所示,输出电压为1.979V,基本接近2.00V。 {{ :icore3l:arm_11_4.jpg?200 |}}