DAC输出设置,注意下这个函数的dat形参,是通过公式得到的公式为,电压值=dat*基准电压(我用的内部3.3v)/4096 dac_dat_set();//根据下图填写形参,例如 dac_data_set(DAC1,DAC_ALIGN_12B_R,csdn); 这样就可以随意配置出你想要的电压值 代码整合 voiddac_config(void){dac_deinit();/* configure the DAC0 *...
主函数如代码清单 DAC例程主函数所示,该主函数主要分成四部分,RCU时钟配置、GPIO配置、DAC外设配置和while(1)循环,前三部分已在前三小节介绍,在while(1)主循环中先设置一下DAC将要输出的模拟电压值,然后使能软件触发输出该模拟电压,延时一段时间后,再设置新的模拟电压值,如此循环。dac_value_set函数用于设...
dac_data_set(DAC0, DAC_ALIGN_12B_R,0); 第二个参数设置对齐方式,可以为 12 位右对齐DAC_ALIGN_12B_R, 12 位左对齐DAC_ALIGN_12B_L 以及 8 位右对齐 DAC_ALIGN_8B_R方式。 第三个参数就是 DAC 的输入值了,这个很好理解,初始化设置为 0。这里,还可以读出 DAC 的数值,函数是: ...
本小节讲解DAC_Example历程中DAC模块的配置说明,主要包括外设时钟配置、GPIO引脚配置、DAC外设配置、主函数介绍以及运行结果。本例程主要介绍GD32 MCU各系列DAC0模块输出模拟电压,有关DAC其他功能例程可参考各系列固件库例程。 外设时钟配置 外设时钟配置如代码清单DAC例程时钟配置所示,在GD32全系列MCU中需打开GPIOA和DAC...
gpio_mode_set(GPIOA, GPIO_MODE_ANALOG, GPIO_PUPD_NONE, GPIO_PIN_4); #endif } DAC 外设配置 DAC外设配置如代码清单 DAC例程DAC外设配置所示。GD32全系列MCU中DAC外设配置基本相同,在本例程中,配置DAC为软件触发,每当使能一次软件触发,DAC就会把DAC数据寄存器的值转换为模拟电压输出。
gpio_mode_set(GPIOA, GPIO_MODE_ANALOG, GPIO_PUPD_NONE, GPIO_PIN_4);#endif } DAC 外设配置 ...
该寄存器用来设置 DAC 输出,通过写入 12 位数据到该寄存器,就可以在 DAC 输出通道0得到我们所要的结果。 13.3 DAC应用代码实现 13.3.1 DAC普通方式输出 本章我们将使用库函数的方法来设置 DAC 模块的通道0来输出模拟电压,其详细设置步骤如下: 1)开启 PA 口时钟,设置 PA4为模拟输入。
主函数如代码清单 DAC例程主函数所示,该主函数主要分成四部分,RCU时钟配置、GPIO配置、DAC外设配置和while(1)循环,前三部分已在前三小节介绍,在while(1)主循环中先设置一下DAC将要输出的模拟电压值,然后使能软件触发输出该模拟电压,延时一段时间后,再设置新的模拟电压值,如此循环。dac_value_set函数用于设置模拟输...
dac_data_set(DAC_ALIGN_12B_R, value); } 接下来是锯齿波和方波的代码,这两个代码比较简单: void plot_triangle(uint32_t f, uint32_t delta_f) { /* 定时周期为T=1/delta_f, f=1/(pMax*T) */ static uint32_t point = 0; uint32_t pMAX = delta_f/f; ...
dac_data_set(DAC_ALIGN_12B_R, value); } 接下来是锯齿波和方波的代码,这两个代码比较简单: void plot_triangle(uint32_t f, uint32_t delta_f) { /*定时周期为T=1/delta_f, f=1/(pMax*T) */ static uint32_t point = 0; uint32_t pMAX = delta_f/f; ...