1、毕业论文设计任务书 院(系) 班 学生 一、毕业论文设计题目 车间计件式生产统计报表系设计 二、毕业论文设计工作自_年_2_月_1_日 起至_ 6 月_22_日止 三、毕业论文设计进行地点: 电信工程系试验室 四、毕业论文设计内容要求:1、设计一个车间计件统计报表系统,要求含有下列功效:能够识别每一个工人(或工号,人数可选128/256/512);统计每一个工人加工产品数(自定义上限,只是预留存放单元),统计间断时间并确保数据不丢失;间断超时报警,指明那一台设备发生故障;汇总排序2、具体做好系统设计、原理分析说明、试验测试方案和步骤说明。 3、掌握撰写毕业设计汇报方法。要求格式正确,文字流畅,
2、突出“目标、原理、方法、结论”四要素;对所选题目标研究有系统、深刻认识,汇报陈说、答辩中概念正确,逻辑严密,专题鲜明。 4、要求方案论证有汇报;硬件设计有原理,制版、调试有方法、有过程;汇报有论文,参考有文件。 进度安排: 35 周:资料查新及方案论证; 613周:设计电路、元器件性能测试、单元电路制作调试; 14-15周:电路统调 16-17周:撰写论文 18 周:准备答辩 指导老师 教 研 室 教研室主任(署名) 同意日期 -2-1 接收论文 (设计)任务开始实施日期 -2-1 学生署名: 车间计件式生产统计报表系统设计 摘要 介绍了一个车间生产计件统计系统,该系统以单片机单片机 单片机是
3、单片微型计算机(Single-Chip Microcomputer)简称,是一个将中央处理器CPU随机存放器RAM、只读存放器ROM、多个I/O口和中止系统、定时器/计时器等功效(可能还包含显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)采取超大规模集成电路技术集成到一块硅片上组成微型计算机系统。 全文AT89C52为控制中心,以C语言为单片机(下位机)驱动程序语言,VB语言为计算机(上位机)编程语言,上位机和下位机利用RS232协议进行串口通信,实现车间计件系统远距离实时监控。下位机经过键盘输入工号,液晶显示工人工号、设备报警情况、检测生产线上产品实际数量等数据,同时可实时向
4、主控室传送数据;上位机显示人机界面、相关工人基础资料、设备工作情况、目前上位机和下位机通信端口号。实践证实该系统硬件电路简单、可靠性好、操作方便、成本低,可广泛应用在生产领域。 关键词 上位机 下位机 串口通信 Design of Counting System for the Workshop Production Statistics SystemAbstract: Introduces a kind of workshop production, the system piece with single-chip microcomputer to control center to AT
5、89C52 for microcontroller C language (machine) driver programming language, VB language for computer (PC) in computer programming language, friendly human-machine interface design for the bridge, with RS232 serial communication will use computer and lower level computer is connected, realize the pie
6、ce system long-distance real-time workshop surveillance. Lower place machine through the keyboard input JobID, liquid crystal display workers JobID, equipment alarm condition, testing line product data such as actual quantity, and real-time data transmission to control centre room; PC display man-ma
7、chine interface and related basic material, equipment workers working condition, the current PC and lower level computer communication socket. Practice shows that the system hardware circuit is simple, good reliability, easy operation, low cost, and can be widely applied in manufacturing field. Keyw
8、ords: Upper computer Lower computer Serial Communication目 录1绪论12 设计方案及工作原理22.1工号识别部分22.1.1指纹识别22.1.2数字键盘32.1.3论证结果32.2计件部分32.2.1 红外对管32.2.2 按键开关42.2.3 论证结果42.3上位机下位机通信部分42.3.1无线蓝牙42.3.2串口通信62.3.3论证结果72.4 系统总体设计模块图83 单元电路工作原理93.1 键盘扫描93.2 液晶显示103.3串口通信114 下位机电路实现134.1硬件仿真134.2系统调试155 上位机软件实现165.1软件界面
9、设计标准165.2基于VB串口通信设计165.3软件功效说明176设计结果187总结21致谢22参考文件23附录24附录A:英语科技文件原文及翻译稿24附录B:电路总图35附录C:元器件清单36附录D:源程序371绪论伴随现代生产规模化发展,传统人工统计产品方法难以做到立即正确、自适应能力差、数据采集慢、协同性和集成性差、智能性差、适应性差,为了对自动生产线上零件或成品进行动态管理和统计,需要安装必需自动检测和计数装置。首先可实时显示产品数量等信息,其次可向计算机管理系统提供动态数据,为过程控制提供依据。51单片机优异性价比使它取得了广大用户认可,其独特系统结构、不停增加片内设备和强大指令系统
10、,仍然是单片机中主流。伴随技术发展和应用需求,51单片机片内设备越来越多,51单片机仍然是单片机学习和应用关键对象。车间计件生产报表是数据存放、传输、控制、处理过程,所以很适合单片机控制。VB是Visual Basic简称,是Microsoft企业推出一个Windows应用程序开发工具。是一个可视化、面向对象和采取事件驱动方法结构化高级程序设计语言,可用于开发 Windows 环境下各类应用程序。在Visual Basic环境下,利用事件驱动编程机制、新奇易用可视化设计工具,使用Windows内部广泛应用程序接口(API)函数,动态链接库(DLL)、对象链接和嵌入(OLE)、开放式数据连接(O
11、DBC)等技术,能够高效、快速地开发Windows环境下功效强大、图形界面丰富应用软件系统。是当今世界上使用最广泛编程语言之一,被公认为是编程效率最高一个编程方法。不管是开发功效强大、性能可靠商务软件,还是编写能处理实际问题实用小程序,VB全部是最快速、最简便方法。计算机串口通信是一个关键数据交换方法,其广泛应用于计算机外设或工业测控领域。以往,要实现计算机串口通信需要做大量复杂和艰苦工作,现在PC计算机和单片机系统串口通信控制,尤其是利用VB(或VC)编程语言进行控制界面设计控制对象操作是单片机系统应用发展最前端技术,。通常以PC机作为上位机发送指令到单片机,由单片机来完成现场数据采集、电路
12、控制等工作,然后数据返回PC机进行高级处理。此实现了单片机智能控制,也是单片机多年来得以生存关键原因。 车间计件式生产统计报表设计由51单片机为底层驱动主控制器计件系统。该系统是以51单片机为关键,经过51单片机和计算机串口通讯、友好对话界面设计来实现对车间计件远距离实时监控,简化生产管理过程工作量,提升工作效率,极大调动职员工作主动性,此系统研究含有重大实际意义。2 设计方案及工作原理2.1工号识别部分功效:基于工作流管理技术,有序、有效、快速、灵活管理职员,便于分配工作任务,考评工作情况,实现个人身份认证;2.1.1指纹识别硬件:自动指纹识别模块基础原理图1所表示:图像采集模块图像处理、识
13、别模块结果输出模块 图1 自动指纹识别模块图像采集模块负责采集用户指纹图像,并将其转换为二进制数据输出。现在常见指纹传感器有光学指纹传感器、固态晶体传感器和超声波传感器。指纹图像质量将直接影响系统整体性能。图像处理和识别模块实现了整套指纹识别算法。该模块对输入指纹图像进行预处理、后处理和特征提取,然后将得到指纹特征数据(指纹模板)登记到指纹库,或是和已经有指纹模板进行匹配识别。这是系统关键,常见DSP芯片完成。结果输出模块则依据前面指纹比正确情况,显示比对结果或直接输出对应显示控制信号。软件:指纹识别算法步骤图图2所表示: 图2 指纹识别算法步骤指纹图像分割目标是从指纹图像中分离出清楚指纹区域
14、和有噪声但仍能够恢复指纹区域,使后续处理能够集中于这些有效区域进行。我们实现了一个指纹图像多级(三级)分割算法:第一级分割背景,第二级以前景中识别出模糊区域,第三级则从模糊区域中分割掉不可恢复指纹区域部分。图像增强部分,结合Gabor滤波器善于分离粘连脊线和方向滤波器善于连接断裂脊线特征,能对低质量指纹图像进行有效增强。同时,将二值化运算提前到图像增强阶段进行,图像增强后即直接输出二值指纹图像,有效降低了总体处理时间。后处理阶段对二值指纹图像进行细化,并修复细化后骨架线上毛刺、粘连、桥、环等假特征结构。采取一个最近邻点方法抽取纹线骨架,满足了指纹细化保持性、连接性、中轴性和快速性要求。在特征提
15、取阶段,选择脊线端点和分歧点作为特征点,统计每一特征点类别、位置和方向信息,从而得到特征点集(特征模板)。通常对同一枚指纹提取23个样本,分别对这些样本进行预处理、后处理和特征提取,依据特征点间相互位置关系判定样本图像是否两两匹配,并由特征点被匹配次数确定特征点匹配权值。从样本图像中找出权值大于给定阈值特征点,以这些特征为模板建立特征模板并存放在数据库中。对待匹配指纹图像,经预处理、后处理和特征提取后,得到一个特征模板,该模板和指纹数据库中已经有模板进行比较,最终得到识别结果。2.1.2数字键盘经过键盘键入主键(工号)识别工人信息。采取4*4矩阵键盘,数字键组合代表工人工号,*代表置零,#号代
16、表确定。2.1.3论证结果指纹识别:优点:实现方便、快捷、高效、安全个人身份认证功效,满足大家易用性、方便性和舒适性追求,整个模块含有体积小、功耗较低、应用灵活等;,缺点:系统要求硬件数据处理快速、大容量存放器故造成成本高、软件开发复杂等问题。数字键盘:优点:电路简单,操作简单、方便,最关键是物美价廉,仍然能完成个人身份认证工作;缺点:安全性、便携性不高。结论:总而言之,工号识别部分采取数字键盘。2.2计件部分 功效:依据完成样品和检测样品统计计件数目;2.2.1 红外对管硬件:利用对射式红外线计数器设计,指导思想是利用红外发光管发射红外线,红外接收管接收此红外线,并将其放大、整流形成高电平信
17、号。当有物体挡住红外光时,接收管没有接收到红外信号,放大器将输出低电平,同时计数器计数这个低电平脉冲,并经译码驱动电路使数码管显示数值。这么就可统计物件数量。计数范围能够扩展。红外光电反射式计数器电路原理框图图6所表示。555组成多谐振荡器产生约330赫兹方波信号,驱动红外发射管VD1发射红外线脉冲。当有物体阻挡时,红外线脉冲即被反射回来,由VD2接收并转换为电信号,因出现50赫兹灯光干扰,经高通滤波滤除,再经LM324组成同相放大器放大,再经LM324组成电压比较器整形为方波信号,包络检波后由LM324组成电压比较器整形为幅值较大信号,得到方波信号经555组成单稳态触发器延时整形,再经非门后
18、得到信号作为触发脉冲接到集成同时十进制计数器74LS160CP端,计数由CD4511驱动七段LED数码管显示。整个电路均使用5V直流稳压电源为各单元电路供电。图6 红外光电反射式计数器电路原理框图红外检测电路:采取脉冲式主动红外线检测电路,由红外发射二极管VD1和红外接收二极管VD2等组成。VD1在多谐振荡器驱动下发射332Hz方波脉冲调制红外线脉冲。因为在结构上VD1和VD2平行安装,指向相同,所以VD2并不能直接接收到VD1发出红外线脉冲。只有当手阻挡时,将VD1发出红外线脉冲反射回去,VD2才能接收到。采取方波脉冲调制发射红外信号,有利于提升检测电路灵敏度和抗干扰能力,并能够降低发射电路
19、功耗。VD1需要限流电阻。VD2需要负载电阻。峰值检波电路及整形:峰值检波电路由二极管和低通滤波串联而成。整形电路为LM324组成电压比较器,其作用是将整形电路输出方波信号变成触发脉冲。峰值检波电路关键点是阻容元件时间常数 远小于输入信号脉宽。完成样品和检测样品过程则需要两对红外对射管,比如:两对红外发射二极管分别为VD1 、VD3,两对红外接收二极管分别为 VD2、VD4,完成样品时,VD2比VD4先接收到红外线脉冲反射;检测样品时,VD4比VD2先接收到红外线脉冲反射。2.2.2 按键开关硬件:经过按键接低电平,“0”表示检验到一件物品,“1”表示为检验到物品。2.2.3 论证结果红外对管
20、:优点:实现完成样品和检测样品统计计件数目标自动识别,减轻工人工作负担,含有体积小、重量轻、灵敏度高、隐蔽性好等;缺点:探测器在日常工作中,因为长久工作,所以不可避免地受到大气中粉尘、微生物和雪、霜、雾作用,长久以往,在探测器外壁上往往会堆积一层粉尘样硬壳,在比较潮湿地方还会长出一层厚厚藓苔,这些东西会阻碍红外射线发射和接收,造成误报警,系统成本比较高、硬件电路复杂、调试复杂、反射感应距离有一定限制。键盘按键:优点:硬件电路简单,调试简单、控制方便、成本低;缺点:不能自动识别统计数目,需要工人按键才可完成。结论:总而言之,计件部分采取按键计数。2.3上位机下位机通信部分功效:以计算机为控制中心
21、数据监控自动化控制系统,使控制系统、监控系统能够充足利用计算机强大数据处理能力和管理功效,实现对数据传输、处理、存放,从而简化生产管理过程,使企业管理系统愈加完善、愈加强大、愈加完美;2.3.1无线蓝牙蓝牙技术系统结构分为三大部分:底层硬件模块、中间协议层和高层应用。图7所表示:图7 蓝牙技术系统结构硬件:蓝牙硬件模块由蓝牙协议栈无线收发器、基带控制器和链路管理层组成。包含无线跳频(RF)、基带(BB)和链路管理(LM)。无线跳频层经过2.4GHz无需授权ISM频段微波,实现数据位流过滤和传输,本层协议关键定义了蓝牙收发器在此频带正常工作所需要满足条件。基带负责跳频和蓝牙数据和信息帧传输。链路
22、管理负责连接、建立和拆除链路并进行安全控制。蓝牙技术结合了电路交换和分组交换特点,能够进行异步数据通信。(蓝牙模块芯片)无线蓝牙数据传输步骤图8所表示。图8 点对点链接步骤软件:中间协议层包含逻辑链路控制和适应协议、服务发觉协议、串口仿真协议和电话通信协议。逻辑链路控制和适应协议含有完成数据拆装、控制服务质量和复用协议功效,该层协议是其它各层协议实现基础。服务发觉协议层为上层应用程序提供一个机制来发觉网络中可用服务及其特征。串口仿真协议层含有仿真9针RS232串口功效。主机控制接口层(HCI)是蓝牙协议中软硬件之间接口,它提供了一个调用基带、链路管理、状态和控制寄存器等硬件统一命令接口。蓝牙设
23、备之间进行通信时,HCI以上协议软件实体在主机上运行,而HCI以下功效由蓝牙设备来完成,二者之间经过一个对两端透明传输层进行交互。蓝牙模块软件驱动技术包含硬件链路管理器驱动程序、主机控制接口(HOI)驱动程序。硬件链路管理器驱动程序和物理固件直接相连,提供USB/RS232或其它接口驱动功效。链路管理器驱动程序实现了链路管理协议(LMP),负责处理底层链路控制和蓝牙基带接口,该固件支持点对点和点对多点通信。HOI驱动程序依据HOI命令多种数据及参数格式,对HOI事件数据包进行处理。HOI为主机提供了访问微处 理器、链路管理器和硬件状态和控制寄存器多种命令接口。主机经过HOI驱动程序提供一系列命
24、令控制 蓝牙接口,蓝牙固件HOI收到命令后,会产生事件返回给主机,用来指示接口目前状态改变。主机和 HCI之间共有以下3种类型数据。1Hal命令包。从主机发向蓝牙HOI。2Hal事件包。从蓝牙HOI发向主机。3HOI数据包。能够从蓝牙HOI发向主机,也能够从主机发向蓝牙Hal。包含扩展同时连接导向数据和非实时异步无连接数据。图9 蓝牙软件程序步骤图蓝牙软件使用BlueStack编程,完成初始化、连接等功效。蓝牙软件程序步骤图9所表示。计算机和蓝牙设备采取异步串口通信,其由以下4个功效模块组成。1初始化模块。初始化蓝牙芯片和各状态变量,包含FO、中止寄存器和传输波特率等。2事务调度模块。依据蓝牙
25、芯片返回事件状态参数对系统事务进行调度,跳转到返回事件处理模块中。3返回事件处理模块;各个事件处理子程序分别对应不一样事件处。4中止模块;负责数据包和事件包接收和发送。2.3.2串口通信硬件:在工业控制系统中,多种数据采集和实施机构控制全部是由下位机或探测站来完成。在分布式控制系统中大多采取单片机作为下位机来进行数据采集和现场控制。在这些应用中,单片机只是直接面向被控对象底层,而对采集到数据进行深入分析和处理工作是由功效强大主控PC机来完成。所以,自动监控系统软件安装在上位机上,而通信程序作为自动监控系统软件一部分也安装在上位机上,PC机和单片机之间就有着大量数据交换。通常PC机和单片机之间通
26、信是经过串行总线RS-232实现,为免去RS-485和RS-232转化电路。所以采取一个以MAX232为关键通信接口电路。该接口电路适适用于由一台PC机和多个单片机串行通信设计,其原理和方法一样适适用于PC机和其它单片机之间串行数据通信。其原理框图见图10。图10 单片机和PC机通信原理框图串口通信中,起着关键作用是RS-232通信接口电路。它是上位机和下位机之间信息传输枢纽,一切数据传输必需由它完成,上位机直接利用它RS-232串行口,为此,采取了RS-232串行通信来接收或上传数据和指令。但RS-232信号电平和单片机串口信号电平不一致,必需进行二者之间电平转换。在此电路中,采取MAX23
27、2实现TTL逻辑电平和RS-232电平之间相互转换。 MAX232由单一+5V电源供电,只需配接5个高精度10F/50V电容即可完成电平转换。转换后串行信号TXD、RXD直接和PC机串行口连接。如此设计,既可发挥出PC机强大计算和显示功效,又能够表现出单片灵巧活控制功效,有利于对现场信号实时采集、处理和监控。软件:VB提供了串行端口控件Mscomm方便应用程序实现串行通讯,该控件屏蔽了通信过程中底层操作,程序员应用时只需设置、监视Mscomm控件属性和事件即可完成对串行口初始化和数据输入、输出工作。汇编语言是一个实施效率高、可读性强语言。为实现通讯正常,PC机和单片机约定以下:波特率:9600
28、bps;信息格式:1个起始位,8位数据位,1个停止位,无奇偶校验位;串行口操作模式:标准异步串行通信,串行口模式1;传送方法:PC机采取查询方法接收数据,单片机采取中止方法接收信息。2.3.3论证结果无线蓝牙:优点:蓝牙工作在全球开放2.4GHz ISM(即工业、科学、医学)频段;使用跳频频谱扩展技术,把频带分成若干个跳频信道(hop channel),在一次连接中,无线电收发器按一定码序列不停地从一个信道“跳”到另一个信道;一台蓝牙设备可同时和其它七台蓝牙设备建立连接;数据传输速率可达1Mbit/s;低功耗、通讯安全性好;在有效范围内可越过障碍物进行连接,没有尤其通讯视角和方向要求;支持语音
29、传输;组网简单方便;缺点:蓝牙是一个还没有完全成熟技术,尽管前景诱人,但还有待于实际使用严格检验,蓝牙通讯速率也不是很高,在当今这个数据爆炸时代,可能也会对它发展有所影响。现在主流软件和硬件平台均不提供对蓝牙支持,这使得蓝牙应用成本升高,普及难度增大,再加上ISM频段是一个开放频段,可能会受到诸如微波炉、无绳电话、科研仪器、工业或医疗设备干扰。串口通信:优点:单片机含有体积小、价格低廉、可应用于恶劣工业环境;系统硬件电路简单,通信协议轻易掌握,易学实用;缺点:不适适用于远距离传输,对电缆损耗大,故而要对电缆进行日常维护预防事故发生。结论:总而言之,上位机下位机通信部分采取串口通信。2.4 系统
30、总体设计模块图图11 系统总体设计模块图系统功效介绍:1. 接入电源,液晶屏显示,第一行显示“JobID:”,第二行显示“Sum: Time: ”;2. 第一步基础上,按动键盘“*”键时: 液晶显示器第一行显示“JobID:_”,下换线闪烁,提醒能够输入工号;3. 在第二步基础上,按动键盘按键,输入工号,工人工号随机组合,最终按“#”键确定,进入计件步骤。4. 在第三步基础上,假如工人工号输入错误,可直接按“*”键重新输入,再确定;5. 在第四步基础上,输入工号正确时:液晶第一行显示“JobID:*”,液晶第二行显示“Sum:0000 Time:00”;此时开始计件;6. 在第五步基础上,以后
31、按动代表计件按键时:液晶第二行“Sum:0000”显示内容加1;Sum增加值伴随按键次数增加,同时“Time:00”开始计算按键间隔时间;7. 在第六步基础上,若以后没有按键时:液晶第二行“Sum:*”不再增加,“Time:00”计数;若间断时间超出5s,蜂鸣器开始报警;8. 在第七步基础上,若再次按动计件按键时: 报警消除,同时Sum加1;假如没有按动计件按键,报警连续,同时Time统计报警时间;9. 在第八步基础上,当工人完成计件时: 再次按“*”键,清除目前数据,把数据传到上位机显示,下位工人可输入工号,开始工作。3 单元电路工作原理3.1 键盘扫描本系统采取非编码键盘,CPU必需对全部
32、按键进行监视,一旦发觉有键按下,CPU经过程序加以识别,并转入对应键处理程序实现该键被给予功效。硬件结构图13所表示:图13 键盘硬件电路1 判定是否有键按下 监视键盘是否按下,就是CPU将P1口置“11111110”,假如第一行有键按下,P1口高四位就不会再是原来“1111”,此时只需检测P1口高位四位电平改变,就可完成第一行键盘扫描过程。所以,将“0xfe”、“0xfd”、“0xfb”、“0xf7”,赋给P1口,在监视P1口高四位电平改变,就可完成键盘扫描过程。2 按键消抖硬件消抖:使用锁存器或施密特触发器整波。软件消抖:使用延时程序。在按键时,被安键簧片总会出现轻微抖动现象,此抖动时间通
33、常会连续10ms左右,所以CPU在按键抖动期间,扫描键盘肯定会得到错误行值和列值,最好措施是检测有键按下时,延时20ms在进行键值对比。3 读取按键行值和列值若CPU发觉有键按下,则需获取按键行值和列值。键值表如表1所表示。表1键值对照表(4*4键盘)行值 列值 按键 开关序号 行值 列值 按键 开关序号 0111 1110 7 S1 0111 1101 8 S50111 1011 9 S9 0111 0111 OFF S131011 1110 4 S2 0111 1101 5 S6 1011 1011 6 S10 1011 0111 WARN S141101 1110 1 S3 1101 1
34、101 2 S71101 1011 3 S11 1101 0111 S151110 1110 ON/C S4 1110 1101 0 S81110 1011 # S12 1110 0111 S16第一行键盘扫描程序步骤图14所表示,假如进行全盘扫描,则需将“0xfe”、“0xfd”、“0xfb”、“0xf7”,赋给P1口,在监视P1口高四位电平改变;假如进行部分扫描(有些行或列按键不影响液晶显示)时,就可无须每行或列全部检测,简化程序。图14 第一行键盘扫描步骤图3.2 液晶显示LCD1602显示原理:将液晶分子置于两片导电玻璃之间,靠两个电极间电场驱动,引发液晶分子扭曲向列电场效应,以控制光
35、源透射或遮蔽功效,在电源开关之间产生明暗而将影像显示,图15所表示。图15 液晶显示原理图 本设计中只用液晶写操作,图16所表示,液晶写数据(rs=1)、写命令(rs=0)操作时序图。图16 液晶写操作时序图 写命令指令用于液晶功效设置、清屏、显示开关控制、输入方法设置、数据写入地址设置等。 3.3串口通信本设计串口通信采取RS232串口通信标准,不采取TTL逻辑电平,用以提升信号抗干扰能力和增加传输距离。串口按位(bit)发送和接收字节。尽管比按字节(byte)并行通信慢,不过串口能够在使用一根线发送数据同时用另一根线接收数据。本设计采取异步通信:串口通讯基础方法之一。串口通信过程原理图17
36、所表示。图17 串口发送数据、接收数据步骤图串口发送数据时:键码值按ASCII码进入SBUF后,开始发送,将SBUF存入左移移位寄存器,根据先发送低位再发送高位进行次序传送。串口接收数据时:根据先接收低位后接收高位次序进入右移移位寄存器,一次接收完后以后,移位寄存器值存入SBUF,等候CPU使用。经典地,串口用于ASCII码字符传输。通信使用3根线完成:地线,发送,接收。因为串口通信是异步,端口能够在一根线上发送数据同时在另一根线上接收数据,通信中两个字符之间时间间隔是不固定,而在一个字符内各位时间间隔是固定。字符由起始位(start bit)、数据位(data bit)、奇偶校验位(pari
37、ty)和停止位(stop bit)组成。其它线用于握手,不过不是必需。串口通信最关键参数是波特率、起始位、数据位、停止位和奇偶校验。对于两个进行通行端口,这些参数必需匹配:1.波特率:对于数据传输,双方必需对数据定时采取使用相同波特率,此为衡量通信速度参数。它表示每秒钟传送bit个数。我们提到时钟周期就是指波特率,比如假如协议需要9600波特率,那么时钟是9600Hz。这意味着串口通信在数据线上采样率为9600Hz。波特率和距离成反比。高波特率常常见于放置很近仪器间通信。 2.起始位:由一位低电平表示一个字符开始,接收方可用起始位使自己接收时钟和数据同时。3.数据位:这是衡量通信中实际数据位参
38、数。当计算机发送一个信息包,实际数据不会是8位,标准值是5、7和8位。比如,标准ASCII码是0127(7位)。扩展ASCII码是0255(8位)。假如数据使用简单文本(标准ASCII码),那么每个数据包使用7位数据。每个包是指一个字节,包含开始/停止位,数据位和奇偶校验位。因为实际数据位取决于通信协议选择(串口工作方法选择)。 4.停止位:用于表示单个包最终一位。经典值为1,1.5和2位。因为数据是在传输线上定时,而且每一个设备有其自己时钟,很可能在通信中两台设备间出现了小小不一样时。所以停止位不仅仅是表示传输结束,而且提供计算机校正时钟同时机会。停止位位数越多,不一样时钟同时容忍程度越大,
39、不过数据传输率同时也越慢。 5.奇偶校验位:在串口通信中一个简单检错方法。有四种检错方法:偶、奇、高和低。当然没有校验位也是能够。对于偶和奇校验情况,串口会设置校验位(数据位后面一位),用一个值确保传输数据有偶数个或奇数个逻辑高位。高位和低位不真正检验数据,简单置位逻辑高或逻辑低校验。这么使得接收设备能够知道一个位状态,有机会判定是否有噪声干扰了通信或是否传输和接收数据是否不一样时。串口工作方法有四种,本设计采取串口工作方法1,一帧信息为10位。波特率设置9600。4 下位机电路实现4.1硬件仿真1.硬件仿真电路图18所表示:软件仿真硬件:用到了四行液晶显示,操作相当于两个LCD1602,同时
40、还用到了虚拟终端来观察串口输出数据是否正确,4*4键盘中等号相当于井号输入确定键,4*4键盘中除号相当于关机键,4*4键盘中乘号相当于设备工作异常报警键。多机串口通信过程:若要实现多机实时控制,PC机向单片机发送地址,各单片机检验是否PC机选择是自己,假如选择自己,就将发送标志位置“1”,匹配下位机发送完数据后,发送标志位清零,这么确保了一段时间间隔内PC机只和一个单片机进行通信,能够预防接收到别下位机发送数据造成数据传输错误和混乱,而PC机需在短时间间隔内,不停循环发送全部下位机地址,并为确保其PC机采样过快,下位机还没来得及发送,它就选择了别下位机,处理方法是可使单片机发送数据同时将此单片
41、机地址也一起发送。 图18 硬件仿真图2. 硬件仿真结果图19所表示:图19 硬件仿真图结论:满足系统功效简述中要求(见第14页),串口工作正常,N位数时,发送N位数据,发送接收数据对照表如表2所表示。表2 串口发送虚拟终端接收对照表串口发送 虚拟终端接收 串口发送 虚拟终端接收 0 80 1 81 2 82 3 834 84 5 856 86 7 878 88 9 894.2系统调试软件仿真调试:本设计采取波特率和PC机一致,8为数据位,没有奇偶校验位,1位停止位。1.软件仿真时,为了观察发送数据情况,需将发送标志位置“1”,烧录程序时,再将其置为“0”。2.假如开始时,虚拟终端没法应,首先检验波特率、传输数据格式设置。图20所表示,进行虚拟终端设置,然后在仿真软件运行时,左键虚拟终端“Virtual Terminal”,弹出“Virtual Terminal”显示界面,左键勾选“Hex Display Mode”设置虚拟终端结果显示模式即可。图20 Virtual Terminal属性设置硬件调试:1液晶不显示问题:因为液晶背光调整电阻设置不妥,调整其滑动变阻器即可。2串口工作调试:硬件搭建好后,先检验串口接地、发送、接收接口电路;使用现成串口测试软件,测试串口发送数据是否正确;