好文档 - 专业文书写作范文服务资料分享网站

单片机串口通信设计方案

天下 分享 时间: 加入收藏 我要投稿 点赞

的超低压工作,而且与MCS-51系列单片机完全兼容,可反复进行系统实验[12]。因此,采用该单片机作为主控制系统的芯片。

2.2.2显示模块方案选择

方案一:

采用LED数码管动态扫描,LED数码管价格适中,对于显示数字合适,采用动态扫描法与单片机连接时,虽然占用的单片机口线少,但连线还需要花费一点时间,所以也不用此种作为显示。 方案二:

采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且价格也相对较高,所以也不用此种作为显示。 方案三:

采用LCD液晶显示屏,液晶显示屏的显示功能强大,可显示大量文字、图形、符号显示多样,清晰可见。由于本系统主机显示4个数据,从机显示2个数据,选择16?2的液晶显示器皆可,所以在此设计中采用LCD1602液晶显示屏。

2.2.3 软件编程语言的选择

方案一:

采用汇编语言编写,汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码的一种语言。其主要优点是占用资源少、程序执行效率高。但是汇编语言可读性差,而且不同的CPU,其汇编语言可能有所差异,也不易移植。因此本系统软件不采用汇编语言编写。 方案二:

采用C语言编写,C语言是一种结构化的高级语言。其优点是可读性好,移植容易,是普遍使用的一种计算机语言。 用C语言来编写目标系统软件,会大大缩短开发周期,且明显地增加软件的可读性,便于改进和扩充,从而研制出规模更大、性能更完备的系统。缺点是占用资源较多,执行效率没有汇编高。但本系统只进行单片机之间的数据传送,不涉及复杂的数据处理,因此本系统软件采用C语言编写[8]。

2.3总体方案设计

本系统是由一个上位机系统和三个下位机系统构成,上位机系统是由AT89C51单片机串行通信最小系统、LCD1602显示器、中断发送信号按钮和接收/发送选择开关组成。三个下位机系统的构成完全相同主要有AT89C51单片机串行通信最小系统、LCD1602显示器和中断数据加1按钮组成。单片机最小系统是控制系统的核心,LCD1602液晶显示器作为串行通信接收/发送数据以及单片机状态的显示。上位机系统的发送/接收状态可以通过接收/发送选择开关进行控制,处于发送数据状态时,由中断发送信号按钮决定是否给从机发送数据。下位机系统始终处于串行中断状态,是接收还是发送数据由上位机发送的控制命令决定。系统框图如图2.8所示。

图2.8 串行通信系统框图

本系统主要完成的功能是上位机和下位机的半双工通信,可以通过接收/发送选择开关来控制上位机是处于接收状态还是发送状态。当处于接收状态时,主机循环接收下位机00#、01#、02#三机的实时数据,并进行显示;当处于发送状态时,主机将接收到的三机数据按从大到小的数据排列,然后依次发送到00#、01#和02#机上,并进行显示。从机的数据通过外部中断输入,数据从0开始每来一次中断数据加1,加到9数据清0,再从0到9进行循环。

2.4本章小结

本章介绍了系统的方案选择,主要对单片机串行通信的相关知识进行了归纳整理和工作方式选择,以及模块化方案的比较与选择,最后确定了串行通信控制系统要实现的功能并绘制了系统框图。

3.系统硬件设计

根据总体设计方案框图,总系统由4个分系统组成,1个上位机系统,3个下位机系统。硬件主要由AT89C51微控制器、LCD1602液晶显示器、开关和按钮组成。

3.1硬件电路核心器件介绍

本系统的两大核心器件位AT89C51单片机和LCD液晶显示器,AT89C51单片机完成系统的功能控制部分,液晶显示器完成通信过程中数据的实时显示。

3.1.1 AT89C51的主要特点

AT89C51是美国ATMEL公司生产的低电压,高性能CMOS的 8位单片机,采用单一+5V电源供电,片含4KB的可反复擦写的只读程序存储器(PEROM)和128B的随机

存取数据存储器(ROM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片置通用8位中央处理器(CPU)和Flash存储单元。功能强大AT89C51单片机可提供许多高性价比的应用场合,可灵活应用于各种控制领域。

AT89C51的主要部件:

(1)一个以ALU为中心的8位中央处理器,完成运算和控制功能。 (2)128B的部数据存取存储器(部RAM),其地址空围00H-7FH。 (3)21个特殊功能寄存器,离散分布于地址80H-FFH中。

(4)程序计数器PC,是独立的16位专用寄存器,容为将要执行的指令地址。 (5)4KB Flash部程序存储器(片ROM),用来存储程序、原始数据、表格等。 (6)4个8位可编程I/O口(P0、P1、P2和P3)。 (7)一个UART串行通信口。 (8)2个16位定时器/计数器。

(9)5个中断源,两个中断优先级的中断控制系统。 (10)一个片振荡器和时钟电路。 AT89C51的极限参数如表1所示:

表1 AT89C51的极限参数: 工作温度 储藏温度 任一引脚对地电压 最高工作电压 直流输出电流 -55℃到+125℃ -65℃到+150℃ -1.0V到+7.0V 6.6V 15.0mA

AT89C51单片机双列直插式引脚图如图3.1所示,其引脚说明如下:

(1)电源引脚 Vcc(40):接DC电源端,Vcc=+5V?20%。 GND(20):接地端。 (2)P0-P3引脚 P0口:是一组8位漏极开路型双向I/O,也即地址/数据总线复用口。作为输出口用时,每位能以吸收电流的方式驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。

P1口:是一个带部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。作输入口使用时,因为部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。

P2口:是一个带有部上拉电阻的8位双向I/O

图3.1 AT89C51双列直插式引脚图

口,P2的输出缓冲级可驱动(吸收或输出电

流)4个TTL逻辑门电路。对端口写“1”,通过部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。

P3口:是一组带有部上拉电阻的8位双向I/O口,P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。作输入端时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。

P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如表2所示:

表2 P3口的第二功能:

端 口 引 脚 第 二 功 能 P3.0 RXD (串行输入口)

P3.1 TXD (串行输出口) P3.2 INT0 (外中断0) P33 INT1 (外中断1)

P3.4 T0 (定时/计数器0)

P3.5 T1 (定时/计数器1)

P3.6 WR (外部数据存储器写选通)

P3.7 RD (外部数据存储器读选通)

(3)时钟引脚 XTAL1(19):振荡器反相放大器的及部时钟发生器的输入端。 XTAL2(18):振荡器放大器的输出端。 (4)控制线引脚 RST(9):复位输入端。此引脚出现至少两个机器周期的高电平,将单片机复位。 ALE/(PROG)(30):地址锁存/编程脉冲。对Flash存储器编程期间,该引脚用于输入编程脉冲(PROG)。

PSEN(29):外部ROM读选通信号。当AT89C51由外部程序存储器取指令(或数

据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,这两次有效的PSEN信号不出现。

EA/VPP(31):、外ROM选择/编程电源。EA为片外ROM选择端。当EA保持高电平时,先访问片ROM,当PC的值超过4KB时,自动转向执行片外ROM中的程序。。当EA保持低电平时,只访问片ROM。在Flash存储器编程期间,该引脚用于施加编程电压Vpp[13]。

3.1.2 LCD1602液晶显示器模块

1602是一款常用的字符型液晶,可显示2行16个字符。1602液晶模块带标准字库,部的字符发生存储器(CGROM)已经存储了160个5?7点阵字符图形,32个5?10点阵字符图形。这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等。每一个字符都有一个固定的代码,这个代码就是对应字符的ASCⅡ码。比如大写的英文字母“A”的代码是01000001B(41H),显示时,只要将41H存入显示数据存储器DDRAM即可,液晶自动将地址41H中的中的点阵字符图形显示出来,我们就能看到字母“A”。

1602采用标准的16引脚接口,引脚图如图3.2所示,其功能如表3所示。其中8位数据总线D0-D7和RS、R/W、EN三个控制端口,个分解时序操作速度支持到1MHz,并且带有字符对比度调节和背光。

当RS和RW同时为低电平时,可以写入指令或显示地址;当RS为低电平,RW为高电平时,可以读忙信号;当RS为高电平,RW为低电平时,可以写入数据。

1602LCD主要技术参数:显示容量:16×2个字符、芯片工作电压:4.5—5.5V、工作电流:2.0mA(5.0V)、模块最佳工作电压:5.0V、字符尺寸:2.95×4.35(W×H)mm。

表3 1602引脚使用说明 编号 符号 1 2 3 4 5 6 15 16

对1602显示字符控制,通过访问1602部RAM地址实现,1602部控制具有80 字节RAM,RAM地址与字符位置对应关系如图3.3所示。

引脚说明 - - RS=1时选择数据寄存器,RS=0时选择指令寄存器 RW=1时执行读操作,RW=0时执行写操作 高电平使能 双向数据输入与输出 接到或通过10Ω左右电阻接到VDD 接到VSS 使用方法 VSS 电源地 VDD 电源 V0 RS RW E 数据/命令选择端 读/写选择端 使能信号端 图3.2 1602引脚图

对比度信号调整端 外接分压电阻,调节屏幕亮度 7-14 D0-D7 数据I/O BLA 背景光源正极 BLK 背景光源负极

单片机串口通信设计方案

的超低压工作,而且与MCS-51系列单片机完全兼容,可反复进行系统实验[12]。因此,采用该单片机作为主控制系统的芯片。2.2.2显示模块方案选择方案一:采用LED数码管动态扫描,LED数码管价格适中,对于显示数字合适,采用动态扫描法与单片机连接时,虽然占用的单片机口线少,但连线还需要花费一点时间,所以也不用此种作为显示。方案二:<
推荐度:
点击下载文档文档为doc格式
5ox666ze7k44p5c1cp2i5zpak1cslt00dc5
领取福利

微信扫码领取福利

微信扫码分享