一.图为8段共阴数码管,请写出如下数值的段码。
1:3FH 2:06H 3:5BH 4:66H 5:6DH 6:73H 7:03H 8:7FH 9:39H 二.AT89S51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲突, 为什么?
答:不发生数据冲突的原因是:AT89S51中访问程序存储器和数据存储器的指令不一样。 选通信号也就不一样,前者为PSEN,后者为WR何RD。指令不同。 三说明AT89S51的外部引脚EA*的作用?
答:当EA*为高电平时,AT89S51访问内部程序存储器,但当地址大于OFFF时,自动转到外部程序存储器;当EA*为低电平时,AT89S51只读取外部程序存储器。
四.写出AT89S51的所有中断源,并说明那些中断源在响应中断时,由硬件自动清除,那些中断源必须用软件清除,为什么?
答:外部中断INTO*定时器/计数器中断T0*外部中断INT1*定时器/计数器中断T1串行口中断其中串行口中断T1与RI必须用软件清0,因为串口中断的输出中断为T1,输入中断为RI,故用软件清0.
五.什么是中断?中断服务子程序返回指令RETI和普通子程序返回指令RET有什么区别? 答:单片机暂时中指当前正在执行的主程序,转到中断服务处理程序处理中断服务请求。中断服务处理程序处理完中断服务请求后,再回到原来被终止的程序之处,继续执行被中断程序。RETI除了将压栈的内容出栈外(即现场恢复),还清楚在中断响应时被置1的AT89S51内部中断优先级寄存器的优先级状态。
六.简述AT89S51单片机主从结构多级通信原理,设有一台主机与三台从机通信,其中一台从机通信地址号为01H,请叙述主机呼叫从机并向其传送一个字节数据的过程。 答1:原理图略。
2:将所有从机的REN,SM2置1 工作在方式2或3 3:主机发送一个地址桢01H第9位为1即TB8=1
4:各从机接收到后,都发生中断,进入中断服务程序,比较自己的地址与01H是否相同,若相同则将本机SM2置0,否则仍为1
5:主机发送数据桢,TB8=0 各从机接受该数据桢,从机中SM2为0的产生中断,而其他SM2为1的从机不产生中断将信息丢弃,从而实现主机与从机传递数据。 七.MCS-51单片机片内256B的数据存储器可分为几个区?分别作什么用? 答:1:通用工作寄存区,00H----1FH,共4组,R0---R7,在程序中直接使用
2:可位寻址区,20H----2FH,可进行位操作,也可字节寻址
3:用户RAM区,30H---7FH,只可字节寻址,用于数据缓冲及堆栈区 八.简述行列式扫描键盘的工作原理。
答:1:首先XO—X3始终接高电平,Y0—Y3给低电平,扫描P1.0—P1.3若全为高电平,则没有键按下,若有低电平,则有键按下。
2:接着Y0输出低电平,Y1—Y3输出高电平,扫描P1.0—P1.3,若全为高电平,则没有键按下,若有低电平,则找出相位,得到所按的键。
3:再YI输出低电平,Y0,Y2,Y3输出高电平,重复第2 步骤。 4:再Y2输出低电平,T0,Y1,Y3输出高电平扫描 5:再Y3输出低电平,Y0,Y1,Y2输出高电平扫描
9.AT89C51单片机的片内都集成了哪些功能部件?各个功能部件的最主要的功能是什么?
(1)1个微处理器(CPU);(2)128个数据存储器(RAM)单元;(3)4KB Flash程序存储器;(4)4个8位可编程并行I/O口(P0口、P1口、P2口、P3口);(5)1个全双工串行口;(6)2个16位定时器/计数器;(7)一个中断系统,5个中断源,2个优先
级;(8)21个特殊功能寄存器(SFR)。
10.说明AT89C51单片机的引脚EA的作用,该引脚接高电平和低电平时各有何种功能? 答:当EA脚为高电平时,单片机读片内程序存储器(4KB Flash),但在PC值超过0FFFH(即超出4KB地址范围)时,将自动转向读外部程序存储器内的程序。当EA脚为低电平时,对程序存储器的读操作只限定在外部程序存储器,地址为0000H~FFFFH,片内的4KB Flash程序存储器不起作用。
11.当AT89C51单片机运行出错或程序陷入死循环时,如何摆脱困境? 答:按下复位按钮。
12.双向口与准双向口的区别?
双向口必须有高阻悬浮态。而准双向口无高阻的悬浮态,另外准双向口输入使用时,一定要向该口先写入1。
13.中断响应需要满足那些条件?
1中断源有中断请求2此中断源的中断允许位为1 3、CPU开中断(即EA=1)4.无同级或更高级终端正在被服务。
14.定时器/计数器用作定时器模式时,其计数脉冲由谁提供?定时时间与哪些因素有关? 答:定时器/计数器用作定时器时,其计数脉冲由系统振荡器产生的内部时钟信号12分频后提供。定时时间与时钟频率和定时初值有关。
15.定时器/计数器用作计数器模式时,对外界计数频率有何限制?
答:由于确认1次负跳变要花2个机器周期,即24个振荡周期,因此外部输入的计数脉冲的最高频率为系统振荡器频率的1/24。
16.当定时器T0用于方式3时,应该如何控制定时器T1的启动和关闭? 答:由T1(P3.5)口控制定时器T1的启动和关闭。
17.在异步串行通信中,接收方是如何知道发送方开始发送数据的?
答:当接收方检测到RXD引脚上的有效的负跳变时,即可知道发送方开始发送数据。 18.串行口有几种工作方式?有几种帧格式?各种工作方式的波特率如何确定?
答:串行口有4种工作方式:方式0、方式1、方式2、方式3。有3种帧格式,方式2 3具有相同的帧格式。方式0的发送和接收都以fosc/12为固定波特率。方式1的波特率=2SMOD/32×定时器T1的溢出率。方式2的波特率=2SMOD/64×fosc。方式3的波特率=2SMOD/32×定时器T1的溢出率。 19.为什么定时器/计数器T1用作串行口波特率发生器时,常采用方式2?若已知时钟频率、通信波特率,如何计算其初值? 答:(1)因为定时器/计数器在方式2下,初值可以自动重装,这样在进行串口波特率发器设置时,就避免了重装参数的操作,且减少了重装参数的误差。(2)已知时钟频率、通信波特率,根据公式(7-3),即可计算出初值。 20.在AT89C51单片机系统中,外接程序存储器和数据存储器共16位地址线和8位数据线,为何不会发生冲突?
答:因为控制信号线的不同。 外扩的RAM芯片既能读出又能写入,所以通常都有读、写控制引脚,记为OE和WE,它们分别与89C51的RD和WR引脚相连。外扩的EPROM在正常使用中只能读出,不能写入,故EPROM芯片没有写入控制引脚,只有读出引脚,记为OE,该引脚与89C51单片机的PSEN相连。