版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第八章
51单片机I/O接口
本章内容8.1P0-P3口的功能(重点)
和内部结构(了解)8.2I/O口编程举例(重点)8.3用并行口设计LED数码显示器(掌握)8.4用并行口设计键盘电路(掌握)8.1P0-P3口的功能和内部结构(1)所谓双向,是既能做输入,又能做输出。所谓准双向口,是指该端口在用作输入线时,必须先写入“1”。(2)内部结构是设计芯片时决定的,如果以后不设计单片机,那么不必在意。只简单的了解即可。(3)各个口的功能和操作,是重点。8.1P0-P3口的功能和内部结构(4)P0口
1)P0口既可以作I/O,也可以作为地址/数据线。 2)做I/O口时,可以按字节进行8位的数据输入输出,又可以按位单独进行输入输出操作。 3)P0口作数据/地址总线使用时:外接其他存储器或接口芯片,由于通常情况下单片机不可能不接内存芯片或接口芯片多做数据总线和低8位地址总线分时复用使用。 4)P0口作通用I/O端口使用时:P0口用作输出端口时外部必须接上拉电阻才能正确输出高电平;P0口用作输入端口时,在进行输入操作前,应该先向该端口的输出锁存器写“1”
。8.1P0-P3口的功能和内部结构(5)P1口
1)P1口只能作为通用的I/O口使用。 2)做I/O口时,可以按字节进行8位的数据输入输出,又可以按位单独进行输入输出操作。 3)P1口作为输出口使用时,外电路无需再接上拉电阻。 4)P1口作为输入口使用时,应先向其锁存器写入“1”。
8.1P0-P3口的功能和内部结构(6)P2口
1)P2口作通用I/O端口使用时,是一个准双向口,引脚可接I/O设备,其输入/输出操作与P1口完全相同。。 2)做I/O口时,可以按字节进行8位的数据输入输出,又可以按位单独进行输入输出操作。 3)P2口作为输出口使用时,外电路无需再接上拉电阻。由于P2口是准双向口,作为输入口使用时,应先向其锁存器写入1 4)当系统中接有外部存储器或接口芯片时,P2口作地址总线使用,输出高8位地址A15-A8。由于单片机通常会外接其他存储器或接口芯片,在实际使用中P2口一般只作地址总线口使用,不再作I/O端口直接连外部设备。
8.1P0-P3口的功能和内部结构(7)P3口
1)P3口是一个多用途的端口,也是一个准双向口,作为第一功能使用时,其功能同P1口。 2)P3口作为输出口使用时,外电路无需再接上拉电阻。 3)由于P3口是准双向口,作为输入口使用时,应先向其锁存器写入“1”。
4)当作第二功能使用时,每一位功能定义如下:P3.0:RXD串行口输入; P3.1:TXD串行口输出P3.2:INT0外部中断0输入; P3.3:INT1外部中断1输入P3.4:T0定时器0外部输入; P3.5:T1定时器1外部输入P3.6:WR外部写控制; P3.7:RD外部读控制。
8.1P0-P3口的功能和内部结构(8)总结:
如果单片机不需要扩展外部存贮器和I/O接口,单片机的四个口均可作I/O口用。四个口在作输入口使用时,均应先对其写“1”,以避免误读。P0口作I/O口使用时应外接10K的上拉电阻,其它口则不需要。P2口的某几根线作地址使用时,剩下的线不能作I/O口线使用。P3口的某些口线作第二功能时,剩下的口线可以单独单独作I/O口线使用(此时宜位访问)。对于8031单片机而言,P2口是输出高8位地址,与P0口一起组成16位地址总线。此时P0口和P2口只作为地址总线使用,而不作为I/O线直接与外部设备相连
P0-P3口,是典型的I/O接口,因此也是集成在CPU芯片里面的一种接口电路。8.2I/O口编程举例【例8-1】设计一电路,监视某开关K,用发光二极管LED显示开关K的状态,如果开关合上则LED亮、开关断开则LED熄灭。8.2I/O口编程举例解:设计电路如图如示。开关接在P1.0,LED接P1.1,当开关断开时,P1.0为+5V,对应数字量为“1”,开关合上时P1.0电平为0V,对应数字量为“0”,这样就可以用JB指令对开关状态进行检测。因此,本例旨在让读者熟悉位操作指令。在图8.6中,开关K的逻辑与LED的驱动逻辑关系正好是反相的。编程如下:CLRP1.1 ;使发光二极管灭AGA: SETBP1.0 ;先对P1口写入“1”为输入作准备JBP1.0,LIG ;开关开(为1),转LIGSETBP1.1 ;开关合上(为0),二极管亮SJMPAGALIG: CLRP1.1 ;开关开,二极管灭SJMPAGA
8.2I/O口编程举例【例8-2】在图8.9中,P1.4~P1.7接四个发光二极管LED,P1.0~P1.3接四个开关,编程将开关的状态反映到发光二极管上。
8.2I/O口编程举例解:本例中,4个开关对应4个LED灯,因此适合用字节的方式进行操作。编程如下:ORG0000HABC: MOVP1,#0FH;高四位灭,低四位送“1”,确保开关状态的正确读入MOVA,P1 ;读P1口引脚开关状态至ASWAPA ;低四位开关状态转换到高四位ANLA,#0F0H ;保留高四位MOVP1,A ;从P1口输出SJMPABC ;循环8.3用并行口设计LED数码显示器8.3用并行口设计LED数码显示器显示0的情况8.3用并行口设计LED数码显示器8.3用并行口设计LED数码显示器(1)数码管显示方式
静态方式动态方式8.3用并行口设计LED数码显示器(2)数码管译码方式
硬件译码的方式,即字形码的控制输出可采用硬件译码方式,如采用BCD7段译码/驱动器MC14495、74LS48、74LS49、CD4511(共阴极)或74LS46、74LS47、CD4513等芯片。软件译码方式,通过编写软件译码程序(通常是查表的方式),通过译码程序来得到要显示的字符的字段码。
8.3用并行口设计LED数码显示器(3)举例–软件译码【例8-3】接有五个共阴极数码管的动态显示接口电路,P1.7接开关,当开关打向位置“1”(GND)时,显示“12345”字样,当开关打向“2”(高电平)时,显示“HELLO”字样,试编写其程序。解:本例采用动态译码的方法,当P3.0~P3.4轮流输出1时,五个数码管轮流显示。由于LED数码管每段需10~20ma的驱动电流,单片机的引脚无法直接驱动,故用74LS373接成直通的方式作驱动电路,阴极用非门74LS04反相门驱动,字形选择由P1口提供,位选择由P3口控制。程序清单如下:ORG0000HMOVP3,#0;清显示,P3.X=1则显示TEST:MOVDPTR,#TAB1;开关置于1,取‘12345’字形表头地址SETBP1.7;给P1.7写1,为其输入准备JNBP1.7,DIR;检测开关=0为状态“1”则显示“12345”MOVDPTR,#TAB2;开关置于2,取“HELLO”字形表首址DIR: MOVR0,#0;R0存字形表偏移量MOVR1,#01;R1置数码表位选代码(先为最高位)NEXT: MOVA,R0MOVCA,@A+DPTR;查字形码表1MOVP1,A;送P1口输出MOVA,R1MOVP3,A;输出位选码ACALLDELAY;延时几毫秒,避免闪烁INCR0;指向下一位字形RLA;指向下一位MOVR1,A;暂存位选码CJNER1,#20H,NEXT;五个数码管显示完?01H右移;4次则为20HSJMPTEST;显示完5个数码则返回到开始DELAY;(延时子程序)MOVR6,#20;延时20msDL2: MOVR7,#7DHDL1:NOPNOPDJNZR7,DL1DJNZR6,DL2RETTAB1:db06H,5BH,4FH,66H,6DH;“1~5”的字形码TAB2:db78H,79H,38H,38H,3FH;“HELLO”的字形码END8.4用并行口设计键盘
(1)键盘的结构8.4用并行口设计键盘
(2)课题:嵌入式打标机中的三个主要问题1)去抖动:消除按键盘抖动通常有两种方法:硬件消抖和软件消抖。硬件消抖是通过在按键输出电路上加一定的硬件线路来消除抖动,一般采用RS触发器或单稳态电路。另一种方法是利用软件延时。嵌入式打标机中的单片机采用软件的方式去抖动。2)串键保护:串键保护是指两个键同时按下时的选择问题。3)按键识别:识别键盘中被按键对应的编码。编码键盘可以通过硬件直接提供按键与被按键对应的ASCII码或其它编码。非编码键盘则需要通过编程方式提供按键编码,其优点是结构简单、成本低廉。嵌入式打标机中的单片机采用软件的方式识别。8.4用并行口设计键盘
(3)课题:嵌入式打标机中的键盘编程8.4用并行口设计键盘
(4)独立键盘编程举例START:MOVA,#0FFH;MOVP1,A;置P1口为输入状态MOVA,P1;键状态输入CPLAJZSTART;没有键按下,则转开始JBACC.0,K0;检测0号键是否按下,按下转JBACC.1,K1;检测1号键是否按下,按下转JBACC.2,K2;检测2号键是否按下,按下转JBACC.3,K3;检测3号键是否按下,按下转JBACC.4,K4;检测4号键是否按下,按下转JBACC.5,K5;检测5号键是否按下,按下转JBACC.6,K6;检测6号键是否按下,按下转JBACC.7,K7;检测7号键是否按下,按下转JMPSTART;无键按下返回,再顺次检测K0: …… ;调用去抖动子程序AJMPKEY0K1:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理科研人才与国科金项目培养
- 旅游行业客户服务专员面试技巧
- 旅游景点服务中心负责人培训资料
- 旅游行业党建探索:旅行社党务工作者面试全解
- 激光雷达技术安全性能评估报告
- 医护护理护理动画
- 报关客服职业规划
- 统编版道德与法治四年级下册第1课我们的好朋友 第一课时教学设计
- 青蛙变王子职业规划书
- 中职生就业指导讲座参考模版
- - 育才中学2026学年春季第二学期初二年级地理实践活动与知识应用教学工作计划
- 2025年邳州恒润城市投资笔试及答案
- 电信诈骗安全教育培训课件
- 2026年安徽粮食工程职业学院单招(计算机)测试模拟题库附答案
- 肥胖课件之针灸治疗
- “十五五规划纲要”解读:双碳引领绿色发展
- 《应急预案编制与演练》全套教学课件
- 护理共情疲劳开题报告
- 《化工原理》实验指导书
- 铁路隧道敞开式TBM始发及试掘进施工实施细则
- 高考化学湖北长江作业本 化学人教选择性必修2 04 课后素养评价(四)
评论
0/150
提交评论