MCU采用GD32,GD32基本上和STM32一样,针对ad5761r的时序操作是完全相同的.软、硬件设计已经再产品设计中实际使用。
本文章提供参考硬件设计,以及对应的源代码,具体可以作为实际项目的参考设计
AD5761R是一款单通道、16位串行输入、电压输出DAC。该器件采用单电源电压(4.75 V至30 V)或双电源电压(−16.5 V至0 V (VSS)和+4.75 V至+16.5 V (VDD))供电。标称满量程输出范围为软件或硬件可选。内置输出放大器、基准电压缓冲器以及上电/断电控制电路提供易于使用的通用解决方案。
硬件设计
原理图设计如下
与MCU管脚连接如下表所示
MCU管脚 | AD5761管脚 | 备注 |
PE2 | SDO |
|
PE3 | ALERT |
|
PE4 | CLEAR |
|
PE5 | RESET |
|
PI4 | SCLK |
|
PI5 | SYNC |
|
PI6 | SDI |
|
PI7 | LDAC |
|
查AD5761R手册参考操作时序图如下所示
操作寄存器命令表如下
工程代码下载地址如下:
(1条消息) Ad5761rGD32STM32驱动设计-嵌入式文档类资源-CSDN文库
代码使用keil v5.18
采用GD32F2系列芯片
代码解读
驱动程序在AD公司提供例程上修改得到,AD公司提供的驱动程序是针对linux的,不过也可以修改为针对MCU的。
初始化函数
针对ad5761r的一些宏,如下图所示