可编程逻辑器件应用实验指导

更新时间:2024-06-10 09:07:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

可编程逻辑器件应用

实 验 指 导 书

电子科学与技术专业组

实验一 用图形的设计方法设计一个3-8译码器

组合电路

一、实验目的

1.通过一个简单的3-8译码器的设计,让学生掌握组合逻辑电路的设计

方法。

2.掌握组合逻辑电路的静态测试方法。 3.初步了解可编程器件设计的全过程。

二、实验器材

1.台式计算机 1台。

2.可编程逻辑逻辑器件实验软件1套。 3.下载电缆一套。 4.示波器一台。

三、实验说明

1.台式计算机用于向可编程逻辑逻辑器件实验软件提供编程、仿真、下载的平台,供用户使用。

2.可编程逻辑逻辑器件实验软件向原理图的设计提供平台,并将调试好的原理图下载到可编程逻辑逻辑器件中。

3.下载电缆是可编程逻辑器件软件和可编程逻辑逻辑器件之间的接口电缆,为了便于区别,用不同颜色导线区分下载电缆的电源、地和信号,一般用红色导线接电源,用黑色导线接地。

4.示波器用于观察可编程逻辑器件执行程序时输出信号的变化。

四、实验内容和步骤

(一)设计输入:

1、软件的启动:进入Altera软件包,打开1-1所示。

MAX+plus II 10.0软件,如图

2、

图:1-1

启动File \\ New菜单,弹出设计输入选择窗口,如下图1-2所示。或点击下图1-3主菜单中的空白图标

,进入新建文件状态。

图:

1-2

图:1-3

3、选择Graphic Editor File,单击ok按钮,打开原理图编辑器,进入原理图设计输入电路编辑状态,如下图1-4所示:

图:1-4

4、设计的输入

1)放置一个器件在原理图上 a.

在原理图的空白处双击鼠标左键,出现窗口如图1-6;也可单击鼠标右键,出现窗口如图1-5,选择“Enter symbol..”,出现窗口如图1-5,进入器件选择输入窗口。

图1-5

图:1-6

b.在“symbol name”提示处(光标处)输入元件名称或用鼠标双击库文件(在提示窗”Symbol Libraries”里的各个文件),在提示窗“Symbol Files”中双击元件或选中元件按下OK即可将该器件放置到原理图中。 c.如果安放相同元件,只要按住Ctrl键,同时用鼠标拖动该元件复制即可。

d.一个完整的电路包括:输入端口INPUT、电路元器件集合、输出端口OUTPUT。

e.下图1-7为3-8译码器元件安放结果。

图:1-7 2)添加连线到器件的管脚上:

把鼠标移到元件引脚附近,则鼠标光标自动由箭头变为十字,按住鼠标右键拖动,即可画出连线。3-8译码器原理图如图1-8所示。

图:1-8

3)标记输入/输出端口属性

分别双击输入端口的“PIN-NAME”,当变成黑色时,即可输入标记符并回车确认;输出端口标记方法类似。本译码器的三输入断分别标记为:A、B、C;其八输出端分别为:D0、D1、D2、D3、D4、D5、D6、d7。如下图2-5所示。

图:1-9

4)保存原理图

单击保存按钮图标,对于新建文件,出现类似文件管理器的图框,请选择保存路径、文件名称保存原理图,原理图的扩展名为.gdf,本实验中取名为test1.gdf。

4)点击File\\Project\\set project to current file设置此项目为当前文件,如下图1-10所示。注意,此操作在你打开几个原有项目文件时尤为重要,否则容易出错。

图:1-10

此时在软件窗口的顶层有路径指示,见下图1-11

图:1-11

至此,完成了一个电路的原理图设计输入的整个过程。 (二) 电路的编译与适配

1、

选择芯片型号

选择当前项目文件欲设计实现的实际芯片进行编译适配,点击Assign\\Device菜单选择芯片,如下图1-12对话窗所示。如果此时不选择适配芯片的话,该软件将自动把所有适合本电路的芯片一一进行编译适配,这将耗费你许多时间。该例程中我们选用CPLD芯片来实现,如用7000S系列的EPM7128SLC84-6芯片;同样也可以用FPGA芯片来实现,你只需在下面的对话窗口中指出具体的芯片型号即可。

图:1-12

注意:EPM7128SLC84-15和EPF10K1084-4不是快速芯片,要将提示窗“Show Only Faster Speed Grades”前面的“√”去掉。

2、编译适配

启动MAX+plus II \\ Compiler菜单,或点击主菜单下的快捷键

,打开

编译窗口。按Start开始编译,并显示编译结果,生成下载文件。如果编译时选择的芯片是CPLD,则生成 * ?pof文件;如果是FPGA芯片的话,则生成* ?sof文件,以备硬件下载编程时调用。同时生成 * ?rpt报告文件,可详细查看编译结果。如有错误待修改后再进行编译适配,如下图1-13所示。注意,此时在主菜单栏里的 Processing菜单下有许多编译时的选项,视实际情况选择设置。

图:1-13

如果说你设计的电路顺利地通过了编译,在电路不复杂的情况下,就可以对芯片进行编程下载,直到设计的硬件实现,至此你已经完成了一个EDA的设计与实现的整个过程。如果你的电路有足够的复杂,那么其仿真就显得非常必要。 (三)电路仿真与时序分析

MaxplusII教学版软件支持电路的功能仿真(或称前仿真)和时序分析(或称后仿真)。众所周知,开发人员在进行电路设计时,非常希望有比较先进的高

效的仿真工具出现,这将为你的设计过程节约很多时间和成本。由于EDA工具的出现,和它所提供的强大的(在线)仿真功能迅速地得到了电子工程设计人员的青睐,这也是当今EDA(CPLD/FPGA)技术非常火暴的原因之一。下面就MaxplusII软件的仿真功能的基本应用在本实验中作一初步介绍,在以后的实验例程中将不在一一介绍。

首先我们介绍功能仿真,即前仿真。 (一)、编译选择

a. 选择 MAX+plus II \\ Compiler菜单,进入编译功能。 b. 此时主菜单已改变如下图

1-14。点击主菜单

“Processing”,“Functional SNF Extractor”,如下图1-14。

图1-14

c.此时编译窗口改变如下图1-15。这时下一步做的仿真是功能仿真。

图1-15

二)添加仿真激励信号波形

1、启动MaxplusII\\Wavefrom editor菜单,进入波形编辑窗口,如下图。

图:1-16

2、将鼠标移至空白处并单击右键,出现如下图1-17所示对话窗口。

图:1-17

3、选择Enter nodes from snf选项并按左键确认,出现下图1-17所示对话筐,单击

按钮,选择欲仿真的I\\O管脚。

图1-17

4、单击OK按钮,列出仿真电路的输入、输出管脚图,如下图1-18所示。

在本电路中,1-18译码器的输出为灰色,表示未仿真前其输出是未知的。

图:1-18

5、调整管脚顺序,符合常规习惯,调整时只需选中某一管脚(如按住鼠标左键拖止相应位置即可完成。如图1-19所示。

)并

图:1-19

6、准备为电路输入端口添加激励波形,如下图3-10所示。选中欲添加信号的管脚,窗口左边的信号源即刻变成可操作状态,如箭头和圆括弧所示。根据实际电路要求选择信号源种类,在本电路中我们选择时钟信号就可以满足仿真要求。

图:1-20

7、选择仿真时间:视电路实际要求确定仿真时间长短,如下图1-21所示。在当前主菜单“File”的下拉菜单中选中“End Time”,出现如图3-11中箭头所指的窗口,在提示窗“Time”中输入仿真结束时间,即可修改仿真时间。在本实验中,我们选择软件的默认时间1us就能观察到3-8译码器的8个输出状态。

图:1-21

8、为A、B、C三输入端口添加信号:先选中A输入端“点击窗口左侧的时钟信号源图标“口。

”,然后再

”添加激励波形,出现下图1-22对话窗

图:1-22

9、在本例程中,我们选择初始电平为“0”,时钟周期倍数为“1”,(时钟周期倍

数只能为1的整数倍)并按OK确认。经上述操作我们已为A输入端添加完激励信号,点击全屏显示如下图1-23所示。

图:1-23

10、根据电路要求编辑另外两路输入端口的激励信号波形,在本实验中,3-8译码器的A、B、C三路信号的频率分别为1、2、4倍关系,其译码输出顺序就符合我们的观察习惯。按上述方法为B、C两路端口添加波形后单击左边全屏显示图标“

”,三路激励信号的编辑结果为下图1-24所示。

图:1-24

11、保存激励信号编辑结果:使用File\\Save或关闭当前波形编辑窗口时均出现下图1-25对话筐,注意此时的文件名称不要随意改动,单击OK按钮保存激励信号波形。

图:1-25 三)电路仿真

1、打开MaxplusII\\Simulator菜单,或点击主菜单下的快捷键仿真对话窗口,如下图1-26所示。

,弹出

图:1-26

2、确定仿真时间,End Time 为“1”的整数倍。注意:如果在添加激励信号的时未设置结束时间的话,此时在仿真窗口中就不能修改End Time参数。在该例程中,我们使用的是默认时间,单击Start开始仿真,如有出错报告,请查找原因,一般是激励信号添加有误。本电路仿真结果报告中无错误、无警告,如下图1-27所示。

图:1-27

3、观察电路仿真结果,请单击激励输出波形文件

示。

图标,如下图1-28所

图:1-28

上图可见,我们所设计的3-8译码器顺利地通过了仿真,设计完全正确。至此功能仿真结束。

五、实验报告要求

1. 整理实验结果,填写实验报告。 2. 小结实验心得体会。 3. 回答思考题

3-8译码器作用是什么?原理图实现方式的流程是什么?

实验二 用图形的设计方法设计一个触发器时序电路

一、实验目的

1、掌握触发器功能的测试方法。

2、掌握基本RS触发器的组成及工作原理。

3、掌握集成JK触发器和D触发器的逻辑功能及触发方式。 4、掌握几种主要触发器之间相互转换的方法。

二、实验器材

1、台式计算机 1台

2、可编程逻辑逻辑器件实验软件1套 3、下载电缆一套 4、示波器一台

三、实验说明

1、台式计算机用于向可编程逻辑逻辑器件实验软件提供编程、仿真、下载的平台,供用户使用。

2、可编程逻辑逻辑器件实验软件向原理图的设计提供平台,并将调试好的原理图下载到可编程逻辑逻辑器件中。

3、下载电缆是可编程逻辑器件软件和可编程逻辑逻辑器件之间的接口电缆,为了便于区别,用不同颜色导线区分下载电缆的电源、地和信号,一般用红色导线接电源,用黑色导线接地。

4、示波器用于观察可编程逻辑逻辑器件执行程序时输出信号的变化

四、实验内容和步骤

1、将基本RS触发器,同步RS触发器,集成J-K触发器,D触发器同时集成一个EPLD芯片中模拟其功能,并研究其相互转化的方法。

实验的具体实现要连线测试。实验原理如图2-1:

图2-1

电路中各个触发器的仿真波形图如下:

图2-2 RS触发器仿真波形图

图2-3 RS锁存器仿真波形图

图2-4 JK触发器仿真波形图

图33-5 D触发器仿真波形图

2、输入信号Sd、Rd对应的管脚接按键开关,CLK接时钟源(频率在1Hz左右);输入信号J,K,D,R,S对应的管脚分别接拨码开关;输出信号QRS,NQRS,QRSC,NQRSC,QJK,NQJK,QD,NQD对应管脚分别接LED灯。

五、实验报告要求

1. 整理实验结果,填写实验报告。 2. 小结实验心得体会。 3. 回答思考题 点?

RS、JK、D触发器区别和联系是什么?如何在原理图模式中设置仿真节

实验三 用图形法和VHDL语言设计一个全加器

一、实验目的

1、 通过实验复习可编程逻辑器件开发软件的图形设计操作流程; 2、 掌握全加器的功能和设计方法;

3、掌握用图形的设计方法设计组合逻辑电路——全加器。

二、实验器材

1、台式计算机 1台

2、可编程逻辑逻辑器件实验软件1套 3、下载电缆一套 4、示波器一台

三、实验说明

1、台式计算机用于向可编程逻辑逻辑器件实验软件提供编程、仿真、下载的平台,供用户使用。

2、可编程逻辑逻辑器件实验软件向原理图的设计提供平台,并将调试好的程序下载到可编程逻辑逻辑器件中。

3、下载电缆是可编程逻辑器件软件和可编程逻辑逻辑器件之间的接口电缆,为了便于区别,用不同颜色导线区分下载电缆的电源、地和信号,一般用红色导线接电源,用黑色导线接地。

4、示波器用于观察可编程逻辑逻辑器件执行程序时输出信号的变化

四、实验内容和步骤

1、一位全加器有三个输入、两个输出,见图3-1。

(被加数)Ai (被加数)Bi (进位入)Ci-1

(全加和)Si

全加器 (进位出)Ci

图3-1 一位全加器示意图

图中的“进位入”Ci-1指的是低位的进位输出,“进位出”Ci即是本位的进位输出。一位全加器的真值表见表3-1。

表3-1:

输入 Ci-1 0 0 0 0 1 1 1 1

Bi 0 0 1 1 0 0 1 1 Ai 0 1 0 1 0 1 0 1 Si 0 1 1 0 1 0 0 1 输出 Ci 0 0 0 1 0 1 1 1 根据表3-1便可写出逻辑函数表达式:

Si?Ai?Bi?Ci?1?Ai?Bi?Ci?1?Ai?Bi?Ci?1?Ai?Bi?Ci?1 Ci?Ai?Bi?Ai?Ci?1?Bi?Ci?1

全加功能的硬件实现方法有多种,例如:可以把全加和看作是Ai与Bi的半加和Hi与进位输入Ci-1的半加和来实现。

2、将设计好的逻辑功能转为硬件描述语言的描写。 3、将设计好的硬件描述语言进行仿真。 4、将程序下载到CPLD中,验证结果是否正确。 五、实验报告要求

1、 整理实验结果,填写实验报告。 2、 小结实验心得体会。 3、 回答思考题

什么叫全加器?它的作用是什么?

实验四 利用可编程逻辑器件进行ROM的设计

一、实验目的

1、掌握ROM存储器的功能和设计方法

2、掌握用VHDL语言的设计方法设计ROM存储器 3、进一步强化VHDL语言的应用能力

二、实验器材

1、台式计算机 1台

2、可编程逻辑逻辑器件实验软件1套 3、下载电缆一套 4、示波器一台

三、实验说明

1、台式计算机用于向可编程逻辑逻辑器件实验软件提供编程、仿真、下载的平台,供用户使用。

2、可编程逻辑逻辑器件实验软件向原理图的设计提供平台,并将调试好的程序下载到可编程逻辑逻辑器件中。

3、下载电缆是可编程逻辑器件软件和可编程逻辑逻辑器件之间的接口电缆,为了便于区别,用不同颜色导线区分下载电缆的电源、地和信号,一般用红色导线接电源,用黑色导线接地。

4、示波器用于观察可编程逻辑逻辑器件执行程序时输出信号的变化

四、实验内容和步骤

1、在设计ROM时,根据ROM的大小,我们可以采用不同的方法进行设计,比如4×8、8×8或16×8的ROM可以采用数组描述或WHEN-ELSE。然而数组描述ROM在面积上是最有效的,在用数组描述时,常把数组常量描述的ROM放在

一个程序包中,这种方法可以提供ROM的重用,在程序包中应当用常量定义ROM的大小。而用WHEN-ELSE描述一个ROM,它却是最直观的,它是类似查表的方式来设计的,如下面的例程就是一个用WHEN-ELSE设计的16×8的ROM。但对于MAXPLUS II这个软件,对于用数组描述的ROM在编译过程中会出错,有可能MAXPLUS II在语法支持上不太全面,但可以用其他的VHDL语言仿真综合工具进行仿真或综合,如ACTIVE VHDL、MODELSIM、LEONARDO等。

对于大型的ROM应当采用例化的方法。对于256×8的ROM,我们就可以采用例化的方法来设计实现。 例程:16×8的ROM

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY ROM16_8 is PORT( DATAOUT : OUT STD_LOGIC_VECTOR(7 DOWNTO 0); --Data Output ADDR : IN STD_LOGIC_VECTOR(3 DOWNTO 0); --ADDRESS CE : IN STD_LOGIC -- Chip Enable );

END ROM16_8;

ARCHITECTURE a OF ROM16_8 IS BEGIN DATAOUT <= \ \ \ \ \ \ \ \ \ \ \ END a;

16×8ROM 波形仿真图如下图4-1。仿真图中输入的不同的地址对应的不同的输出数据可参见程序段:

DATAOUT <= \ \ \

\ \ \ \ \ \ \ \

图4-1 16×8 ROM 波形仿真图

256×8 ROM的波形仿真图如下图4-2。

图4-2 256×8 ROM波形仿真图

2、16×8ROM 实验输入信号有CE(输出允许控制端)、ADDR0~ADDR3(输入地址),输出信号有DATAOUT0~DATAOUT7(8位数据输出),工作时工作时序参见图36-1所示,ce保持低电平, ADDR0~ADDR3接拨码开关, DATAOUT0~DATAOUT7接LED灯。

256×8 ROM实验输入信号有inclock(输入时钟)、address0~address7(输入的8根地址线),输出信号有outlock(输出时钟)、oe(输出允许控制端)、q0~q7(8位数据输出)。工作时输入时钟、输出时钟和oe端可参见图36-2,接数字信号源单元的CLK0~CLK5,输入地址线address0~address7接拨码开关,输出数据线q0~q7接LED灯。

3、将设计好的逻辑功能转为硬件描述语言的描写。 4、将设计好的硬件描述语言进行仿真。 5、将程序下载到CPLD中,验证结果是否正确。

五、实验报告要求

1、整理实验结果,填写实验报告。 2、小结实验心得体会。 3、回答思考题

什么叫ROM?它的作用是什么?

实验五 利用可编程逻辑器件进行7段数码管控制

接口的设计

一、实验目的

1. 通过实验复习可编程逻辑器件开发软件的图形设计操作流程; 2. 掌握BCD-七段显示译码器的功能和设计方法;

3.掌握用硬件描述语言的方法设计组合逻辑电路——BCD-七段显示译码器。

二、实验器材

1、台式计算机 1台

2、可编程逻辑逻辑器件实验软件1套 3、下载电缆一套 4、示波器一台

三、实验说明

1、台式计算机用于向可编程逻辑逻辑器件实验软件提供编程、仿真、下载的平台,供用户使用。

2、可编程逻辑逻辑器件实验软件向原理图的设计和硬件描述语言的编程提供平台,并将调试好的程序下载到可编程逻辑逻辑器件中。

3、下载电缆是可编程逻辑器件软件和可编程逻辑逻辑器件之间的接口电缆,为了便于区别,用不同颜色导线区分下载电缆的电源、地和信号,一般用红色导线接电源,用黑色导线接地。

4、示波器用于观察可编程逻辑逻辑器件执行程序时输出信号的变化

四、实验内容和步骤

1、在实验中,8位7段数码显示的驱动电路已经做好,并且其位选信号

(SEL[7..0])为一3-8译码器的输出,所以我们在设计7段数码管控制接口时,其位选信号输出必须经8-3编码。显示控制器的引脚图如图5-1所示。

图5-1

图中:CP为时钟输入端,SEGOUT[7..0]为段驱动输出;SELOUT[2..0]为位选信号输出;NUMOUT[3..0]为当前显示的数据输出。

图5-2 7段显示控制器仿真波形图

注意:该程序中如果时钟频率较高,则NUM的分频较高,仿真时要求的仿真时间较长,如果时钟频率偏低,数码管显示又闪烁,所以建议读者在做此实验时,下载时选下面程序的前两句,仿真时选后两句。如下,不用仿真时,在后面两句前加“--”,则该句无效,当作注释。

NUM <= Q(24 DOWNTO 21); s <= Q(15 DOWNTO 13);

--about 1 Hz for download

--about 300 Hz

--NUM <= Q(6 DOWNTO 3); --for simulation --S <= Q(1 DOWNTO 0);

从图5-2可以看出,6位数码管是轮流点亮的,我们以NUMOUT=1这段波形为参考:当SELOUT为000时,点亮第一位显示器,显示的数字为1,同时,NUMOUT输出的数据也为“0001”。同理,当SELOUT为001时,点亮第二位显示器,显示数字为1,直到6位显示器全都显示完毕,等待进入下一个数字的显示。

同时,还有一个问题不可忽视,不是位扫描信号的频率至少需要多少以上,才能使显示器不闪烁?简单的说,只要扫描频率超过人的眼睛视觉暂留频率24HZ以上就可以达到点亮单个显示,却能享有6个同时显示的视觉效果,而且显示也不闪烁。当我们输入频率为5MHZ时,我们通过加法计数器来产生一个约300HZ的

图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时需作进位动作。

本文来源:https://www.bwwdw.com/article/h2b6.html

Top