您当前的位置:五五电子网电子知识单片机-工控设备单片机通信单片机与PC 机的通信原理及电路的设计研究 正文
单片机与PC 机的通信原理及电路的设计研究

单片机与PC 机的通信原理及电路的设计研究

点击数:7117 次   录入时间:03-04 11:35:38   整理:http://www.55dianzi.com   单片机通信

  图 4.3 最小系统

      4.2 温度传感器

图4.4 DS18B20连线图

  图4.4 DS18B20连线图

      从图 4.4 可以看出,DS18B20 与单片机的连接非常简单,单片机只需要一个I/O 口就可以控制DS18B20.这个图的接法是单片机与一个DS18B20 通信,如果要控制多个DS18B20进行温度采集,只要将所有的DS18B20 的I/O 口全部连接到一起就可以了。

      4.3 LCD显示模块

      显示电路采用LCD1602 液晶显示屏,P2 作为液晶8 位数据输入端口。P1.0 口作为液晶数据/命令选择端口,P1.1 为液晶使能端口。

图 4.5 LCD 显示模块

  图 4.5 LCD 显示模块

      4.4 串行口通信模块设计

      51 单片机有一个全双工的串行通信口,使单片机和计算机之间可以方便地进行通信。

      电平范围是电路能够安全可靠识别信号的电压范围。

      CMOS 电路的电平范围一般是从0 到电源电压。CMOS 电平中,高电平(3.5~5V)为逻辑"1",低电平(0~0.8V)为逻辑"0".

      RS232 接口的电平范围是-15V 到+15V,RS232 电平采用负逻辑,即逻辑"1":-3~-15V,逻辑"0":+3~+15V.

      单片机的串口是TTL 电平的,而计算机的串口是RS232 电平,要使两者之间进行通信,两者之间必须有一个电平转换电路,即单片机的串口要外接电平转换电路芯片把与TTL兼容的CMOS 高电平表示的1 转换成RS232 的负电压信号,把低电平转换成RS-232 的正电压信号。典型的转换电路给出-9V 和+9V.

      本设计中实现逻辑电平转换可以采用MAX232 芯片的转换接口:MAX232 是MAXIM公司生产的,包含两路驱动器和接收器的RS-232 转换芯片。MAX232 芯片内部有一个电压转换器,可以把输人的+5V 电压转换为RS-232 接口所需的±10V 电压,尤其适用于没有±12V 的单电源系统。与此原理相同的芯片还有MAX202、AD 公司的ADDt101 以及SIL 公司的IC1232 芯片。

图 4.6 MAX232 芯片引脚

  图 4.6 MAX232 芯片引脚

      由于 protues仿真时不需进行电平转换,所以仿真时没有用上MAX232 芯片电路,但做实物时需进行电平转换,其硬件连线图如图4.7 所示。MAX232 芯片的T1in 引脚连接AT89C51 单片机的P3.1(TXD)引脚,MAX232 芯片的R1out 引脚连接AT89C51 单片机的P3.0(RXD)引脚;MAX232 芯片的T1out 引脚连接DB9 针接口的第2 引脚,MAX232 芯片的R1in 引脚连接DB9 针接口的第3 引脚。

图4.7 电平转换硬件连接图

  图4.7 电平转换硬件连接图

      4.5 系统原理图

      由以上模块化设计可得整个系统原理图如图4.8 所示:

图4.8 系统原理图

  图4.8 系统原理图

www.55dianzi.com

      5 软件设计

      5.1 算法设计

      编写单片机异步通信程序步骤如下:

      1. 设置串口工作方式

      此时需对串行控制器SCON 中的SM0、SM1 进行设置。PC 机与单片机的通信中一般选择串口工作在方式1 下。

      2. 选择波特率发生器

      选择定时器1或定时器2 做为其波特率发生器。

      3. 设置定时器工作方式

      当选择定时器1 做为波特率发生器时,需设置其方式寄存器TMOD 为计数方式并选择相应的工作方式(一般选择方式2 以避免重装定时器初值);当选择定时器2 做为波特率发生器时,需将T2CON 设置为波特率发生器工作方式。

      4. 设置波特率参数

      影响波特率的参数有二,一是特殊寄存器PCON 的SMOD 位,另一个是相应定时器初值。

      5. 允许串行中断

      因在程序中我们一般采有中断接收方式,故应设EA=1、ES=1.

      6. 允许接收数据

      设置 SCON 中的REN 为1.表示允许串行口接收数据。

      7. 允许定时/计数器工作

      此时开启定时/计数器,使其产生波特率8. 编写串行中断服务程序。

      当有数据到达串口时,系统将自动执行所编写的中断服务程序。

      9. 收/发相应数据

      注意的是发送操作完成需将T1清零,接收工作完成后需将R1清零。

     



上一页  [1] [2] [3] 


本文关键字:单片机  通信  单片机通信单片机-工控设备 - 单片机通信