- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[工学]第7章 单片机的并行IO扩展
第7章 单片机并行I/O扩展 ;7.1 单片机I/O扩展基础知识; 存储器和单片机具有相同的电路和信号形式,能相互兼容直接使用,因此,存储器和单片机之间采用同步定时工作方式,它们之间只要是时序关系上相互满足就可以正常工作。所以它们之间的信号可直接连接,不存在接口问题。;;I/O接口电路的功能;2. 输出数据锁存;3. 数据总线隔离;;;I/O编址技术
为了对I/O接口电路中的端口进行操作,就需要对他们进行编址,所以就出现了I/O编址问题。;单片机I/O控制方式;;;;;;;;;;;简单的I/O口扩展举例;参考程序:
CONT:MOV DPTR,#01FFH;数据指针指向口地址
MOVX A,@DPTR ;检测按键,向74LS244读
入数据
MOVX @DPTR,A ;向74LS273输出数据,驱
动LED
? SJMP CONT ;循环;7.2 可编程并行接口芯片8255;8255硬件逻辑结构;;3)控制电路
根据CPU送来的控制字使所管I/O口按一定方式工作。对C口甚至可按位实现“置位”或“复位”。
控制电路分为两组:
A组控制电路控制A口及C口的高4位(PC7~PC4)
B组控制电路控制B口及C口的低4位(PC3~PC0)。
A组控制和B组控制合在一起构成8255的控制电路,其中包括一个8位控制寄存器,用于存放编程命令和实现各口操作控制。
(中断控制电路);8255的逻辑结构;芯片的引脚信号说明;芯片的引脚信号说明;;8255工作方式;方式1工作方式下,A、B、C三个口分为两组。A组包括A口和C口的高4位,A口可由编程设定为输入口或输出口,C口的高4位则用来作为A口输入/输出操作的控制和同步信号;B组包括B口和C口的低4位,B口可由编程设定为输入口或输出口,C口的低4位则用来作为B口输入/输出操作的控制和同步信号。;;;; 方式1下,A口和B口均为输入,这种情况和两口均为输出类似,各条控制引线的定义如图6.2.4所示。 ;工作方式2时,C口提供的控制线;8255的编程内容:;C口位置位/复位命令;初始化编程;; 8255的工作方式命令和C口位置位/复位命令,变成写入的命令保存在它的控制寄存器中。由于这两条命令是通过标志为状态进行区别的,所以可以按同一地址写入且不受先后顺序的限制。;RESET;;程序:;8255接口应用;8255 端口选择及读/写控制;7.3 键盘接口技术;键扫描和键码生成:;;;1. 接口电路逻辑图; 如上图所示:A口为输出口,接相应的行/列线,C口为输入口,接相应的行/列线。
则: A口地址为8000H,
B口地址为8001H,
C口地址为8002H,
控制寄存器地址为8003H。;2. 判断有无闭合键的子程序;KS:
;3. 键盘扫描程序; 在单片机应用系统中常常是键盘和显示器同时存在,因此可以把键盘扫描程序和显示程序配合起来使用,即:把显示程序作为键扫描程序的延时子程序。这样做既省去了一个专门的延时子程序,又能保证显示器常亮的可观效果。
假定本系统中显示程序为DIR,执行时间约为6ms。键盘扫描程序如下: ;KEY:
;?
; 键盘扫描程序的运行结果是把闭合键的键码放在累加器A中。接下来的程序是根据键码进行程序转移,转去执行该键对应的操作。;7.4 LED显示器接口技术; 使用LED显示器时,要注意区分这两种不同的接法。为了显示数字或字符,必须对数字或字符进行编码。七段数码管加上一个小数点,共计8段。因此为LED显示器提供的编码正好是一个字节。用LED显示器显示16进制数的编码如下表所示。; 为了实现LED显示器的动态扫描除了要给显示器提供段码(字形编码)的输入之外,还要对显示器加位的控制(控制LED显示器亮灭),这就是通常所说的位控和段控。;LED显示器接口;8255实现LED显示器接口;静态显示与动态显示方式
⑴ 静态显示方式,每一位字段码分别从I/O控制口
文档评论(0)