CPL P1.0 ;到1ms,P1.0取反,形成周期为2ms 的方波 MOV R2,#05H ;重置“200μs”计数器初值
LJMP L2 ;重复循环 程序2:
MAIN:MOV TMOD,#02H ;设定时器T0工作于模式2
CLR P1.0 ;P1.0输出低电平
LOOP1:MOV R2,#05H ;R2 为“200μs”计数器,置入初值5,计1ms LOOP:MOV TH0,#38H ;置入定时初值 MOV TL0,#38H
SETB TR0 ;启动T0
JNB TF0,$ ;查询200μs 时间到?时间到,继续查询 CLR TR0 ;关闭T0
DJNZ R2,LOOP ;“200μs”计数器减1,到1ms 吗?未到,转LOOP CPL P1.0 ;到1ms,P1.0取反,形成周期为2ms 的方波
SJMP LOOP1 ;重复循环 19、以中断方法设计单片机秒、分脉冲发生器。假定P1.0每秒产生1个机器周期的正脉冲, P1.1每分产生1个周期的正脉冲。
参考书上例题6-6
第七章
1、什么是串行异步通信,它有哪些作用?
答:在异步串行通信中,数据是一帧一帧(包括一个字符代码或一字节数据)传送的,每一 帧的数据格式参考书。通信采用帧格式,无需同步字符。存在空闲位也是异步通信的特征之 一。 2 、89C51单片机的串行口由哪些功能部件组成?各有什么作用?
答:89C51单片机的串行接口由发送缓冲期SBUF,接收缓冲期 SBUF、输入移位寄存器、串 行接口控制器SCON、定时器 T1构成的波特率发生器等部件组成。
由发送缓冲期SBUF发送数据,接收缓冲期 SBUF接收数据。串行接口通信的工作方式选择、 接收和发送控制及状态等均由串行接口控制寄存器 SCON 控制和指示。定时器 T1 产生串行 通信所需的波特率。
3、简述串行口接收和发送数据的过程。
答:串行接口的接收和发送是对同一地址(99H)两个物理空间的特殊功能寄存器 SBUF 进 行读和写的。当向 SBUF 发“写”命令时(执行“MOV SBUF,A”),即向缓冲期 SBUF 装 载并开始TXD引脚向外发送一帧数据,发送完便使发送中断标志位 TI=1。 在满足串行接口接收中断标志位RI(SCON.0)=0的条件下,置允许接收位REN(SCON.4) =1,就会接收一帧数据进入移位寄存器,并装载到接收SBUF中,同时使 RI=1。当
发读SBUF 命令时(执行“MOV A, SBUF”),便由接收缓冲期SBUF取出信息 通过89C51内部总线送CPU。
4、89C51串行口有几种工作方式?有几种帧格式?各工作方式的波特率如何确定? 答:89C51串行口有4种工作方式:
方式 0(8 位同步移位寄存器),方式 1(10 位异步收发),方式 2(11 位异步收发),方式 3 (11位异步收发)。
- 16 -