本代码实测稳定,基于altera quartus 平台。ad采样频率500K,分辨率16bit 外接4.0924M晶振。本代码只配置了通道1转换,稍作修改可以双通道同时转换。
2022-11-08 09:53:41 9.53MB ad7705 驱动程序 FPGA Verilog
1
STM32单片机读写2通道带PGA16位ADC-AD7705软件例程源码,可以做为你的学习设计参考。 int main(void) { uint16_t adc1, adc2; /* 由于ST固件库的启动文件已经执行了CPU系统时钟的初始化,所以不必再次重复配置系统时钟。 启动文件配置了CPU主时钟频率、内部Flash访问速度和可选的外部SRAM FSMC初始化。 系统时钟缺省配置为72MHz,如果需要更改,可以修改: \Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\system_stm32f10x.c 中配置系统时钟的宏。 */ bsp_Init(); PrintfLogo(); /* 打印例程Logo到串口1 */ bsp_InitTM7705(); /* 初始化配置TM7705 */ if (g_TM7705_OK == 0) { printf("未检测到 AD7705\r\n"); } else { printf("已检测到 AD7705\r\n"); TM7705_CalibSelf(1); /* 自校准。执行时间较长,约180ms */ adc1 = TM7705_ReadAdc(1); TM7705_CalibSelf(2); /* 自校准。执行时间较长,约180ms */ adc2 = TM7705_ReadAdc(2); } while (1) { bsp_Idle(); /* 空闲时执行的函数,比如喂狗. 在bsp.c中 */ TM7705_Scan2(); /* 扫描两个个ADC通道, 无等待的 */ { /* 读取扫描结果 (结果定时读取即可) */ adc1 = TM7705_GetAdc1(); adc2 = TM7705_GetAdc2(); /* 打印采集数据 */ { int volt1, volt2; /* 计算实际电压值(近似估算的),如需准确,请进行校准 */ volt1 = (adc1 * 5000) / 65535; volt2 = (adc2 * 5000) / 65535; printf("CH1=%5d (%5dmV) CH2=%5d (%5dmV)\r", adc1, volt1, adc2, volt2); } } } }
本文给出16位自校正AD芯片AD7705驱动源码,感兴趣的朋友可以看看。
2021-07-30 17:51:58 66KB 自校正 AD芯片 AD7705 源码
1
16位ADC AD7705 STM8S208CT6单片机demo程序源码工程文件+AD7705技术资料,可以做为你的设计参考。
AD7705双路16位ADC STC89C52单片机测试DEMO程序源码工程文件+AD7705技术资料
C51下的AD7705驱动程序,sst89e58单片机,附带max7219驱动程序,很稳定!C51下的AD7705驱动程序,sst89e58单片机,附带max7219驱动程序,很稳定!
2019-12-21 19:28:43 34KB 驱动
1