首页 第4章1节并行接口扩展技术。

第4章1节并行接口扩展技术。

举报
开通vip

第4章1节并行接口扩展技术。第4章并行器件扩展技术4.1并行I/O口的扩展技术D414.2显示器接口技术D424.3键盘接口技术D434.4模拟量接口技术D44(一般不需要扩展并行的存储器了)4.1并行I/O口的扩展技术????4.1.1举例4.1.2总线与译码4.1.3简单I/O口扩展举例4.1.4可编程I/O口的扩展举例4.1.1举例D41_1.C??????????#include#include#definePAXBYTE[0x7cff]#definePBXBYTE[0x7dff]#definePKXBYTE[0x7fff]voidm...

第4章1节并行接口扩展技术。
第4章并行器件扩展技术4.1并行I/O口的扩展技术D414.2显示器接口技术D424.3键盘接口技术D434.4模拟量接口技术D44(一般不需要扩展并行的存储器了)4.1并行I/O口的扩展技术????4.1.1举例4.1.2总线与译码4.1.3简单I/O口扩展举例4.1.4可编程I/O口的扩展举例4.1.1举例D41_1.C??????????#include#include#definePAXBYTE[0x7cff]#definePBXBYTE[0x7dff]#definePKXBYTE[0x7fff]voidmain(){PK=0x90;while(1){PB=PA;}}4.1.2总线与译码?1、51单片机的总线芯片一般的外部引脚:?????????并行存储器一般不需要扩展了。D7-D0:数据线,和单片机数据总线相连;A?-A0:地址线(不同的芯片,地址线的数量不一样)/RD:读允许/WR:写允许/CS:片选I/O:和外部设备相连的信号线,不同的芯片有不同的I/O线。扩展时:数据线------单片机的数据总线;读、写允许---CPU的读、写控制;I/O线---外部设备;A?-A0、片选---单片机的地址总线(系统扩展的寻址)2、译码—系统扩展的寻址?确定地址—--寻址?系统扩展的寻址是指,当单片机扩展了存储器、I/O口等外围接口芯片之后,如何确定存储器的地址空间范围和I/O口的端口地址。?◎地址是由地址线确定的。?◎低位地址线、剩余的高位地址线。?低位地址线参加片内译码,剩余的高位地址线参加片间译码。?线译码、译码器译码(1)线译码?所谓线译码是低位地址线用作I/O接口芯片的片内译码,剩余的高位地址线直接作为I/O接口芯片的片选,即一线选中。地址范围:(X为不用的地址线,设定为1)(2)译码器译码所谓译码器译码是低位地址线用作I/O接口芯片的片内译码,剩余的高位地址线接译码器的输入,译码器的输出接片选信号。3、地址的使用(绝对地址的访问)?包括片内RAM、片外RAM及I/O的访问。C51语言提供了两种比较常用的访问绝对地址的方法。?(1)绝对宏?用#include即可使用其中声明的宏来访问绝对地址,包括CBYTE、XBYTE、PWORD、DBYTE、CWORD、XWORD、PBYTE、DWORD,具体使用方法参考absacc.h头文件。其中:?????????CBYTE以字节形式对code区寻址;?CWORD以字形式对code区寻址;?DBYTE以字节形式对data区寻址;?DWORD以字形式对data区寻址;?XBYTE以字节形式对xdata区寻址;?XWORD以字形式对xdata区寻址;?PBYTE以字节形式对pdata区寻址;?PWORD以字形式对pdata区寻址。【例】片内RAM、片外RAM及I/O的定义示例???????????#include#definePAXBYTE[0xffec]//将PA定义为外部I/O口,地址为0xffec#defineNRAMDBYTE[0x40]/*将NRAM定义为片内RAM,地址为40H,长度为8位*/voidmain(){PA=0x3A;//将数据3AH写入地址为0xffec的外部I/O端口NRAM=0x01;//将数据01H写入片内RAM40H单元}?(2)_at_????????存储类型】数据类型变量名_at_地址号;如:dataunsignedcharx1_at_0x40;xdataunsignedintx2_at_0x2000;voidmain(){x1=0xff;x2=0x1234;}举例:将片外RAM6000开始的连续10个字节内容清零?xdataunsignedcharbuffer[10]_at_0x6000;??????voidmain(){unsignedcharindex;for(index=0;index<10;index++){buffer[index]=0;}}4.1.3简单I/O口扩展举例?例D41_2利用锁存器扩展输出口U3、U4的口地址分别为0BFFFH、7FFFH,下面给出将变量i1、i2内容通过锁存器输出程序??????????#include#include#defineU3XBYTE[0xBFFF]#defineU4XBYTE[0x7FFF]voidmain(){unsignedi1,i2;.........U3=i1;U4=i2;.......}74LS273资料:8位锁存器(D触发器)?如果在273的时钟有效时将单片机I/O引脚上的数据写入其中,则无论单片机I/O引脚上的数据如何变化,在下一个?时钟在之前,这个数据会被?“锁定”。?D7-D0:输入;Q7-Q0:输出;?CLK:时钟,在时钟的上升?沿将输入引脚的数据送到?输出端口;?MR:清除,地电平有效例D41_3使用三态门扩展输入口?U3、U4的口地址分别为0BFFFH、7FFFH,参考例D41_2可以给出将两个输入口的内容读入变量i1、i2。?i1=U3;?i2=U4;74LS244资料:8位三态门?当控制信号有效时,其输入和输出连接在一起,否则它可以看成输出引脚从连接到一起的其他电路上断开。?A0-A3:输入?Y0-Y3:输出?/OE:控制引脚,?高电平时,高阻。?(一个芯片中有两组)例41_4(将开关的状态在L上显示出来)????????#include#include#defineU3XBYTE[0x7FFF]#defineU4XBYTE[0x7FFF]voidmain(){while(1){U4=U3;}}4.1.4可编程I/O口的扩展举例?例D41_1??????????#include#include#definePAXBYTE[0x7cff]#definePBXBYTE[0x7dff]#definePKXBYTE[0x7fff]voidmain(){PK=0x90;while(1){PB=PA;}}8255A资料:(8255A是一种通用的可编程并行I/O接口芯片)?具有3个8位并行端口:PA口、PB口、PC口?3个端口分2组控制:A组控制A口和C口的上半部;B组控制B口和C口的下半部。?3种可编程工作方式:?方式0:基本输入/输出方式?方式1:选通输入/输出方式?方式2:双向总线方式(A口具有)外部引脚:?片选:/CS?读信号:/WR?写信号:/RD?端口选择:A1A0A1A000-----PA口01-----PB口10-----PC口11-----控制寄存器端口?8255有4个口地址:PA口、PB口、PC口、控制口8255A的控制字:方式控制字?如设置8255A工作于方式0,且PA口为输出、PB口为输出、PC口为输入,则控制字为:10001001B,即89H。PC口的置位/复位控制字?如:PC3置1,则控制字为:?00000111B,即07H硬件设计:?某51单片机应用系统,有一片8255A、一片74LS273、一片74LS244,试画出硬件电路,并写出各自的地址。?编程完成·:?将8255A的PA
本文档为【第4章1节并行接口扩展技术。】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_769254
暂无简介~
格式:ppt
大小:2MB
软件:PowerPoint
页数:0
分类:
上传时间:2021-11-18
浏览量:0