单片机简答题汇总
1、 计算机经历了几个时代?
电子管、晶体管、集成电路、大规模集成电路和超大规模集成电路、智能计算机。
2、 冯诺依曼设计思想?
- 计算机包括运算器、存储器、输入/输出设备。
- 内部采用二进制表示指令和代码。
- 将编号的程序送入内存储器中,然后启动计算机工作,能够顺序逐条取出指令和执行指令。
3、 MCS-51的内部结构?
8位CPU、8位并行I/O口、128个字节的内部RAM、21个SFR、4KB的内部ROM、一个全双工串行I/O口、2个16位定时器/计数器、5个中断源,2个中断优先级、
4、 ROM和RAM
ROM:片内4KB,地址范围0000H – 0FFFH
片外扩展64KB 地址范围0000H - FFFFH
片内外统一编址方式 复位后PC为0
RAM: 片内256字节 地址范围 00H – FFH
低128字节为一般RAM区 00H-7FH
00H – 1FH 4组通用寄存器区,一组8个工作寄存器
20H - 2FH 位寻址区,也可字节寻址
30H – 7FH 堆栈区和数据缓冲区
高128字节为SFR 地址范围为80H- FFH
实现各种控制功能
5、 堆栈?堆栈指针?
一种按照“先进后出”为原则的线性表数据结构。
存放堆栈的栈顶地址的寄存器(8位),系统复位后SP为07H。
6、单片机正常工作的条件?
a.电源正常
b.时钟正常
c.复位正常
7、C51外扩的ROM和RAM可以有相同的地址空间,但不会发生数据冲突,为什么?
访问外扩的ROM和RAM的指令不同,所发出的控制信号也不同。读外部RAM时,RD/信号有效,写外部RAM时,WR/有效,读外部ROM时,PSEN/有效。在程序执行的过程中只能有一个信号有效,因此即使有相同的地址也不会发挥数据冲突。
8、C51外部引脚EA/的作用?
EA/是内外部RAM的选通信号
EA/ = 0 时,只选择外部ROM
EA/ = 1 时,PC < 0FFFH时,选择内部ROM
PC > 0FFFH时,选择外部ROM
9、位寻址区?
内部RAM的20H – 2FH为位寻址区,位寻址范围为00H – 7FH
SFR中地址能被8整除的字节地址单元,地址范围是80H – FFH
10、中断?中断响应和中断返回?
由于内部或外部的某种原因,CPU必须终止当前的程序,转去执行中断请求的那个外设或事件的服务程序,等处理完毕后,再返回主程序继续执行,这一过程叫做中断。
中断响应:首先,把断点处的PC值压入堆栈中保留下来,这一过程叫做保护断点,由硬件自动完成。然后,把有关的寄存器内容和标志位状态推入堆栈中保留下来,这一个过程叫做保护现场,由用户编程完场。保护断点和现场后就可以执行中断服务程序,待事件处理完成后,返回主程序。
中断返回:首先,把原先保留的有关寄存器内容和标志位状态全部恢复,这一过程叫做恢复现场,由用户编程完成。然后,执行RETI指令,RETI指令的功能就是恢复PC的值,这一过程成为恢复断点。恢复现场和恢复断点后,CPU继续执行主程序,中断响应到此结束。
11、中断返回和子程序返回的区别?(RETI和RET的区别?)
相同:两者均能中断主程序执行本程序,返回返回断点继续执行主程序。
不同:RETI除了将压栈的内容出栈外,还清除中断优先级寄存器的状态。
中断服务程序的入口地址是固定的,子程序的入口地址是用户在程序中事先安排好的。
中断服务程序是在满足中断申请的条件下,随时发生的;子程序的调用使用户事先安排好的。
12、中断源?
INT0 外部中断0 低有效 P3.2输入
INT1 外部中断1 低有效 P3.3输入
T0 定时器/计数器0 溢出中断请求
T1 定时器/计数器1 溢出中断请求
TXD/RXD 串行口中断请求 当串行口完成一帧数据的发送或接受时,便请求中断
13、中断响应的条件?
a.有中断源发出中断请求
b.中断总允许EA = 1, 即CPU开中断
c.中断源的中断请求的允许为位1,即没有中断屏蔽
d.无同级和更高级中断正在被服务
e.当前指令周期已经结束
14、为什么要在矢量地址开始的地方放上一条跳转指令?
两个相邻的中断入口地址相距只有八个单元,一般的中断服务程序都容纳不了,因此要加上一条跳转指令。
15、定时器/计数器?
方式0 :13位定时/计数器
1 :16位定时/计数器
2 :8位自动重装定时/计数器
3 :T1无方式3,TO拆成两个8位定时/计数器TH0、TL0
16、50C51串口通信的四种工作方式?
方式0 :同步移位寄存去输入/输出方式,常用于I/O口的扩展。波特率位震荡频率的1/12,并不受PCON中SMOD位的影响。
方式1 :用于串口发送/接受数据,为通用异步串行口,数据帧格式为10位,即1个起始位,8个数据位,1个停止位,TXD、RXD用于发送数据和接受数据。波特率受定时器T1的溢出率和SMOD位的影响。
方式2:用于串口发送/接受数据,为通用异步串行口,数据帧格式为11位,即1个起始位,8个数据位,和一个可编程的第9位数据位,1个停止位,TXD、RXD用于发送数据和接受数据。波特率受PCON中SMOD的影响,SMOD = 0时,波特率为振荡频率的1/64,SMOD = 1时,波特率为震荡频率的 1/32。
方式3 :用于串口发送/接受数据,为通用异步串行口,数据帧格式为11位,数据帧格式同方式2,波特率同方式1。
17、扩展I/O接口的功能?
a.实现不同外设的速度匹配
b.输出数据锁存
c.输入数据三态缓冲
d.电平转换
18、I/O数据的传送方式?
同步传送:外设速度与单片机速度相比拟时。
查询传送:外设已经转备好的条件下,单片机查询外部设备,如果准备好了,就可以传送数据。有条件的、异步的。
中断查询:在外设准备好后,单片机发出数据传送请求,中断主程序进入与外设数据传送的中断服务程序,进行数据传送。
19、串行数据传输的特点?
按顺序进行,传送速度慢
传输线少,成本低
传输距离远