51单片机SFR功能详解与寄存器地址一览
需积分: 9 106 浏览量
更新于2024-09-18
收藏 137KB DOC 举报
51单片机是一种广泛应用的微控制器,其内部集成了多种功能模块,包括CPU、I/O口、内存、定时/计数器、串行通信接口以及中断系统等。这些功能的实现依赖于特殊功能寄存器(SFR),这些寄存器分布在128个字节的SFR存储空间(地址范围80H-FFH)中,其中有效位地址为80H-FFH(扣除不可位寻址的区域后共有83个)。
21个特殊功能寄存器构成了51单片机的核心控制结构,它们的功能如下:
1. B寄存器 (地址F0H):可能用于临时存储数据或作为位寻址的一部分。
2. 累加器 (ACC, 地址E0H):执行算术和逻辑运算的主要寄存器。
3. 程序状态字 (PSW, 地址D0H):包含了各种标志位和工作模式信息。
4. 定时器/计数器2的高/低位寄存器 (TH2/TL2, 地址CDH/CCH, 52系列新增):用于处理定时和计数任务。
5. 外部输入计数器/自动再装入模式 (RCAP2H/RCAP2L, 地址CBH/CAH, 52系列新增):与定时器/计数器2配合,处理外部输入信号。
6. T2定时器/计数器控制寄存器 (T2CON, 地址C8H):用于配置T2的工作模式。
7. 中断优先级控制寄存器 (IP, 地址B8H):管理不同中断源的优先级。
8. P3口锁存器 (P3, 地址B0H):控制P3口的I/O操作。
9. 中断允许控制寄存器 (IE, 地址A8H):控制中断的开启和关闭。
10. P2口锁存器 (P2, 地址A0H):类似P3口,用于P2口的I/O控制。
11. 串行口锁存器 (SBUF, 地址99H):存放串行通信的数据缓冲区。
12. 串行口控制寄存器 (SCON, 地址98H):控制串行通信的波特率、模式等参数。
13. P1口锁存器 (P1, 地址90H):又一个I/O口的控制寄存器。
14-15. 定时器/计数器1的高/低位寄存器 (TH1/TL1, 地址8DH/8BH):用于单独或与T1协同工作。
16-17. 定时器/计数器0的高/低位寄存器 (TH0/TL0, 地址8CH/8AH):基础定时/计数功能。
18. T0、T1定时器/计数器方式控制寄存器 (TMOD, 地址89H):决定T0和T1的工作模式。
19. T0、T1定时器/计数器控制寄存器 (TCON, 地址88H):配置和控制T0和T1的具体操作。
20-21. 数据地址指针 (DPH/DPL, 地址83H/82H):用于访问数据存储区的高/低位地址。
22. 堆栈指针 (SP, 地址81H):管理程序的堆栈操作。
23. P0口锁存器 (P0, 地址80H):最后一个通用I/O口。
52系列单片机相较于51系列增加了几个额外的特殊功能寄存器,如TH2、TL2、RCAP2H、RCAP2L和T2CON,扩展了定时器/计数器的功能。这些寄存器的使用对于理解和编程51系列单片机至关重要,掌握它们的用途和操作可以帮助开发者高效地利用单片机资源,实现各种硬件控制和通信功能。同时,理解如何通过位寻址操作特定寄存器的某些位,可以进一步提高程序的灵活性和效率。
304 浏览量
325 浏览量
247 浏览量
218 浏览量
2022-11-24 上传
144 浏览量
tan2006ya
- 粉丝: 0
- 资源: 12
最新资源
- Applied-ML-Algorithms:一个采用泰坦尼克号数据集并在scikit-learn和超参数调整中使用不同ML模型的ML项目
- Spring_2021
- Tolkien
- cot_tracker:交易者数据追踪器的承诺
- http-factory-diactoros:为Zend Diactoros实现的HTTP工厂
- 酒保:酒保-PostgreSQL备份和恢复管理器
- tpwriuzv.zip_归一化时域图
- TPF U13
- TicTaeToeOnline
- Large-scale Disk Failure Prediciton Dataset-数据集
- aim-high:用于设置和跟踪目标的应用
- c#飞机大战期末项目.rar
- Becross
- nrmgqpyn.zip_complex cepstrum
- 适用于Android NDK的功能强大的崩溃报告库。 签出后不要忘记运行git submodule update --init --recursive。-Android开发
- 弹跳旋转器::globe_with_meridians::bus_stop:一个显示弹跳旋转器的Web组件