第4章中断系统的C51编程课件_第1页
第4章中断系统的C51编程课件_第2页
第4章中断系统的C51编程课件_第3页
第4章中断系统的C51编程课件_第4页
第4章中断系统的C51编程课件_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

第4章51单片机中断系统的C51编程4.1中断系统结构与中断控制4.2中断优先级与中断函数4.3外部中断源的C51编程4.4实验4.151单片机中断系统结构与中断控制5个中断源外部中断:外部中断0/INT0外部中断1/INT1定时器/计数器溢出中断:定时器/计数器0TF0定时器/计数器1TF1串行口中断:串行口RI、TI中断控制设置了4个专用寄存器用于中断控制。。(1)定时器控制寄存器(TCON)(2)串行口控制寄存器(SCON)(3)中断允许控制寄存器(IE)(4)中断优先级控制寄存器(IP)4.2中断优先级与中断函数

优先级排列如下(从高到低):

外部中断0定时器/计数器0溢出外部中断1定时器/计数器1溢出串行口中断中断函数的结构

定义中断服务函数的一般形式为:

函数名()interrupt()n外部中断0中断、定时器/计数器0溢出中断、外部中断1中断、定时器/计数器1溢出中断、串行口中断对应的中断类型号分别为0、1、2、3、4。4.3外部中断源的C51编程51单片机提供了2个外部中断源:

外部中断0请求,占用P3.2引脚,其中断请求号为0。

外部中断1请求,占用P3.3引脚,其中断请求号为2。外部中断源的初始化时通过设置相应的特殊功能寄存器的相应位来实现的。(1)TCON寄存器中的IT0、IT1位外部中断0和外部中断1的中断触发方式控制位。如:IT0=0;//外部中断0为电平触发方式

IT1=1;//外部中断1为脉冲触发方式(2)IP寄存器中的PX0、PX1位外部中断0和外部中断1的中断优先级的设定。如:PX0=0; //设定外部中断0为低级中断PX1=1; //设定外部中断1为高级中断(3)IE寄存器中的EA、EX0、EX1位EA为中断允许总控制位;EX0、EX1为外部中断0中断和外部中断1中断的中断允许位。如:EA=1; //开放总的中断控制EX0=1; //允许外部中断0中断EX1=0; //禁止外部中断1中断【例4-1】初始状态时低4位灯亮,高4位的灯灭,编程实现按一下S0,P1口的发光状态发生反转。#include<reg51.h>voidmain(){ P1=0XF0; //高4位灭、低4位亮IT1=1; //脉冲触发方式

EA=1;EX1=1; //开放相应的中断while(1); //等待中断}voidwint0(void)interrupt2//2—外1{ P1=~P1;}【例4-2】利用S0按钮控制P1口的灯,要求每按一下就点亮一盏灯(其余的灯是灭的)。#include<reg51.h>#include<intrins.h>//内部函数

bitflag;//中断标志unsignedcharledstatus;voidwint1()interrupt2 {flag=1;}voidmain(void){ P1=0xff;ledstatus=0xfe;IT1=1;EA=1;EX1=1;while(1){if(flag){P1=ledstatus;ledstatus=_crol_(ledstatus,1); flag=0;}}}【例4-3】当S0动作时,P1.0端口的电平反向,当外S1动作,P1.7端口的电平反向#include<reg51.h>sbitLED0=P1^0;sbitLED7=P1^7;voidIS0(void)interrupt0 //外部中断0{LED0=~LED0;}voidIS1(void)interrupt2 //外部中断1{LED7=~LED7;}voidmain(){ P1=0xFF;IT0=1;IT1=1;EX0=1;EX1=1;EA=1;while(1);}修改:(1)S0控制P1.0—P1.3的灯,S1控制P1.4—P1.7的灯。(2)按下S0后,点亮8只LED;按下S1后,变为闪烁状态。【例4-4】P1口控制的灯按一定的频率闪烁,S0动作,实现单灯左移,而左移3圈结束。【例4-5】首先通过P1.7口点亮发光二极管D1,然后外部输入一脉冲串,则发光二极管D1亮、暗交替。#include<reg51.h>sbitP1_7=P1^7;voidinterrupt0()interrupt0using2{ P1_7=~P1_7;}voidmain(){ EA=1;IT0=1;EX0=1;

温馨提示

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

评论

0/150

提交评论