基于双工方式的PC机与单片机之间的串行通信实现
单片机与PC之间的串行通讯 毕业论文

毕业设计(论文)题目单片机与PC之间的串行通讯系(院)计算机科学技术系专业通信工程班级学生姓名学号指导教师职称单片机与PC之间的串行通讯摘要随着计算机技术的发展,特别是单片机技术的迅猛发展,单片机被广泛应用于大量工业控制系统。
单片机拥有占有空间小,价格低廉,开发应用程序容易的优势,可用于恶劣的工业环境中,单片机的数据采集和现场控制能力被广泛应用于分布式控制系统中。
但因为单片机的计算能力是有限的,而且用它也很难进行复杂的数据处理,因此这就要求我们往往在具有繁多功能的控制系统中采用上,下位机系统,单片机被使用为下位机系统采集数据和控制设备,而使用PC机为上位机系统处理复杂数据和控制单片机。
当今,在大量解决通信系统通信受阻的常用方案中,通过PC机自带的RS-232串行通讯端口与外设实现通讯这一方案备受人们的青睐。
故由上知,实现单片机与PC机之间的串行通讯具有重要的意义。
本论文设计详细介绍了使单片机与PC机之间能够进行串行通讯的软件和硬件的实现。
在硬件设计中,通过RS-232串行通讯端口将单片机与PC机相互连接,PC机把数据传输至单片机系统,单片机系统会将这一传输数据显示在LED数码管上;在软件设计中,利用Visual Basic6.0中的MSComm串行通讯控件来编写PC机的串口通讯程序。
在对此设计正确测试后,证明我们的设计能够实现单片机与PC机之间的串行通讯。
关键词:单片机;串行通讯;RS-232;Visual Basic6.0;MsCommSerial Communication between SCM and PCAbstractWith the development of computer technology, especially the rapid development of the SCM technology, SCM has been widely used in industrial control systems. The SCM has the advantage of possession of a small space, low price, easy to develop applications that can be used in harsh industrial environments, data acquisition and site control capabilities of the microcontroller is widely used in distributed control systems. Single-chip computing power is limited, and it is difficult to use it for complex data processing, so this is often used in the control system has a range of functions, the controller system, the microcontroller is used for the next bit machine system data acquisition and control equipment, using a PC as the host computer system to handle complex data and control SCM. Today, a large number of commonly used programs address communication system communication disruption, comes via a RS-232 serial communication interface with peripherals, communication of this program much people of all ages. Therefore, by the Sounds, the communication between the SCM and PC has an important significance.The design details of this paper between the SCM and PC serial communications software and hardware implementations. SCM and PC through the RS-232 serial communications port in the hardware design of interconnected PC machine data transfer to the SCM system, SCM system will transmit data is displayed on the LED digital tube; in software design, MSComm communication control in Visual Basic 6.0 to write the PC's serial port communication program. This design the right tests to demonstrate that our design can achieve serial communication between SCM and PC.Key words:SCM;Serial Communication;RS-232;VB6.0;MSComm目录第一章绪论 (1)1.1 本课题的目的和意义 (1)1.2本课题的国内外研究现状 (1)1.3此次设计的工作内容 (2)第二章串行通讯基础知识 (3)2.1串口通讯的理论基础 (3)2.1.1 并行接口与串行接口 (3)2.2 RS-232串行通讯接口标准 (3)2.3MSCOMM串行通讯控件 (4)2.3.1 MSComm串行通讯控件处理通讯的方式 (4)2.3.2 MSComm串行通讯控件的属性 (5)第三章课题总体设计与分析 (6)3.1 课题的可行性分析 (6)3.2 课题指标设计 (6)3.2.1 通讯协议的设计 (6)3.3 课题的硬件与软件的设计与分析 (6)3.4课题功能分析 (7)第四章串行通讯的硬件电路设计 (8)4.1 单片机的选型及其简介 (8)4.2 串行接口的基本结构的认识 (8)4.3 电平转换芯片MAX232 (10)4.4 电路原理图 (11)第五章串行通讯程序设计 (14)5.1 PC机的串行通讯程序 (14)5.2单片机的串行通讯程序 (17)第六章仿真调试与结果分析 (19)6.1 PROTUES仿真软件简介 (19)6.2 仿真结果分析 (19)结语 (21)参考文献 (22)致谢 (23)附录 (24)第一章绪论1.1本课题的目的和意义现代信息网络技术的一个突出特点,是使所有的设备在工业控制系统相互连接,形成网络,在中央软件管理下,形成一个有机的整体。
单片机与pc机串行通讯的实现与应用

单片机与pc机串行通讯的实现与应用单片机与PC机之间的串行通讯是一种常见的信息交互方式,它在现代电子设备中得到广泛应用。
本文将介绍单片机与PC机串行通讯的实现原理及其应用。
一、串行通讯的实现原理串行通讯是指通过一根信号线在不同设备之间传输数据的方式。
单片机与PC机之间的串行通讯一般采用UART(通用异步收发传输器)来实现。
UART是一种常见的串行通讯接口,它通过波特率(即每秒传输的位数)来控制数据的传输速度。
单片机与PC机之间的串行通讯主要涉及三个方面的内容:硬件接口、通讯协议和通讯程序。
1. 硬件接口:单片机与PC机之间的串行通讯需要通过串口来完成。
串口一般由发送引脚(TXD)和接收引脚(RXD)组成。
单片机的TXD引脚与PC机的RXD引脚相连,单片机的RXD引脚与PC机的TXD引脚相连。
通过这样的连接,单片机和PC机就可以进行双向的串行通讯。
2. 通讯协议:单片机与PC机之间的串行通讯需要约定一种通讯协议,以保证数据的正确传输。
常见的通讯协议有RS-232、RS-485和USB等。
其中,RS-232是一种串行通讯协议,它规定了数据的传输格式和通讯速率等参数。
RS-485是一种串行通讯标准,它可以支持多个设备之间的通讯。
USB是一种通用的串行总线接口,它可以连接多个外部设备。
3. 通讯程序:通讯程序是单片机与PC机之间进行数据交换的关键。
通讯程序一般分为发送程序和接收程序两部分。
发送程序负责将单片机中的数据发送给PC机,而接收程序负责接收PC机发送过来的数据。
通讯程序的编写需要根据具体的单片机和PC机的硬件接口来进行。
二、串行通讯的应用串行通讯在各个领域都有着广泛的应用,特别是在嵌入式系统中。
下面将介绍一些常见的串行通讯应用。
1. 数据采集系统:串行通讯可以用于将传感器采集到的数据传输到PC机上进行处理。
通过串行通讯,可以实现远程监测和数据采集,例如气象站、环境监测设备等。
2. 工控系统:串行通讯可以用于工控系统中的设备之间的数据交换。
实验6 单片机与PC机间的串行通信

实验6 单片机与PC机间的串行通信一、实验目的1、掌握电平转换器件RS-232的使用方法;2、掌握Proteus VSM虚拟终端(VITUAL TERMINAL)的使用;3、掌握单片机与PC机间的串行通信软硬件设计方法。
二、实验内容实现利用虚拟终端仿真单片机与PC机间的串行通信。
PC机先发送从键盘输入的数据,单片机接收后回发给PC机。
单片机同时将收到的30~39H间的数据转换成0~9的数字显示,其他字符的数据直接显示为其ASCII码。
单片机和PC机进行通信时,要求使用的波特率、传送的位数等相同。
要能够进行数据传送也必须首先测试双方是否可以可靠通信。
可在PC机和单片机上各编制非常短小的程序,具体可分成PC机串行口发送接收程序、单片机串行口发送程序和单片机串行口发送接收程序。
这三个程序能运行通过,即可证明串行口工作正常。
PC机串行口发送接收程序设置串行口为波特率9600、8位数据、1位停止位、无奇偶校验的简单设置。
从键盘接收的字符可从串行口发送出去,从串行口接收的字符在屏幕上显示。
通过让串行口发送线和接收线短接可测试微机串行口,通过让串行口和单片机系统相接,使用此程序可进一步测试单片机的串行通信状况。
具体程序用BASIC编制,简单易懂。
直接输入即可运行。
程序RS232.三、实验电路原理图图7-1 单片机与PC机间电路原理图四、实验步骤1、在PROTEUS中画好电路原理图。
2、串口模型属性设置串口模型属性设置为:波特率―4800;数据位―8;奇偶校验―无;停止位-1,如图7-2所示。
图7-2 串口模型属性设置3、虚拟终端属性设置PCT代表计算机发送数据,PCR用来监视PC接收到的数据,它们的属性设置完全一样,如图7-3所示。
SCMT和SCMR分别是单片机的数据发送和接收终端,用来监视单片机发送和接收的数据,它们的属性设置也完全一样,如图7-4所示。
单片机和PC机双方的波特率、数据位、停止位和检验位等要确保和串口模型的设置一样,并且同单片机程序中串口的设置一致。
单片机课程设计论文基于CBuilder的PC机与单片机之间的串口通信

河海大学计算机及信息工程学院(常州)课程设计报告题目基于C++Builder的PC机与单片机之间的串口通信专业自动化学号09学生姓名指导教师完成时间2010-12-22摘要《单片机》是一门技术性、应用性很强的学科,如果不在实践技能的锻炼上下功夫,单凭课堂理论课学习,势必出现理论与实践脱节,学习与应用脱节的局面。
因此为了能够将课堂上学到的理论知识与实际应用结合起来,而且能够对电子电路、电子元器件、印制电路板等方面的知识进一步加深认识,此次课设主题为单片机串口通信的应用之一。
通过串口,我们的个人电脑和单片机系统进行通信。
个人电脑作为上位机,向下位机单片机系统发送数据帧,单片机系统接收后,发回通信协议要求的数据帧。
可以用C++ Builder 语言制作的应用程序界面或串口调试助手字符串输入框中输入数字和字符来实现PC机与80C51系列单片机的串口通信。
关键字:单片机、PC机、串口通信、C++ BuilderAbstract" SCM "is a technical, applied a strong discipline, if not in practice, work hard skills training, theoretical study of the classroom alone, theory and practice is bound to appear out of line, the gap between learning and application of situation. Therefore, in order to be able to classroom and practical application of theoretical knowledge combined, but also on the electronic circuits, electronic components, printed circuit boards and other knowledge to further deepen understanding of the theme of the course based Application Serial Communication one. Through the serial port, our personal computer and microcontroller systems to communicate. PC as the host computer, the down-bit machine microcontroller system to send data frames after receiving the SCM system, sends back the requested data communication protocol frame. Can make C + + Builder application language interface or serial debugging assistant string input box numbers and characters to achieve the PC, and 80C51 series microcontroller serial communication.Keywords: microcontroller, PC, serial communication, C + + Builder目录摘要 (2)目录 (3)一、需求分析 (4)二、系统设计及详细设计 (5)1. 1.串行通信原理 (5)2. 2.硬件设计 (6)3. 3.软件设计 (6)串口初始化 (7)从机(单片机)接收主机(PC机)发送来的数据帧 (7)从机发送数据帧给主机 (8)拓展部分 (8)三、运行调试 (9)4. 1.硬件方面 (9)5. 2.软件方面 (9)六、附录 (10) (10)#define speak RD;109l109l109l109l109l109l109l109l109l109l109l验结果显示 (19) (19)一、需求分析在工业自动化系统中,常用到微机与单片机进行控制和调试。
单片机串行口与及PC机通讯实验实验报告

单片机系统设计及应用实验报告第次实验实验名称:单片机串行口与PC机通讯实验专业:姓名:学号:同组人员:学号:实验地点:实验时间:2016.12.15评定成绩:审阅教师:目录实验目的 (1)实验内容及要求 (4)实验原理及程序设计流程图 (5)调试过程及相关记录 (6)正确源代码 (6)实验心得 (7)一.实验目的(1)掌握串行口工作方式的程序设计,掌握单片机通讯的编制;(2)了解实现串行通讯的硬环境,数据格式的协议,数据交换的协议;(3)了解PC机通讯的基本要求。
二.实验内容及要求利用8051单片机串行口,实现与PC机通讯。
本实验实现以下功能,将从实验板键盘上键入的字符或数字显示到PC机显示器上,再将PC机所接收的字符发送回单片机,并在实验板的LED上显示出来。
三.实验原理89C51内部有一个可编程全双工串行通信接口。
该部件不仅能同时进行数据的发送和接收,也可作为一个同步移位寄存器使用。
本实验LED显示是在方式0下,串行口作为同步移位寄存器使用。
此时SM2、RB8、TB8均应设置为0。
发送数据:TI=0时,执行“MOV SBUF,A”启动发送,8位数据由低位到高位从RXD引脚送出,TXD发送同步脉冲。
发送完后,由硬件置位TI。
方式0的波特率为fosc/12,即一个机器周期发送或接收一位数据。
与PC通讯是方式1:一帧10位的异步串行通信方式,包括1个起始位,8个数据位和一个停止位。
当TI=0时,执行“MOV SBUF,A”指令后开始发送。
发送时的定时信号由定时器T1送来的溢出信号经过16分频或32分频得到的。
在接收到第9位数据(即停止位)时,必须同时满足以下两个条件:RI=0和SM2=0或接收到的停止位为“1”,才把接收到的数据存入SBUF中,停止位送RB8,同时置位RI。
在方式1下,SM2应设定为0。
四.实验流程图四.调试过程及相关数据记录(1)编写单片机发送和接收程序,并进行汇编调试。
运行PC机通讯软件“commtest.exe”,将单片机和PC机的波特率均设定为1200。
PC机与多个单片机之间的串行通信原理及其软硬件结构的实现

PC机与多个单片机之间的串行通信原理及其软硬件结构的实现实现串行通信的方法很多,例如可以根据通信协议的要求,用编写程序的方法完成串行通信中数据字符的接收和发送,但这种方法比较麻烦;为了快速、简便、有效的实现串行通信,PC系列及其兼容机都可以采用一个可编程异步串行通信接口芯片来执行异步串行通信协议。
这种异步通信接口芯片的核心是一个大规模集成通信组件,称为通用异步接收/发送器,或简称UART(Universal Asynchronous Receiver/Transmitter)。
1﹒ 8051实现多机通信原理8051串行通信相关的三个控制寄存器SCON(Serial Controller)、PCON(Power Controller)和IE (Interrupted Enhanced)分别用于设定四种不同的通信方式及定义波特率。
它的串行口工作方式3是可变波特率的9位数据异步通信方式,发送或接收一帧数据为1l位:1位起始位,8位数据位、1位附加的校验位和1位停止位。
其中附加的第9位数据是可编程的,利用这一可控的第9位数据,可以实现多机通信。
2﹒ PC机与8051通信原理PC机的串行通信适配器,其核心为可编程异步收发器UART8250芯片,8250有10个可寻址寄存器供CPU读/写,以实现与外界的通信,并制定通信协议和提供通信状态信息。
8051单片机的串行通道是一个全双工的串行通信口,既可以实现双机通信,也可以实现多机通信。
当串行口工作在方式2或方式3时,若串行控制寄存器SCON的多机通信控制位SM2由软件设置为“1”,则为多机方式;若SM2为“0”,则为9位异步通信方式。
在多机通信时,8051发送的帧格式是11位,其中第9位是SCON中的发送数据位TB8,它是多机通信时发送地址(TB8=1)或发送数据(TB8=0)的标志。
串行发送时自动装入串行帧格式的相应位。
在接收端,一帧数据的第9位信息被装入SCON的接受数据位RB8中,接收机根据RB8以及SM2的状态确定是否产生串行中断标志,从而可以响应或不响应串行中断,这样就实现了串行中断。
单片机与PC机之间并行通讯的一种实现方法

单片机与PC机之间并行通讯的一种实现方法
1引言
在许多单片机控制系统的研制过程中,为使控制系统达到最佳的控制状态和最高的技术性能,进行控制参数的在线反复细致调整是必不可少的。
以往单片机与外界进行人机对话都是通过可编程键盘显示接口器件8279 实现的,
但8279 的加入,占用了大量的程序空间,有的将近整个程序的三分之一,另外,用小键盘进行控制参数的小幅度修正也不方便。
再者,产品开发人员对控制系统内部的计算过程十分感兴趣,如果能将每一步的计算结果传送出来进行分析检验,必将对产品研制带来益处。
单片机与PC 机之间的串行通讯虽然也可以实现单片机与PC 机之间的数据交换,但
速度较低(最高19200byte/s),无法满足实时传送大量数据的要求。
为此,开发了利用双端口RAM IDT7132 和PC 机的并行打印机接口,实现单片机与PC 机之间并行通讯的方法,该方法只需通过接口电路与PC 机打印机接口相连即可使用,且通讯速度也可满足要求。
图1IDT7132 结构功能框图
2双端口RAM IDT7132 的结构和特点
IDT 公司的双端口RAM 时序与INTEL 公司的单片机系统兼容,与现今流行的MCS—98/96 系列单片机相配合,特别适用于单片机与单片机、单片机与PC 机之间大量数据的高速双向传送。
IDT7132 是一种高速2K×8CMOS双端口静态RAM,它提供了两个带有自身控制、地址和I/O 引脚的独立端口,可独立地读写存储器中的任何单元。
IDT7132 还带有片内硬件端口总线仲裁电路,提供了BUSY 总线仲裁方式,可。
单片机与PC机通信

电子设计综合训练报告单片机与PC机之间的串行通信姓名:学号:专业班级:指导老师:所在学院:2011年03月08日1摘要本次课程设计主要介绍一种用双工方式实现单片机与PC机之间的串行通信。
这次用到了AT89C2051单片机,针对AT89C2051的特点进行说明AT89C2051是美国ATMEL公司生产的低电压、高性能CMOS 8位单片机,片内含2k bytes 的可反复擦写的只读程序存储器(PEROM)和128bytes的随机数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大。
AT89C2051单片机可为您提供许多高性价比的应用场合。
程序保密,89C2051设计有2个程序保密位,保密位1被编程之后,程序存储器不能再被编程除非做一次擦除,保密位2被编程之后,程序不能被读出。
单片微型计算机简称单片机,它是将中央处理器(CPU)、存储器(RAM,ROM)、定时/计数器和各种接口电路都集成到一块集成电路芯片上的微型计算机。
随着计算机技术尤其是单片机技术的发展,人们已越来越多地采用单片机来对一些工业控制系统中如温度、湿度等参数进行检测和控制。
PC机具有强大的监控和管理功能,而单片机则具有快速及灵活的控制特点,通过PC机的RS 232串行接口与外部设备进行通信,是许多测控系统中常用的一种通信解决方案。
因此针对一些远距离控制或者是危险性比较高的数据采集和控制的应用情况,如何实现PC机与单片机之间的通信具有非常重要的现实意义。
2目录1. 概述 (4)2、系统总体方案及硬件设计 (5)2.1系统总体方案 (5)2.2实现电路。
(6)2.2.1电平转换电路 (6)2.2.2单片机部分 (6)2.2.3无线收发部分 (6)2.2.4液晶显示模块 (6)2.2.5键盘输入模块 (7)2.2.6 RS232串口引脚定义如下表: (7)2.2.7串口通信参数: (8)2.2.8串口通信的接收过程: (9)2.3.硬件设计方案 (11)2.3.1、打开PROTEUS软件从库中选取元器件 (11)2.3.2、串口模型 (11)2.3.3、虚拟终端 (11)2.3.4、放置元器件 (11)3.软件设计方案 (12)3.1、程序流程如下图: (12)4.PROTEUS软件仿真与调试 (13)5.课程设计体会 (20)参考文献 (21)附录1 源程序代码 (22)附录2 系统原理图 (23)31. 概述现代工业控制领域经常涉及到串行通信问题,为实现微机和单片机之间的数据交换,人们用不同的方法实现串行通信,如DOS下采用C语言。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于双工方式的PC机与单片机之间的
串行通信实现
作者:陈冬梅梁红玉陆冬妹来源:现代电子技术发布时间:2010-11-3 10:04:28 [收藏] [评论]
单片微型计算机简称单片机,它是将中央处理器(CPU)、存储器(RAM,ROM)、定时/计数器和各种接口电路都集成到一块集成电路芯片上的微型计算机。
随着计算机技术尤其是单片机技术的发展,人们已越来越多地采用单片机来对一些工业控制系统中如温度、湿度等参数进行检测和控制。
P C机具有强大的监控和管理功能,而单片机则具有快速及灵活的控制特点,通过PC机的RS 232串行接口与外部设备进行通信,是许多测控系统中常用的一种通信解决方案。
因此如何实现PC机与单片机之间的通信具有非常重要的现实意义。
针对一些远距离控制或者是危险性比较高的数据采集和控制的应用情况,本文主要介绍一种用双工方式实现PC机与单片机之间的串行通信。
1 设计方案
为了通过串口实现PC机与单片机间的双工通信,可有如下设计方案。
(1)设计方案一:有线传输
此方案是指PC机与单片机之间通过电缆线传输数据。
有线传输的优势是性能比较稳定,调试简单,而不足之处在于它的应用范围不够广、性能不够好,而且传输距离受限,这样就大大影响了系统的应用范围。
欲了解更多信息请登录电子发烧友网()
(2)设计方案二:无线传输
此方案是指PC机与单片机通过无线信道传输数据。
无线传输的最大优势是应用范围广,受距离约束较小,在一定范围内可以不用考虑距离问题,还可以应用在一些高温、危险的场合。
因此,本文选用无线传输方案通过串口来实现PC机与单片机之间的双工通信。
无线传输可以用不同的方式来实现,常用的有红外方式、蓝牙方式,其他的还有射频收发芯片如CC1100,PT2262/2272芯片等。
红外通信是利用950 nm近红外波段的红外线作为传递信息的载体,通过红外光在空中的传播来传递信息,由红外发射器和接收器实现。
发射端将二进制数字信号调制成某一频率的脉冲序列,经电光转换电路,驱动红外发射管以光脉冲的形式发送到空中。
接收端将接收到的光脉冲转换成电信号,再经解调和译码后恢复出原二进制数字信号。
其最大优点是:不易被人发现和截获,保密性强;几乎不会受到电气、天电、人为干扰,抗干扰性强。
此外,红外线通信机体积小、重量轻、结构简单、价格低廉。
不足之处在于它必
须在视距内通信,且传播受天气的影响。
CCll00是一种低成本真正单片的UHF收发器,为低功耗无线应用而设计。
CCll00构建高性能射频无线数据传输技术方案应用无线通讯模块采用透明模式进行通讯,即所收即所发,具有通讯距离远、低功耗、接口灵活等优点,使用者无需编码和控制。
CCll00通信距离(视距)大于300 m,而且能隔墙遥控,操作方
便。
综合上述分析,本文介绍的是采用CCll00收发器通过串口来实现PC机与单片机之间的双工无线通信。
2 硬件设计
2.1 总体框图
此双工无线通信系统的总体框图如图1所示。
由于此系统可实现双工通信,因此它可分为两个通信过程:PC机(上位机)通过上位机程序界面发送数据给单片机,并送给液晶屏显示相应的数据;键盘输入数据传给单片机,接着发送给PC机,并在PC机上位机程序界面上显示出来。
2.2 实现电路图
对应于上述框图的电路实物图如图2所示。
其左右两个电路分别对应上述框图中的左右两个部分。
总体来说,它包括电平转换电路、单片机处理部分、无线收发部分(CCll00收发器)、液晶显示模块和键盘输
入模块五个部分。
(1)电平转换电路
PC机的串行口采用的是标准的RS 232接口,单片机的串行口电平是FTL电平,而TTL电平特性与R S 232的电气特性不匹配,因此为了使单片机的串行口能与RS 232接口通信,必须将串行口的输入/输出电平进行转换。
通常用MAX232芯片来完成电平转换。
(2)单片机部分
单片机部分包括单片机、复位电路和时钟电路。
它将串口送过来的数据传输给CC1100收发器,或者将CCll00收发器传送过来的数据通过串口给PC机。
单片机的复位电路和时钟电路是单片机工作所必需的。
(3)无线收发部分
无线收发部分由CC1100收发器组成,它将接收到的数据通过天线发射出去或从天线接收发送过来的
数据。
(4)液晶显示模块
此处选用LCDl602液晶模块,其内部的字符发生存储器已经存储了160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号和日文假名等,每一个字符都有一个固定的代码。
(5)键盘输入模块
在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式。
在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。
这样,一个端口(如P1口)就可以构成4×4=16个按键,比之直接将端口用于键盘多出了一倍。
由此可见,在需要的键数比较多时,采用矩阵法来做键盘是比较好的。
矩阵式键盘的按键识别方法为行扫描法。
此处选用4×4的矩阵键盘来输入O~9
的数字和a~f的字母。
3 软件设计
本系统的软件设计方面包括上位机程序和单片机程序的设计。
上位机程序要实现的功能是在电脑上显
示一个操作界面,它可代替串口调试工具。
3.1 上位机程序
上位机程序可以用VB,VC++等语言来编程,但本方案采用比较方便的C#来编程实现,其流程图如图
3所示。
3.2 单片机程序
单片机程序主要包括主程序、单片机发送子程序、单片机接收子程序、液晶显示子程序、键盘输入子程序五部分,均采用C语言进行模块化编程。
由于篇幅原因,下面只给出了单片机发送子程序和接收子程
序,如图4,图5所示。
4 测试结果
测试时,连接好硬件打开串行口COM1,并设波特率为9 600 b/s。
单片机发送字符串“675”给PC机,其液晶显示如图6所示,相应的PC机界面显示如图7所示。
PC机发送"69asd"给单片机,液晶屏上即可接收到“69asd",如图8,图9所示。
测试结果说明:基于串行口的PC机与单片机之间的双工无线通信是切
实可行的,而且无线传输的距离至少可达到100 m。
5 结语
采用CCll00收发器通过串口实现了PC机与单片机之间的双工无线通信。
此系统可应用到一些远距离控制或者是危险性比较高的数据采集和控制的场合,用于采集温度、湿度等参数,还可扩展到无线传感器网络领域,实现诸如无线抄表、智能家居等系统。
欲了解更多信息请登录电子发烧友网(http://www.el
)。