第四章I、O应用技术_第1页
第四章I、O应用技术_第2页
第四章I、O应用技术_第3页
第四章I、O应用技术_第4页
第四章I、O应用技术_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第四章 I/O应用技术第一节 MCS-51单片机的中断系统中断源与中断标志位分类中断源SFR中的中断申请标志位中断原因中断入口外部中断源外部中断0IE0(TCON.1)P3.2/ 脚上的信号 可以引起中断申请0003H外部中断1IE1(TCON.3)P3.3/ 脚上的信号 可以引起中断申请0013H内部中断源T0:定时器/计数器0中断IF0(TCON.5)T0计数溢出后引起中断申请000BHT0:定时器/计数器1中断IE0(TCON.7)T1计数溢出后引起中断申请001BH串行口中断RI(SCON.0)串行口接收完一帧数据后引起中断申请0023HTI(SCON.1)串行口发送完一帧数据后引起中

2、断申请INT1INT0INT0INT1外部中断TF1TR1TF0TR0IE1IT1IE0IT0TCON.7 .6 .5 .4 .3 .2 .1 TCON.0TCON: 用于T0和T1 用于外部中断IT0(TCON.0)外部中断0触发方式控制位IE0(TCON.1)外部中断0中断申请标志位IT1(TCON.1) 触发方式控制位,功能同IT0IE1(TCON.1) 中断申请标志位,功能同IE0INT1INT1中断允许寄存器IEEAESET1EX1ET0EX0IE.7 .6 .5 .4 .3 .2 .1 IE.0IE:总中断允许EX0(IE.0)外部 中断允许位ET0(IE.1) T0中断允许位EX

3、1(IE.2) 中断允许位ET1(IE.3)T1中断允许位ES(IE.4) 串行口中断允许位EA(IE.7) 总中断允许位INT0INT1中断优先级寄存器IPPSPT1PX1PT0PX0 IE.4 .3 .2 .1 IP.0IE:保留位INT0优先级T0INT1T1串行口优先级中断入口中断源中断入口地址0003HT0000BH0013HT1001BH串行口0023HINT0INT1堆栈应用 用堆栈保护断点的方法 堆栈区与SP 应注意的五点:1)从栈底到栈顶2)数据先进后出3)PUSH与POP成对使用4)堆栈区字节再做数据缓冲区使用5)必须对SP置初值中断响应全过程中断申请的准备中断申请的提出响

4、应中断申请的条件CPU响应一个中断之后的操作中断嵌套在中断服务子程序执行完的操作中断实例管脚输入单脉冲的实验 图中的按键S每被压下一次,则单片机P1口上点亮的一个发光二极管VL将向下循环移一位。1111R1R0R6R7VL1VL0VL6VL7P1.0P1.1P1.6P1.7INT1+5VR9S8031STR_ADDEQU4000HBRK_ADDEQU4013H;中断服务子程序入口ORGSTR_ADDAJMPMAINORGBRK_ADDAJMPBREAKORGSTR_ADD+#30H ;MAIN=4030HMAIN:MOVA,#01HSETBIT1;设置成沿触发方式MOVIE,#10000100

5、B;开中断MOVP1,#0;关灯ROTATE:NOPSJMPROTATEORGSTR_ADD+#60H ;BREAK=4060HBREAK:MOVP1,A;点亮一个灯RLA;循环左移一位CLRIE1;清中断申请标志RETI;中断返回END第二节 定时器/计数器及其应用与定时器/计数器有关的特殊功能寄存器 计数器 定时器/计数器方式寄存器TMODGATEC/TM1M0GATEC/TM1M0TMOD.7 .6 .5 .4 .3 .2 .1 TMOD.0TMOD: T1方式字段 T0方式字段GATE(位TMOD.3)门控位。与TCON.4都为高电平 时才能启动T0C/T(位TMOD.2)定时或计数功

6、能选择位。M1和M0(TMOD.1和TMOD.0)工作方式选择位。TF1TR1TF0TR0IE1IT1IE0IT0TCON.7 .6 .5 .4 .3 .2 .1 TCON.0TCON: 定时器控制外部中断控制定时器/计数器控制寄存器TCONTR0 ( TCON.0)T0的运行控制位。TF0 ( TCON.0)T0溢出兼中断申请标志位。TR1 T1的运行控制位。TF1 T1溢出兼中断申请标志位。 注:TMOD和TCON的复位值都是00H定时器/计数器的四种工作方式(一)方式013位定时器/计数器1。晶振电路机器周期C/T=0C/T=1 TL0(5位) TH0(8位)TF0T0溢出标志位门控开关

7、中断允许GATE位门控信号1& TR0位门控信号门控电平S6S5外部计数脉冲 P3.4 / T0P3.2 /INT0 门控脚定时器/计数器的四种工作方式(二) 方式116位定时器/计数器 方式2可自动重装初值的 8位定时器/计数器 方式3两个8位定时器/计数器定时器/计数器应用实例方式0应用例1 已知单片机晶振频率为6MHz,要求使用T0定时器1ms,使单片机P1.0脚上连续输出周期为2ms的方波。解:1、计算并确定T0的初值;2、写程序(如下)ORG0000H;复位入口RESET:AJMPSTARTORG000BH;T0中断入口AJMPT0INTORG0030HSTART:MOVSP

8、,#60H;初始化程序MOVTH0,#0F0H;T0赋初值MOVTL0,#0CHSETBTR0;启动T0SETBET0;开中断SETBEA;开总中断MAIN:AJMPMAIN;主程序T0INT:CPLP1.0;P1.0脚取反MOVTL0,#0CH;重装初值MOVTH0,#0F0HRETI精度不高,原因:1,中断服务子程序执行时间未计入T0定时2,从中断申请到CPU响应该中断所经历的 时间未计入T0定时将中断服务子程序改为将中断服务子程序改为:T0INT:CLREA;关总中断CLRTR1;停止T0计数MOVA,#0F0H;取高8位计算的初值ADDA,TH0;加修正值MOVTH0,A;修正后送TH

9、0MOVA,#0CH;取低5位计算的初值ADDA,#0EH;加14个机器周期JNBACC.5,MMM;加修正值JNCTH0;判低5位有进位否ANLA,#0001111BMMM:MOVTL0,A;修正后闭塞TL0CPLP1.0SETBTR1;启动T0SETBEARETI补偿方法,原理:1,在中断服务子程序执行过程中关掉总中断 防止其它中断嵌套影响定时精度2,用CLR TR0指令停止T0计数定时器/计数器应用实例方式1应用例2试用单片机定时器/计数器T1的方式1完成对某生产线的传送带上不断传送的产品进行计数.+6V11+5V7V灯控S4010640106R3R2R1R5R4VTHL1红传送带 光电

10、开关HL2C5C48031P3.3 /INT0P3.5 /T1其它电路ORG0000H;复位入口AJMPSTART;T1中断入口ORG001BHAJMP0500HORG0100HSTART:MOVSP,#65H;初始化程序MOVTCON,#00H;可省略MOVTMOD,#0D0HMOVTH0,#00H;可省略MOVTL0,#00H;可省略MOVR0,#00H;清中断次数计数单元MOVP3,#28H;设置P3.5第二功能SETBTR1;启动T1SETBET1;开T1中断SETBEA;开总中断MAINACALL XSZ;主程序,调显示子程序ORG0500HT1INT:INCR0;中断服务子程序RE

11、TIORG0600HXSZ:;显示子程序,略RET方式方式2应用应用例3设单片机8031使用的晶振频率为6MHz,编程使P1.7脚输出1kHz连续方波。ORG0AJMP0050HORG000BHAJMP0250HORG0050HSTART:MOVSP,#60HMOVTMOD,#2MOVTH0,#6MOVTL0,#6MOVIP,#2SETBTR0MOVIE,#82HMAIN:AJMPMAINORG0250HT0INT:CPLP1.7RETI例48031型单片机晶振为6MHz,设定8031和T1做为串行口波特率发生器,此时T1没有申请中断的功能。要求使用T0完成对某高频发射机同步头信号的宽度进行监

12、测。ORG0AJMP0030HORG001BHAJMP0700HORG0030HSTART: MOVSP,#60HMOVIP,#8MOVTMOD,#00101001BMOVTL0,#0MOVTH0,#0MOVIE,#10001000BMOVTCON,#01010000BMAIN:AJMPMAINORG0700HT1INT: MOVTCON,#0PUSHAMOVA,TL0CJNEA,#23HJCAAA1CLRPSW.5AJMPAAA2AAA1:SETBPSW.5AAA2:MOVTL0,#MOVTH0,#MOVTCON,#01010000BPOPARETI第三节 并行接口应用举例P1口的简单应用例

13、1P1口作为八个键盘S1S8的状态检测输入口,键盘码读入内部40H单元.ST_ADDREQU0000HORGST_ADDRLJMPS1ORGST_ADDR+100HS1:MOVP1,#0FFH;P1口先置全1START:MOVA,P1;读入P1口MOV40H,A;消抖程序,省略SJMPSTART;循环ENDP1.0P1.1P1.6P1.78031+5VS1S2S7S8例2P1口各位线经反相器74LS04各接一个发光二极管VL.要求编写一个程序,每隔1S循环点亮一只发光二极管.ORG0000HLJMPSTARTORG0030HSTART:MOVA,#01H;先点亮第一个发光二极管LOOP:MOV

14、P1,A;输出到P1口MOVR1,#10;延时1SDEL1:MOVR2,#200DEL2:MOVR3,#126NOPDEL3:DJNZR3,DEL3DJNZR2,DEL2DJNZR1,DEL1RLA;左移一次LJMPLOOP;循环END1VL61VL71VL01VL1P1.0P1.1P1.6P1.78031+5V1VL51VL4P3.5P3.4P1.6P1.78031+5V+5VS6S774LS04例3如图,用P1.6和P1.7脚上的两个开关S6 、 S7分别控制P3.5和P3.4脚上的两个发光二极管VL4、 VL5的亮与灭。ORG0000HAJMP4100HORG4100HSTART: MO

15、VP1,#0FFHMOVC,P1.6MOVP3.5,CNOPMOVC,P1.7MOVP3.4,CSJMPSTARTEND例4设A、B两条道路的交叉路口上有四组红黄绿交通灯。A道路的两组灯用8031型单片机脚P1.0 P1.2控制,B道路的两组灯用脚P1.3 P1.5控制。并加一紧急事件处理键S0。P1.0P1.1P1.2P1.3P1.4P1.5INT08031+5V红黄绿红黄绿A道路6个灯B道路6个灯ORG0000HRESET: AJMPSTARTORG0003HAJMP0200HORG0030HSTART: MOVSP,#50HMOVTMOD,#1MOVIP,#0MOVIE,#81HCLR0

16、F0HAA0:MOVP1,#11001100BMOVR0,#0A3HMOVR1,#2LCALL YSZSETB0F0HAA2:MOVP1,#11100001bMOVR0, #0A3HMOVR1,#2LCALL YSZAA3:CLR0F0HMOVP1,#11010001BMOVR0,#26HMOVR1,#1LCALL YSZAJMPAA0ORG0150HYSZ:MOVTCON,#10HMOVTH0,#0MOVTL0,#0AA4:CLRTF0AA5:JNBTF0,AA5DJNZR0,AA4DJNZR1,AA4RETORG0200HINT0Z: PUSH00HPUSH01HJNB0F0H,MM1MO

17、V01,#11010001BAJMPMM5MM1:MOVP1,#11001010BMM5:MOVR0,#20MOVR1,#1LCALL YSZMOVR1,#11001001BMM7:JRIE0,MM7CLREAMOVR7,#7FHMOVR6,#0MM8:DJNZR6,MM8DJNZR7,MM8SETBEAJNB0F0H,MM9MOVP1,#11100001BSJMPMM10MM9:MOVP1,#11001100BMOVR0,AMM10: POP01HPOP00HRETI第四节 串行I/O接口及其应用串行通信的概念及数据格式 异步方式 同步方式D0D1D2D3D4D5D6D7标志位停止位空闲D6

18、标志停停D0D0D6D7D8空闲起始位同步字符1同步字符2数据块(几个字节)校验符1校验符2起始结束与串行口有关的特殊功能寄存器 串行口数据缓冲器SBUF串行口为接收方式时,SBUF为数据接收缓冲器串行口为发送方式时,则为数据发送缓冲器。 串行口控制寄存器SCON 电源控制寄存器PCON:PCON.7=SMODSM0SM1SM2RENTB8RB8TIRISCON.7 .6 .5 .4 .3 .2 .1 SCON.0SCON:SM0,SM0 定义串行口四种工作方式SM2 多机通信时的接收允许标志位REN 串行接收允许位TB8 方式2、方式3中为发送的第九位数据,传送用户定义的信息RB8 方式2、

19、方式3中为接收的第九位数据TI 发送一帧数据的结束标志位兼发送中断申请标志位RI 接收一帧数据的结束标志位兼接收中断申请标志位串行口的四种工作方式 串行口方式0移位寄存器方式用外接移位寄存器芯片扩展并行I/O口方式D0D7DATACLKSTBCD4094QS并行输出口P3.0 /RXDP3.1 /TXDP1.08031D0D7DATACLKSTBCD4094QS并行输出口DATACLK并行输出口P3.0 /RXDP3.1 /TXD8031QAQHCLK74LS164并行输出口DATA74LS164CLKSTBCLKQAQHABAB串行口方式串行口方式0输出状态的两种电路图输出状态的两种电路图P8P1CLKCD4014DS并行输入口P3.0 /RXDP3.1 /TXDP1.78031P8P1CLKCD4014DS并行输入口CLK串行口方式串行口方式0输入状态的两种电路图输入状态的两种电路图Q8Q8P/SP/SP/SHACLK74LS165SIN并行输入口P3.0 /RXDP3.1 /TXD

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论