
2.1 MCS-51单片机结构
2.1.1 MCS-51单片机的内部结构
MCS 是 Micro Controller System 的缩写,中文意思是 “微控制器系统”。






控制器


运算器





------------------------------------------------------------------------------------------------------------------------------

51 单片机片内 RAM 的低 32 字节(地址 00H~1FH)被划分为4 组独立的工作寄存器组,每组包含 8 个通用寄存器(R0~R7),具体地址分配如下:
| 组别 | RS1 (PSW.4) | RS0 (PSW.3) | 对应R0~R7的物理地址 |
|---|---|---|---|
| 0组 | 0 | 0 | 00H ~ 07H |
| 1组 | 0 | 1 | 08H ~ 0FH |
| 2组 | 1 | 0 | 10H ~ 17H |
| 3组 | 1 | 1 | 18H ~ 1FH |
CPU 同一时间只能使用其中一组的 R0~R7,而 RS1 和 RS0 的作用就是 “指定当前使用哪一组”。
-
主程序 使用第0组寄存器(RS1=0, RS0=0)。
-
当中断发生时,在进入中断服务程序前,先通过指令快速切换到第1组寄存器(例如,设置 RS1=0, RS0=1)。
-
这样,中断服务程序使用的R0~R7(物理地址08H~0FH)和主程序使用的R0~R7(物理地址00H~07H)是完全独立的两块内存,互不干扰。
-
中断处理完毕后,在返回主程序前,再切换回第0组寄存器。主程序的数据完好无损。
这种方式比把8个寄存器的值一个一个压入栈(保护现场)再弹出(恢复现场)要快得多,极大地提高了中断响应速度和代码效率。
------------------------------------------------------------------------------------------------------------------------------





------------------------------------------------------------------------------------------------------------------------------

------------------------------------------------------------------------------------------------------------------------------
2. 1.2 MCS-51引脚及功能



------------------------------------------------------------------------------------------------------------------------------

“晶振” 是晶体振荡器的简称,它产生一个非常稳定、周期性变化的电信号(通常是方波),这个信号就是“时钟信号”。

XTAL1:振荡器电路的输入端。 XTAL2:振荡器电路的输出端。


------------------------------------------------------------------------------------------------------------------------------

注意上划线,是低电平0有效.以课件为准

简单来说 PSEN (29)读取外部储存器里的程序指令
简单来说 EA 决定先读哪里的指令,0是决定去读外部

-----------------------------------------------------------------------------------------------------------------------------
2.2 MCS-51的存储器结构
1. 存储器划分方法
-
RAM:相当于电脑的内存,用于临时存储数据,掉电丢失。
-
ROM:相当于电脑的硬盘,用于永久存储程序和不变量,掉电不丢失。

2. 程序存储器(ROM)
整个地址空间:0x0000 - 0xFFFF (64KB)
├── 片内ROM:0x0000 - 0x0FFF (4KB)
└── 片外ROM:0x1000 - 0xFFFF (60KB)



3. 片内数据存储器(RAM)


-
字节地址:像一个门牌号,每个地址对应一个房间(一个字节)。(如101房、102房)。
一次性地读取或写入整个8位的数据。 -
位地址:像一个房间里的床位号,每个地址对应一个房间里的一张床(一个位)。如101房的1号床、2号床...8号床)
它允许CPU直接对某一个特定的位进行置1、清0、取反或判断


2.3单片机的复位、时钟与时序
1.复位与复位电路


2.时钟电路

3. 单片机时序





2.4 并行I/O口


P0--P3 内部结构 应该用不到吧,就不细看了







被折叠的 条评论
为什么被折叠?



