1. 基本参数
- ADC(Analog-to-Digital Converter,模数转换器):将模拟信号转换为数字信号
- DAC(Digital-to-Analog Converter,数模转换器):将数字信号转换为模拟信号
- ADC应用:传感器数据采集(温度、压力)、医疗设备(ECG信号数字化)、通信系统(射频信号解调)
- DAC应用:音频播放设备(CD播放器)、视频显示(数字信号转RGB模拟信号)、工业控制(数字指令转模拟驱动电压)




品牌:ADI 亚德诺
芯片型号:LTC1662
接口:SPI
分辨率:10位
价格:零售50,这个价格不美丽
2. 工作参数



3.测试
- 使用OUTB输出引脚测试
//DAC指令
#define DACMD_LoadDAC_B 0x0A
//DAC测试
void DAC_test(uint32_t voltage)
{
//输入的数字值
uint32_t adc_num = 0;
//分辨率10位,参考电压3.3V,
adc_num = (voltage * 1024) / 3300;
//更新到DAC芯片
DAC_UPdate(DACMD_LoadDAC_B, adc_num);
}
//DAC更新
void DAC_UPdate(uint16_t cmd, uint32_t num)
{
uint16_t spi_data = 0;
/* 将命令和数据按照DA通讯要求打包成一个16bit数据 */
spi_data = (((uint16_t)cmd) << 12) | ((num<< 2) & 0x0FFF);
/* 片选拉低 */
LL_GPIO_ResetOutputPin(IO_DA_CS_GPIO_Port, IO_DA_CS_Pin);
/* 传输数据 */
if ((HAL_SPI_Transmit(&hspi1, (uint8_t *)&spi_data, 1, 0xff) != HAL_OK))
{
Error_Handler();
}
/* 片选拉高 */
LL_GPIO_SetOutputPin(IO_DA_CS_GPIO_Port, IO_DA_CS_Pin);
}
//执行函数 输出500毫伏
DAC_test(500);
- 使用万用表测试输出电压500毫伏

- 结果正确
2278

被折叠的 条评论
为什么被折叠?



