static void dac_value_set(uint16_t vol) { uint16_t dac_reg_value; dac_reg_value = vol*4096.0/3300; #if defined (GD32F10X_HD)||(GD32F20X_CL)||(GD32F30X_HD)||(GD32F4XX)||(GD32E10X) dac_data_set(DAC0,DAC_ALIGN_12B_R,dac_reg_value); #elif defined (GD32F350) dac_d...
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_software_trigger_enable(); 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/...
DAC,顾名思义是数字量转换为模拟量,一般用于指定模拟量电平的稳定持续输出。STM32的DAC输出的是0-3.3V的电压。STM32的DAC精度为12位也就是0-4095,意思就是你通过对付给DAC对应寄存器0-4095,对应输出0-3.3V电压。例如你设定为0,那么引脚输出就是稳定的0,设定为4095就是稳定的3.3。也可以设定...
dac_data_set(DAC0, DAC_ALIGN_12B_R, 0); } DAC的噪声波 有两种方式可以将噪声波加载到 DAC 输出数据:LFSR 噪声波和三角波。 具体参见初始化中的配置项。 三角波的波形如下所示: LFSR噪声波的波形如下所示: DAC波形发生器 如何通过DAC产生任意频率的周期性波形?
1)Data FDMemTable2.Data=FDMemTable1.Data;FDQuery.Open('select * from tt');FDMemTable2.Data=FDQuery.Data;FDMemTable2是全部记录,有3条记录。 FDMemTable1.Delete();后的记录不在Data里。 2)CopyDataSet 带结构拷贝 FDMemTable2.CopyDataSet(FDMemTable1,[TFDCopyDataSetOptions])// TFDCopyDataSe...
* 函数名: DAC8562_SetDacDataDMA* 功能说明: DAC8562数据发送,DMA方式* 形 参: _ch 1表示通道1输出* 2表示通道2输出* 3表示通道1和2都输出* 4表示通道1和2都输出,并且附加一个控制命令,有效防止传输错误时恢复。* _pbufch1 通道1数据缓冲地址* _pbufch2 通道2数据缓冲地址* _sizech1 通道1数据大小*...
* 函数名: DAC8562_SetDacData * 功能说明: 设置DAC输出,并立即更新。 * 形 参: _ch, 通道, 0 , 1 * _data : 数据 * 返回值: 无 *** */ void DAC8562_SetDacData(uint8_t _ch, uint16_t _dac) { if (_ch == 0) { /* Write to DAC-A input register and update DAC-A; */ DA...
DAC_SetChannel1Data(DAC_Align_12b_R, 0); //12位右对齐数据格式设置DAC值 } //设置通道1输出电压 //vol:0~3300,代表0~3.3V void Dac1_Set_Vol(u16 vol) { float temp=vol; temp/=1000; temp=temp*4096/3.3; DAC_SetChannel1Data(DAC_Align_12b_R,temp);//12位右对齐数据格式设置DAC值 ...
* 函数名: DAC8501_SetDacData * 功能说明: 设置DAC数据 * 形 参: _ch, 通道, * _data : 数据 * 返回值: 无 *** */ void DAC8501_SetDacData(uint8_t _ch, uint16_t _dac) { uint32_t data; /* DAC8501.pdf page 12 有24bit定义 DB24:18 = xxxxx 保留 DB17: ...