1、随后,CPU可以从ADC0809的引脚D0-D7输入转换后的数据。其芯片引脚图如下8255是并行通信接口芯片,其基本功能是以并行的方式在系统总线与I/O设备之间传送数据。8255A共有三个I/O端口,其中A口和B口J均为8位,而C口既可以作为8位端口,又可以分成两个4位端口。8255共有3种不不同的工作方式,方式0为基本的I/O方式,方式1为选通I/O方式,方式二为双向I/O方式。端口A可以选择方式0、1、2,端口B、C可以选择方式0、1,而端口C首先要按照端口A和B的工作方式提供相应的联络线,剩余部分则只能按照方式0工作。A口和B口的输入输出都具有数据锁存的功能,C口输出有锁存能力,而输入没
2、有锁存能力。元件引脚如下74LS244是数据输入三态缓冲器。外设输入的数据和状态信号,通过数据输入三态缓冲器井经过数据总线传递给微处理器。8个数据输入端与外设相连,8个数据输出端与微型计算机的数据总线相连。其引脚图如下74LS273是数据输出寄存器。8个输入端微型计算机的数据总线相连,8个数据输出端与外设相连,由时终端控制数据的写入。五电路设计1)ADC0809及其8255对应数模转换功能的分析,原理连接图如下:首先对8255进行操作,选中其地址端口,设置方式选择字,将EOC信号置为低电平,选择PA端口号,将其所有的位置零,然后再将PA7端置1,这样就产生一个上升沿在ADC0809的START
3、引脚,将寄存器清零。这时候通过键盘输入选择通道,将其对应的二进制数送到ADDA-ADDC,选通模拟通道,改变滑动变阻器的值,可以改变输入模拟量的值。然后读EOC的值,如果是零继续等待,如果是1,则说明转换完毕,通过PC端口写OE让其有效,这时候数据就可以从D0-D0读取转换后的数据。2)译码显示器的设计(原理图如下)通过第一片74LS273进行段选,其中反相器的设计是为了增大驱动电流。要使七段发光二极管显示器的某一段亮,就应该使该段相连的段选寄存器的Q端输出为0,同时使其他段选寄存器的Q端输出为1.例如要显示数字6,应该使得段选寄存器输出为00000010,若用一个字节表示该字形的代码,则为0
4、2H,10个十进制数的字形代码分别是40H,79H,24H,30H,19H,12H,02H,78H,00H,18H。同时要使得三位中的某一位亮,其他的灭,应该与该位相连的位选寄存器的Q端输出为1,其他的为0。六程序流程图七实验原理及结果分析通过键盘输入,可以选通IN0-IN7八个通道,进而通过滑动变阻器调节输入端的电压信号,在0-5V之间变化。读取模拟信号,通过ADC0809模数转换器转换后的数字在0-255之间变化,当数据转换完成后,通过使OE有效,数据传送到8255,然后通过74LS273寄存器的段选和片选信号将相应的数值在七段共阴极显示器上显示出来。八实验小结通过本次课程设计,我通过查阅
5、资料,参考我们的微机原理、汇编与接口技术课本,分析一个个学过的芯片,看它能够实现什么功能,分析芯片的引脚应该怎样连接。如何利用proteus软件进行仿真。完成实验后,我不仅复习巩固课堂所学的理论知识,还提高程序设计实现系统、绘制系统电路图的能力,为实际应用奠定一定的基础。实验程序:;390H是8255PA端口地址,391H是PB口地址,392H是PC口地址DATASSEGMENTSEGCHDB40H,79H,24H,30H,19H,12H,02H,78H,00H,18H段选,10进制数的字形代码IBUF4,0,4DUP(0)分配空间,为存储数字做准备ENDSSTACKS此处输入堆栈段代码COD
6、ESASSUMECS:CODES,DS:DATAS,SS:STARTPROCFARMOVAX,DATASDS,AXDX,393H8255控制字寄存器的端口地址AL,83H方式选择字OUTDX,ALLOP:AL,00HPC0的控制字DX,390HPA端口地址产生上升沿,使得寄存器清零AL,80HPRESS:AH,1PRESS按键设置INT21HCMPAL,37H检测输入的数据是不是在07之间JAPRESSAL,30HJBBL,AL把ASCII码转换成BCDANDBL,0FHAL,BL启动AD转换,并选择通道DX,392HPC端口地址LOP1:INAL,DX读EOC的内容TESTAL,01H为1,
7、表示转换结束,否则继续等待JZLOP1PC端口地址写OE,让其有效,准备输出DX,391HPB端口地址,读从ADC0809传来的数据AH,0二进制转换成10进制CL,10DIVCLBP,OFFSETIBUF+2依次将百位、十位、个位数字存入BP+4,AHBP+3,BP+2,AHBP+5,0DH存入回车符AH,04H用于操作七段显示器的位码SHOW:BL,DS:BP+2BH,0AL,SEGCHBX取出BCD数七段显示代码,用于显示DX,380H74LS273端口地址,输出段码AL,AH输出位码DX,384HCX,1000延时LOOP$INCBP调整指向BCD码的指针,用于显示下一个数字SHR调整位码指针,使得下一个七段显示器有效AH,AH判断三位数字是否已经完全输出JNZSHOW未输完则跳转,输完则继续执行AH,11检查键盘有无输入AL,0无输入时,AL=0JNE若有按键,则返回继续选通道依次执行RETENDPENDSTART
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1