📄 main.lst
字号:
140 3.计数允许控制: (~GATE0 | ~INT0) & TR0 = 1 允许计数
141 (~GATE0 | ~INT0) & TR0 = 0 停止计数
142 4.中断允许: ET0 = 1 允许中断响应
143 ET0 = 0 禁止中断响应
144 5.计数溢出: 计数溢出时置TF0为1,进入中断服务程序时由硬件自动清0.
145 计数溢出时需由软件重装计数初值到TL0中.
146
147 定时器0的子定时器二
148 1.计数方式: 8位计数器,8位计数值在TH0中.
149 2.计数脉冲输入: 内部时钟12分频信号
150 3.计数允许控制: TR1 = 1 允许计数
151 TR1 = 0 停止计数
152 4.中断允许: ET1 = 1 允许中断响应
153 ET1 = 0 禁止中断响应
154 5.计数溢出: 计数溢出时置TF1为1,进入中断服务程序时由硬件自动清0.
155 计数溢出时需由软件重装计数初值到TH0中.
156
157 *方式选择: M1 M0
158 0 0 方式0
159 0 1 方式1
160 1 0 方式2
161 1 1 方式3(仅定时器0可用,定时器1如设置为方式3时则停止工作)
162
163 *~GATE,C/~T,M1,M0在TMOD中,低4位控制定时器0,高4位控制定时器1.
164 *TFx,TRx在TCON中
165 *ETx在IE中
166
167 *当定时器0工作在方式3时,定时器1只能工作在方式2下作波特率发生器使用.
168
169 定时器1在方式2下作波特率发生器时的波特率表(晶振为11.0592MHz):
170 TH1 Baud Rate(bps) SMOD
171 FDH 19.2k 1
172 FDH 9.6k 0
173 FAH 4.8k 0
174 F4H 2.4k 0
175 E8H 1.2k 0
176 |\
177 ==============================================================================
178
179 ==============================================================================
C51 COMPILER V7.50 MAIN 11/12/2006 10:31:33 PAGE 4
180 |/ 定时器2控制
181
182 自动重装方式: 1.计数方式: 16位计数器,高8位在TH2,低8位在TL2.
183 2.计数脉冲输入: C/~T2 = 0 内部时钟12分频信号
184 C/~T2 = 1 T2引脚信号
185 3.计数允许控制: TR2 = 1 允许计数
186 TR2 = 0 停止计数
187 4.中断允许: ET2 = 1 允许中断响应
188 ET2 = 0 禁止中断响应
189 5.计数溢出: 计数溢出时置TF2为1,进入中断服务程序时需由软件清0.
190 6.外部下降沿触发条件: EXEN2 = 1 允许外部下降沿触发信号(自T2EX引脚)进入
191 EXEN2 = 0 禁止外部下降沿触发信号(自T2EX引脚)进入
192 *当外部下降沿触发信号进入时,置EXF2标志为1,进入中断服务程序时需由软件清0.
193 7.重装计数初值条件: 计数溢出或有外部下降沿触发信号进入时重装计数初值.
194 RCAP2H->TH2,RCAP2L->TL2.
195
196 捕获方式: 1.计数方式: 16位计数器,高8位在TH2,低8位在TL2.
197 2.计数脉冲输入: C/~T2 = 0 内部时钟12分频信号
198 C/~T2 = 1 T2引脚信号
199 3.计数允许控制: TR2 = 1 允许计数
200 TR2 = 0 停止计数
201 4.中断允许: ET2 = 1 允许中断响应
202 ET2 = 0 禁止中断响应
203 5.计数溢出: 计数溢出时置TF2为1,进入中断服务程序时需由软件清0.
204 计数初始值需由软件在中断服务程序中重装.
205 6.外部下降沿触发条件: EXEN2 = 1 允许外部下降沿触发信号(自T2EX引脚)进入
206 EXEN2 = 0 禁止外部下降沿触发信号(自T2EX引脚)进入
207 *当外部下降沿触发信号进入时,置EXF2标志为1,进入中断服务程序时需由软件清0.
208 7.捕获条件: 当有外部下降沿触发信号进入时捕获TH2和TL2中的计数值到RCAP2H和RCAP2L中.
209
210 波特率发生器: *当定时器2作波特率发生器用时即处于此种工作方式.
211 0.波特率发生器选择: TCLK = 1 选择定时器2作串行口(串行口工作在方式1或方式3)发送时的波特率发生器
212 TCLK = 0 选择定时器1作串行口(串行口工作在方式1或方式3)发送时的波特率发生器
213 RCLK = 1 选择定时器2作串行口(串行口工作在方式1或方式3)接收时的波特率发生器
214 RCLK = 0 选择定时器1作串行口(串行口工作在方式1或方式3)接收时的波特率发生器
215 1.计数方式: 16位计数器,高8位在TH2,低8位在TL2.
216 2.计数脉冲输入: C/~T2 = 0 内部时钟12分频信号
217 C/~T2 = 1 T2引脚信号
218 3.计数允许控制: TR2 = 1 允许计数
219 TR2 = 0 停止计数
220 4.中断允许: ET2 = 1 允许中断响应(仅外部输入的下降沿触发信号可产生中断)
221 ET2 = 0 禁止中断响应
222 5.计数溢出: 计数溢出信号作为时钟信号送给串行口电路,计数溢出不产生中断.
223 6.外部下降沿触发条件: EXEN2 = 1 允许外部下降沿触发信号(自T2EX引脚)进入
224 EXEN2 = 0 禁止外部下降沿触发信号(自T2EX引脚)进入
225 *当外部下降沿触发信号进入时,置EXF2标志为1,进入中断服务程序时需由软件清0.
226 7.重装计数初值条件: 计数溢出时重装计数初值.
227 RCAP2H->TH2,RCAP2L->TL2.
228 |\
229 ==============================================================================
230
231 ==============================================================================
232 |/ 串行口控制
233
234 方式0: 1.功能 同步移位寄存器.RXD引脚传送数据,TXD引脚传送同步脉冲(低电平有效).
235 2.波特率 内部时钟12分频
236 3.发送数据 写数据到SBUF的同时启动发送,发送完8位数据置TI=1.
237 4.接收数据 在REN=1允许接收的条件下,置RI=0即启动接收,8位数据接收好后,置RI=1.
238 5.SM2控制 本方式下不受SM2的影响
239
240 方式1: 1.功能 8位UART
241 2.波特率 由定时器1或定时器2提供
C51 COMPILER V7.50 MAIN 11/12/2006 10:31:33 PAGE 5
242 3.数据帧格式 1位起始位(0),8位数据(先发低位,后发高位),1位停止位(1).
243 4.发送数据 写数据到SBUF的同时启动发送,发送完1帧数据后置TI=1.
244 5.接收数据 在REN=1允许接收的条件下,接收到起始位时启动接收过程.
245 RB8存放接收到的停止位.
246 6.SM2控制 SM2=1时,只有RB8接收到合法的停止位1时才产生中断,置TI=1.
247 SM2=0时,不检测停止位合法性,接收到1帧数据后置TI=1.
248
249 方式2: 1.功能 9位UART
250 2.波特率 内部时钟的64分频(SMOD=0)或32分频(SMOD=1)
251 3.发送数据 写数据到SBUF的同时启动发送,发送完1帧数据后置TI=1.
252 TB8为要发送的第九位数据,此位接在SBUF中的8位数据之后发送.
253 4.接收数据 在REN=1允许接收的条件下,接收到起始位时启动接收过程.
254 RB8存放接收到的第九位数据.
255 5.数据帧格式 1位起始位(0),8位数据(先发低位,后发高位),TB8(接收时为RB8),1位停止位(1).
256 6.SM2控制 SM2=1时,只有RB8接收到1时才产生中断,置RI=1.
257 SM2=0时,不检测RB8的值,接收到一帧数据后即产生中断,置RI=1.
258
259 方式3: 1.功能 9位UART
260 2.波特率 由定时器1或定时器2提供
261 3.发送数据 写数据到SBUF的同时启动发送,发送完1帧数据后置TI=1.
262 TB8为要发送的第九位数据,此位接在SBUF中的8位数据之后发送.
263 4.接收数据 在REN=1允许接收的条件下,接收到起始位时启动接收过程.
264 RB8存放接收到的第九位数据.
265 5.数据帧格式 1位起始位(0),8位数据(先发低位,后发高位),TB8(接收时为RB8),1位停止位(1).
266 6.SM2控制 SM2=1时,只有RB8接收到1时才产生中断,置RI=1.
267 SM2=0时,不检测RB8的值,接收到一帧数据后即产生中断,置RI=1.
268
269 *中断允许控制 ES = 1 允许串行口中断
270 ES = 0 禁止串行口中断
271 *方式选择: SM0 SM1
272 0 0 方式0
273 0 1 方式1
274 1 0 方式2
275 1 1 方式3
276 *方式3除波特率由定时器1或定时器2提供外,其余细节同方式2.
277 *SM0,SM1,SM2,REN,TB8,RB8,TI,RI在SCON中
278 *SMOD在PCON中
279 *ES在IE中
280 |\
281 ==============================================================================
282
283 ==============================================================================
284 |/ 外部中断源控制
285
286 触发方式: ITx = 0 低电平触发方式,当~INTx引脚输入低电平时,即置IEx=1产生中断,此时IEx直接受~INTx引脚的电平控
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -