同步串行通信设计
串行通信原理

串行通信原理串行通讯是一种在计算机领域用于数据传输的技术。
串行通讯通过一个线路逐位传输数据,相比于并行通讯的方式,更加经济和易于实现。
在串行通讯中,数据被分成逐位的信息串,这些信息串逐位传输,最终组成有意义的数据。
主要应用于计算机与周边设备之间的数据传输。
串行通信主要包括两种方式:同步串行通信和异步串行通信。
同步传输根据系统时钟处理数据传输,而异步传输较为灵活,是一种更加通用性的传输方式。
串行通讯的原理1.数据格式在串行通讯过程中,数据是以特定的格式传输的。
数据格式包括数据位、同步位、波特率和校验位。
数据位:表示每一个数据中包含的二进制位数,包括5位、6位、7位、8位等不同的长度。
通常情况下,大多数串行通讯系统都采用8位数据位。
同步位:用于标识数据传输已经开始,也就是数据的起始位置,通常情况下,同步位的值为0。
波特率:表示数据传输的速度,也就是每秒钟传输的数据位数。
波特率越高,信号传输的速度越快。
常用的波特率为9600、19200、38400、57600等。
校验位:用于检测传输数据中的错误。
通过对传输的数据进行校验位的比对,可以减少数据传输中的错误发生。
常用的校验方式有奇偶校验、校验和、循环冗余校验等。
2.串行通讯的流程串行通讯的流程可以分为三个主要阶段:起始位、数据位和停止位。
起始位:用于标识数据传输的开始,表示数据传输的起始位置。
通常情况下,起始位的值为0。
数据位:用于传输数据信息,包括了需要传输的数据。
停止位:用于标识数据传输的结束,表示数据传输的终止位置。
通常情况下,停止位的值为1。
串行通讯的工作原理串行通讯的工作原理主要包括:发送过程和接收过程。
1.发送过程在发送过程中,数据被通过串行通讯数据线逐位地传输。
发送过程中,数据被分成字节,每个字节由8位组成。
在数据传输前,发送端将数据位、同步位、波特率和校验位进行设置。
然后发送端将数据逐位地传输到接收端。
发送端会首先发送起始位表示数据传输的开始,接着发送数据位,每个字节之间间隔一段时间,以便接收端辨别每个字节,并识别出其所代表的意义。
串行通信可以分为两种类型:同步通信、异步通信

串行通信可以分为两种类型:同步通信、异步通信
串行通信可以分为两种类型:同步通信、异步通信 1.异步通信的特点
及信息帧格式:以起止式异步协议为例,下接收端以接收时钟和波特率因子决定一位的时间长度。
下面以波特率因子等于16(接收时钟每16 个时钟
周期,使接收移位寄存器移位一次)、正逻辑为例说明,如(2)当计到8 个时钟时,对输入信号进行检测,若仍为低电平,则确认这是起始位B,而不是干
扰信号。
(3)接收端检测到起始位后,隔16 个接收时钟,对输入信号检测一次,把对应的值作为D0 位数据。
若为逻辑1, 作为数据位1;若为逻辑0,作为数据位0。
(4)再隔16 个接收时钟,对输入信号检测一次,把对应的值作为D1
位数据。
.,直到全部数据位都输入。
(5)检测校验位P(如果有的话)。
(6)接收到规定的数据位个数和校验位后,通信接口电路希望收到停止
位S(逻辑1),若此时未收到逻辑1,说明出现了错误,在状态寄存器中置帧错误标志。
若没有错误,对全部数据位进行奇偶校验,无校验错时,把数据位从
移位寄存器中送数据输入寄存器。
若校验错,在状态寄存器中置奇偶错标志。
(7)本幀信息全部接收完,把线路上出现的高电平作为空闲位。
(8)当信号再次变为低时,开始进入下一幀的检测。
3、异步通信的发送过程
发送端以发送时钟和波特率因子决定一位的时间长度。
(1)当初始化后,或者没有信息需要发送时,发送端输出逻辑1,即空闲位,空闲位可以有任意数量。
基于VHDL的串行同步通信SPI设计

基于VHDL的串行同步通信SPI设计串行同步通信(SPI)是一种常用的通信协议,用于在集成电路中进行片内通信。
它是一种全双工的通信方式,通过四根信号线来传输数据:SCLK(时钟线),MOSI(主设备输出从设备输入线),MISO(主设备输入从设备输出线)和SS(片选线)。
SPI采用主从架构,其中主设备控制通信时序,并负责发起数据传输。
从设备在主设备的指令下进行相应操作并传输数据。
以下是一个基于VHDL的串行同步通信SPI的设计,包括主设备和从设备两部分。
主设备部分:```library ieee;use ieee.std_logic_1164.all;entity spi_master isportCLK: in std_logic; -- 时钟线MOSI: out std_logic; -- 主设备输出从设备输入线MISO: in std_logic; -- 主设备输入从设备输出线SS: out std_logic; -- 片选线data_out: out std_logic_vector(7 downto 0); -- 发送数据data_in: in std_logic_vector(7 downto 0); -- 接收数据valid: out std_logic -- 有效数据标志位end spi_master;architecture behavioral of spi_master istype state_type is (idle, send_data, receive_data); signal state: state_type;signal count: integer range 0 to 7;signal tx_data: std_logic_vector(7 downto 0);signal rx_data: std_logic_vector(7 downto 0);beginprocess (CLK)beginif rising_edge(CLK) thencase state iswhen idle =>if SS = '0' thenstate <= send_data;count <= 0;tx_data <= data_out;end if;when send_data =>MOSI <= tx_data(count); -- 发送数据位count <= count + 1;if count = 7 thenstate <= receive_data;end if;when receive_data =>rx_data(count) <= MISO; -- 接收数据位count <= count - 1;if count = 0 thenstate <= idle;valid <= '1';data_in <= rx_data;end if;end case;end if;end process;end behavioral;```从设备部分:```library ieee;use ieee.std_logic_1164.all;entity spi_slave isportCLK: in std_logic; -- 时钟线MOSI: in std_logic; -- 主设备输出从设备输入线MISO: out std_logic; -- 主设备输入从设备输出线SS: in std_logic; -- 片选线data_in: in std_logic_vector(7 downto 0); -- 接收数据data_out: out std_logic_vector(7 downto 0); -- 发送数据valid: in std_logic -- 有效数据标志位end spi_slave;architecture behavioral of spi_slave istype state_type is (idle, receive_data, send_data);signal state: state_type;signal count: integer range 0 to 7;signal tx_data: std_logic_vector(7 downto 0);signal rx_data: std_logic_vector(7 downto 0); beginprocess (CLK)beginif rising_edge(CLK) thencase state iswhen idle =>if SS = '0' thenstate <= receive_data;count <= 0;end if;when receive_data =>rx_data(count) <= MOSI; -- 接收数据位count <= count + 1;if count = 7 thenstate <= send_data;valid <= '1';data_in <= rx_data;end if;when send_data =>MISO <= tx_data(count); -- 发送数据位count <= count - 1;if count = 0 thenstate <= idle;tx_data <= data_out;end if;end case;end if;end process;end behavioral;```在主设备部分,设计了一个状态机来控制 SPI 的通信过程。
基于APB总线的SPI控制器的设计

基于APB总线的SPI控制器的设计一、SPI(Serial Peripheral Interface)简介SPI是一种同步串行通信接口,用于在微控制器和外部设备之间传输数据。
SPI总线由四根信号线组成,包括时钟线(SCLK)、主设备输出从设备输入线(MOSI)、主设备输入从设备输出线(MISO)和片选线(SS)。
二、SPI控制器设计1.设计思路SPI控制器的主要任务是与外部设备进行数据交互,所以需要实现以下功能:(1)通过APB总线配置和控制SPI控制器;(2)发送数据到外部设备;(3)接收外部设备传输的数据。
2.设计模块SPI控制器主要包含以下几个功能模块:(1)APB接口:通过APB总线与微控制器主设备进行通信;(2)控制模块:解析APB总线上的配置信息,控制SPI控制器的运行;(3)发送模块:将待发送的数据按照SPI协议发送到外部设备;(4)接收模块:根据SPI协议接收从外部设备传输的数据。
3.设计流程(1)APB总线接口设计:-APB总线辅助电路设计,包括时钟、复位等信号的处理;-定义APB总线信号的输入输出端口,包括地址总线、数据总线和控制总线。
(2)控制模块设计:-解析APB总线上的配置信息,包括控制字寄存器的读写操作;-配置SPI控制器的工作模式、时钟极性和相位;-控制发送和接收模块的工作状态。
(3)发送模块设计:-实现SPI协议的发送功能;-设计发送缓冲区,存储待发送的数据;-根据控制模块的控制信号,将数据按照SPI协议发送到外部设备。
(4)接收模块设计:-实现SPI协议的接收功能;-设计接收缓冲区,存储从外部设备接收到的数据;-根据控制模块的控制信号,接收来自外部设备的数据。
4.设计考虑在设计SPI控制器时,需要考虑以下几个方面:(1)时序控制:SPI通信是基于时钟信号进行的,要保证时序的正确性,需要精确控制各个信号的时序;(2)数据传输速率:根据外部设备的要求,确定数据传输的速率;(3)错误处理:提供SPI通信中可能出现的错误处理机制,比如超时、丢失数据等。
简述并行、串行、异步、同步通信原理

标题:并行、串行、异步、同步通信原理解析一、介绍并行、串行、异步、同步通信的概念1. 并行通信:指多个数据信号在同一时刻通过不同的传输路径传输,在数据传输过程中,多个信号可以同时进行传输,从而提高数据传输效率。
2. 串行通信:指数据信号按照顺序一个接一个地通过同一传输路径传输,在数据传输过程中,数据信号只能依次进行传输,适用于长距离传输和节约传输线路资源。
3. 异步通信:指数据传输时没有固定的时钟信号,数据在发送方和接收方之间按照不规则的时间间隔传输,需要通过起始位和停止位来标识数据的起始和结束。
4. 同步通信:指数据传输时需要有固定的时钟信号,数据在发送方和接收方之间按照固定的时间间隔传输,需要通过时钟信号进行同步。
二、并行通信的原理及特点1. 原理:多个数据信号同时通过不同的传输路径传输。
2. 特点:1) 传输速度快:由于多个数据信号同时进行传输,因此传输速度相对较快。
2) 传输距离有限:由于多条传输路径之间的信号相互干扰,因此传输距离相对较短。
3) 成本较高:需要多条传输路径和大量的接口,成本相对较高。
三、串行通信的原理及特点1. 原理:数据信号按照顺序一个接一个地通过同一传输路径传输。
2. 特点:1) 传输速度慢:由于数据信号只能依次进行传输,因此传输速度相对较慢。
2) 传输距离远:适用于长距离传输,可以节约传输线路资源。
3) 成本较低:只需要一条传输路径和少量的接口,成本相对较低。
四、异步通信的原理及特点1. 原理:数据传输时没有固定的时钟信号,数据在发送方和接收方之间按照不规则的时间间隔传输。
2. 特点:1) 灵活性高:数据传输时间不固定,可以根据实际需要进行调整。
2) 精度较低:由于没有固定的时钟信号,数据传输的精度相对较低。
3) 适用于短距离传输:由于数据传输精度较低,适用于短距离传输和数据量较小的情况。
五、同步通信的原理及特点1. 原理:数据传输时需要有固定的时钟信号,数据在发送方和接收方之间按照固定的时间间隔传输。
异步串行通讯和同步串行通讯区别

在计算机系统中,CPU和外部通信有两种通信方式:并行通信和串行通信。
而按照串行数据的时钟控制方式,串行通信又可分为同步通信和异步通信两种方式。
1、异步串行方式的特点
所谓异步通信,是指数据传送以字符为单位,字符与字符间的传送是完全异步的,位与位之间的传送基本上是同步的。
异步串行通信的特点可以概括为:
①以字符为单位传送信息。
②相邻两字符间的间隔是任意长。
③因为一个字符中的比特位长度有限,所以需要的接收时钟和发送时钟只要相近就可以。
④异步方式特点简单的说就是:字符间异步,字符内部各位同步。
2、异步串行方式的数据格式
异步串行通信的数据格式如图8-1所示,每个字符(每帧信息)由4个部分组成:①1位起始位,规定为低电0;
②5~8位数据位,即要传送的有效信息;
③1位奇偶校验位;
④1~2位停止位,规定为高电平1。
图1异步串行数据格式
3、同步串行方式的特点
所谓同步通信,是指数据传送是以数据块(一组字符)为单位,字符与字符之间、字符内部的位与位之间都同步。
同步串行通信的特点可以概括为:
①以数据块为单位传送信息。
②在一个数据块(信息帧)内,字符与字符间无间隔。
③因为一次传输的数据块中包含的数据较多,所以接收时钟与发送进钟严格同步,通常要有同步时钟。
4、同步串行方式的数据格式
同步串行通信的数据格式如图8-2所示,每个数据块(信息帧)由3个部分组成:①2个同步字符作为一个数据块(信息帧)的起始标志;
②n个连续传送的数据
③2个字节循环冗余校验码(CRC)
图2同步串行数据格式。
三线制同步串行通信控制器接口设计

三线制同步串行通信控制器接口设计作者:冯春阳,张遂南来源:《现代电子技术》2009年第19期摘要:为解决没有三线制同步串口的微处理器与外围串行设备通信困难的问题,通过研究三线制同步串行通信的机理,首先构建基于传统设计所实现的硬件电路接口,然后利用可编程逻辑器件PLD,设计基于CPLD/FPGA的三线制同步串行通信控制器通用接口。
通过对各功能模块的详细介绍,实现硬件电路的小型化和灵活移植性,减小了整个系统的体积和功耗。
经实际项目使用,结果表明基于该接口结构实现了微处理器与外围串行设备间的三线制同步串行通信的功能。
关键词:三线制;同步串行通信;接口;PLD;CPLD/FPGA中图分类号:TP336文献标识码:A文章编号:1004-373X(2009)19-080-03Design of Three-wire Synchronous Serial Communication InterfaceFENG Chunyang,ZHANG Suinan(Xi′an Microelectronic Technology Institute,Xi′an,710054,China)Abstract:In order to resolve difficulty of the communication between processor without three-wire synchronous serial interface and peripheral serial equipment,after studying the principle of three-wire synchronous serial communication,hardware circuit based on traditional method is introduced.Adopting PLD technology,universal interface of three-wire synchronous serial communication based on CPLD/FPGA,particularly each functional module are introduced,the miniaturization and flexible transplant of hardware function are realized,and the volume and power of the system are reduced.In practical projects,the architecture based on CPLD/FPGA has realized function of the synchronous serial communication between the processor and peripheral equipment.Keywords:three-wire principle;synchronous serial communication;interface;PLD;CPLD/FPGA0 引言航天工程领域中,星地通讯等远距离遥测遥控是嵌入式卫星数管计算机重要功能之一,利用三线制同步串行[1]遥测遥控通道对指令和数据进行收发操作是通信链路的重要环节。
毕业设计113频分复用、霍夫曼编码、网络流量、Web Server、DSK语音、同步与定时和串行通信系统设计

摘要摘要综合课题毕业设计包括8个设计课题:频分复用、霍夫曼编码、网络流量、Web Server、DSK语音、同步与定时和串行通信。
传输专题要求理解通信各个环节的电路以及功率和带宽的计算,然后利用Protel绘制出各个单元电路,例如振荡电路、调制电路、分频电路等等。
霍夫曼编码是在充分理解了霍夫曼编码的原理之后编写一个软件来实现霍夫曼编码的功能,并分析压缩率。
网络流量课题的设计目的是通过从不同的角度对数据进行分析,得到结论,然后利用网络知识解释分析流量变化原因。
Web Server专题要求了解嵌入式系统开发环境,通过服务器端程序的编写了解基本的动态网站的设计方法。
DSK语音设计要求理解DSK语音在工程实现上的方法。
根据设计要求,给出一种语音编解码的实现方案,基于TI公司提供的TMS320VC5416 DSK给出实现结果;通过本实验体会并初步学会DSP技术的实现方法及开发流程。
同步与定时专题要求设计AD9959的外围电路,然后设计一个软件来控制AD9959使之输出我们需要的频率。
串行通信专题要求进一步了解串行通信的基本原理;掌握串行接口芯片的工作原理和编程方法。
关键词:频分复用,霍夫曼编码,网络流量,Web Server,DSK语音,同步与定时,串行通信ⅠABSTRACTAbstractThis diploma design contains eight projects: FDM, Huffman code, Network flux, Web server, DSK voice process, DDS and Serial communicate.FDM project requires deep understanding of the process of communication, then design some important parts of the circuit.In Huffman code project, I design a software which help us to make Huffman code come true.Network flux project let us analyze the flux between two nets.Web server project’s aim is make us know the basic method of how to design a website based on C/S.DSK voice process offers a solution to transmit voice through DSP’ process.In DDS design we design circuit for AD9959, and then we use VB to write a program to control the AD9959 to generate the frequency we desire.Keywords: FDM, Huffman code, Network flux, Web server, DSK voice process, DDS and Serial communicateⅡ目录第一章传输专题(频分复用) (1)1.1设计原理 (1)1.2系统的带宽和功率计算 (2)1.2.1功率计算 (2)1.2.2带宽计算 (2)1.3单元电路设计 (3)1.3.1振荡电路 (3)1.3.2同向输入放大器 (4)1.3.3加法器 (4)1.3.4 调制电路 (5)1.3.5 滤波器 (5)1.3.7 四—二转换器电路 (6)1.3.8 频率合成器 (7)1.4系统总电路图 (8)1.5总结和体会 (12)第二章霍夫曼编码 (13)2.1设计目的与要求 (13)2.2设计原理 (13)2.3设计过程 (14)2.3.1霍夫曼编码的软件流程 (15)2.3.2 设计结果 (15)2.4设计结果分析 (16)2.4.1生成测试文件 (16)2.4.2随机文件读取 (17)2.4总结 (19)第三章网络流量监测及分析 (21)3.1 设计背景和目的 (21)3.2 设计要求 (21)3.3监测及分析的原理 (22)Ⅲ3.3.1监测的原理 (22)3.3.2监测软件Sniffer (22)3.4 方法与过程 (22)3.5数据包分析 (23)3.6全天数据总流量变化图 (27)3.7流量分析 (27)3.7.1 网络进出流量分析 (27)3.7.3 TCP和UDP流量分析 (28)3.7.4 FTP流量分析 (29)3.8安全漏洞 (29)3.9结论与体会 (30)第四章WEB SERVER (31)4.1设计目的 (31)4.2设计环境 (31)4.2.1硬件环境 (31)4.2.2软件环境 (32)4.2.2.1 Linux系统 (32)4.2.2.2虚拟机 (32)4.3基本操作 (32)4.5HTTP协议简介 (33)4.5.1 报文 (33)4.5.2 请求报文 (34)4.5.3 响应报文 (34)4.5.4 首部 (35)4.6TCP通信流程 (36)4.7 程序功能实现 (37)4.7.1功能实现设计思想 (37)4.7.2程序中相关代码解释 (38)4.8程序最终效果 (41)4.9总结 (42)第五章 DSK语音 (43)Ⅳ目录5.1设计目的 (43)5.2设计环境 (43)5.2.1硬件设备 (43)5.2.2软件 (44)5.3设计原理 (45)5.3.1DSK语音编解码原理: (45)5.3.2PCM3002的结构框图如下图: (45)5.4设计步骤 (45)5.4.1PCM3002C ODEC API介绍 (45)5.4.2为设计好的方案画各部分的流程图。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机系统,就是应用单片机作为核心,为围增设一些辅助电路,能够完成一定功能的系统。
人们已越来越多地采用单片机来对一些工业控制系统中如温度、流量和压力等参数进行检测和控制。
单片机之间的串行通信,当传输距离小于1.5m时主要采用TTL电平传输;当传输距离在1.5-15m之间时,可以采用RS-232通信协议进行数据传输;当传输距离大于15m而小于1.5km 时,可以采用RS-485通信协议进行数据传输。
软件用Keil8051编译器,它提供了集成开发环境,包括C编译器、宏汇编、连接器、库管理和仿真调试器。
利用Keil C uVision编写的程序可直接调用编译器编译,连接后可直接运行。
从而完成51单片机与单片机的串口通信。
关键词:单片机串行通信数据传输前言 (1)第一章:基本原理 (2)第二章系统分析 (3)2.1单片机 (3)2.2AT89C51单片机 (3)2.3MAX232单片机 (4)2.4串口通信 (5)2.5单片机间接口硬件连接 (7)第三章系统设计及调试 (9)3.1Keil uVision4软件介绍 (9)3.2Proteus简介 (10)3.351单片机中断 (10)3.3.1中断的概念 (10)3.451单片机定时/计数器0,1 (11)3.6硬件设计 (11)3.7软件设计 (12)3.8调试电路图 (14)设计总结 (16)前言随着网络技术的研究开发,网络技术已经成为计算机应用和社会信息化程度的一个重要标志,而这一切必须具备的前提条件则是数据传输接口.计算机与计算机或计算机与终端之间的数据传送可以采用串行通讯和并行通讯二种方式。
在串行通讯时,要求通讯双方都采用一个标准接口,使不同的设备可以方便地连接起来进行通讯。
RS-232-C接口(又称EIA RS-232-C)是目前最常用的一种串行通讯接口。
随着计算机技术尤其是单片微型机技术的发展,人们已越来越多地采用单片机来对一些工业控制系统中如温度、流量和压力等参数进行检测和控制。
单片机则具有快速及灵活的控制特点,通过单片机的RS-232串行接口与外部设备进行通信。
因此如何实现单片机之间的通讯具有非常重要的现实意义。
MCS单片机具有串行口,利用串行口实现数据通信。
根据单片机端口内部的结构特点,这些端口的端口线可以直接相连,从而使两个单片机之间并行通信不用另外的硬件电路设备。
设计时,也可以根据不同的使用要求采用不同的并行连接方法。
由于计算机与计算机之间的距离可能是近程的(几米之内),也可能是远程的(几百米甚至上千米),那么信息交换的方式可能采用并行通信,也可能采用串行通信;而一般的远程通信需采用串行通信方式。
现在单片机与单片机在结构、性能和经济上为实现远程串行通信特别是多机系统提供了很好的条件。
本次设计主要是单片机与单片机之间串行通行。
第一章:基本原理串口通讯,不但可以实现将单片机的数据传输到计算机端,而且也能实现计算机对单片机的控制。
由于其所需电缆线少,接线简单,所以在较远距离传输中,得到了广泛的运用。
单片机有一个全双工的串行通讯口,即串行接收和发送缓冲器(SBUF),这两个在物理上独立的接收发送器,既可以接收数据也可以发送数据。
但接收缓冲器只能读出不能写入,而发送缓冲器则只能写入不能读出,它们的地址为99H。
这个通信口既可以用于网络通信,亦可实现串行异步通信,还可以构成同步移位寄存器使用。
如果在传行口的输入输出引脚上加上电平转换器,就可方便地构成标准的RS-232接口。
进行串行通讯时要满足一定的条件,比如计算机的串口是RS232电平的,而单片机的串口是TTL电平的,两者之间必须有一个电平转换电路,我们采用了专用芯片MAX232进行转换,虽然也可以用几个三极管进行模拟转换,但是还是用专用芯片更简单可靠。
本文在研究传统的单片机通信系统的基础上,设计了一种基于MCS-51系列单片机AT89S51的多机通信系统。
初始时,1号单片机为主机。
主机通过串口向从单片机发送指定格式的数据,从单片机收数据并作出响应,主机通过液晶屏显示通信信息,从机通过LED显示通信状态。
主机通信结束即转为从机,其他单片机可置为主机,获得总线控制权。
1号单片机通过矩阵键盘控制通信过程与显示,2号单片机通过独立按键控制通信状态与主从机切换。
在此通信系统中,各个单片机具有平等的权限。
仅在初始时,1号单片机被默认置为主机,若不需使2号单片机变成主机,则此通信系统可以作为主从式通信系统。
任何时刻,系统只有一片单片机作为主机,其他均为从机。
主机发送的信息可以传送到指定从机,各从机之间也不能直接通信。
主机发起通信,从机接收到自己的单片机号后,开始与主机通信。
第二章系统分析2.1单片机2.1.1单片机定义单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。
单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。
通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。
因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。
单片机经过1、2、3、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗。
2.1.2单片机的特点单片机主要有如下特点:1.有优异的性能价格比。
2.集成度高、体积小、有很高的可靠性。
单片机把各功能部件集成在一块芯片上,内部采用总线结构,减少了各芯片之间的连线,大大提高了单片机的可靠性和抗干扰能力。
另外,其体积小,对于强磁场环境易于采取屏蔽措施,适合在恶劣环境下工作。
3.制功能强。
为了满足工业控制的要求,一般单片机的指令系统中均有极丰富的转移指令、I/O口的逻辑操作以及位处理功能。
单片机的逻辑控制功能及运行速度均高于同一档次的微机。
4.低功耗、低电压,便于生产便携式产品。
5.外部总线增加了I2C(Inter-Integrated Circuit)及SPI(Serial Peripheral Interface)等串行总线方式,进一步缩小了体积,简化了结构。
6.单片机的系统扩展和系统配置较典型、规范,容易构成各种规模的应用系统。
2.2AT89C51单片机AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS8位微处理器,俗称单片机。
AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除1000次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL 的AT89C51是一种高效微控制器,AT89C51是它的一种精简版本。
AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
2.3MAX232单片机2.3.1MAX232定义MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的单电源电平转换芯片,由于标准规定,RS232的电平采用±12V,与89C51单片机串行口的TTL电平不一致。
因此,采用集成电平转换芯片MAX232进行电平转换成+5v单电源供电,方能实现电压一致性驱动电路。
该器件符合TIA/EIA-232-F标准,每一个接收器将TIA/EIA-232-F电平转换成5-V TTL/CMOS电平。
每一个发送器将TTL/CMOS电平转换成TIA/EIA-232-F电平。
2.3.2主要特点:1、符合所有的RS-232技术标准2、只需要单一+5V电源供电3、片载电荷泵具有升压、电压极性反转能力,能够产生+10V和-10V电压V+、V-4、功耗低,典型供电电流5mA5、内部集成2个RS-232驱动器6、内部集成两个RS-232接收器2.3.3RS232串口标准:串行通信接口标准经过使用和发展,目前已经有多种;但都是在RS232标准的基础上经过改进而形成的。
RS-232标准最初是由美国EIA和BELL公司一起开发并于1969年公布的通信进议,而至1997年,远程工业协会(TIA)又发布了最新的一个版本,命名为TIA/EIA-232-F。
而ITF(国际电信联盟)和CCITT(国际电话与电报顾问委员会)发布了一个类似的标准——V.28。
这些标准都对串行通信接口的有关问题,如信号线功能、电器特性都作了明确规定。
由于通信设备厂商都生产与RS-232C制式兼容的通信设备,因此,它作为一种标准,目前已在微机通信接口中广泛采用,不仅被内置于每一台计算机,同时也被内置于从微控制器到主机的多种类型的计算机及其相连接的设备;也就是常说的RS232端口。
PC机的RS232端口与一般单片机上的UART接口从数据收发的时序上看,是一样的协议,不同的是两者用以表达逻辑“1”和“0”的规定是不一样的,即电平是不兼容的。
RS232端口用正负电压来表示逻辑状态,与TTL(单片机的UART接口电平)以高低电平表示逻辑状态的规定是不同的。
因此,为了能够同计算机接口和终端的TTL器件连接,必需进行电平和逻辑关系的变换。
实现这种变换的方法可用分立元件,也可用集成电路芯片。
MAX232芯片就是目前应用较为广泛的电平转换器件,它可以实现TTL到EIA双向电平转换;该芯片支持两路串行异步通讯,RIN1为第一路输入,ROUT1为第一路输出;RIN2为第二路输入管脚,ROUT2为第二路输出。
2.4串口通信2.4.1单片机的串行接口的数据传输方式1、与外界的信息交换称为通讯。
基本的通讯方式有并行通讯和串行通讯两种。
并行通信:一条信息的各位数据被同时传送的通讯方式称为并行通信。
并行通讯的特点是:各数据位同时传送,传送速度快、效率高,但有多少数据位就需多少根数据线,因此传送成本高,且只适用于近距离(相距数米)的通讯。
串行通信:一条信息的各位数据被逐位按顺序传送的通讯方式称为串行通讯。
串行通讯的特点是:数据按位顺序传送,最少仅需一根传输线即可完成,成本低但传送速度慢。
串行通讯的距离可以从几米到几千米。
2、根据信息的传送方向,串行通信可以进一步分为单工、半双工和全双工三种。
单工通信:信息只能单向传送为单工;半双工通信:信息能双向传送但不能同时双向传送称为半双工;全双工通信:信息能够同时双向传送则称为全双工。
3、串行通信又分为异步通信和同步通信两种方式。
在单片机中,主要使用异步通信方式。
异步通信:在异步通信中,数据是一帧一帧(包含一个字符代码或一字节数据)传送的,即异步串行通信一次传送一个完整字符.它用一个起始位表示字符的开始,用停止位表示字符的结束。