基于LED显示的DA输出驱动实例
时间:04-15 14:06 阅读:2069次
*温馨提示:点击图片可以放大观看高清大图
简介: DA芯片DAC5571的控制使用了标准模式,它的接口是大家耳熟能详的IIC接口,关于IIC通信的基本接口时序这里不详细介绍,大家可以参考DAC5571的datasheet。
1 DA芯片概述
如图所示,FPGA作为IIC总线的主机,若要控制芯片DAC5571完成一次转换,则一共需要传输三个字节的数据。首字节内容是从机地址(SLAVE ADDRESS)和读或写指示位(R\W#);第二个字节的高4bit是控制数据,低4bit是有效数据的高4bit;第三个字节的高4bit是有效数据的低4bit,第三个字节的低4bit无效。
2 功能简介
首先需要使用跳线帽连接好SF-SP6开发板上插座P9的PIN1和PIN2(默认已经连接好)。这样,我们的DA芯片DAC5571的模拟电压输出就直接作为D14指示灯的正端,它的电压值决定了D14指示灯的亮暗与否。
该实例工程的功能框图如图所示。
3 模块划分
本实例模块划分如图所示。
● Dac_dbgene.v模块连续递增的DAC数据。
● Dac_controller.v模块实现DAC5571芯片的IIC接口协议,不断写入新的DA转换数据。
4 板级调试
连接好下载线,给SP6开发板供电。
打开ISE,进入iMPACT下载界面,将本实例工程下的sp6.bit文件烧录到FPGA中在线运行。
此时我们可以观察到SF-SP6开发板上的D14指示灯不断的由暗变亮,然后熄灭,然后再由暗变亮,如此循环往复。
我们若用示波器测量D14指示灯的正负两端,则可以看到如图所示的波形,这正是我们输出的给DAC的数据递增值。