单片机与PC机串口通信的设计(2)

2019-08-31 00:13

图2-3 AT89C51的复位电路

AT89C51的串行口:

(1)基本概念

数据通信的传输方式:常用于数据通信的传输方式有单工、半双工、全双工和多工方式。 A.单工方式:数据仅按一个固定的方向传送。因为这种传输方式的用途有限,常用于串行口的打印数据传输与简单系统间的数据采集。

B.双工方式:数据可以实现双向传送,但不能同时进行,实际的应用采用某种协议实现收发开关转换。

C.全双工方式:允许双方同时进行数据双向传送,但一般全双工电路的线路和设备比较复杂。 D.多工方式:以上三种传输方式都是同一线路传输一种频率信号,为了充分的利用线路资源,可通过使用多路复用器或多路集线器,采用频分、时分、或码分复用技术,即可实现在同一线路上资源共享功能,我们称之为多工传输方式。

串行通信的两种通信形式 A. 异步通信

在这种通信方式中,接收器和发射器有各自的时钟,他们的工作是非同步的,异步通信用一帧来表示一个字符,其内容如下:一个起始位,紧接着是若干个数据位,图 是传输45H的数据格式。

B.同步通信

同步通信格式中,发送器和接收器由同一个时钟源控制,为了克服在异步传输中,每传输一帧字符都必须加上起始位和停止位,占用了传输时间,在要求传送的数据量较大的

(2)MCS-51的串行和控制寄存器

MCS-51单片机串行口专用寄存器的SBUF为串行口的收发缓冲器,它是一个可寻址的专用寄存器,其中包含了接收器和发射器寄存器,可以实现全双工通信。但这两个寄存器具有同一地址(99H)。MCS-51的串行数据传输很简单,只要向缓冲器写入数据就可发送数据。而从接收缓冲器读出数据既可接收数据。

此外,接收缓冲器前还加上一级输入移位寄存器,MCS-51这种结构的目的在于接收数据时避免发生重叠现象,文献称这种结构为双缓冲结构。而发送数据就不需要这样设计,因为发送时,CPU是主动的,不可能出现这种情况。 串行通信控制寄存器(SCON),它是一个可寻址的专用寄存器,用于串行数据通信的控制,单元地址是98H,其结构格式如表2-3所示。

第6页,共37页

表2-3 SCON寄存器结构

D7 SM0 9FH

D6 SM1 9EH

D5 SM2 8DH

D4 REN 9CH

D3 TB8 9BH

D2 RB8 9AH

D1 TI 99H

D0 RI 98H

SCON 位地址

下面我们对SCON控制位功能介绍如表2-4所示。

1)SM0、SM1:串行口工作方式控制位

表2-4 SCON控制位功能介绍

SM0 0 0 1 1

SM1 0 1 0 1

工作方式 方式0 方式1 方式2 方式3

功能说明

移位寄存器方式(用于I/O扩展) 8位UART,波特率可变(T1溢出率/n) 9位UART,波特率为fosc/64或fosc/32 9位UART,波特率可变(T1溢出率/ n)

2)SM2:多机通信控制位

多机通信是工作方式2和方式3,SM2位主要用于方式2和方式3。接收状态,当串行口工作方式2或3,以及SM2=1时,只有当接收到第9位数据(RB8)为1时,才把接收的前8位数据送入SBUF,且置位RI发出中断申请,否则会将收到的数据放弃。当SM2=0时,只有在接收到有效停止位时才启动RI,若没接收到有效停止位,则RI清“0”。在方式0中SM2应该为“0”。

REN:允许接收控制位。由软件置“1”时,允许接收;软件置“0”时,不许接收。 TB8:在方式3和方式3中要发送的第9位数据,需要时用软件置位和清零。

TB8:在方式2和方式3中是接收到的第9位数据。在方式1时,如SM2=0,RB8接收到的停止位。在方式0中,不使用RB8。

TI:发送中断标志。由硬件在方式0发送完第8位时置“1”,或在其它方式中串行发送停止位的开始时置“1”。必须由软件清“0”。

RI:接收中断标志。由硬件在方式0串行发射第8位结束时置“1” B:特殊功能寄存器PCON

PCON:主要是是CHMOS型单片机的电源控制而设置的专用寄存器,单元地址为87H其机构格式如表2-5所示。

表2-5 特殊功能寄存器PCON

PCON 位符号

D7 SMOD

D6 —

D5 —

D4 —

D3 GF1

D2 GF0

D1 PD

D0 IDL

在CHMOS型单片机中,除SMOD位外其它位均为虚设的,SMOD是串行波特率倍增位,当SMOD=1时串行口波特率加倍,系统复位默认为SMOD=0。 这里重述一下中断允许寄存器IE对串行口有影响的位ES。ES为串行中断允许控制位,ES=1允许串行中断,ES=0,禁止串行中断。如表2-6所示。

表2-6 中断允许寄存器

符号 位地址

EA AFH

— AEH

— ADH

ES ACH

ET1 ABH

EX1 AAH

ETO A8H

EX0 A8H

(3)串行口工作方式

串行口具有4种工作方式,我从应用和毕业设计的角度,重点讨论方式1发送。串行口定义为

方式1时传送1帧数据为10位,其中1位起始地址、8位数据位(先低位后高位)、1位停止位方式

第7页,共37页

1的波特率可变,波特率=22.2 LCM1601

SMOD/32?(T1的溢出率)

LCM1601是一款兼容的液晶显示模块,支持5×7点阵和16字×2行符两种模式,背光亮度和显示对比度可调,是一种功能较简易、价格较便宜的液晶显示器件。它由液晶显示屏和驱动器两部分组成,单片机通过写控制字方式访问它的驱动器来实现对显示屏的控制。 图2-4所示为LCM1601封装图。

图2-4 LCM1601封装图

器件封装为单列DIP16,引脚定义如表2-7所示。

表2-7 LCM1601引脚说明

编号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

标示 VSS VDD V0 RS R/W E D0 D1 D2 D3 D4 D5 D6 D7 LED+ LED-

背光源正极 背光源负极 引脚说明 电源地 电源正极 液晶显示偏压 指令/数据选择端(H/L)

读/写选择端 使能信号

位数据总线 82.3 4×4行列式扫描键盘

简易的行列式键盘不需要借助其他的I/O扩展芯片,直接占用P1的8条口线,再利用单片机内

第8页,共37页

部的软件来配合实现4 ×4扫描键盘,其特点是简单且不增加成本,通常在系统I/O线充裕的情况下采用。

2.4 音频功率放大器件LM386

LM386的接脚图如图2-8所示。LM386是专为低损耗电源所设计的功率放大器。它的内建增益为20,透过pin 1 和pin8脚位间电容的搭配,增益最高可达200。LM386输入电压范围可由4V~12V,无作动时仅消耗4mA电流,且失真低。

图2-8 接脚图

2.5 RS-232电平转换器件Max232

MAX232芯片是MAXIM 公司生产的,包含两路接收器和驱动器的IC芯片。MAX232芯片内部有一个

电源电压转换器,可以把输入的+5V 电压变换为RS-232输出电平所需的一1O~+ 10V 电压。所以采用此芯片接口串行通信系统只需单一的+5V电源就可以了。对于没有一12~+12V 的场合,其适应性更强。加之其价格适中,硬件接口简单,所以被广泛采用。图2-9所示为Max232的封装图。

图 2-9 Max232封装图

引脚说明如表2-8所示。

第9页,共37页

表2-8 Max232引脚说明

VCC GND C+、C- T1IN T1OUT R1IN R1OUT T2IN T2OUT R2IN R2OUT 供电电压 地 外围电容 第一路TTL/CMOS驱动电平输入 第一路RS-232电平输出 第一路RS-232电平输入 第一路TTL/CMOS驱动电平输出 第二路TTL/CMOS驱动电平输入 第二路RS-232电平输出 第二路RS-232电平输入 第二路TTL/CMOS驱动电平输出 3部分器件的原理分析

3.1 键盘扫描的工作原理

简易的行列式键盘不需要借助其他的I/O扩展芯片,直接占用P1的8条口线,再利用单片机内

部的软件来配合实现4行4列的扫描键盘,其特点是简单且不增加成本,通常在系统I/O线充裕的情况下采用。其原理图如图3-1所示。

图3-1原理图

工作原理:I/O口P2.7~P2.1充当列选线,P2.3~P2.1充当行选线。在键盘开始扫描的时候,首

先向P2口赋行扫描初值7FH,令第一行(P2.3)为0,从第一行开始检测。接下来检测第一行的第一列是否键按下?没有按下,则检测第二列,如果4列扫描完毕,没有键按下,则扫描下一行,如此往复,直至4行4列检测完毕。当有键按下时,相应的列选线电平被拉低,首先扫描行选线,确定按键的行号,然后扫描列选线,确定列号,则按键的编号即可确定。 3.2 按键发声原理

要产生音频脉冲,只要算出某一音频的周期,然后将此周期除以2,即为半周期的时间,利用定时器计时这个半周期时间,每当计时到后就将输出脉冲的I/O反相,然后重复计时此半周期时间再对I/O反相,就可在I/O引脚上得到此频率的脉冲。

计数脉冲值与频率的关系公式如下:

第10页,共37页


单片机与PC机串口通信的设计(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:山西XXXX煤化工有限公司污水处理及中水回用设计方桉

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: