单片机论文单片机与PC的无线通信接口设计 - 图文

更新时间:2024-01-22 12:14:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

陕西航空职业技术学院 毕业设计(论文)

题 目: 单片机与PC的无线通信接口设计

系 别:

专 业: 电子电气工程系 应 用 电 子

目录

前言

开题报告 设计目的 设计要求 设计原理 总体框图 绪论

摘要 任务 硬件设计

单片机原理及接口技术 单片机串口通信

PC机与单片机的各种通信方式 通信接口的组成结构

rs-232 MAX233

无线通信模块PTR2000 硬件图 vb界面图 软件设计

单片机通信程序

程序清单: 界面程序 程序源代码 设计心得 致谢

元器件清单 参考文献 实习终结

前言

单片无线收、发一体无线数传模块PTR2000可广泛用于遥控、遥测、小型无线网络、无线抄表、门禁

系统、小区传呼、工业数据采集系统、无线标签、身份识别、非接触RF智能卡、小型无线数据终端、安全防火系统、无线遥控系统、生物信号采集、水文气象控制、机器人控制、无线/230/422/485数据通信、数字音频、数字图像传输等系统。 图3是PTR2000的一种具体应用框图。图中,MCU单片机可以是8031、2051、68HC08、PIC16C、Z8等,可将PTR2000直接到单片机的串口或I/0口上。图4的接收和发射系统图可完成数据采集的点对点传输。适用于工业控制、数据采集、无线键盘、无线标签、身份识别等系统中。

设计目的

一般的PC与单片机之间的串行通信,需要单片机采集数据,然后用异步串行通讯方式将数据传给PC机。传输数据的方式可以用有线的数据传输,例如采用有线的串,并型总线,I2C总线,CAN总线等,也可以是无线数据传输。本设计介绍单片机与PC的无线通信,一种和单片机密切相关的无线数据传输方式,单片机和无线数据收发模块PTR2000的组合,形成单片机的无线数据传输系统,与PC进行无线数据传输。

设计要求

本次设计是为了更为熟练的掌握单片机以及单片机的应用,特别单片机的串行通信应用。要求熟悉PC机与单片机的各种通信方式,通信接口的组成结构,完成相应软硬件设计。

设计原理

把单片机处理需要发送的数据,利用串口将数据传输到无线传输模块PTR2000的发送端,串行信号经调制后发送到计算机的接收端PTR2000进行解调后经MAX232电平车转换,通过RS232传给PC进行数据处理和数据记录。

总体框图

绪论

一般单项奖片机与PC的通信是用有线的串,并型。本文给出了单片机与PC无线通信的解决方案。 摘要

目前国内微机网络多为有线通信方式。有线通信的优点是数据传输可靠性较高,但需要铺设较多明线,而有些领域由于条件所限,难以铺设线路,这时就需要无线通信来解决问题。本系统利用nRF-401无线收发芯片成功实现了计算机与多台单片机以无线方式通信,它可以应用于智能小区抄表系统的数据传输,多路数据采集系统,报警和安全系统等各种领域

系统结构与硬件设计

第一章 单片机原理及接口技术

8051,8031是MCS-51系列单片机的典型产品,但是8031没有程序存储器。我们以这一代表性的机型进行系统的讲解。8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明: 中央处理器:

中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。 数据存储器(RAM):

8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。

图1.1 8051内部结构 程序存储器(ROM):

8051共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。 定时/计数器(ROM):

8051有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。 并行输入输出(I/O)口:

8051共有4组8位I/O口(P0、 P1、P2或P3),用于对外部数据的传输。

全双工串行口:

图1.1 8051内部结构 8051内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。 中断系统:

8051具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。 时钟电路:

8051内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但8051单片机需外置振荡电容。 下图是MCS-51系列单片机的内部结构示意图:

图1.2 MCS-51系列单片机的内部结构示意图 MCS-51的引脚说明:

MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。现在我们对这些引脚的功能加以说明:

8031/8051引脚功能: Vcc:+5V电源电压。 Vss:电路接地端。

P0.0~P0.7:通道0,它是8位漏极开路的双向I/O通道,当扩展外

部存贮器时,这也是低八位

地址和数据总线,在编程校验期间,它输入和输出字节代码,通道

0吸收/发出二个TTL负载。

P1.0~P1.7:通道1是8位拟双向I/O通道,在编程和校验时,它发

出低8位地址。通道1吸收/发出一个TTL负载。

P2.0~P2.7:通道2是8位拟双向I/O通道,当访问外部存贮器时,

用作高8位地址总线。通道2能吸收/发出一个TTL负载。 P3.0~P3.7:通道3准双向I/O通道。通道3能吸收/发出一个TTL

负载,P3通道的每一根线还有

另一种功能:

P3.0:RXD,串行输入口。 P3.1:TXD,串行输出口。 P3.2:INT0,外部中断0输入口。 P3.3:INT1,外部中断1输入口。

P3.4:T0,定时器/计数器0外部事件脉冲输入端。 P3.5:T1,定时器/计数器1外部事件脉冲输入端

P3.6:WR,外部数据存贮器写脉冲。 P3.7:RD,外部数据存贮器读脉冲。

RST/VpD:引脚9,复位输入信号,振荡器工作时,该引脚上2个机

器周期的高电平可以实现复

位操作,在掉电情况下(Vcc降到操作允许限度以下), 后备电源加到此引脚,将只给片内,RAM供电。ALE/PROG:引脚30,地址锁存有效信号,其主要作用是提供一个适当的定时信号,在它的下降沿

用于外部程序存储器或外部数据存贮器的低8位地址锁存,使总线P0输出/输入口分时用作地址总线(低8位)和数据总线,此信号每个机器出现2次,只是在访问外部数据存储器期间才不输出ALE。所以,在任何不使用外部数据存贮器的系统中,ALE以1/6振荡频率的固定速率输出,因而它能用作外部时钟或定时,8751内的EPROM编程时,此端输编程脉冲信号。PSEN:引脚29,程序选通有效信号,当从外部程序存贮器读取指令时产生,低电平时,指令寄,存器的内容读到数据总线上EA/VPP:引脚31,当保持TTL高电平时,如果指令计数器小于4096,8051执行内部ROM的指令,8751执行内部EPROM的指令,当使TTL为低电平时, 从外部程序存贮器取出所有指令,在8751内的EPROM编程时,此端为21V编程电源输入端。 XTAL1:引脚18,内部振荡器外接晶振的一个输入端,HMOS芯片使用外部振荡源时,此端必须接地。XTAL2:引脚19,内部振荡器外接晶振的另一个输入端,HMOS芯片使用外部振荡器时,此端用于输入外

部振荡信号。 引脚功能:

MCS-51是标准的40引脚双列直插式集成电路芯片,引脚分布请参照----单片机引脚图:

l P0.0~P0.7 P0口8位双向口线(在引脚的39~32号端子)。 l P1.0~P1.7 P1口8位双向口线(在引脚的1~8号端子)。 l P2.0~P2.7 P2口8位双向口线(在引脚的21~28号端子)。 l P3.0~P3.7 P2口8位双向口线(在引脚的10~17号端子)。 这4个I/O口具有不完全相同的功能,大家可得学好了,其它书本里虽然有,但写的太深,初学者很难理解,这里都是按我自已的表达方式来写的,相信你也能够理解。 P0口有三个功能:

1、外部扩展存储器时,当做数据总线(如图1中的D0~D7为数据总线接口)

2、外部扩展存储器时,当作地址总线(如图1中的A0~A7为地址总线接口)

3、不扩展时,可做一般的I/O使用,但内部无上拉电阻,作为输入或输出时应在外部接上拉电阻。

P1口只做I/O口使用:其内部有上拉电阻。 P2口有两个功能:

1、扩展外部存储器时,当作地址总线使用 2、做一般I/O口使用,其内部有上拉电阻; P3口有两个功能:

除了作为I/O使用外(其内部有上拉电阻),还有一些特殊功能,由特殊寄存器来设置,具体功能请参考我们后面的引脚说明。 有内部EPROM的单片机芯片(例如8751),为写入程序需提供专门的编程脉冲和编程电源,这些信号也是由信号引脚的形式提供的, 即:编程脉冲:30脚(ALE/PROG) 编程电压(25V):31脚(EA/Vpp)

接触过工业设备的兄弟可能会看到有些印刷线路板上会有一个电池,这个电池是干什么用的呢?这就是单片机的备用电源,当外接电源下降到下限值时,备用电源就会经第二功能的方式由第9脚(即RST/VPD)引入,以保护内部RAM中的信息不会丢失。 (注:这些引脚的功能应用,除9脚的第二功能外,在“新动力2004版”学习套件中都有应用到。)

在介绍这四个I/O口时提到了一个“上拉电阻”那么上拉电阻又是一个什么东东呢?他起什么作用呢?都说了是电阻那当然就是一个电阻啦,当作为输入时,上拉电阻将其电位拉高,若输入为低电平则可提供电流源;所以如果P0口如果作为输入时,处在高阻抗状态,只有外接一个上拉电阻才能有效。

ALE/PROG地址锁存控制信号:在系统扩展时,ALE用于控制把P0口的输出低8位地址送锁存器锁存起来,以实现低位地址和数据的隔离。(在后面关于扩展的课程中我们就会看到8051扩展EEPROM电路,在图中ALE与74LS373锁存器的G相连接,当CPU对外部进行

存取时,用以锁住地址的低位地址,即P0口输出。ALE有可能是高电平也有可能是低电平,当ALE是高电平时,允许地址锁存信号,当访问外部存储器时,ALE信号负跳变(即由正变负)将P0口上低8位地址信号送入锁存器。当ALE是低电平时,P0口上的内容和锁存器输出一致。关于锁存器的内容,我们稍后也会介绍。在没有访问外部存储器期间,ALE以1/6振荡周期频率输出(即6分频),当访问外部存储器以1/12振荡周期输出(12分频)。从这里我们可以看到,当系统没有进行扩展时ALE会以1/6振荡周期的固定频率输出,因此可以做为外部时钟,或者外部定时脉冲使用。PORG为编程脉冲的输入端:在第五课 单片机的内部结构及其组成中,我们已知道,在8051单片机内部有一个4KB或8KB的程序存储器

(ROM),ROM的作用就是用来存放用户需要执行的程序的,那么我们是怎样把编写好的程序存入进这个ROM中的呢?实际上是通过编程脉冲输入才能写进去的,这个脉冲的输入端口就是PROG。

PSEN外部程序存储器读选通信号:在读外部ROM时PSEN低电平有效,以实现外部ROM单元的读操作。 1、内部ROM读取时,PSEN不动作;

2、外部ROM读取时,在每个机器周期会动作两次; 3、外部RAM读取时,两个PSEN脉冲被跳过不会输出; 4、外接ROM时,与ROM的OE脚相接。

参见图2—(8051扩展2KB EEPROM电路,在图中PSEN与扩展ROM的OE脚相接)

EA/VPP访问和序存储器控制信号 1、接高电平时:

CPU读取内部程序存储器(ROM)

扩展外部ROM:当读取内部程序存储器超过0FFFH(8051)1FFFH(8052)时自动读取外部ROM。

2、接低电平时:CPU读取外部程序存储器(ROM)。在前面的学习中我们已知道,8031单片机内部是没有ROM的,那么在应用8031单片机时,这个脚是一直接低电平的。

3、8751烧写内部EPROM时,利用此脚输入21V的烧写电压。 RST复位信号:当输入的信号连续2个机器周期以上高电平时即为有效,用以完成单片机的复位初始化操作,当复位后程序计数器PC=0000H,即复位后将从程序存储器的0000H单元读取第一条指令码。

XTAL1和XTAL2 :外接晶振引脚。当使用芯片内部时钟时,此二引脚用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。 VCC:电源+5V输入 VSS:GND接地。

P0口 作为通用I/O和地址数据总线使用

P1口 是8位锁存器组成的特殊功能寄存器,它是通用的输入输出接口,有三种工作方式 输入输出和端口

P2口 可作为通用I/O口也可作为单片机扩展时候的地址总线 P3口 除了可作为通用I/O口外,还具有第二功能 如P3.0 RXD(串行输入通道)P3.1 TXD(串行输出通道) RS—232工作原理

上位机、下位机的接口,中间的电平转换电路。该系统采用三线制,独占MCU串口方式。RS-232它广泛地被借来用于计算机的数据发送和接受(更准确的说,是计算机接口与终端或外设之间的近端连接标准)。由于在计算机系统中,往往是CPU和I/O设备之间传送信息,双方都能发送和接收。 大多数的PC机为串口使用一个9针插入式D-sub连接器。这些串口只包9个信号。这个较小的连接器可为PC机在扩展卡的后部面板上的其他连接器留出了更多的空间。这个连接器也被称作DE-9,E表示这个外壳的大小。有些资料将它称作DB-9,9针连接器有不同的命名,尤其是对25针连接器上的1-9针上的信号。容易混淆的是2和3是颠倒的,2为RD,而3为TD。

端口说明(PC机部分)

PC机上的串行口是9针公插座,引脚定义为: 1 CD 载波检测DCD 2 RXD 接受数据

3 TXD 发送数据 4 DTR 数据终端就绪 5 GND 信号地

6 DSR 数据装置就绪 7 RTS 请求发送 8 CTS 清除发送 9 RI 振铃指示

RS-232连接方式 最简单的是用3根导线连接。连接交换RD和TD线,因此每个TD连接到对应的RD。如 果设备不使用硬件握手,这样就可以完成通信。 复位电路

计算机在启动运行时都需要复位,复位使中央处理器CPU和系统的其他器件都处于一种初始状态,并从这个初始状态开始工作,MCS-51系列单片机有一个复位引脚RST。输入一个高电平信号,该高电平信号至少要维持两个机器周期(或者24个时钟周期)以上的时间,单片机被复位,为了可靠复位,复位时间一般在10MS以上,当RST引脚变为低电平时,单片机退出复位,CPU从初始状态开始工作。这里的设计中我采用上电自动复位电路,在RST复位引脚端接一个电容至+5V和一个电阻至地端,实现上电自动复位。在加电瞬间,电容通过电阻充电,就在RST上出现一定时间的高电平,高电平时间足够长就能使单片机有效的复位。 电源电路

8051单片机采用电源电压5V,它的最高上限电压为5.5V。为了避免CPU工作不稳定,经常使用稳压器对给入CPU的电源电压进行稳压以达到使单片机正常工作的目的

3)振荡电路

CPU的指令执行是靠机器周期进行存取的,因此CPU的正常工作离不开稳定的振荡频率,由于石英晶振频率稳定,常采用12MHZ的石英晶振作为单片机的振荡器使用

单片机串口通信

MCS-51的串行通信口

MCS-51单片机内部有一个全双工的串行通信口,即串行接收和发送缓冲器(SBUF),这两个在物理上独立的接收发送器,既可以接收数据也可以发送数据。但接收缓冲器只能读出不能写入,而发送缓冲器则只能写入不能读出,它们的地址为99H。这个通信口既可以用于网络通信,亦可实现串行异步通信,还可以构成同步移位寄存器使用。如果在传行口的输入输出引脚上加上电平转换器,就可方便地构成标准的RS-232接口。下面我们分别介绍。

基本概念

数据通信的传输方式

常用于数据通信的传输方式有单工、半双工、全双工和多工方式。 单工方式:数据仅按一个固定方向传送。因而这种传输方式的用途有限,常用于串行口的打印数据传输与简单系统间的数据采集。 半双工方式:数据可实现双向传送,但不能同时进行,实际的应用采用某种协议实现收/发开关转换。

全双工方式:允许双方同时进行数据双向传送,但一般全双工传输方式的线路和设备较复杂。

多工方式:以上三种传输方式都是用同一线路传输一种频率信号,为了充分地利用线路资源,可通过使用多路复用器或多路集线器,采用频分、时分或码分复用技术,即可实现在同一线路上资 源共享功能,我们盛之为多工传输方式。

串行数据通信两种形式 异步通信

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

同步通信格式中,发送器和接收器由同一个时钟源控制,为了克服在异步通信中,每传输一帧字符都必须加上起始位和停止位,占用了传输时间,在要求传送数据量较大的场合,速度就慢得多。同步传输方式去掉了这些起始位和停止位,只在传输数据块时先送出一个同步头(字符)标志即可。

同步传输方式比异步传输方式速度快,这是它的优势。但同步传输方式也有其缺点,即它必须要用一个时钟来协调收发器的工作,所以它的设备也较复杂。 串行数据通信的传输速率

串行数据传输速率有两个概念,即每秒转送的位数bps(Bit per second)和每秒符号数—波特率(Band rate),在具有调制解调器的通信中,波特率与调制速率有关。 串行口控制寄存器

MCS-51单片机串行口寄存器结构如图3所示。SBUF为串行口的收发缓冲器,它是一个可寻址的专用寄存器,其中包含了接收器和发送

本文来源:https://www.bwwdw.com/article/a0go.html

Top