基于51单片机的串口通讯系统
51单片机的串口通信程序(C语言)

51单片机的串口通信程序(C语言) 51单片机的串口通信程序(C语言)在嵌入式系统中,串口通信是一种常见的数据传输方式,也是单片机与外部设备进行通信的重要手段之一。
本文将介绍使用C语言编写51单片机的串口通信程序。
1. 硬件准备在开始编写串口通信程序之前,需要准备好相应的硬件设备。
首先,我们需要一块51单片机开发板,内置了串口通信功能。
另外,我们还需要连接一个与单片机通信的外部设备,例如计算机或其他单片机。
2. 引入头文件在C语言中,我们需要引入相应的头文件来使用串口通信相关的函数。
在51单片机中,我们需要引入reg51.h头文件,以便使用单片机的寄存器操作相关函数。
同时,我们还需要引入头文件来定义串口通信的相关寄存器。
3. 配置串口参数在使用串口通信之前,我们需要配置串口的参数,例如波特率、数据位、停止位等。
这些参数的配置需要根据实际需要进行调整。
在51单片机中,我们可以通过写入相应的寄存器来配置串口参数。
4. 初始化串口在配置完串口参数之后,我们需要初始化串口,以便开始进行数据的发送和接收。
初始化串口的过程包括打开串口、设置中断等。
5. 数据发送在串口通信中,数据的发送通常分为两种方式:阻塞发送和非阻塞发送。
阻塞发送是指程序在发送完数据之后才会继续执行下面的代码,而非阻塞发送是指程序在发送数据的同时可以继续执行其他代码。
6. 数据接收数据的接收与数据的发送类似,同样有阻塞接收和非阻塞接收两种方式。
在接收数据时,需要不断地检测是否有数据到达,并及时进行处理。
7. 中断处理在串口通信中,中断是一种常见的处理方式。
通过使用中断,可以及时地响应串口数据的到达或者发送完成等事件,提高程序的处理效率。
8. 串口通信实例下面是一个简单的串口通信实例,用于在51单片机与计算机之间进行数据的传输。
```c#include <reg51.h>#include <stdio.h>#define BAUDRATE 9600#define FOSC 11059200void UART_init(){TMOD = 0x20; // 设置定时器1为模式2SCON = 0x50; // 设置串口为模式1,允许接收TH1 = 256 - FOSC / 12 / 32 / BAUDRATE; // 计算波特率定时器重载值TR1 = 1; // 启动定时器1EA = 1; // 允许中断ES = 1; // 允许串口中断}void UART_send_byte(unsigned char byte){SBUF = byte;while (!TI); // 等待发送完成TI = 0; // 清除发送完成标志位}unsigned char UART_receive_byte(){while (!RI); // 等待接收完成RI = 0; // 清除接收完成标志位return SBUF;}void UART_send_string(char *s){while (*s){UART_send_byte(*s);s++;}}void main(){UART_init();UART_send_string("Hello, World!"); while (1){unsigned char data = UART_receive_byte();// 对接收到的数据进行处理}}```总结:通过以上步骤,我们可以编写出简单的51单片机串口通信程序。
51单片机串行通信接口

工 作 方 式 选 择 位
多允 机许 通接 信收 控控 制制 位位
发 接发接 送 收送收 数 数中中 据 据断断 第 第标标 九 九志志 位位
北京交通大学
18
各位功能说明如下: SM0 SM1:串口工作方式选择位
00 方式0: 同步移位寄存器 波特率=主振频率/12
01 方式1: 8位异步,波特率可变
⑵在双机通信中,该位作为奇偶校验位; ⑶在多机通信中用来表示D7-D0是地址帧或数据帧
即:
D8=0:表示数据帧; D8=1:表示地址帧
北京交通大学
20位是接收到的第9位数据。 方式1,SM2=0,停止位。方式0,不用。
⑵在多机通信中是地址帧(RB8=1)和数据帧 (RB8=0)的标识位。
北京交通大学
34
方式2、3的区别是:波特率设置不同 方式2的波特率是固定的。即:
波特率=fosc/32或fosc/64 方式3的波特率是可变的。即:
波特率 2smod
fosc
32 12 (256 X )
X
256
fosc (2s mod ) 384 波特率
北京交通大学
35
表1 波特率与时间常数
第6章 串行通信接口
本章主要内容 • 串行数据通信基本原理 • MCS-51单片机串行口 • 串行口应用举例
北京交通大学
1
一、串行数据通信基本原理
计算机的两种方式数据传送:并行和串行
并行传送的特点:
各数据位同时传送,传送速度快、效率高。
但需要的数据线多,因此传送成本高。并行数据
传送的距离通常小于30米。
3.直到停止位到来之后把它送入到RB8中,并 置位RI,通知CPU从SBUF取走接收到的一个字符。
51单片机的多机通信原理

51单片机的多机通信原理1. 什么是51单片机的多机通信?51单片机的多机通信是指在多个51单片机之间进行数据传输和通信的过程。
通过多机通信,可以实现不同单片机之间的数据共享和协作,从而实现更加复杂的功能。
2. 多机通信的原理是什么?多机通信的原理是通过串口进行数据传输。
在多个单片机之间,可以通过串口进行数据的发送和接收。
通过定义好的协议,可以实现数据的传输和解析,从而实现多机之间的通信。
3. 多机通信的步骤是什么?多机通信的步骤包括以下几个方面:(1)定义好通信协议:在多机通信之前,需要定义好通信协议,包括数据的格式、传输方式等。
(2)设置串口参数:在单片机中,需要设置好串口的参数,包括波特率、数据位、停止位等。
(3)发送数据:在发送数据之前,需要将数据按照协议进行格式化,然后通过串口发送出去。
(4)接收数据:在接收数据之前,需要设置好串口的中断,然后在中断中接收数据,并按照协议进行解析。
(5)处理数据:在接收到数据之后,需要对数据进行处理,包括数据的存储、显示等。
4. 多机通信的应用场景有哪些?多机通信的应用场景非常广泛,包括以下几个方面:(1)智能家居系统:通过多机通信,可以实现智能家居系统中不同设备之间的数据共享和协作。
(2)工业控制系统:在工业控制系统中,多机通信可以实现不同设备之间的数据传输和控制。
(3)智能交通系统:在智能交通系统中,多机通信可以实现不同设备之间的数据共享和协作,从而实现更加智能化的交通管理。
(4)机器人控制系统:在机器人控制系统中,多机通信可以实现不同机器人之间的数据传输和控制,从而实现更加复杂的任务。
5. 多机通信的优缺点是什么?多机通信的优点包括以下几个方面:(1)实现数据共享和协作:通过多机通信,可以实现不同设备之间的数据共享和协作,从而实现更加复杂的功能。
(2)提高系统的可靠性:通过多机通信,可以实现数据的备份和冗余,从而提高系统的可靠性。
(3)提高系统的扩展性:通过多机通信,可以实现系统的模块化设计,从而提高系统的扩展性。
51单片机串口通信

一、串口通信原理串口通讯对单片机而言意义重大,不但可以实现将单片机的数据传输到计算机端,而且也能实现计算机对单片机的控制。
由于其所需电缆线少,接线简单,所以在较远距离传输中,得到了广泛的运用。
串口通信的工作原理请同学们参看教科书。
以下对串口通信中一些需要同学们注意的地方作一点说明:1、波特率选择波特率(Boud Rate)就是在串口通信中每秒能够发送的位数(bits/second)。
MSC-51串行端口在四种工作模式下有不同的波特率计算方法。
其中,模式0和模式2波特率计算很简单,请同学们参看教科书;模式1和模式3的波特率选择相同,故在此仅以工作模式1为例来说明串口通信波特率的选择。
在串行端口工作于模式1,其波特率将由计时/计数器1来产生,通常设置定时器工作于模式2(自动再加模式)。
在此模式下波特率计算公式为:波特率=(1+SMOD)*晶振频率/(384*(256-TH1))其中,SMOD——寄存器PCON的第7位,称为波特率倍增位;TH1——定时器的重载值。
在选择波特率的时候需要考虑两点:首先,系统需要的通信速率。
这要根据系统的运作特点,确定通信的频率范围。
然后考虑通信时钟误差。
使用同一晶振频率在选择不同的通信速率时通信时钟误差会有很大差别。
为了通信的稳定,我们应该尽量选择时钟误差最小的频率进行通信。
下面举例说明波特率选择过程:假设系统要求的通信频率在20000bit/s以下,晶振频率为12MHz,设置SMOD=1(即波特率倍增)。
则TH1=256-62500/波特率根据波特率取值表,我们知道可以选取的波特率有:1200,2400,4800,9600,19200。
列计数器重载值,通信误差如下表:因此,在通信中,最好选用波特率为1200,2400,4800中的一个。
2、通信协议的使用通信协议是通信设备在通信前的约定。
单片机、计算机有了协议这种约定,通信双方才能明白对方的意图,以进行下一步动作。
假定我们需要在PC机与单片机之间进行通信,在双方程式设计过程中,有如下约定:0xA1:单片机读取P0端口数据,并将读取数据返回PC机;0xA2:单片机从PC机接收一段控制数据;0xA3:单片机操作成功信息。
基于51单片机的多机通信系统设计

基于51单片机的多机通信系统设计多机通信系统是指通过一台主机与多台从机之间进行数据交互和通信的系统。
在本设计中,我们将使用51单片机实现一个基于串行通信的多机通信系统。
系统硬件设计如下:1.主机:使用一个51单片机作为主机,负责发送数据和接收数据。
2.从机:使用多个51单片机作为从机,每个从机负责接收数据和发送数据给主机。
3.串口:主机和从机之间通过串口进行通信。
我们可以使用RS232标准通信协议。
系统软件设计如下:1.主机设计:a.初始化串口:设置串口参数,如波特率、数据位、停止位等。
b.发送数据:将需要发送的数据存储在发送缓冲区中,通过串口发送给从机。
c.接收数据:接收从机发送的数据,并存储在接收缓冲区中。
2.从机设计:a.初始化串口:设置串口参数,如波特率、数据位、停止位等。
b.接收数据:接收主机发送的数据,并存储在接收缓冲区中。
c.发送数据:将需要发送的数据存储在发送缓冲区中,通过串口发送给主机。
系统工作流程如下:1.主机启动,执行初始化操作,包括初始化串口。
2.从机启动,执行初始化操作,包括初始化串口。
3.主机发送数据给从机:主机将需要发送的数据存储在发送缓冲区中,通过串口发送给从机。
4.从机接收并处理数据:从机接收主机发送的数据,并存储在接收缓冲区中,对接收到的数据进行处理。
5.从机发送数据给主机:从机将需要发送的数据存储在发送缓冲区中,通过串口发送给主机。
6.主机接收并处理数据:主机接收从机发送的数据,并存储在接收缓冲区中,对接收到的数据进行处理。
7.主机和从机循环执行步骤3-6,实现多机之间的数据交互和通信。
多机通信系统的设计考虑到以下几个方面:1.硬件设计:需要合理选择单片机和串口的类型和参数,确保系统的稳定性和可靠性。
2.软件设计:需要设计适应系统需求的通信协议和数据处理提取方法,保证数据的准确性和完整性。
3.通信协议:需要定义主机和从机之间的通信协议,包括数据的格式、传输方式等,以便实现正确的数据交互。
基于51单片机的网口串口转换模块设计

数控技术
基于 51 单片机的网口串口转换模块设计
时磊 杨帆 (中国人民解放军 91404 部队,河北秦皇岛 066000)
摘要:随着人民生活水平的不断提高和科学技术的不断进步,更加智能化和信息化的电器走进千家万户换模块,并对模块的组成进行了介绍,最后在实践中进行应用,取得了良好的效果,具有一定的推广前景。
11
Copyright©博看网 . All Rights Reserved.
数控技术
PR 同步位 7
SD 分隔位 1
DA 目的地址 6
表1 以太网的信息格式
SA 源地址 6
TYPE 类型字段 2
DATA 数据段 46-1500
数字技术 与应用
FCS 帧校验序列 4
2.1 以太网协议简介
低电平时选择62256;高电平时选择RTL8019AS的地址空间[5]。地址
按其功能共分为七段,以太网的信息格式如表1所示[2]。
总线的连接方式如图3所示,在程序中分配8000H~801FH作为
其中, 数据段( D A T A ) 为承载数据信息, 分配较长的4 6 ~ RTL8019AS的地址空间,51单片机的地址为16位。
利用廉价的51单片机控制以太网控制芯片RTL8019AS来实现 其I / O 基地址为3 0 0 H 。利用A D D R 1 5 、I / O W 、I / O R 可将
以太网功能,使得用户可以通过网络来达到共享信息资源的目的。 RTL8019AS和62256的地址空间划分开,ADDR15接62256的CE脚,
单片机管理模块是转换模块的管理与控制中心,以X5045芯 片作为单片机管理模块的核心,它不仅为单片机提供复位信号,还 用来存储以太网的IP地址、MAC地址和子网掩码等数据,可以通 过单片机控制X5045芯片进行读或写操作,与单片机接口电路如 图2所示[1]。
51单片机双机通信原理(一)

51单片机双机通信原理(一)51单片机双机通信简介•什么是51单片机双机通信•双机通信的作用和应用场景基本原理•单片机串口通信原理–串口通讯协议–数据帧的构成•串口通信的硬件连接–引脚连接方式–串口信号格式设置单向通信实现•主从模式–主机发送数据–从机接收数据•编程实现–主机端程序设计–从机端程序设计双向通信实现•主从模式–主机发送数据–从机接收数据–主机接收数据–从机发送数据•编程实现–主机端程序设计–从机端程序设计通信协议的设计•自定义通信协议–协议的格式–数据的解析与封装高级功能扩展•多机通信实现•数据加密与解密•异常处理与误码纠错总结•51单片机双机通信的基本原理和实现方式•可能遇到的问题及解决方案•双机通信的进一步应用展望简介51单片机双机通信是指使用51系列单片机实现两台或多台单片机之间的数据传输和通信。
双机通信可以实现在多个单片机之间传递数据、完成控制指令的下发、数据的采集和处理等功能。
在各种电子设备和嵌入式系统中,双机通信被广泛应用,可以实现设备之间的互联和协同工作,提高系统的灵活性和智能化水平。
基本原理单片机串口通信原理串口通信是一种将数据通过串行线路进行传输的通信方式。
在51单片机的串口通信中,常用的是UART(通用异步收发传输器)通信协议。
UART通信采用的是异步传输方式,数据按照固定的数据帧格式进行传输。
串口通信的硬件连接在51单片机的串口通信中,需要将主机和从机的UART引脚连接起来。
常用的连接方式是通过一对直线的串行数据线(TXD和RXD)连接主从机,其中TXD是发送数据的引脚,RXD是接收数据的引脚。
为了确保数据的正确传输,还需要进行串口信号格式的设置,包括波特率、数据位数、停止位数和校验位等。
单向通信实现主从模式在单向通信中,主机负责发送数据,从机负责接收数据。
主机通过串口发送数据帧,从机通过串口接收数据帧,并进行相应的处理。
编程实现在主机端程序设计中,需要配置串口通信的参数,并使用串口发送数据的相关函数来发送数据。
基于51单片机串口通讯的多路采集系统

四、结 束语 本 设计 利用 5 单片 机 的 串口连接 主机 和 多个采 集节 点 , 1 使用 自行 设计 的串 口数据 通信 协 议 ,实现 了 “ 一对 多 ” 的数据 传输 。 整个 系统 结 构简 单 、可靠 性 高 ,可任 意扩 充采 集 节点 数量 ,实 际 运行 效 果较 好 ,具有 一定 的 实用 价值 。 参 考文 献 : 【 戴 佳.1 片机 C语 言应 用程 序设 计 实例精 讲 ( 1 】 5单 第二版 ) . 【 M】
断 / { b f e [] R C I E b f e : u fr 3= EEV _ uf r i (u fr 3= OO ) 收 到 的是请 求发 送数 据 帧 f bf e []= x0 /接 / Co S n (,u fr 1) 从机 给 主机发 送 数据 m ed 5 b fe [] :该 / es f bf e []= x 1 l ei (u fr 3= 00 ) / 接 收 木 到 的是 确 认帧¥ / I t S le 0: 到确 认 帧 ,清 空 缓冲 ni a vr / 收
( 接第 6 页) 上 1
计算 机光 盘软 件 与应 用
工 程 技 术
i ( I fR )
C m u e D S f w r n p l c t o s o p t r C o t a e a d A p ia in
帧 一样 ,从 缓冲 区里 面读 取 数据 / )
2 1 第 l期 0ቤተ መጻሕፍቲ ባይዱ2年
—
/ 接 收
es le
u sg e n in d
nm u u =S m
_
c a hr
p i tO / 不是 帧头 ,等 待起 始 标志 on = : /
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
引言人类社会已经进入信息化时代,信息社会的发展离不开电子产品的进步。
单片机的出现使人类实现利用编程来代替复杂的硬件搭建电路,它靠程序运行,并且可以修改。
通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。
一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB板!但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性!单片机应用的主要领域非常广,智能化家用电器、办公自动化设备商业营销设备、工业自动化控制、智能化仪表、智能化通信产品、汽车电子产品、航空航天系统和国防军事、尖端武器等领域。
单片机应用的意义不仅在于它的广阔范围及所带来的经济效益,更重要的意义在于,单片机的应用从根本上改变了控制系统传统的设计思想和设计方法。
以前采用硬件电路实现的大部分控制功能,正在用单片机通过软件方法来实现。
以前自动控制中的PID 调节,现在可以用单片机实现具有智能化的数字计算控制、模糊控制和自适应控制。
这种以软件取代硬件并能提高系统性能的控制技术称为微控技术。
随着单片机应用的推广,微控制技术将不断发展完善。
电路的集成化不仅对硬件电路的设计相关,与电路的布局同样相关。
印刷版的出现使得电路产品更加规范,体积更小。
Protel99se是一款专业的绘制电路及印刷版的软件,近年来的不断升级使得其功能更加完善,出现了Altium Designer 、Protel DXP等升级版本。
1 设计内容及要求1.1功能要求(1)下位机选用89S51或89S52单片机;(2)下位机接收上位机的数据并显示在LED或LCD上;(3)下位机显示数据可以显示固定数据、位移数据、循环位移;1.2硬件要求制作串口线和下位机及外围电路;1.3软件要求Keil C或汇编编程设计,串口调试助手或Labview串口通信编程。
2 设计原理及单元硬件模块2.1上位机设计2.1.1RS232串口介绍经过多年的发展,现今已经形成了许多串行通信接口的标准。
其中本次课程设计用到的RS-232标准是美国EIA(电子工业联合会)与BELL公司一起开发的通信协议。
它适合于数据传输速率在0—20000bit/s的范围内通信。
目前比较常用的串口有9针串口(DB9)和25针串口(DB25),近距离通信可以直接将通信接口用相应的线缆直接相连。
2.1.2串口调试助手介绍串口调试助手是串口调试相关工具,有多个版本。
如:友善串口调试助手,支持9600,19200等常用各种波特率及自定义波特率,可以自动识别串口,能设置校验、数据位和停止位,能以ASCII码或十六进制接收或发送任何数据或字符,可以任意设定自动发送周期,并能将接收数据保存成文本文件,能发送任意大小的文本文件。
可实现功能如下所示:(1)自动搜索串口,并打开串口;(2)支持多串口;(3)支持自定义波特率,支持非标准波特率;(4)支持发送历史记录;(5)接收数据可以进行十六进制和ASCII切换;(6)接收数据时,光标可定位在指定行或在最后一行;(7)可以以十六进制或ASCII格式,向指定串口发送数据;(8)定时发送数据;(9)接收数据可以保存为文件,也可打开已保存数据文件;(10)串口打开过程中,可修改通讯参数,如波特率;(11)自动记录上次操作参数,如串口号、波特率等。
2.2 下位机硬件设计 2.2.1 设计原理及方法下位机设计可分为单片机最小系统、RS232电平转换部分、数据显示部分。
其系统框图大致图2-1所示。
图2-1 系统框图本次设计采用LCD 显示由上位机发送的数据,并完成固定数据、位移数据、循环位移的数据显示。
由上位机经RS232串口发送数据,经电平转换,转换成单片机可以接收的信号电压,通过单片机内烧制的程序逻辑运算得出上位机所发送的数据,并在数据显示部分依次显示固定数据、位移数据、循环位移数据。
电平转换由MAX232AEPE 芯片完成,单片机最小系统使用的是AT89S52芯片,数据显示部分则由1602LCD 液晶显示器完成。
2.2.2 单片机最小系统图2-2 最小系统电路单片机采用AT89S52,最小系统包括复位电路和时钟电路两部分,其中复位电路采用按键手动复位和上电自动复位组合,电路如图2-2左下部分所示:其中REST为单片机复位端,电容C3按键S1构成上电复位和手动复位电路。
时钟电路如图2-2右下部分所示:晶振Y1频率采用的是11.0592MHZ,C1、C2为33p瓷片电容,X1和X2分别为单片机18和19脚。
(1)单片机各引脚功能说明:AT89S52管脚图如图2-3所示。
VCC:供电电压。
GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部图2-3 AT89S52管脚图程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0 口作为原码输入口,当FIASH进行。
校验时,P0输出原码,此时P0外部必须被拉高。
P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89S52的一些特殊功能口,P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡器的输出。
(2)USBASP下载口说明本次课程设计程序烧写使用USBASP下载口,下载电路如图2-2左上部分所示。
USBASP是一种基于ATMEL公司的AVR系列RISC单片机的高性价比和一个由纯软件的USB通信协议栈而构成的一个可以向51系列,AVR系列单片机下载(烧写)程序的下载器。
这种下载器工作稳定,速度很快,而且成本相当的低,是一种适合初学者的下载器。
特点如下:(1)支持USB1.1、USB2.0通信;支持WIN98、WINME、WIN2000、WINXP、VISTA、WIN7操作系统;(2)采用USB口供电、并带有500mA的自恢复保险丝。
保护电脑不会烧毁或损坏。
(3)对目标板芯片编程时,可采用此下载线供电,也可以采用目标板本身供电,下载结果不影响目标板运行。
(4)支持AT89S51、AT89S52和AVR全系列单片机的程序下载,速度更快,更稳定。
(5)支持的烧录文件格式:格式为HEX文件、二进制BIN文件。
(6)使用IDC10接口。
2.2.3RS232电平转换部分(1)工作原理本设计采用MAX232芯片进行电平转换,MAX232芯片是美信公司专门为电脑的RS232标准串口设计的接口电路,使用+5V单电源供电,它的作用就是完成TTL电平与RS232电平的转换。
PC机的串行口采用的是标准的RS232接口,单片机的串行口电平是FTL电平,而TTL电平特性与RS232的电气特性不匹配,因此为了使单片机的串行口能与RS 232接口通信,必须将串行口的输入/输出电平进行转换。
通常用MAX232芯片来完成电平转换。
(2)MAX232芯片各引脚功能MAX232各管脚如图2-4所示。
第一部分是电荷泵电路。
由1、2、3、4、5、6脚和4只电容构成。
功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。
第二部分是数据转换通道。
由7、8、9、10、11、12、13、14脚构成两个数据通道。
图2-4 MAX232管脚图其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。
8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。
TTL/CMOS数据从11引脚(T1IN)、10引脚(T2IN)输入转换成RS-232数据从14引脚(T1OUT)、7脚(T2OUT)送到电脑DB9插头;DB9插头的RS -232数据从13引脚(R1IN)、8引脚(R2IN)输入转换成TTL/CMOS数据后从12引脚(R1OUT)、9引脚(R2OUT)输出。
第三部分是供电。
15脚GND、16脚VCC(+5v)。
(3)MAX232芯片用法MAX芯片用法如图2-5所示。
电容器应选择1μF的电解电容。
在使用过程中本人曾用过10μF的代替。
注意,由于RS232电平较高,在接通时产生的瞬时电涌非常高,很有可能击毁max232,所以在使用中应尽量避免热插拔。