我是靠谱客的博主 羞涩小海豚,这篇文章主要介绍单片机头文件reg52.h中文注释详解,现在分享给大家,希望可以做个参考。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
/*-------------------------------------------------------------------------- REG52.H Header file for generic 80C52 and 80C32 microcontroller. Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc. All rights reserved. --------------------------------------------------------------------------*/ #ifndef __REG52_H__ #define __REG52_H__ /* 特殊字节(8位)寄存器 */ sfr P0 = 0x80; // P0口特殊寄存器寻址位 sfr P1 = 0x90; // P1口特殊寄存器寻址位 sfr P2 = 0xA0; // P2口特殊寄存器寻址位 sfr P3 = 0xB0; // P3口特殊寄存器寻址位 sfr PSW = 0xD0; //程序状态字寄存器 sfr ACC = 0xE0; //累加器 sfr B = 0xF0; //B 特殊寄存器 sfr SP = 0x81; //堆栈指针寄存器 sfr DPL = 0x82; //数字指针(低位) sfr DPH = 0x83; //数字指针(高位) sfr PCON = 0x87; //电源控制寄存器 sfr TCON = 0x88; //定时器/计数器 0 和 1 控制 sfr TMOD = 0x89; //定时器/计数器 0 和 1 模式 sfr TL0 = 0x8A; //定时器/计数器 0 低8位寄存器 sfr TL1 = 0x8B; //定时器/计数器 1低8位寄存器 sfr TH0 = 0x8C; //定时器/计数器 0高8位寄存器 sfr TH1 = 0x8D; //定时器/计数器 1高8位寄存器 sfr IE = 0xA8; //中断允许寄存器 sfr IP = 0xB8; //中断优先寄存器(低) sfr SCON = 0x98; //串口控制寄存器 sfr SBUF = 0x99; //串口数据缓冲器 /* 8052扩展寄存器 */ sfr T2CON = 0xC8; //定时器/计数器2 控制 sfr RCAP2L = 0xCA; //定时器/计数器2 重载/捕捉低位 sfr RCAP2H = 0xCB; //定时器/计数器2 重载/捕捉高位 sfr TL2 = 0xCC; //定时器/计数器2 低位 sfr TH2 = 0xCD; //定时器/计数器2 高位 /* 位寄存器 */ /* PSW (程序状态字寄存器) */ sbit CY = PSW^7; //进位、借位标志。进位、借位CY=1;否则CY=0 sbit AC = PSW^6; //辅助进位、借位标志。当D3向D4有借位或进位时,AC=1;否则AC=0 sbit F0 = PSW^5; //用户标志位 sbit RS1 = PSW^4; //寄存器组选择控制位1 sbit RS0 = PSW^3; //寄存器组选择控制位0 sbit OV = PSW^2; //溢出标志。有溢出OV=1,否则OV=0 sbit F1 = PSW^1; //保留位,无定义 sbit P = PSW^0; //8052 only 奇偶校验标志位,由硬件置位或清0; //存在ACC中的运算结果有奇数个1时P=1,否则P=0 /* TCON (定时器/计数器 0 和 1 控制) */ sbit TF1 = TCON^7; //定时器1溢出标志位。当字时器1计满溢出时, //由硬件使TF1置“1”,并且申请中断。 //进入中断服务程序后,由硬件自动清“0”,在查询方式下用软件清 “0” sbit TR1 = TCON^6; //定时器1运行控制位。由软件清“0”关闭定时器1。 //当GATE=1,且INT1为高电平时,TR1置“1”启动定时器1; //当GATE=0,TR1置“1” 启动定时器1 sbit TF0 = TCON^5; //定时器0溢出标志。其功能及操作情况同TF1。 sbit TR0 = TCON^4; //定时器0运行控制位。其功能及操作情况同TR1。 sbit IE1 = TCON^3; //外部中断1请求标志。 sbit IT1 = TCON^2; //外部中断1触发方式选择位。 sbit IE0 = TCON^1; //外部中断0请求标志。 sbit IT0 = TCON^0; //外部中断0触发方式选择位。 /* IE (中断允许寄存器) */ sbit EA = IE^7; //允许/禁止总中断 sbit ET2 = IE^5; //8052 only 允许/禁止定时器2(T2)中断 sbit ES = IE^4; //允许/禁止串口中断 sbit ET1 = IE^3; //允许/禁止T1溢出中断 sbit EX1 = IE^2; //允许/禁止外部中断1(INT1) sbit ET0 = IE^1; //允许/禁止T0溢出中断 sbit EX0 = IE^0; //允许/禁止外部中断0(INT0) /* IP (中断优先寄存器低) */ sbit PT2 = IP^5; //定时/计数器T2优先级设定位。 sbit PS = IP^4; //串行口优先级设定位; sbit PT1 = IP^3; //定时/计数器T1优先级设定位; sbit PX1 = IP^2; //外部中断0优先级设定位; sbit PT0 = IP^1; //定时/计数器T0优先级设定位; sbit PX0 = IP^0; //外部中断0优先级设定位; /* P3 (第二功能) */ sbit RD = P3^7; //外部数据存储器读脉冲 sbit WR = P3^6; //外部数据存储器写脉冲 sbit T1 = P3^5; //定时器/计数器1外部输入 sbit T0 = P3^4; //定时器/计数器0外部输入 sbit INT1 = P3^3; //外部中断0。 sbit INT0 = P3^2; //外部中断1。 sbit TXD = P3^1; //串行数据输出口 sbit RXD = P3^0; //串行数据输入口 /* SCON(控制寄存器,它是一个可寻址的专用寄存器,用于串行数据的通信控制) */ sbit SM0 = SCON^7; //串行口工作方式控制位0。 sbit SM1 = SCON^6; //串行口工作方式控制位1。 sbit SM2 = SCON^5; //多机通信控制位。 sbit REN = SCON^4; //允许接收位。用于控制数据接收的允许和禁止, // ren=1时,允许接收,ren=0时,禁止接收。 sbit TB8 = SCON^3; //发送接收数据位8。 sbit RB8 = SCON^2; //接收数据位8。 sbit TI = SCON^1; //发送中断标志位。 sbit RI = SCON^0; //接收中断标志位。 /* P1(第二功能) */ sbit T2EX = P1^1; // 8052 only 定时/计数器2捕捉/重装入触发 sbit T2 = P1^0; // 8052 only 定时/计数器2外部输入 /* T2CON (定时器/计数器2 控制) */ sbit TF2 = T2CON^7; //定时器2 溢出标记 sbit EXF2 = T2CON^6; //定时器2 外部标记 sbit RCLK = T2CON^5; //0=串口时钟应用定时器1 溢出, 1=定时器 2 sbit TCLK = T2CON^4; //0=串口时钟应用定时器1 溢出, 1=定时器 2 sbit EXEN2 = T2CON^3; //定时器 2 外部允许 sbit TR2 = T2CON^2; //0=停止定时器, 1=开始定时器 sbit C_T2 = T2CON^1; //0=定时器, 1=计数器 sbit CP_RL2 = T2CON^0; //0=重载, 1=捕捉选择。 #endif

最后

以上就是羞涩小海豚最近收集整理的关于单片机头文件reg52.h中文注释详解的全部内容,更多相关单片机头文件reg52内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(59)

评论列表共有 0 条评论

立即
投稿
返回
顶部