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