图6-6 波形仿真时序图
图6-7 波形仿真时序图
图6-8 波形仿真时序图
2、CLK接时钟源,reset接按键开关,model0和model1接拨码开关,D[7..0]
分别接AD558的D[7..0],AD558的/CS、/CE接逻辑“0”电平。
将AD558上方的短路子跳到左侧的两个铜柱上,D/A输出点在D/A OUT,D/A OUT区域的6个接线孔是相通的。将示波器探头接在D/A OUT的输出接线孔,用示波器观察AD558的输出。
观察时请注意,model0~2模式内部对时钟信号分频较大,输出信号频率较低,而model3分频较低,输出信号频率相对较高。 3、将设计好的逻辑功能转为硬件描述语言的描写。 4、将设计好的硬件描述语言进行仿真。 5、将程序下载到CPLD中,验证结果是否正确。
五、实验报告要求
1、 整理实验结果,填写实验报告。 2、 小结实验心得体会。 3、 回答思考题
对D/A进行控制时应注意什么?
实验七 利用可编程逻辑器件进行A/D控制接口
的设计
一、实验目的
1、了解A/D的功能和A/D控制接口的设计方法 2、用VDHL语言设计控制A/D的接口电路
二、实验器材
1.台式计算机 1台
2. 可编程逻辑逻辑器件实验软件1套 3.下载电缆一套 4.示波器一台
三、实验说明
1.台式计算机用于向可编程逻辑逻辑器件实验软件提供编程、仿真、下载的平台,供用户使用。
2.可编程逻辑逻辑器件实验软件向原理图的设计和硬件描述语言的编程提供平台,并将调试好的程序下载到可编程逻辑逻辑器件中。
3.下载电缆是可编程逻辑器件软件和可编程逻辑逻辑器件之间的接口电缆,为了便于区别,用不同颜色导线区分下载电缆的电源、地和信号,一般用红色导线接电源,用黑色导线接地。
4.示波器用于观察可编程逻辑逻辑器件执行程序时输出信号的变化
四、实验内容和步骤
1、产生控制信号:
对于ADC0809芯片的各种介绍请参阅其数据手册。芯片ADC0809的控制时序
图如图7-1所示。实验仪器中ADC0809接口电路原理图如图52-1所示。
图7-1 ADC0809接口电路原理图
由图7-1和图7-3可知,当CS 和WR同时为高电平时,ADC0809开始转换,当转换完成后,在INT脚输出高电平,等待读数据;当CS和RD同时为电平时,通过数据总线D[7..0]从ADC0809是读出数据,如图7-2所示。
图7-2 控制器控制信号时序图
从图7-2我们可以将整个控制器分成4个步骤状态:S0、S1、S2、S3,第个状态的动作方式如下:
状态S0:CS=1、WR=1、RD=0(由控制器发出信号要求ADC0809开始进行模/数信号的转换)。
状态S1:CS=0、WR=0、RD=0(ADC0809进行转换动作,转换完毕后INT将低电位升至高电位)。
状态S2:CS=1、WR=0、RD=1(由控制器发出信号以读取ADC0809的转换资料)。 状态S3:CS=0、WR=0、RD=0(由控制器读取数据总线上的数字转换资料)。 由上述的四个状态可以归纳出整个控制器的动作功能有:
负责在每个步骤送出所需的CS、WR、RD控制信号。
在状态S1时,监控INT信号是否由低变高,如此以便了解转换动作结束与否。
在状态S3,读取转换的数字资料。
2、计算转换后的数字电压信号,最终以BCD码表示
当参考电压(Vref)为2.56V时,模拟输入电压与输出电压的对应关系如表7-1所示。
表7-1:模拟输入电压与输出电压的对应关系
进制 16 0 1 2 3 4 5 6 7 8 9 2 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 参考电压 高4位电压 0.00 0.32 0.64 0.96 1.28 1.60 1.92 2.24 2.56 2.88 3.20 3.52 3.84 4.16 4.48 4.80 低4位电压 0.00 0.02 0.04 0.06 0.08 0.10 0.12 0.14 0.16 0.18 0.20 0.22 0.24 0.26 0.28 0.30 A 1010 B 1011 C 1100 D 1101 E F
1110 1111 这样由ADC0809收到的信号是01110110(76H),则对照表52-1时,高4位0111的电压为2.24V,而低4位0110是0.12V,所以最后的电压输出结果为2.24+0.12=2.36V。
对于数据转换成BCD码,我们必须设计一个12位的BCD码加法器,如上述的2.24V的二进制表示为:001000100100、0.12V是000000010010,所以其相加结果为001000110110,为2.36V。
提示:在读取到转换数据后,先用查表的指令算出高、低4位的两个电压值,并分别用12位的BCD码表示。接着设计12位的BCD码加法。相加从最低4位开始,且每4位相加结果超过10时需作进位动作。