单片机原理及应用课后习题答案第5章作业
单片机原理及应用第5、6、7、8章习题

第5、6、7、8章习题一、问答题1.说明51单片机读端口锁存器的必要性,为什么? 答:2.请说明为什么使用LED 需要接限流电阻,当高电平为+5V 时,正常点亮一个LED 需要多大阻值的限流电阻(设LED 的正常工作电流为8~mA ,导通压降为0.6V ),为什么? 答:3.简述在使用普通按键的时候,为什么要进行去抖动处理,如何处理。
答:4.简述LED 数码管动态扫描的原理及其实现方式。
答:5.为什么51单片机在读口的引脚状态时,许先向端口写“1”,请用图5-1 P1结构图加以说明。
答:5.简述89c51各IO 口的驱动能力。
答:6.什么是中断?中断与子程序最本质的区别?答:写锁存器内部总线图5-1 P1口结构图7.编制中断服务程序时,为什么在主程序的初始化程序中,必须设置EA=1 这条指令(或达到同样功能的对IE赋值的指令),以及在中断服务程序中为什么通常需要保护现场和恢复现场?答:8.单片机89C51有哪些中断源,CPU对其中断如何请求?答:9.简述单片机89C51中断的自然优先级顺序,如何提高某一中断源的优先级别。
答:10.简述51系列单片机中断响应的条件。
答:11.用汇编语言编程时,在51系列单片机执行中断服务程序的指令较多时,为什么一般都要在入口地址(又称中断矢量地址)开始的地方放一条跳转指令?答:12.为什么一般都把主程序的起始地址放在0030H之后?答:13.中断服务子程序返回指令RETI和普通子程序返回指令RET的区别?答:14.简述51单片机定时/计数器4种工作模式的特点。
答:15.定时/计数器用作定时器时,其计数脉冲由谁提供?定时时间与哪些因素有关?答:16.画出51单片机计数/定时器方式1的逻辑结构框图,说明它们的工作原理,如何使用门控和非门控启动计数的方法。
答:17.在使用8051的定时器/计数器前,应对它进行初始化,其步骤是什么?答: (1)确定T/C的工作方式——编程TMOD寄存器;(2)计算T/C中的计数初值,并装载到TH和TL;(3)T/C在中断方式工作时,须开CPU中断和源中断——编程IE寄存器;(4)启动定时器/计数器——编程TCON中TR1或TR0位。
《单片机原理及应用》课后习题答案

答案:ALE是地址锁存使能信号,是机器周期的二倍。当不使用单字节双周期的指令,如MOVX类指令时,可以作为外部设备的定时信号。
2.13 有那几种方法能使单片机复位?复位后各寄存器的状态如何?复位对内部RAM有何影响?
2.6 8051如何确定和改变当前工作寄存器组?
2.7 MCS-51单片机的程序存储器中0000H、0003H、000BH、0013H、001BH和0023H这几个地址具有什么特殊的功能?
2.8 8051单片机有哪几个特殊功能寄存器?可位寻址的SFR有几个?
2.9 程序状态寄存器PSW的作用是什么?常用标志有哪些位?作用是什么?
TH1、TL1、TH0、TL0的内容为00H,定时器/计数器的初值为0。
(TMOD)=00H,复位后定时器/计数器T0、T1为定时器方式0,非门控方式。
(TCON)=00H,复位后定时器/计数器T0、T1停止工作,外部中断0、1为电平触发方式。
(T2CON)=00H,复位后定时器/计数器T2停止工作。
可位寻址的SFR有11个。
2.9 程序状态寄存器PSW的作用是什么?常用标志有哪些位?作用是什么?
答案:PSW—程序状态字。主要起着标志寄存器的作用。常用标志位及其作用如下:
Cy——进(借)位标志,其主要作用是保存算术运算的进或借位并在进行位操作时做累加器。
在执行某些算术和逻辑指令时,可以被硬件或软件置位或清零。在算术运算中它可作为进位标志,在位运算中,它作累加器使用,在位传送、位与和位或等位操作中,都要使用进位标志位。
2.14 MCS-51的时钟振荡周期、机器周期和指令周期之间有何关系?
单片机原理及应用作业答案

作业答案0-1绪论1.单片机是把组成微型计算机的各功能部件即(微处理器(CPU))、(存储器(ROM 和RAM))、(总线)、(定时器/计数器)、(输入/输出接口(I/O口))及(中断系统)等部件集成在一块芯片上的微型计算机。
2.什么叫单片机?其主要特点有哪些?解:将微处理器(CPU)、存储器(存放程序或数据的ROM和RAM)、总线、定时器/计数器、输入/输出接口(I/O口)、中断系统和其他多种功能器件集成在一块芯片上的微型计机,称为单片微型计算机,简称单片机。
单片机的特点:可靠性高、便于扩展、控制功能强、具有丰富的控制指令、低电压、低功耗、片内存储容量较小、集成度高、体积小、性价比高、应用广泛、易于产品化等。
第1章MCS-51单片机的结构与原理15. MCS-51系列单片机的引脚中有多少根I/O线?它们与单片机对外的地址总线和数据总线之间有什么关系?其地址总线和数据总线各有多少位?对外可寻址的地址空间有多大?解:MCS-51系列单片机有4个I/O端口,每个端口都是8位双向口,共占32根引脚。
每个端口都包括一个锁存器(即专用寄存器P0~P3)、一个输入驱动器和输入缓冲器。
通常把4个端口称为P0~P3。
在无片外扩展的存储器的系统中,这4个端口的每一位都可以作为双向通用I/O端口使用。
在具有片外扩展存储器的系统中,P2口作为高8位地址线,P0口分时作为低8位地址线和双向数据总线。
MCS-51系列单片机数据总线为8位,地址总线为18位,对外可寻址空间为64KB。
25. 开机复位后,CPU使用的是哪组工作寄存器(R0-R n)?它们的地址是什么?CPU如何确定和改变当前工作寄存器组(R0-R n)?解:开机复位后,CPU使用的是第0组工作寄存器。
它们的地址是00H-07H。
CPU通过对程序状态字PSW中RS1和RS0的设置来确定和改变当前工作寄存器组。
27. MCS-51单片机的时钟周期、机器周期、指令周期是如何定义的?当主频为12MHz的时候,一个机器周期是多长时间?执行一条最长的指令需要多长时间?解:时钟周期又称为振荡周期,由单片机内部振荡电路OSC产生,定义为OSC时钟频率的倒数。
单片机原理及应用习题集(含答案)

(B)11100001B
3、十进制 29 的二进制表示为原码( (A)11100010B (B) 10101111B
4、十进制 0.625 转换成二进制数是( )。 (A)0.101 (B) 0.111 (C)0.110 )。 (C) 07 )。 (C) 11 ) (D) 1011 (D) 47 (D)0.100
5、二进制数、十进制数、十六进制数各用什么字母尾缀作为标识符?无标识符时表示什么进 制数? 6、试比较 MCS-51,MSP430,EM78,PIC,M6800 及 AVP 等系列单片机的特点。 第二章 MCS-51 单片机的硬件结构与工作原理 2-1 单项选择 1、要 MCS-51 系统中,若晶振频率屡 6MHz,一个机器周期等于( A 1 B 2 C 3 D 0.5 ): D 存储器 ) μ s
2、以下不是构成的控制器部件(
A 程序计数器、 B 指令寄存器、 C 指令译码器、 3、以下不是构成单片机的部件( A 微处理器(CPU)、B 存储器 4、下列不是单片机总线是( A 地址总线 B 控制总线 C 数据总线 )
C 接口适配器(I\O 接口电路) D 打印机 ) D 输出总线
5、PSW=18H 时,则当前工作寄存器是( ) (A)0 组 (B)1 组 (C)2 组 ) (B)4个TTL低电平负载 (D)10个TTL低电平负载 ) (D)3 组
(A)C (B)F0 (C)OV (D)P 5、下面条指令将 MCS-51 的工作寄存器置成 3 区( (A)MOV PSW,#13H (B)MOV PSW,#18H (C)SETB PSW.4 CLR PSW.3 (D) SETB PSW.3 CLR PSW.4 6、执行 MOVX A,DPTR 指令时,MCS-51 产生的控制信号是( (A)/PSEN (B)ALE (C)/RD (D)/WR 7、MOV C,#00H 的寻址方式是( ) ) )
单片机原理及应用(林立张俊亮版)课后习题答案

第一章习题1.什么是单片机?单片机和通用微机相比有何特点?答:单片机又称为单片微计算机,它的结构特点是将微型计算机的基本功能部件(如中央处理器(CPU)、存储器、输入接口、输出接口、定时/计数器及终端系统等)全部集成在一个半导体芯片上。
虽然单片机只是一个芯片,但无论从组成还是从逻辑功能上来看,都具有微机系统的定义。
与通用的微型计算机相比,单片机体积小巧,可以嵌入到应用系统中作为指挥决策中心,是应用系统实现智能化。
2.单片机的发展有哪几个阶段?8位单片机会不会过时,为什么?答:单片机诞生于1971年,经历了SCM、MCU、SOC三大阶段,早期的SCM单片机都是8位或4位的。
其中最成功的是INTEL的8031,此后在8031上发展出了MCS51系列MCU系统。
基于这一系统的单片机系统直到现在还在广泛使用。
随着工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。
90年代后随着消费电子产品大发展,单片机技术得到了巨大提高。
随着INTEL i960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。
然而,由于各应用领域大量需要的仍是8位单片机,因此各大公司纷纷推出高性能、大容量、多功能的新型8位单片机。
目前,单片机正朝着高性能和多品种发展,但由于MCS-51系列8位单片机仍能满足绝大多数应用领域的需要,可以肯定,以MCS-51系列为主的8位单片机,在当前及以后的相当一段时间内仍将占据单片机应用的主导地位。
3.举例说明单片机的主要应用领域。
答:单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:智能仪器单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、电流、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。
单片机原理及应用(张毅刚-第三版)课后习题答案(全)

单片机原理及应用(张毅刚-第三版)课后习题答案(全)第1章思考题及习题1参考答案一、填空1.除了单片机这一名称之外,单片机还可称为或。
答:微控制器,嵌入式控制器.2.单片机与普通微型计算机的不同之处在于其将、、和三部分,通过内部连接在一起,集成于一块芯片上。
答:CPU、存储器、I/O口、总线3. AT89S52单片机工作频率上限为MHz。
答:33 MHz。
4.专用单片机已使系统结构最简化、软硬件资源利用最优化,从而降低和提高。
答:成本,可靠性。
二、单选1.单片机内部数据之所以用二进制形式表示,主要是A.为了编程方便B.受器件的物理性能限制C.为了通用性D.为了提高运算速度答:B2.在家用电器中使用单片机应属于微计算机的。
A.辅助设计应用C.数值计算应用答:B3.下面的哪一项应用,不属于单片机的应用范围。
A.工业控制B.家用电器的控制C.数据库管理D.汽车电子设备答:C三、判断对错B.测量、控制应用D.数据处理应用1. STC系列单片机是8051内核的单片机。
对2. AT89S52与AT89S51相比,片内多出了4KB的Flash 程序储备器、128B的RAM、1个中断源、1个定时器(且具有捕捉功用)。
对3.单片机是一种CPU。
错4. AT89S52单片机是微处理器。
错5. AT89C52片内的Flash程序储备器可在线写入,而AT89S52则不克不及。
错6.为AT89C51单片机设想的应用体系板,可将芯片AT89C51直接用芯片AT89S51替换。
对7.为AT89S51单片机设想的应用体系板,可将芯片AT89S51直接用芯片AT89S52替换。
对8.单片机的功用侧重于测量和控制,而庞大的数字号处理运算及高速的测控功用则是DSP的甜头。
对四、简答1.微处理器、微计算机、微处理机、CPU、单片机、嵌入式处理器它们之间有何辨别?答:微处理器、微处理机和CPU它们都是中央处理器的不同称谓,微处理器芯片本身不是计算机。
单片机原理及应用第三版课后答案

单片机原理及应用第三版课后答案1. 第一章题目答案:a) 单片机的定义: 单片机是一种集成电路,具有CPU、存储器和输入输出设备等功能,并且可以根据程序控制进行工作的微型计算机系统。
b) 单片机的核心部分是CPU,它可以通过执行程序指令来完成各种计算、逻辑和控制操作。
c) 存储器分为程序存储器和数据存储器,程序存储器用于存放程序指令,数据存储器用于存放数据和暂存中间结果。
d) 输入输出设备用于与外部环境进行数据交换,如开关、LED、数码管等。
e) 单片机的应用广泛,包括家电控制、智能仪器、工业自动化等领域。
2. 第二章题目答案:a) 单片机中的时钟系统用于提供CPU运行所需的时序信号,常见的时钟源有晶体振荡器和外部信号源。
b) 时钟频率决定了单片机的运行速度和精度,一般通过控制分频器、定时器等来调整时钟频率。
c) 单片机中的中断系统用于处理紧急事件,如外部输入信号、定时器溢出等,可以提高系统的响应能力。
d) 中断源包括外部中断、定时器中断和串口中断,通过编程设置中断向量和优先级来处理不同的中断事件。
e) 中断服务程序是处理中断事件的程序,包括保存现场、执行中断处理和恢复现场等步骤。
3. 第三章题目答案:a) I/O口是单片机与外部设备进行数据交换的接口,包括输入口和输出口两种类型。
b) 输入口用于接收外部信号,如开关、传感器等,可以通过编程设置输入口的工作模式和读取输入口的状态。
c) 输出口用于控制外部设备,如LED、继电器等,可以通过编程设置输出口的工作模式和输出口的状态。
d) I/O口的工作模式包括输入模式、输出模式和双向模式,可以根据具体应用需求设置相应的模式。
e) 串行通信接口是单片机与外部设备进行数据传输的一种常见方式,包括UART、SPI和I2C等多种通信协议。
4. 第四章题目答案:a) 定时器的作用是产生指定时间间隔的定时信号,可以用于延时、计时、PWM等功能。
b) 单片机的定时器一般由计数器和一些控制寄存器组成,通过编程设置定时器的工作模式和计数值。
单片机原理及应用(林立-张俊亮版)课后习题答案---副本

单片机原理及应用(林立-张俊亮版)课后习题答案---副本第2章 MCS-51单片机结构及原理习题6.片内RAM中低128个单元划分为哪三个主要部分?各部分的主要功能是什么?答:片内RAM中低128个单元划分为三个部分:①工作寄存器区(00H-1FH),四组,每组8个,可作用工作寄存器切换使用;②可位寻址区(20H-2FH),16B,位地址为00H-7FH,用作为按位寻址的空间;③用户RAM区(30H-7FH),80B,用作普通RAM单元或堆栈。
7.程序状态字寄存器PSW各位的定义是什么?答:程序状态字寄存器PSW各位的定义如下:PSW.7:进/借位标志CY,加法有进位时置1,减法有借位时置1;PSW.6:辅助进位标志AC,加法运算低四位向高上四位有进位时置1;PSW.5、PSW.1:用户标志位F0和用户标志位F1,保存用户的位数据;PSW.4、PSW.3:工作寄存器选择控制位RS1和RS0,00至11分别选择四组工作之一作为当前工作寄存器PSW.2 :溢出标志位OV,有符号数加、减运算结果有溢出或乘除上结果异常(乘法运算结果大于255即乘积在BA中,或除法运算除数为0)时置1PSW.0:奇偶标志位P,累加器A中1的个数为奇数时置1。
8.什么是时钟周期?什么是机器周期?什么是指令周期?当振荡频率为12MHz 时,一个机器周期为多少微秒?答:时钟周期又叫振荡周期或拍,用P表示,是MCS-51单片机中最小的时间单位,在一个时钟周期内,CPU完成一个最基本的动作。
机器周期:由12个时钟周期构成,完成一个基本操作指令周期:是执行一条指令所需的时间,根据指令的复杂性,可由1~4个机器周期构成。
当振荡频率为12MHz时,一个机器周期为1微秒。
第4章单片机的C51语言习题1.C语言的优点是什么?C程序的主要结构特点是什么?答:C语言是一种高级语言,学习比低级容易,不需要具体组织、分配存储器资源和处理端口数据,可以直接驱动单片机的所有资源。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第五章中断系统作业1. 外部中断1所对应的中断入口地址为()H。
2. 对中断进行查询时,查询的中断标志位共有、_ _、、_ 和_ 、_ _ 六个中断标志位。
3.在MCS-51中,需要外加电路实现中断撤除的是:()(A) 定时中断(B) 脉冲方式的外部中断(C) 外部串行中断(D) 电平方式的外部中断4.下列说法正确的是:()(A) 同一级别的中断请求按时间的先后顺序顺序响应。
()(B) 同一时间同一级别的多中断请求,将形成阻塞,系统无法响应。
()(C) 低优先级中断请求不能中断高优先级中断请求,但是高优先级中断请求能中断低优先级中断请求。
()(D) 同级中断不能嵌套。
()5.在一般情况下8051单片机允许同级中断嵌套。
()6.各中断源对应的中断服务程序的入口地址是否能任意设定? ()7.89C51单片机五个中断源中优先级是高的是外部中断0,优先级是低的是串行口中断。
()8.各中断源发出的中断申请信号,都会标记在MCS-51系统中的()中。
(A)TMOD (B)TCON/SCON (C)IE (D)IP9. 要使MCS-51能够响应定时器T1中断、串行接口中断,它的中断允许寄存器IE的内容应是()(A)98H (B)84H (C)42 (D)22H10.编写出外部中断1为负跳沿触发的中断初始化程序。
11.什么是中断?其主要功能是什么?12. 什么是中断源?MCS-51有哪些中断源?各有什么特点?13. 什么是中断嵌套?14.中断服务子程序与普通子程序有哪些相同和不同之处?15. 中断请求撤除的有哪三种方式?16. 特殊功能寄存器TCON有哪三大作用?17. 把教材的P82页的图4.24改为中断实现,用负跳变方式,中断0(INT0)显示“L2”,中断1(INT1)显示“H3”。
(可参考第四章的电子教案中的例子)18.第5章课后作业第9题。
第五章中断系统作业答案1. 外部中断1所对应的中断入口地址为(0013)H。
2. 对中断进行查询时,查询的中断标志位共有IE0 、_TF0_、IE1 、TF1_ 和_TI 、_RI_六个中断标志位。
【实际上只能查询TF0、TF1、TI、RI】3.在MCS-51中,需要外加电路实现中断撤除的是:(D)(A) 定时中断(B) 脉冲方式的外部中断(C) 外部串行中断(D) 电平方式的外部中断4.下列说法正确的是:(A C D )(A) 同一级别的中断请求按时间的先后顺序顺序响应。
(YES)(B) 同一时间同一级别的多中断请求,将形成阻塞,系统无法响应。
(ERR)(C) 低优先级中断请求不能中断高优先级中断请求,但是高优先级中断请求能中断低优先级中断请求。
(YES)(D) 同级中断不能嵌套。
(YES)5.在一般情况下8051单片机允许同级中断嵌套。
(ERR)6.各中断源对应的中断服务程序的入口地址是否能任意设定? (NO)7.89C51单片机五个中断源中优先级是高的是外部中断0,优先级是低的是串行口中断。
(YES)8.各中断源发出的中断申请信号,都会标记在MCS-51系统中的(B)中。
9. 要使MCS-51能够响应定时器T1中断、串行接口中断,它的中断允许寄存器IE的内容应是( A )【98H=1001 1000 )。
IT1=1;EX1=1;EA=1;【注意点:最好分开写,用位来写,不要用TCON和IE特殊功能寄存器】11.什么是中断?其主要功能是什么?中断是指计算机暂时停止原程序的执行,转而为外部设备服务(执行中断服务程序),并在服务完成后,自动返回原程序执行的过程。
可以提高CPU的工作效率,可以提高实时数据的处理时效。
中断技术主要用于实时监测与控制,采用中断可以解决单片机在查询方式中的等待现象,可以大大地提高了单片机的工作效率和实时性。
12. 什么是中断源?MCS-51有哪些中断源?各有什么特点?引起CPU暂停正在运行程序的事件,称为中断源。
有5个:外部中断0、定时器0、外部中断1、定时器1、串行通信。
外部中断源(INT0、INT1)的中断请求信号是从P3.2和P3.3引脚输入,通过设置TCON 的IT0和IT1来规定是电平申请还是下降沿申请。
对下降沿触发的中断标志在进入中断服务程序时,中断标注位自动清零。
内部中断源(T0、T1)的中断信号是在计数器从全“1”变为全“0”溢出时,向CPU 提出中断申请,中断标志在进入中断服务程序时,自动清零。
内部串行的中断信号是在串行口每发送完一帧数据(方式0为8位,方式1为10位)或接收完一帧数据后,向CPU 提出中断申请。
中断标志在进入中断服务程序时,必须用软件清零。
13. 什么是中断嵌套?中断系统在执行一个中断服务程序时,如果有一个优先级更高的中断提出中断请求时,那么会暂时停止当前执行的低优先级的中断服务程序,去处理高优先级的中断服务程序,处理完后在返回到被中断的低优先级的服务程序继续执行,这个过程称为中断嵌套。
14.中断服务子程序与普通子程序有哪些相同和不同之处? 相同点:都是从主函数转到子函数,子函数执行完后又返回主函数。
不同点:中断函数是发生中断后,自动执行的,不需要主函数调用,是否执行,取决于相应的中断事件是否发生。
而普通子函数要主函数调用才能执行。
普通子函数调用时,直接进入函数入口地址中断函数在中断发生时,先进入中断入口地址,再通过中断入口地址处放置的一条无条件转移指令,使程序执行转向中断服务程序入口。
中断函数的定义和普通函数的定义不同,中断服务程序用interrupt 关键字来定义。
15. 中断请求撤除的有哪三种方式?(1)由单片机内部硬件自动复位的有:对于定时器/计数器T0、T1的溢出中断和采用跳变方式触发的外部中断请求,在CPU 响应中断后,由内部硬件自动复位中断标志TF0、TF1、IE0和IE1,而实现自动撤除中断请求。
(2)需用软件清除相应标志的有:【用查询方式时,定时器T0、T1的TF0和TF1也需要用软件来清零;】 响应串行口的中断后,CPU 无法知道是接收中断还是发送中断,还需要判断这两个中断标志位,以判定是接收操作还是发送操作,然后才清除相应的标志。
所以串行口中断请求的撤销只能使用软件的方法,即用如下指令在中断服务程序中对串行口中断标志位进行清除: TI =0; // 清TI 标志位【在reg51.h 中,已经定义】 RI=0; // 清RI 标志位(3)既无硬件也无软件措施的:对于采用电平触发方式的外部中断请求,CPU 对0INT 、1INT 引脚上的中断请求信号无控制能力,IE0或IE1受外部引脚中断信号(0INT 、1INT )直接控制,CPU 无法控制IE0或IE1,也无应答信号。
为保证在CPU 响应中断后、中断服务程序返回前,要撤除中断请求,需要另外考虑撤除中断请求信号的方法,可通过外加硬件电路,并配合软件来解决,如下图。
中断响应后,利用D 触发器的SD 端接80C51的P1.0端。
只要P1.0端输出一个负脉冲就可以使D 触发器置“1”,撤销低电平的中断请求信号。
16. 特殊功能寄存器TCON 有哪三大作用?(1)锁存4个中断请求标志(外部中断0、定时器0、外部中断1、定时器1);(2)设置0INT 和1INT 的两种触发方式(低电平或下降沿) (3) 定时器的启动标志17. 把教材的P87页的图4.24改为中断实现,用负跳变方式,中断0(INT0)显示“L2”,中断1(INT1)显示“H3”。
#include <reg51.h>unsigned char led_mod[]={0x38,0x5b,0x76,0x4f}; // L2H3unsigned char i,led_pos; sbit P17=P1^7;void delay(unsigned int count) { unsigned char i; while(count--)for(i=0; i<120;i++); }void xint0(void) interrupt 0 { led_pos=2; }void xint1(void) interrupt 2 { led_pos=0; }main(){ IT0=1;IT1=1;EX0=1;EX1=1;EA=1;P1=0xfd; //0xfd=1111 1101while(1){ f or(i=0;i<2;i++){ P2=led_mod[i+led_pos];delay(5);P1=~P1; }}}18.第5章课后作业第9题。
805l单片机只有两个外部中断源,若要扩展成8个外部中断源,请画出实现这种扩展的硬件线路图,并说明如何确定各中断源的优先级。
解:用按钮开关模拟中断源的中断请求,INT0单独作为一个中断源,INT1扩展成7个中断源,有中断请求时,借助于P2口识别是这七个中断源是哪个请求中断,为了验证正确性,如果是INT0中断,则在P0口的数码管上显示0,是INT1中断,则根据从上到下是哪个中断源在P0口的数码管上显示1—7。
具体电路和程序如下:#include <reg51.h>char led_mod[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07};void INT0_srv (void) interrupt 0 using 1 //外部中断0处理程序{P0=led_mod[0];}void INT1_srv (void) interrupt 2 using 2 //外部中断1处理程序{char intnum;intnum=P2;switch(intnum){case 0xfe:P0=led_mod[1];break;case 0xfd:P0=led_mod[2];break;case 0xfb:P0=led_mod[3];break;case 0xf7:P0=led_mod[4];break;case 0xef:P0=led_mod[5];break;case 0xdf:P0=led_mod[6];break;case 0xbf:P0=led_mod[7];}}void main(){EA=1;EX0=1;EX1=1;P0=0;while(1);}。