基于stm32f4系列单片机,ad7606的8通道16位的同步ADC例程。
2022-09-25 18:55:58 7.18MB AD7606 STM32F4
1
STM32F429单片机读写(8通道16位同步ADC)AD7606 spi模式软件工程源码, void Demo_spi_AD7606(void) { uint8_t cmd; /* 由于ST固件库的启动文件已经执行了CPU系统时钟的初始化,所以不必再次重复配置系统时钟。 启动文件配置了CPU主时钟频率、内部Flash访问速度和可选的外部SRAM FSMC初始化。 */ g_tAD7606.Range = 1; /* 10V */ bsp_spi_InitAD7606(); /* 配置AD7606所用的GPIO */ bsp_StartAutoTimer(0, 500); /* 启动1个500ms的自动重装的定时器 */ DispMenu(); /* 显示操作菜单 */ while (1) { bsp_Idle(); /* 空闲时执行的函数,比如喂狗. 在bsp.c中 */ if (bsp_CheckTimer(0)) { /* 每隔500ms 进来一次. 由软件启动转换 */ AD7606_Scan(); /* 处理数据 */ AD7606_Mak(); /* 打印ADC采样结果 */ AD7606_Disp(); } if (comGetChar(COM1, &cmd)) /* 从串口读入一个字符(非阻塞方式) */ { switch (cmd) { case '1': if (g_tAD7606.Range == 0) { g_tAD7606.Range = 1; } else { g_tAD7606.Range = 0; } AD7606_SetInputRange(g_tAD7606.Range); break; default: DispMenu(); /* 无效命令,重新打印命令提示 */ break; } } } }
STM32单片机读写(8通道16位同步ADC)AD7606软件驱动例程源码,可做为你的学习设计参考。 本例程演示如何读取AD7606的采集数据。 K1键 : 切换量程(5V或10V) K2键 : 进入FIFO工作模式 K3键 : 进入软件定时采集模式 摇杆上下键 : 调节过采样参数 ----- 将模拟输入接地时,采样值是0左右; ----- 模拟输入端悬空时,采样值在 11600 左右浮动(这是正常的,这是AD7606内部输入电阻导致的浮动电压) AD7606底层驱动文件是 : bsp_ad7606.c 出厂的AD7606模块缺省是8080 并行接口。如果用SPI接口模式,需要修改 R1 R2电阻配置。 AD7606模块接到STM32F4的FSMC总线。 AD7606 的配置很简单,它没有内部寄存器。量程范围和过采样参数是通过外部IO控制的。 采样速率由MCU或DSP提供的脉冲频率控制。 配置CVA CVB 引脚为PWM输出模式,周期设置为需要的采样频率; ---> 之后MCU将产生周期非常稳定的AD转换信号 将BUSY口线设置为中断下降沿触发模式; 外部中断ISR程序 { 中断入口; 读取8个通道的采样结果保存到RAM; 中断返回; }