文档库 最新最全的文档下载
当前位置:文档库 › 80C51单片机扩展外部中断源的几种方法

80C51单片机扩展外部中断源的几种方法

80C51单片机扩展外部中断源的几种方法
80C51单片机扩展外部中断源的几种方法

单片机期末考试试卷以及参考答案

单项选择 1. PC的内容是: A 当前指令前一条指令的地址 B 下一条指令的地址 C 控制器中指令寄存器的地址 D 当前正在执行指令的地址 2. 在MOVX A,@DPTR指令中,DPTR的内容是 A 片内数据存储器地址 B 片外程序存储器地址 C 片内程序存储器地址 D 片外数据存储器地址 3.以下指令没有错误的是 A PUSH DPTR B SUBB R3,R0 C POP DPTR D ADD A,@R1 https://www.wendangku.net/doc/8915655937.html,B是 A 总线标准 B 可编程并行接口 C 可编程串行接口 D 译码器 5.在MCS-51中,为实现P0口数据和低位地址分时复用,应使用 A 地址寄存器 B 地址译码器 C 地址缓冲器 D 地址锁存器 6.MCS-51单片机启动复位后,程序计数器PC的内容为 A 0000H B 1000H C 2000H D 3000H 7.不能使MCS-51单片机的SP改变的指令是 A ANL 指令 B PUSH指令 C POP指令 D LCALL指令 8.MCS-51单片机PUSH指令的操作数是 A 位操作数 B 双字操作数 C 字节操作数 D 字操作数 9. 8031片外扩展数据存储器的最大容量是 A 16K B 64K C 8K D 32K 10.在LED显示中,为了输出位控和段控信号,应使用指令 A MOVX B MOV C MOVC D XCH 11.MCS-51执行子程序返回指令,从栈顶弹出的断点地址送给 A DPTR B CY C SP D PC 12.MCS-51执行出栈指令过程中,SP A 加2 B 减2 C 减1 D 加1 13.MCS-51的定时器/计数器是 A 两个16位的加法计数器 B 1个16位的加法计数器 C 两个16位的减法计数器 D 1个16位的减法计数器 14.MCS-51的MOV A,20H指令的源操作数的寻址方式是 A 直接寻址 B 位寻址 C 立即寻址 D 间接寻址 15.以下关于8155的叙述哪一个是错误的 A 是一个可编程的并行接口 B 有256个单元的RAM C 是一个可编程的接口芯片 D 是一个可编程的串行接口 16.D/A是 A 模数转换器 B 解调器 C 调制器 D 数模转换器

AVR单片机教程13—第十三课 ATMEAG16L的外部中断编程实践

—————————————————————————— 第十三课ATMEAG16L的外部中断编程实践 本教程节选自周兴华老师《手把手教你学AVR单片机C程序设计》教程,如需转载,请注明出处!读者可通过当当网、淘宝网等网站购买本教程,如需购买配书 实验器材,可登陆周兴华单片机培训中心网购部自助购买! Atmega16L具有多达20个中断源,这里我们进行外部中断的实验,其它的等到介绍到相关内容时可进行适当的实验。 1.外部中断0 外部中断0由引脚INT0(PIND2)触发。如果INT0引脚按照MCUCR寄存器中的ISC01、ISC00设置的方式发生跳变,则不管是否lNT0中断使能,INT0中断标志位INTF0都将置位。如果SREG 寄存 器的全局中断位I和通用中断控制寄存器GICR中的INT0中断使能位INT0置位,则单片机培训开始 执行中断程序。在进入中断服务程序时,INTF0被硬件清零。必须指出,不管INT0(PIND2)引脚 方向位设置如何,只要INT0引脚发生规定的跳变,都会触发中断。中断标志位INTF0只在满足发生 中断的条件时置位,一旦条件变化,INTF0被硬件清零。向INTF0位写“1”也会对其清零。 2.外部中断1 外部中断0由引脚INT1(PIND3)触发。如果INT1引脚按照MCUCR寄存器中的ISC11、ISC10设置的方式发生跳变,则不管是否lNT1中断使能,INT1中断标志位INTF1都将置位。如果SREG 寄存 器的全局中断位I和通用中断控制寄存器GICR中的INT1中断使能位INT1置位,则开始执行中断程 序。在进入中断服务程序时,INTF1被硬件清零。必须指出,不管INT1(PIND3)引脚方向位设置 如何,只要INT1引脚发生规定的跳变,FPGA培训都会触发中断。中断标志位INTF1只在满足发生 中断的条件时置位,一旦条件变化,INTF1被硬件清零。向INTF1位写“1”也会对其清零。 3.外部中断2 外部中断2由引脚INT2(PINB2)触发。如果INT2引脚按照MCUCR寄存器中的ISC2设置的方式发生跳变,则不管是否lNT2中断使能,INT2中断标志位INTF2都将置位。如果SREG 寄存器的全局 中断位I和通用中断控制寄存器GICR中的INT2中断使能位INT2置位,则开始执行中断程序。在进 入中断服务程序时,INTF2被硬件清零。必须指出,不管INT2(PINB2)引脚方向位设置如何,只 要INT2引脚发生规定的跳变,都会触发中断。中断标志位INTF2只在满足发生中断的条件时置位, 一旦条件变化,INTF2被硬件清零。向INTF1位写“1”也会对其清零。 8.2.1 INT1中断实验

51单片机独立按键程序查询法和外部中断两种

//以下程序都是在VC++6.0 上调试运行过的程序,没有错误,没有警告。 //单片机是STC89C52RC,但是在所有的51 52单片机上都是通用的。51只是一个学习的基础平台,你懂得。 //程序在关键的位置添加了注释。 //用//11111111111111111代表第一个程序。//2222222222222222222222222代表第二个程序,以此类推 //1111111111111111111111111111111111111111111111111111111111111111111 //1111111111111111111111111111111111111111111111111111111111111111111 /****************************************************************************** * * 实验名: 左右流水灯实验 * 使用的IO : LED使用P2,键盘使用P3.1 * 实验效果: 按下K1键, * 注意: ******************************************************************************* / #include #include #define GPIO_LED P2 sbit K1=P3^1; void Delay10ms( ); //延时10ms /****************************************************************************** * * 函数名: main * 函数功能: 主函数 * 输入: 无 * 输出: 无 ******************************************************************************* / void main(void) { unsigned int i,j; j=0xfe; //1111_1110 while(1) { GPIO_LED=j; if(K1==0) //检测按键K1是否按下 { Delay10ms(); //消除抖动 if(K1==0) {

51单片机中断扩展

51单片机扩展中断的四种方法 MCS—51系列单片机内部只有两个外部中断源输入端,当外部中断源多于两个时 ,就必须进行扩展,下面介绍两种简单的扩展方法: 一、采用硬件请求和软件查询的方法: 这种方法是:把各个中断源通过硬件“或非(高有效,如CD4002)”(与,低有效)门引入到单片机外部中断源输端(INT0或INT1),同时再把外部中断源送到单片机的某个输入输出端口,这 样当外部中断时,通过“或非”(与)门引起单片机中断,在中断服务程序中再通 过软件查询,进而转相应的中断服务程序。显然,这种方法的中断优先级取决于 软件查询的次序。其硬件连接和软件编程如下: Void zhongduan (void) interrupt 0 using 3 //中断函数 { EX0=0;//关中断 If(P0_0=1) { *****}//中断查询 If(P0_1=1) { *****}//中断查询 If(P0_2=1) { *****}//中断查询 EX0=1;开中断 } 二、用普通二极管构成中断选择

扩展的8个外部中断源均通过二极管向I N T(x=0或I)请求中断。当某个外部中断源请求中断服务时输出低电平电平,单片机满足响应外部中断(I N T)请求条件,响应中断,程序立即转向I NT 对应的中断入口地址处开始执PI.0~P1.7口外中断源的状态,以识别提出请求的外扩中断源,并转向中断服务程序为其服务,其查询顺序即顺序。在图中,是选用PI.0~PI.7作为外扩中断源请求的状态信息输入端口。 有点类似第一种方法。 三、用定时器/计数器作外部中断 单片机的定时器/计数器是一个加一计数器,每当计数输入端有一个“1—0”的负 跳变时,计数器加一,当加一计数器溢出时,就向CPU发出中断,利用这个特性 来扩展中断的方法是:首先把定时器/计数器设置成计数方式,并预置满值,把 外部中断源输入到P3口第4引脚或第5引脚(计数器输入端),这样就可以利用 定时器/计数器作为单片机外部中断了。注意这种方法的中断服务的入口地址应 在000BH或001BH。 四、用专用中断扩展芯片8259A 8259A是可编程中断控制接口,单片机控制八级中断。在系统中还可采用级联方式,一个主片可级联8个从片,这样在程序小于8K的情况,就可以用一片单片机实现了,而不需要用两片单片机控制,还要进行单片机点对点

单片机期末考试试题

单片机期末考试试题 Company Document number:WUUT-WUUY-WBBGB-BWYTT-1982GT

单片机期末考试试题 01、单片机是将微处理器、一定容量的 RAM 和ROM以及?? I/O?? 口、定时器等电路集成在一块芯片上而构成的微型计算机。 2、单片机89C51片内集成了???? 4??? KB的FLASH ROM,共有??? 5???? 个中断源。 3、两位十六进制数最多可以表示??? 256?? 个存储单元。 4、89C51是以下哪个公司的产品(?? C?? ) A、INTEL??? B、AMD??? C、ATMEL?? D、PHILIPS 5、在89C51中,只有当EA引脚接??? 高??? 电平时,CPU才访问片内的Flash ROM。 6、是非题:当89C51的EA引脚接低电平时,CPU只能访问片外ROM,而不管片内是否有程序存储器。T 7、是非题:当89C51的EA引脚接高电平时,CPU只能访问片内的4KB空间。F 8、当CPU访问片外的存储器时,其低八位地址由?? P0?? 口提供,高八位地址由?? P2?? 口提供,8位数据由??? P0?? 口提供。 9、在I/O口中,??? P0??? 口在接LED时,必须提供上拉电阻,??? P3?? 口具有第二功能。 11、是非题:是读端口还是读锁存器是用指令来区别的。T 12、是非题:在89C51的片内RAM区中,位地址和部分字节地址是冲突的。F 13、是非题:中断的矢量地址位于RAM区中。F 15、89C51具有??? 64?? KB的字节寻址能力。 16、是非题:在89C51中,当CPU访问片内、外ROM区时用MOVC指令,访问片外RAM区时用MOVX 指令,访问片内RAM区时用MOV指令。T 17、在89C51中,片内RAM分为地址为?? 00H~7FH?? 的真正RAM区,和地址为80H~FFH的特殊功能寄存器(SFR) 区两个部分。 18、在89C51中,通用寄存器区共分为?? 4?? 组,每组??? 8?? 个工作寄存器,当CPU复位时,第?? 0?? 组寄存器为当前的工作寄存器。 19、是非题:工作寄存器区不允许做普通的RAM单元来使用。F 20、是非题:工作寄存器组是通过置位PSW中的RS0和RS1来切换的。T

ATMega16单片机外部中断的使用

ATMega16单片机外部中断的使用[日期:2010-09-24 ] [来源:本站原创作者:佚名] [字体:大中小] (投递新闻) // Crystal: 7.3728Mhz ,功能:学习外部中断0的程序 #include #include #define LED_COM PORTA ^= (1 << PA6) // void port_init(void) { PORTA = 0x40; DDRA = 0x40; PORTB = 0x00; DDRB = 0x00; PORTC = 0x00; //m103 output only DDRC = 0x00; PORTD = 0x04; DDRD = 0x00; } #pragma interrupt_handler int0_isr:2 void int0_isr(void)

LED_COM; } //call this routine to initialize all peripherals void init_devices(void) { //stop errant interrupts until set up CLI(); //disable all interrupts port_init(); MCUCR = 0x00; GICR = 0x40; TIMSK = 0x00; //timer interrupt sources SEI(); //re-enable interrupts //all peripherals are now initialized } void main() { init_devices(); while(1)

关于51单片机外部中断响应

关于51单片机外部中断响应 外部中断方式最好设为下降沿方式,特别是中断引 脚接按键的情况。 外部下降沿中断:SETB IT0。每个机器周期都由硬 件对引脚自动采样,若连续在2个周期采样到电平从高 到低,则认定有中断请求,IE0=1。IE0会一直保持到该 中断请求被CPU响应,响应前都不会自动清零,只有在 响应后硬件才自动将IE0清零IE0=0。 外部低电平中断:CLR IT0。当中断引脚为低电平时,并保持一个机器周期,硬件自动置IE0=1。如果在下一个 周期采样到中断引脚为高电平时,硬件自动将IE0清0。中断标志位自动清0条件:下降沿中断只有CPU响应中断同时才会清0,否则一直保持。低电平中断:任何时候 当外部中断引脚为低电平时,IE0=1;为高电平时, IE0=0,所以不需要响应中断才会清0,与引脚状态有关。注意:当EA=0时,中断引脚为低电平也不会将IE0自动置1,只有EA=1时才会自动置1 单片机设计中有两个CPU时,主CPU控制副CPU中断时应注意:主CPU发出中断信号的时候,副CPU能够及时接收到,也就是副CPU工作状态不允许在关中断CLR EA的程序中运行。只要副CPU不工作在关中断的程序中运行,

主CPU发出的中断信号副CPU都能够及时响应中断。还有就是如果采用下降沿方式,主CPU发出的高低电平之间间隔时间只需一条NOP指令。所以应该尽可能考虑这个时差问题。有时候就是副CPU还没有运行完屏蔽中断的程序的时候,主CPU就发出了中断信号,造成副CPU无法中断或时好时坏。 键盘中断到今天为止终于可以告一段落了。 现在才知道,程序架构有了并不代表程序就容易完成,更多的时间在于调试,防真,再调试,如此循环。所以遇到问题要有耐心,信心,细心。做到这三点,不行也得行!!!!

单片机期末考试试题

物理与电气工程学院C51单片机试卷4 一、填空题(每小题1分,共45分) 1、串行口方式2接收到的第9位数据送寄存器的位中保存。 2、MCS-51系列单片机为位单片机。 3、8031的中断源有、、、、、有个中断优先级。 4、MCS-51系列单片机的典型芯片分别为、、。 5、利用8255A可以扩展个并行口,其中条口线具有位操作功能。 6、由8031组成的单片机系统在工作时,EA引脚应该接。 7、串行口的方式0的波特率为。 8、8031内部有___________个定时器,___________个并行口和___________个串行口。 9、8031的异步通信口为(单工/半双工/全双工),若传送速率为每秒120帧,每帧10位,则波特率为____ 。 10、8031的口为双功能口。 11、8031的口为高8位地址总线口。 12、欲使P1口的低4位输出0,高4位不变,应执行一条命令。 13、KeiL C51软件中,工程文件的扩展名是__________,编译连接后生成可烧写的文件扩展名是____________。 14、MCS-51单片机中,在IP=0x00时,优先级最高的中断是_______________,最低的是___________。 15、MCS—51单片机的P0—P4口均是并行 I/O口,其中的P0口和P2口除了可以进行数据的输入、输出外,通常还用来构建系统的和,在P0—P4口中,为真正的双向口,为准双向口。 16、MCS—5l单片机的堆栈区只可设置在存储区(器)。 17、单片机的复位操作是__________(高电平/低电平),单片机复位后,中断允许寄存器IE的值是________。 18、8255A内部控制电路还可以分成两组:A组和B组。其中A组控制的对象是,B 组控制的对象是。 19、若采用6MHz的晶体振荡器,则MCS-51单片机的振荡周期为________,机器周期为 ____________。 20、A/D芯片选择最主要的参数是__________和_____________。 21、C51定义可寻址位,使用关键字为___ _ 。 25、变量tmp=0x15,经运算tmp>>=4;后的tmp值为___ _ 。 26、C51数组的下标是从__ __开始的。

基于51单片机的外部中断实例

51单片机一般有两个外部中断输入端,并允许外部中断源以低电平或负边沿两种触发方式输入中断请求信号。本例就是利用一只按钮,在按下时产生的负边沿触发外部中断。 1 硬件设计 将一只按钮接在外部中断输入0(12脚),八支发光二极管分别接在P0.0~P0.7,其电路如下图所示。 ⒉软件设计 通过按下按钮SW触发外部中断,从而改变发光二极管D1~D8的亮、灭,当第一次按下按钮时,只有D1发光二极管亮;第二次按下按钮时,只有D2发光二极管亮;第三次按下按钮时,只有D3发光二极管亮;……第八次按下按钮时,只有D8发光二极管亮;第九次按下按钮时,D1~D8发光二极管全亮;第十次按下按钮时,D1~D8发光二极管全都不亮;第十一次按下按钮时,只有D1发光二极管亮; 按钮SW触发外部中断,从而控制D1~D8亮灭的详细C51程序如下。 /***************外部中断****************/ #include unsigned char count=0; //外部中断计数 unsigned char F0=0; main(){ F0=0;

IE=0X81;//打开外部中断0和总中断使能或者(EX0=1;EA=1) IT0=1; //标志位清零,开中断 ,边沿激活(或者TCON|=0X01) while(1) { while(F0==0); switch(count%10){ case(0): P0=0XFF;break; case(1): P0=0XFE;break; case(2): P0=0XFD;break; case(3): P0=0XFB;break; case(4): P0=0XF7;break; case(5): P0=0XEF;break; case(6): P0=0XDF;break; case(7): P0=0XBF;break;case(8): P0=0X7F;break; case(9): P0=0X00;break; } F0=0; } } void int_int0() interrupt 0 //外部中断 { count++;F0=1; }

习题5答案单片机系统扩展与接口技术

习题5答案单片机系统扩展与接口技术 一、选择题 1、地址空间3000H~37FFH共有 B 存储单元。 A.1K B.2K C.4K D.8K 2、在生产过程中完成程序写入的只读存储器称为 A 。 A.掩膜ROM B.PROM C.EPROM D.E2PROM 3、805l单片机系统扩展时使用的锁存器用于锁存B 。 A.高8位地址 B.低8位地址 C.8位数据. D.ALE信号 4、使用线选法扩展3片2732作外部程序存储器,需要使用 C 位地址线。 A.13 B.14 C.15 D.16 5、8155中的定时器/计数器是 D 。 A.16位加法计数器 B.16位减法计数器 C.14位加法计数器

D.14位减法计数器 6、定时器/计时器0的初始化程序如下: MOV TMOD,#06H MOV TH0,#0FFH MOV TL0,#0FFH SETB EA SETB ET0 执行该程序段后,把定时器/计时器0的工作状态设置成为 D A.工作方式0,定时应用,定时时间2u s,中断禁止 B.工作方式1,计数应用,计数值255,中断允许 C.工作方式2,定时应用,定时时间510 u s,中断禁止 D.工作方式2,计数应用,计数值1,中断允许 7、MCS-5 l单片机I/O编址采用的是统一编址的方法,因此 B 。 A.有专门的I/O操作指令 B.I/O寄存器与存储单元同等对待 C.地址空间与存储器空间是相互分开的 D.使用MOVX指令访问存储器,而使用MOVC指令进行I/O数据传送8、8155是一个可编程的I/O接口芯片,“可编程”是指 D 。 A.有14位可控定时器/计数器 B.芯片内包含有256字节的RAM C.只能使用中断编程的方法进行I/O数据传送 D.使用命令字以程序方法设置I/O数据传送的方式 9、访问接口,应在程序中使用 B 。 A.MOV指令 B.MOVX指令 C.MOVC指令 D.SWAP指令

单片机期末考试·试题含答案6-(1)

机模拟试卷006及答案 一、填空题(每空1分,共10分) 一、填空(每题2分,共10分) 1、MCS-51单片机片内有 5 个中断源,其中 2 个外部中断源。 2、设定T1为计数器方式,工作方式2,则TMOD中的值为 60H(高位为6即可)。 3、若IT1=0,当引脚P3.2为低电平的时候,INT0的中断标志位IE0才能复位。 4、在接口电路中,把已经编址并能进行读写操作的寄存器称为端口。 5、在单片机中,为实现数据的I/O传送,可使用三种控制方式,即无条件传送方式、查询方式和中断方式 二、选择题(每小题2分,共10分) 1、寻址空间为数据程序存储器所用的指令是(A): A. MOVX B.MOV C.MOVC D.ADDC

2、执行中断返回指令,从堆栈弹出地址送给(C). A. A B. CY C. PC D. DPTR 3、七段共阴极发光两极管显示字符‘H’,段码应为(E) A.67H B. 6EH C. 91H D. 76H E.90H 4、在串行通信中,8031中发送和接收的寄存器是( B) 。 A.TMOD B. SBUF C. SCON D. DPTR 5、波特的单位是(B) A. 字符/秒 B. 位/秒 C. 帧/秒 D. 字节/秒 三、指令题(每小题4分,共16分) 1、将20H单元清零 MOV 20H,#00H 或 CLR A MOV 20H, A 2、将片外RAM2000H中的低字节与片内20H中的低字节交换。 MOV DPTR,#2000H XCHD A,@R0

MOV R0,#20H MOVX @DPTR,A MOVX @DPTR,A 3、已知某端口地址为2FFFH,将片内RAM20H的内容写到该端口中。 MOV A, 20H MOVX DPTR, #2FFFH MOVX @DPTR, A 4、把DPTR的内容压入堆栈 PUSH DPH PUSH DPL 四、填写下表(每空2分,共10分)

单片机期末考试试卷及答案

一、填空题 1、设X=5AH,Y=36H,则X与Y“或”运算为7EH,X与Y的“异或”运算为6CH。 2、若机器的字长为8位,X=17,Y=35,则X+Y=110100,X-Y=11101110(要求结果写出二进制形式)。 3、单片机复位后,堆栈指针SP的值是07h。 4、若采用6MHz的晶体振荡器,则MCS-51单片机的振荡周期为0.5us,机器周期为2us。 5、一个函数由两部分组,即说明部分和语句部分。 6、C语言中输入和输出操作是由库函数scanf和printf等函数来完成。 7.当MCS-51引脚 ALE 信号有效时,表示从Po口稳定地送出了低8位地址. 8.MCS-51的堆栈是软件填写堆栈指针临时在_片内数据存储_器 内开辟的区域. 9.MCS-51有4组工作寄存器,它们的地址范围是00H-1FH 。 10.MCS-51片内 20H-2FH 范围内的数据存储器,既可以字节寻址又可以位寻址. 11.计算机的系统总线有数据总线、地址总线、控制总线。 12.一个机器周期等于6个状态周期,振荡脉冲2分频后产生的时钟信号的周期定义为状态周期。 13、单片机的复位操作是_高电平,寄存器IE的值是_EA、ES、ET1、EX1、ET0、EX0_。 14、若选择内部程序存储器,应该设置为高电平(高电平/低电平),那么,PSEN信号的处理方式为不用。 15、单片机程序的入口地址是0000H ,外部中断1的入口地址是0013H 。 16、片机的内部RAM区中,可以位寻址的地址范围是20H-2FH ,特殊功能寄存器中,可位寻址的地址是能被8整除的地址。 17、eiL C51软件中,工程文件的扩展名是UV2,编译连接后生成可烧写的文件扩展名是HEX。 18、CS-51单片机中,在IP=0x00时,优先级最高的中断是外部中断,最低的是串行口中断。 19、CS—51单片机的P0—P4口均是并行 I/O口,其中的P0口和P2口除了可以进行数据的输入、输出外,通常还用来构建系统的数据总线和地址总线,在P0—P4口中,P0为真正的双向口, P1-P3 为准双向口。 20、S—5l单片机的堆栈区只可设置在片内数据存储区(器)

单片机外部中断线的作用

单片机外部中断线的作用 这张图是一条外部中断线或外部事件线的示意图,图中信号线上划有一条斜线,旁边标志19字样的注释,表示这样的线路共有19套。图中的蓝色虚线箭头,标出了外部中断信号的传输路径。 首先外部信号从编号1的芯片管脚进入,经过编号2的边沿检测电路,通过编号3的或门进入中断挂起请求寄存器,最后经过编号4的与门输出到NVIC中断检测电路,这个边沿检测电路受上升沿或下降沿选择寄存器控制,用户可以使用这两个寄存器控制需要哪一个边沿产生中断,因为选择上升沿或下降沿是分别受2个平行的寄存器控制,所以用户可以同时选择上升沿或下降沿,而如果只有一个寄存器控制,那么只能选择一个边沿了。 接下来是编号3的或门,这个或门的另一个输入是软件中断/事件寄存器,从这里可以看出,软件可以优先于外部信号请求一个中断或事件,即当软件中断/事件寄存器的对应位为“1”时,不管外部信号如何,编号3的或门都会输出有效信号。 一个中断或事件请求信号经过编号3的或门后,进入挂起请求寄存器,到此之前,中断和事件的信号传输通路都是一致的,也就是说,挂起请求寄存器中记录了外部信号的电平变化。 外部请求信号最后经过编号4的与门,向NVIC中断控制器发出一个中断请求,如果中断屏蔽寄存器的对应位为“0”,则该请求信号不能传输到与门的另一端,实现了中断的屏蔽。明白了外部中断的请求机制,就很容易理解事件的请求机制了。图中红色虚线箭头,标出了外部事件信号的传输路径,外部请求信号经过编号3的或门后,进入编号5的与门,这个与门的作用与编号4的与门类似,用于引入事件屏蔽寄存器的控制;最后脉冲发生器的一个跳变的信号转变为一个单脉冲,输出到芯片中的其它功能模块。从这张图上我们也可以知道,从外部激励信号来看,中断和事件的产生源都可以是一样的。之所以分成2个部分,由于中断是需要CPU参与的,需要软件的中断服务函数才能完成中断后产生的结果;但是事件,是靠脉冲发生器产生一个脉冲,进而由硬件自动完成这个事件产生的结果,当然相应的联动部件需要先设置好,比如引起DMA操作,AD转换等;

单片机外部中断(汇编)

由AT89S52内部定时器0,按方式1工作,即作为16位定时器使用每0.05秒T1溢出中断一次。P1口的P1.0~P1.8分别接8个发光二极管。要求编写程序模拟一时序控制装置。L4,L5亮→L3,L6亮→L2,L7亮→L1,L8亮→L2,L7亮→L3,L6亮→L4,L5亮→L1,L2,L3,L4亮→L5,L6,L7,L8亮→全亮→全灭,共10种状态,每种状态的持续时间为0.5秒。然后再从头循环。 由键盘生成外部中断信号,当任意键按下时,为外部中断请求信号,此时L2,L4,L6,L8亮,持续时间为5秒。 ORG 0000H LJMP MAIN ORG 000BH LJMP PIT0 ORG 003H LJMP PIINT0 ORG 0050H ASCTAB:DB 7EH,0BDH,0DBH,0E7H,0DBH,0BDH,07EH,0AAH,55H,00H,0FFH MAIN:MOV P1,#0EH MOV TMOD,#11H SETB PX0;INT0为高优先级 CLR PT0 ;T0为低优先级 SETB IT0;INT0边沿触发 SETB EX0;允许INT0中断 MOV TH0,#4CH MOV TL0,#00H MOV R3,#0BH MOV R2,#14H MOV DPTR,#ASCTAB SETB TR0 SETB ET0 SETB EA HERE:LJMP HERE PIT0:CLR TR0 MOV TH0,#4CH MOV TL0,#00H DJNZ R2,M MOV R2,#14H MOV A,#00H MOVC A,@A+DPTR MOV P0,A INC DPTR DJNZ R3,M

单片机期末考试试题(答案)

单片机期末考试试题(答案) 01、单片机就是将微处理器、一定容量得 RAM与ROM以及 I/O 口、定时器等电路集成在一块芯片上而构成得微型计算机. 2、单片机89C51片内集成了 4 KB得FLASH ROM,共有 5 个中断源。 3、两位十六进制数最多可以表示 256 个存储单元。 4、89C51就是以下哪个公司得产品?(C) A、INTEL B、AMD C、ATMEL D、PHILIPS 5、在89C51中,只有当EA引脚接高电平时,CPU才访问片内得Flash ROM. 6、就是非题:当89C51得EA引脚接低电平时,CPU只能访问片外ROM,而不管片内就是否有程序存储器。T 7、就是非题:当89C51得EA引脚接高电平时,CPU只能访问片内得4KB空间。F 8、当CPU访问片外得存储器时,其低八位地址由P0 口提供,高八位地址由P2 口提供,8位数据由 P0 口提供。 9、在I/O口中,P0口在接LED时,必须提供上拉电阻, P3 口具有第二功能。 10、就是非题:MCS-51系列单片机直接读端口与读端口锁存器得结果永远就是相同得。F 11、就是非题:就是读端口还就是读锁存器就是用指令来区别得。T 12、就是非题:在89C51得片内RAM区中,位地址与部分字节地址就是冲突得。F 13、就是非题:中断得矢量地址位于RAM区中。F 14、MCS-51系列单片机就是属于( B )体系结构. A、冯诺依曼 B、普林斯顿 C、哈佛 D、图灵 15、89C51具有64 KB得字节寻址能力。 16、就是非题:在89C51中,当CPU访问片内、外ROM区时用MOVC指令,访问片外RAM区时用MOVX指令,访问片内RAM区时用MOV指令.T 17、在89C51中,片内RAM分为地址为 00H~7FH得真正RAM区,与地址为80H~FFH 得特殊功能寄存器(SFR)区两个部分。 18、在89C51中,通用寄存器区共分为 4 组,每组8个工作寄存器,当CPU复位时,第0组寄存器为当前得工作寄存器. 19、就是非题:工作寄存器区不允许做普通得RAM单元来使用。F

最新单片机课程设计 外部中断控制流水灯变化

单片机课程设计报告 设计题目:外部中断控制流水灯变化 姓名

一.设计目的 通过学习单片机工作原理和各种工作方式及各管脚的功能,想通过P3口的俩管脚P3.2和P3.3第二功能,即外部中断来使CPU响应,达到控制流水灯的目的。 二.设计要求 主程序实现8个灯从P2.0到P2.7依次亮灭,灯与灯 之间间歇约0.5秒.当P3.3口是低电平时,灯从P2.7到P2.0依次亮灭,灯与灯之之间间歇约0.5秒.循环3次返回主程序.当P3.2口是低电平时,灯全灭,当P3.2口是高电平时,返回主程序.当同时使P3.2和P3.3为低电平时,灯全灭,因为外部中断0的优先级高于外部中断1的优先级. 三.MCS-51的硬件结构: 四.P3口的状态 P3口是双功能口,默认为第一功能(通用I/O口),通过编程可设置第二功能。

五.中断传送方式: 中断方式则是在外设为数据传送做好准备之后,就向CPU发出中断请求信号(相当于通知CPU)。CPU接收到中断请求信号之后立即作 出响应,暂停正在执行的原程序(主程序),而转去外设的数据输入输 出服务,待服务完之后,程序返回。CPU再继续执行被中断的原程序。六.外部中断 外部中断是指从单片机外部引脚输入请求信号。输入/输出的中断请求、实时事件的中断请求、掉电和设备故障的中断请求都可以作为 外部中断源,从引脚INT0、INT1输入。 外部中断请求、有两种触发方式:电平触发及跳变(边沿)触发。 这两种触发方式可以通过对特殊功能寄存器TCON编程来选择。七.电路原理逻辑图如下:

P3.3 P3.2 灯亮情况 0 0 全灭 0 1 全灭 1 0 从P2.0到P2.7依次亮灭 1 1 从P2.7到P2.0依次亮灭八.实验硬件电路图如下

51单片机外部中断

单片机技术与应用 实验报告 实验名称:外部中断(交通灯与急救车) 姓名: 学号: 班级: 指导老师: 完成时间:2012年5月5日

一.实验要求 以74LS273作为输出口,控制4个双色LED灯(可发红,绿,黄光),模拟交通灯管理,并允许急救车优先通过的要求。有急救车到达时,两向交通信号为全红,以便让急救车通过。假定急救车通过路口时间为10秒,急救车通过后,交通灯恢复中断前状态。本实验以按键为中断申请,表示有急救车通过。 二.实验目的 1.学习外部中断技术的基本使用方法。 2.学习中断处理程序的编程方法。 三.实验框图

四.实验程序 Green_NB0 BIT P1.0 Green_DX0 BIT P1.1 Green_DX1 BIT P1.2 Green_NB1 BIT P1.3 Red_NB0 BIT P1.4 Red_DX0 BIT P1.5 Red_DX1 BIT P1.6 Red_NB1 BIT P1.7 Scd EQU 30H ;秒 ORG 0000H JMP START ORG 0003H JMP INIT0 ORG 000BH JMP TIME0 START: MOV Scd, #00H MOV 31H, #00H MOV DPTR, #0F200H ; MOV P1, #69H ;初始亮灯情况:东西绿灯,南北红灯 MOV A,P1 MOVX @DPTR,A CLR 00H CLR F0 MOV TMOD, #01H ;设定定时器1 MOV IE, #83H ;设定中断使能定时器中断0、外部中断0和1 MOV SP, #60H MOV TH0, #30H MOV TL0, #0B0H SETB TR0 LOOP: JNB F0,N0 ;F0用户标志位,此处用作东西绿灯闪烁标识,1为绿灯闪烁 CPL Green_DX0 ;绿灯闪三秒 CPL Green_DX1 MOV A,P1 MOVX @DPTR,A CALL DELAY500MS JMP N1 N0: JNB 00H,N1 ;00H,值为1时,南北绿灯闪烁

2014-2015洛阳理工单片机期末考试试题

一、选择题(每题1分,共14分) 1.8031单片机的( D )口的引脚,还具有外中断、串行通信等第二功能。 a )P0 b )P1 c )P2 d )P3 2.单片机应用程序一般存放在( B ) a ) RAM b )ROM c )寄存器 d )CPU 3.已知某数的BCD 码为0111 0101 0100 0010 则其表示的十进制数值为(B ) a ) 7542H b ) 7542 c ) 75.42H d ) 75.42 4.CPU 主要的组成部部分为( A ) a )运算器、控制器 b )加法器、寄存器 c )运算器、寄存器 d )运算器、指令译码器 5.INTEL 8051 CPU 是( C )位的单片机 a ) 16 b )4 c )8 d )准16 6.8031单片机中既可位寻址又可字节寻址的单元是( A ) a )20H b )30H c )00H d )70H 7.若单片机的振荡频率为6MHz ,设定时器工作在方式1需要定时1ms ,则定时器初值应为( C )。 A.500 B.1000 C.216-500 D.216-1000 8.当外部中断请求的信号方式为脉冲方式时,要求中断请求信号的高电平状态和低电平状态都应至少维持( A )。 A.1个机器周期 B.2个机器周期 C.4个机器周期 D.10个晶振周期 5.MCS-51单片机在同一优先级的中断源同时申请中断时,CPU 首先响应 ( A )。 A.外部中断0 B.外部中断1 C.定时器0中断 D.定时器1中断 6.定时器若工作在循环定时或循环计数场合,应选用( C ) A.工作方式0 B.工作方式1 C.工作方式2 D.工作方式3 7.MCS-51单片机的外部中断1的中断请求标志是(D) A.ET1 B.TF1 C.IT1 D.IE1 9.串行口每一次传送( A )字符。 A.1个 B.1串 C.1帧 D.1波特 10.波特的单位是(B ) A. 字符/秒 B. 位/秒 C. 帧/秒 D. 字节/秒 11.8051单片机内有( )个16位的定时/计数器 ,每个定时/计数器都有( B )种工作方式。 (A) 4, 5 (B) 2, 4 (C) 5, 2 (D) 2, 3 12.控制串行口工作方式的寄存器是( C ) A.TCON B.PCON C.SCON D.TMOD 13.若MCS-51中断源都编程为同级,当他们同时申请中断时CPU 首先响应( B ) A.1INT B.0INT C.T1 D.T0 14.计算机在使用中断方式与外界交换信息时,保护现场的工作应该是( C ) A.由CPU 自动完成 B.在中断响应中完成 C.应由中断服务程序完成 D.在主程序中完成 二、填空题(每空1分,共30分) 1.一个完整的微机系统由硬件和软件两大部分组成。

单片机期末考试试题

单片机期末考试试题 01、单片机是将微处理器、一定容量的 RAM 和ROM以及 I/O 口、定时器等电路集成在一块芯片上而构成的微型计算机。 2、单片机89C51片内集成了 4 KB的FLASH ROM,共有 5 个中断源。 3、两位十六进制数最多可以表示 256 个存储单元。 4、89C51是以下哪个公司的产品?( C ) A、INTEL B、AMD C、ATMEL D、PHILIPS 5、在89C51中,只有当EA引脚接高电平时,CPU才访问片内的Flash ROM。 6、是非题:当89C51的EA引脚接低电平时,CPU只能访问片外ROM,而不管片内是否有程序存储器。T 7、是非题:当89C51的EA引脚接高电平时,CPU只能访问片内的4KB空间。F 8、当CPU访问片外的存储器时,其低八位地址由 P0 口提供,高八位地址由 P2 口提供,8位数据由 P0 口提供。 9、在I/O口中, P0 口在接LED时,必须提供上拉电阻, P3 口具有第二功能。 11、是非题:是读端口还是读锁存器是用指令来区别的。T 12、是非题:在89C51的片内RAM区中,位地址和部分字节地址是冲突的。F 13、是非题:中断的矢量地址位于RAM区中。F 15、89C51具有 64 KB的字节寻址能力。 16、是非题:在89C51中,当CPU访问片内、外ROM区时用MOVC指令,访问片外RAM区时用MOVX 指令,访问片内RAM区时用MOV指令。T 17、在89C51中,片内RAM分为地址为 00H~7FH 的真正RAM区,和地址为80H~FFH的特殊功能寄存器(SFR) 区两个部分。 18、在89C51中,通用寄存器区共分为 4 组,每组 8 个工作寄存器,当CPU 复位时,第 0 组寄存器为当前的工作寄存器。 19、是非题:工作寄存器区不允许做普通的RAM单元来使用。F 20、是非题:工作寄存器组是通过置位PSW中的RS0和RS1来切换的。T 21、是非题:特殊功能寄存器可以当作普通的RAM单元来使用。F 22、是非题:访问128个位地址用位寻址方式,访问低128字节单元用直接或间接寻址方式。T

单片机外部中断的使用

哈尔滨理工大学荣成学院 单片机原理及应用Protues 仿真实验 班级: 学号: 姓名: 日期:

实验三单片机外部中断的使用 一、实验名称:单片机外部中断的使用 二、实验目的 1.掌握在Keil环境下建立项目、添加、保存源文件文件、编译源程序的方法; 2.掌握运行、步进、步越、运行到光标处等几种调试程序的方法; 3.掌握在Proteus环境下建立文件原理图的方法; 4..实现Proteus与Keil联调软件仿真。 三、使用仪器设备编号、部件及备件 1.实验室电脑; 2.单片机实验箱。 四、实验过程及数据、现象记录 在Proteus 环境下建立如下仿真原理图,并保存为文件;

原理图中常用库元件的名称: 无极性电容:CAP 极性电容:CAP-ELEC 单片机:AT89C51 晶体振荡器:CRYSTAL 电阻:RES 按键:BUTTON 发光二极管:红色LED-RED 绿色LED-GREEN 蓝色LED-BLUE 黄色LED-YELLOW 在Keil环境下建立源程序并保存为.ASM文件,生成.HEX文件;汇编语言参考程序如下:ORG 0000H

LJMP MAIN ORG H ;外部中断0程序入口地址LJMP EXINT0 ORG 0030H MAIN: MOV SP,#60H ;堆栈指针初始化 SETB ;设置外部中断 0 为边沿触发 SETB ;开外部中断0 SETB ;开CPU总中断MOV A,#01H LOOP: MOV P1,A RL A CALL DELAY SJMP LOOP DELAY: MOV R1,# ;延时250ms子程序DL1: MOV R2,# DL2: MOV R3,# DJNZ R3,$ DJNZ R2,DL2 DJNZ R1,DL1 ;延时子程序返回EXINT0: PUSH PUSH CLR RS1 SETB RS0 MOV R0,# LP: MOV P1,#0FFH CALL DELAY MOV P1,#00H CALL DELAY DJNZ R0,LP POP PSW POP ACC ;中断返回END 将以上程序补充完整,流水时间间隔,闪烁时间间隔为250ms。C51语言参考程序: #include #include #define uchar unsigned char #define uint unsigned int void delay_ms(uint x) { uint i; uchar j; for(i=0;i

相关文档
相关文档 最新文档