③ Proteus可提供的仿真元器件资源:仿真数字和模拟、交流和直流等数千种元器件,有30多个元件库。
④ Proteus可提供的仿真仪表资源 :示波器、逻辑分析仪、虚拟终端、SPI调试器、I2C调试器、信号发生器、模式发生器、交直流电压表、交直流电流表。理论上同一种仪器可以在一个电路中随意的调用。
⑤ 除了现实存在的仪器外,Proteus还提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似,但功能更多。这些虚拟仪器仪表具有理想的参数指标,例如极高的输入阻抗、极低的输出阻抗。这些都尽可能减少了仪器对测量结果的影响。
⑥ Proteus可提供的调试手段 Proteus提供了比较丰富的测试信号用于电路的测试。这些测试信号包括模拟信号和数字信号。
2 单片机双向通信的理论
2.1 单片机串口通信
2.1.1 单片机串口介绍
AT89C52单片机内部含有一个可编程全双工串行通信接口,具有UART的全部功能。该接口电路不仅能同时进行数据的发送和接收,也可作为一个同步移位寄存器使用。
在进行异步通信时,数据的发送和接收分别在各自的时钟(TCLK和RCLK)控制下进行的,但都必须与字符位数的波特率保持一致。MCS-51串行口的发送和接收时钟可由两种方式产生,一种是由主机频率fosc经分频后产生,另一种方式是由内部定时器T1或T2的溢出率经16分频后提供。
串行口的发送过程由一条写发送缓冲器的指令把数据(字符)写入串行口的发送缓冲器SBUF(发)中,再由硬件电路自动在字符的始、末加上起始位(低电平)、停止位(高电平)及其它控制位(如奇偶位等),然后在移位脉冲SHIFT的控制下,低位在前,高位在后,从TXD端(方式0除外)一位位地向外发送。
串行口的接收与否受制于允许接收位REN的状态,当REN被软件置“1”后,允许接收器接收。接收端RXD一位位地接收数据,直到收到一个完整的字符数据后,控制电路进行最后一次移位,自动去掉启始位,使接收中断标志RI置“1”,并向CPU申请中断。TI和RI是由硬件置位的,但需要用软件复位。
2.1.2 单片机串口控制寄存器
a.SBUF是两个在物理上独立的接收、发送缓冲器,可同时发送、接收数据。两个缓冲器只用一个字节地址99H,可通过指令对SBUF的读写来区别是对接收缓冲器的操作还是对发送缓冲器的操作。串行口对外有两条独立的收发信号线RXD(P3.0)、TXD(P3.1),因此可以同时发送、接收数据,实现全双工。
b.SCON寄存器用来控制串行口的工作方式和状态,可按位寻址,其字节地址为98H。
它用于定义串行口的工作方式及实施接收和发送控制。
表2-2 串行口工作方式选择位定义
SM0、SM1 工作方式 功能描述 波特率
0 0 方式0 8位移位寄存器 Fosc/12
0 1 方式1 10位UART 可变
1 0 方式2 11位UART Fosc/64或fosc/32
1 1 方式3 11位UART 可变
其中fosc为晶振频率
SM2:多机通讯控制位。在方式0时,SM2一定要等于0。在方式1中,当SM2=1时,则只有接收到有效停止位时,RI才置1。在方式2或方式3下,当SM2=1且接收到的第九位数据RB8=1时,RI才置1。 基于80C51单片机双向通信系统开发+源程序+电路图(5):http://www.youerw.com/zidonghua/lunwen_17453.html