串口通信技术的实现单片机课程设计
51单片机串行课程设计

51单片机串行课程设计一、课程目标知识目标:1. 学生能理解51单片机的基本原理和结构,掌握串行通信的基本概念和原理;2. 学生能掌握51单片机串行口编程方法,包括串行通信协议的设置和数据的发送与接收;3. 学生能了解并运用51单片机串行通信接口进行简单的实际应用。
技能目标:1. 学生能够运用所学知识,编写简单的51单片机串行通信程序;2. 学生能够利用调试工具对串行通信程序进行调试和故障排查;3. 学生能够通过小组合作,完成一个基于51单片机串行通信的综合性项目。
情感态度价值观目标:1. 学生通过课程学习,培养对单片机及电子技术的兴趣和热情;2. 学生在学习过程中,养成积极思考、主动探究的良好学习习惯;3. 学生通过小组合作,培养团队协作精神,增强沟通与表达能力;4. 学生能够认识到电子技术在实际应用中的重要性,激发对科技创新的热情。
课程性质:本课程为实践性较强的课程,旨在帮助学生将所学的51单片机知识与实际应用相结合,提高学生的动手能力和编程技能。
学生特点:学生为初中或高中年级,具备一定的电子技术基础和编程能力,对单片机有一定了解。
教学要求:注重理论与实践相结合,强调动手实践,鼓励学生主动思考、提问和解决问题,培养学生团队协作能力和创新能力。
通过本课程的学习,使学生能够将所学知识应用于实际项目中,提高解决实际问题的能力。
二、教学内容1. 51单片机基础回顾:包括51单片机的结构、工作原理、寄存器等基础知识,重点复习串行口相关寄存器的作用和使用方法。
2. 串行通信原理:介绍串行通信的基本概念、通信协议、波特率的设置等,使学生理解数据是如何通过串行口进行发送和接收的。
3. 串行口编程:详细讲解51单片机串行口的编程方法,包括初始化程序编写、发送接收程序编写,以及常见错误分析。
- 教材章节:第三章《51单片机串行口及应用》- 列举内容:串行口初始化、发送接收程序、中断处理等。
4. 实践操作:设计一系列实践操作,如串行通信程序的编写、调试与运行,使学生能够将理论知识应用到实践中。
单片机单片机课程设计-双机串行通信

单片机单片机课程设计-双机串行通信单片机课程设计双机串行通信在当今的电子信息领域,单片机的应用无处不在。
而双机串行通信作为单片机系统中的一个重要环节,为实现设备之间的数据交换和协同工作提供了关键的技术支持。
一、双机串行通信的基本原理双机串行通信是指两个单片机之间通过串行接口进行数据传输的过程。
串行通信相较于并行通信,具有线路简单、成本低、抗干扰能力强等优点。
在串行通信中,数据是一位一位地按顺序传输的。
常见的串行通信协议有 UART(通用异步收发器)、SPI(串行外设接口)和 I2C(内部集成电路)等。
在本次课程设计中,我们主要采用 UART 协议来实现双机串行通信。
UART 协议包括起始位、数据位、奇偶校验位和停止位。
起始位用于标识数据传输的开始,通常为逻辑 0;数据位可以是 5 位、6 位、7 位或 8 位,具体取决于通信双方的约定;奇偶校验位用于检验数据传输的正确性,可选择奇校验、偶校验或无校验;停止位用于标识数据传输的结束,通常为逻辑 1。
二、硬件设计为了实现双机串行通信,我们需要搭建相应的硬件电路。
首先,每个单片机都需要有一个串行通信接口,通常可以使用单片机自带的UART 模块。
在硬件连接方面,我们将两个单片机的发送端(TXD)和接收端(RXD)交叉连接。
即单片机 A 的 TXD 连接到单片机 B 的 RXD,单片机 B 的 TXD 连接到单片机 A 的 RXD。
同时,还需要共地以保证信号的参考电平一致。
此外,为了提高通信的稳定性和可靠性,我们可以在通信线路上添加一些滤波电容和上拉电阻。
三、软件设计软件设计是实现双机串行通信的核心部分。
在本次课程设计中,我们使用 C 语言来编写单片机的程序。
对于发送方单片机,首先需要对 UART 模块进行初始化,设置波特率、数据位、奇偶校验位和停止位等参数。
然后,将要发送的数据放入发送缓冲区,并通过 UART 发送函数将数据一位一位地发送出去。
对于接收方单片机,同样需要对 UART 模块进行初始化。
单片机串口通信设计方案

单片机串口通信设计方案
一、硬件设计
1.选择串口通信芯片:单片机通常会集成UART串口,因此可以直接
使用单片机自带的串口;如果需要拓展多个串口通信,可以选择对应的芯片,如常用的MAX232芯片。
3.选择通信线缆和接口:通信线缆主要有串口线缆和USB转串口线缆
两种,根据实际需要选择合适的线缆,并与单片机的串口进行连接。
二、软件设计
1.串口初始化设置:在单片机的程序中,需要对串口进行初始化设置,包括波特率、数据位、停止位、校验位等的设置。
2. 数据发送与接收:单片机通过串口发送数据到外部设备,或从外
部设备接收数据,可以利用单片机的串口发送和接收函数实现数据的传输,如使用C语言中的printf和scanf函数。
3.建立通信协议:在通信过程中,为了保证数据的正确传输,可以设
计一套通信协议,包括定义数据包的格式、帧头和帧尾的标识等,以便于
数据的解析和处理。
4.错误处理:在通信过程中,可能会遇到噪声、丢包等问题,因此需
要设置错误处理机制,如重传或重新发送等,以保证数据的可靠性。
5.中断处理:单片机可以通过串口中断来实现异步通信,当有数据接
收时,触发中断,从而及时处理接收到的数据,提高系统的响应速度。
总结:
单片机串口通信的设计方案主要包括硬件设计和软件设计两个方面。
硬件设计主要涉及串口芯片的选择、通信波特率的确定以及通信线缆和接口的选择。
软件设计方面包括串口的初始化设置、数据的发送与接收、通信协议的建立、错误处理和中断处理。
通过合理的设计方案,可以实现单片机与外部设备之间的数据交互,提高系统的功能和性能。
单片机双机串口通信课程设计

单片机双机串口通信课程设计一、课程设计意义单片机双机串口通信是电子信息类专业中的一门基础课程,包括数据传输原理、串口通信协议等知识点,对于学生的PCB设计、嵌入式系统开发等方向的学习和深入研究都具有非常重要的作用。
通过本课程的设计,学生将能够系统地掌握串口通信技术的原理和实现方法,从而为后续相关课程的学习打下坚实的基础。
二、课程设计步骤1、理论知识讲授首先,需要对串口通信的基本概念、串口的物理接口、RS232、RS485等通信协议及其实现原理进行讲解,学生需要认真记录相关知识点,为后续的实验操作打下基础。
2、实验前准备为了进行单片机双机串口通信实验,需要准备单片机开发板、双机串口通信线、USB转串口模块、连接线等工具。
学生需要根据实验指导书上的引导,仔细按照需求准备好所需要的工具,并理清各项连接关系。
3、实验操作实验是本课程的重头戏,学生需要通过实验来巩固自己所学的相关知识。
在实验过程中,学生需要详细阅读实验指导书,并按照指导书上的步骤完成整个实验过程。
实验完成后,需要仔细分析实验结果,确认实验结果是否正确。
4、实验报告实验完成后,学生需要根据实验结果撰写实验报告,报告需要包括实验过程、实验结果分析、实验总结等内容。
报告需要清晰明了,文本内容清晰、简洁明了,图表简洁、清晰,规范地描写出整个实验过程,总结实验结果,以保证实验教学的质量。
三、课程效果评估通过老师的教学和学生的自主学习,学生能够达到掌握单片机双机串口通信的基本概念和实现方法的目标。
同时,在这个过程中,学生也能够提高实验操作的能力和数据分析的能力,为他们日后的学习和研究打下基础。
单片机串口通信课程设计

目录摘要 (I)1 基本原理 (1)1.1串行通信 (1)1.2 数码管动态显示 (1)1.3定时器 (1)1.4 LCD1602 (2)2 设计过程 (3)2.1设计思路 (3)2.2电路图 (4)2.3 流程图 (6)3程序代码 (7)3.1主程序 (7)3.2 串口通信程序 (9)3.3 数码管显示 (10)3.4 定时程序 (12)4 运行结果 (13)5 心得体会 (16)参考文献 (17)课程设计任务书学生姓名:专业班级:指导教师:工作单位:题目: PC和单片机的串行双工通信初始条件:具备单片机原理的理论知识和实践能力;熟悉51单片机的CPU 结构和指令系统;熟悉相关常用接口电路的设计使用方法。
要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1)利用串口设计4位静态数码管显示器,要求4位显示器上每隔1s交替显示“0123”和“4567”。
2)完成PC和单片机的串行双工通信,单片机的P1口接一共阴极数码管,阴极接地。
要求PC键盘每按“0~9”数字键能发送到单片机,并显示在单片机接的数码管上,单片机发送一串字符串能显示在PC的屏幕上,采用查询方式。
波特率为1200。
时间安排:一周,其中2天程序设计,2天程序调试,1天完成课程设计报告书及答辩指导教师签名:年月日系主任(或责任教师)签名:年月日摘要本设计运用51单片机设计了一个能和PC进行全双工通信的程序,能由单片机向PC 发送字符串,当按PC上的数字键时,能在单片机上的数码管上显示相应数字,并且单片机的其他数码管能每隔1s交替显示0123和4567还扩展了用lcd1602显示来自PC端的任意字符,并能统计和显示发送和接受的字符数。
程序采用C语言分模块编写,并用proteus 仿真通过。
关键词:单片机;串行通信;数码管1 基本原理1.1串行通信单片机的串行通信使用的是异步串行通信。
串行接口电路为用户提供了两个串行口缓冲寄存器(SBUF),一个称为发送缓存器,它的用途是接收片内总线送来的数据,即发送缓冲器只能写不能读。
串口 单片机课程设计

目录一、任务设计:--------------------------------------------------------------- 21、设计任务:----------------------------------------------------------------------------------------------------------------------------22、设计要求:----------------------------------------------------------------------------------------------------------------------------2二、器件选择------------------------------------------------------------------ 21通信部分----------------------------------------------------------------------------------------------------------------------------------22.显示部分:---------------------------------------------------------------------------------------------------------------------------------23.数字时钟: ------------------------------------------------------------------------------------------------------------------------------34.温度采集: ------------------------------------------------------------------------------------------------------------------------------35.机电部分 --------------------------------------------------------------------------------------------------------------------------------3三、总体方案:--------------------------------------------------------------- 41.工作原理:---------------------------------------------------------------------------------------------------------------------------------42.总体设计:---------------------------------------------------------------------------------------------------------------------------------4四、系统硬件设计(单元电路设计及分析): ------------------------ 41.AT89C51单片机最小系统:------------------------------------------------------------------------------------------------------42.温度测量模块: --------------------------------------------------------------------------------------------------------------------------53.时钟模块:---------------------------------------------------------------------------------------------------------------------------------64.LCD液晶显示模块: ----------------------------------------------------------------------------------------------------------------65.串口部分:---------------------------------------------------------------------------------------------------------------------------------76.LED数码管显示模块: ---------------------------------------------------------------------------------------------------------------86.机电部分:---------------------------------------------------------------------------------------------------------------------------------87.整体电路: ------------------------------------------------------------------------------------------------------------------------------9五、系统软件设计流程如图9所示:------------------------------------11六、程序:--------------------------------------------------------------------11七、多功能数字时钟使用说明: --------------------------------------- 13八、设计心得体会: ------------------------------------------------------ 14九、参考资料---------------------------------------------------------------- 15串口通信综合设计摘要:本设计采用LCD液晶屏幕显示和LED数码管显示系统,以AT89C51单片机为核心,由PC机COM口远程控制、温度采集、步机控制、时间的显示等功能模块组成。
串口通信课程设计(微机原理课程设计)
SerialPort serialPort = (SerialPort)serialPortobj; System.Threading.Thre源自d.Sleep(500); try {
三、实验步骤
1、打开 Visual Studio 2008,新建C# Windows窗体应用程序项目 2、设计界面,添加界面元素 3、为各个控件设置事件响应代码 4、调试并完成程序
四、设计的控制界面及其操作
设计的控制界面如下所示: 通过“串口设置”可以选择串口、设置帧格式、打开及关闭串口等 通过“状态”可以查看串口状态、发送的数据帧数和接受的数据帧数 在“发送数据”窗口中输入内容,点击“发送”,即把数据发送给对方 在“数据显示”窗口中会显示接受的数据
//开启接收数据线程 ReceiveData(serialPort1); }
private void SendStringData(SerialPort serialPort1) {
serialPort1.Write(txtSend.Text); //发送数据帧加1 lbSendNum.Text = (int.Parse(lbSendNum.Text.Trim()) + 1).ToString(); }
串行通信控制
理学院
一、实验目的
1、掌握串行通信的原理和控制方法。 2、采用三线连接方法,编程控制,实现两台微机异步串行通信。
二、实验原理
1、串口通信连接 本次实验使用了 RS-232C 接口,其标准规定有25根连线,在一般的 微机通信中,只有9个信号经常使用,它们的引脚定义如下表和图所 示:
单片机指令的串口通信实现方法
单片机指令的串口通信实现方法串口通信是指通过串行通信接口实现的数据传输方式。
在单片机系统中,串口通信是一种重要的通信方式,可以实现与外部设备(如PC 机、传感器等)的数据交互。
本文将介绍单片机指令的串口通信实现方法,包括硬件连接和软件编程两方面。
一、硬件连接串口通信需要通过发送器和接收器两个设备来完成数据的发送和接收。
在单片机系统中,可使用通用异步收发器(UART)作为串行通信接口。
下面是串口通信的硬件连接步骤:1. 将单片机与UART连接:首先,确保单片机具有UART接口,并根据其引脚定义将UART的发送线(TXD)连接到单片机的接收引脚,接收线(RXD)连接到单片机的发送引脚。
2. 选择波特率:波特率指每秒钟传送的位数,通常使用的波特率有9600、115200等。
在发送和接收数据时,单片机和外部设备需要使用相同的波特率,以保证数据的正确传输。
3. 连接外部设备:根据实际需求,将UART的发送线和接收线分别连接到外部设备的接收引脚和发送引脚。
二、软件编程实现单片机指令的串口通信需要编写相应的软件程序。
下面是基于C语言的软件编程实现方法:1. 初始化串口:在程序开始时,需要对串口进行初始化设置。
通过设置寄存器来配置波特率、数据位、停止位等参数。
2. 发送数据:使用发送指令将待发送的数据写入UART的数据寄存器,等待数据传输完成。
3. 接收数据:通过接收指令读取UART接收到的数据,并进行相应的处理。
可以使用中断或轮询方式进行数据接收。
4. 错误处理:在数据传输过程中,可能会出现错误,例如帧错误、奇偶校验错误等。
需要进行相应的错误处理操作,例如重新发送数据或发出错误提示。
5. 通信协议:根据通信需求,可以制定相应的通信协议。
通信协议包括数据帧结构、数据格式、数据校验等内容,用于确保数据的可靠传输。
三、实例演示下面通过一个简单的示例来演示单片机指令的串口通信实现方法。
假设我们需要实现从单片机向PC机发送一条消息,并接收PC机返回的确认信息。
单片机单片机课程设计报告-双机串行通信
基于51单片机的双机串行通信设计【摘要】串行通信是单片机的一个重要应用。
本次课程设计就是要利用单片机来完成一个系统,实现双片单片机串行通信。
通信的结果实用数码管进展显示,数码管采用查表方式显示。
两个单片机之间采用RS232进展双机通信。
在通信过程中,使用通信协议进展通信。
【关键字】51单片机,串行通信,接口一、总体设计1.设计要求:两片单片机之间进展串行通信,发送端将0~f循环发送到接收端,并在接收端显示。
2.设计方案:本次设计,对于两片89C51,采用RS232进展双机通信。
发送方的数据由串行口TXD 段输出,经过电平转换芯片MAX232将TTL电平转换为RS232电平输出,经过传输线将信号传送到接收端。
接收方也使用MAX232芯片进展电平转换后,信号到达接收方串行口的接收端。
承受方接收后,在数码管上显示接收的信息。
为提高抗干扰能力,还可以在输入输出端加光耦合进展光电隔离。
软件局部,通过通信协议进展发送接收,主机先送AAH给从机,当从机接收到AAH 后,向主机答复BBH。
主机收到BBH后就把数码表TAB[16]中的10个数据送给从机,并发送检验和。
从机收到16个数据并计算接收到数据的检验和,与主机发送来的检验和进展比拟,假设检验和一样那么发送00H给主机;否那么发送FFH给主机,重新承受。
从机收到16个正确数据后送到一个数码管显示。
二、硬件设计1.51单片机串行通信功能图1.AT89C51计算机与外界的信息交换称为通信,常用的通信方式有两种:并行通信和串行通信。
51单片机用4个接口与外界进展数据输入与数据输出就是并行通信,并行通信的特点是传输信号的速度快,但所用的信号线较多,本钱高,传输的距离较近。
串行通信的特点是只用两条信号线〔一条信号线,再加一条地线作为信号回路〕即可完成通信,本钱低,传输的距离较远。
51单片机的串行接口是一个全双工的接口,它可以作为UART〔通用异步承受和发送器〕用,也可以作为同步移位存放器用。
基于单片机的串口通信模块设计
基于单片机的串口通信模块设计
一、背景
基于单片机的串口通信模块是现在最常用的通信技术之一、它是一种常见的无线传输技术,利用串口通信模块可以快速传输大量的信息,减少数据传输时间。
串行技术的性能有很大的提高,不仅仅可传输单个字符,还可以传输字符串,实现点对点的串口通信。
二、基本原理
串口通信模块基于单片机的设计,是一种总线式的数据传输方式,通过共享的串口数据线来进行通信,可以实现多设备之间的快速数据传输。
串口模块通常是模拟的,它对接收到的信号进行解码,然后将数据放入的串行总线上,并将其发送到目标设备。
控制对象在接收到数据后,控制板会将所有的控制信号装入串口总线中,最后将开关量的控制信号转换为目标设备的控制信号,实现了两设备之间的通信。
三、串口模块的设计
1.串口通信模块的设计首先需要选择合适的单片机,单片机要求数据传输率足够高,同时有足够的外设接口,能够满足多种应用场景的需求。
2.电路设计要求尽量不要增加多余的外设,并且考虑到硬件可靠性,如电源电路要采用高效率的电源设计,数据线的板载电感要求周围有足够的空间;串口数据线要求可靠性高,考虑到信号的丢失。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 单片机简介如果将8位单片机的推出作为起点,那么单片机的发展历史大致可分为以下几个阶段。
第一阶段(1976-1978):单片机的控索阶段。
以Intel公司的MCS –48为代表。
MCS – 48的推出是在工控领域的控索,参与这一控索的公司还有Motorola 、Zilog等,都取得了满意的效果。
这就是SCM的诞生年代,―单机片‖一词即由此而来。
第二阶段(1978-1982)单片机的完善阶段。
Intel公司在MCS – 48 基础上推出了完善的、典型的单片机系列MCS –51。
第三阶段(1982-1990):8位单片机的巩固发展及16位单片机的推出阶段,也是单片机向微控制器发展的阶段。
Intel公司推出的MCS – 96系列单片机,将一些用于测控系统的模数转换器、程序运行监视器、脉宽调制器等纳入片中,体现了单片机的微控制器特征。
随着MCS –51系列的广应用,许多电气厂商竞相使用80C51为内核,将许多测控系统中使用的电路技术、接口技术、多通道A/D转换部件、可靠性技术等应用到单片机中,增强了外围电路路功能,强化了智能控制的特征。
第四阶段(1990—):微控制器的全面发展阶段。
随着单片机在各个领域全面深入地发展和应用,出现了高速、大寻址范围、强运算能力的8位/16位/32位通用型单片机,以及小型廉价的专用型单片机。
2硬件设计2.1 整体设计在PC系统中都装有异步通信适配器,利用它可以实现异步串行通信。
适配器的核心元件是可编程的intel8251芯片,它使PC有能力与其他具有RS-232标准的接口的计算机或设备进行通信,而MCS-51单片机本身具有一个双全工的串行口,因此只要配上电平转换电路就可以和RS-232接口组成一个简单的通信通道。
简单的PC与单片机通信只要3根线就可以了,单片机的TXD、RXD 与PC的RXD、TXD分别相连,连接地线。
由于51系列单片机的串行口使用的是TTL电平,因此在PC和单片机间要有RS-232电平转换电路,图1所示为PC与单片机的通信图。
89C51 TXD232电平转换RXD2串行口PC RXD RXD3GND GND5图2.1 PC机与单片机的通信图2.2 单片机选择2.2.1 AT89C51AT89C51是美国ATMEL公司生产的低电压,高性能的CMOS8位单片机。
片内4Kbytes的可反复擦写的只读程序存储器(PEROM)和128bytes 的随机存储器(RAM),器件采用ATMEL公司的高密度、非易失存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大。
AT89C51单片机可为提供许多高性价的应用场合,可灵活的应用于各种控制领域。
图2.2.1 单片机AT89C512.2.2 AT89C51功能特性描述AT89C51提供以下标准功能:4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量中断结构,一个全双工串行通信口,片内震荡器及时钟电路。
同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件的可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,窜行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但震荡器停止工作并禁止所有部件工作直到下一个硬件复位。
2.2.3 AT89C51引脚功能说明Vcc:电源电压GND:地P0口:PO口是一组8位漏极开路行双向I/O口,也既地址/数据总线复用口。
P1口:P1口是一个内部上拉电阻的8位双向I/O口,P1的输入缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
P2口:P2口是一个带有内部上拉电阻的8位双向I/O口,P3口:P3口是一组带有内部上拉电阻的8位双向I/O口,,P1的输入缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
RST:复位输出。
当震荡器工作时,RST引脚出现两个机器周期以上高电平使机器复位。
ALE/PROG当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节,即使不访问外部字节,ALE 仍时钟震荡频率的1/6输出固定的正脉冲信号,因此它可对外输出时钟脉冲或用于定时目的。
PSEN:程序存入允许(PSEN)输出的是外部程序存储器的读选通信号。
EA/VPP:外部访问允许。
·XTAL1:震荡器反向放大器及内部时钟的输入端。
XAAL2:震荡器反向放大器的输出端。
2.2.4 AT89C51的串行接口AT89C51单片机内部有一个全双工的串行接收和发射缓冲器(SBUFF),这两个在物理上独立的接收发射器,即可以接收也可以发射数据,但接收缓冲器只可以读出不能写入,而发送缓冲器只能写入不能读出,它们的地址是99H。
这个通信口即可以用于网络通信,亦可以实现串行异步通信,还可以构成同步移位寄存器使用。
如果在串行口的输入输出引脚上加上电平转换器,就可以方便的构成标准的RS-232接口。
SBUF为串行口的收发缓冲器,它是一个可寻址的专用寄存器,其中包含了接收器和发射器寄存器,可以实现全双工通信。
但这两个寄存器具有同一地址(99H)。
MCS-51的串行数据传输很简单,只要向缓冲器写入数据就可发送数据。
而从接收缓冲器读出数据既可接收数据。
SCON控制寄存器,它是一个可寻址的专用寄存器,用于串行数据通信的控制,单元地址是98H,其结构格式如下:表1 寄存器SCON结构SCON D7 D6 D5 D4 D3 D2 D1 D0SM0 SM1 SM2 REN TB8 RB8 TI RI位地址9FH 9EH 8DH 9CH 9BH 9AH 99H 98H图2.2.4.1 SCON寄存器结构特殊功能寄存器PCON,主要是CHMOS型单片机的电源控制而设置的专用寄存器,单元地址为87H其机构格式如下表:PCON D7 D6 D5 D4 D3 D2 D1 D0 位符号SMOD GF1 GF0 PD IDL图2.2.4.2 特殊功能寄存器PCON2.2.5 串行口工作方式的选择波特率(Boud Rate)就是在串口通信中每秒能够发送的位数。
MSC-51串行端口在四种工作模式下有不同的波特率计算方法。
其中,模式0和模式2波特率计算很简单;模式1和模式3的波特率选择相同,故在此仅以工作模式1为例来说明串口通信波特率的选择。
在串行端口工作于模式1,其波特率将由计时/计数器1来产生,通常设置定时器工作于模式2(自动再加模式)。
在此模式下波特率计算公式为:波特率=(1+SMOD)*晶振频率/(384*(256-TH1))其中,SMOD——寄存器PCON的第7位,称为波特率倍增位;TH1——定时器的重载值。
在选择波特率的时候需要考虑两点:首先,系统需要的通信速率。
这要根据系统的运作特点,确定通信的频率范围。
然后考虑通信时钟误差。
使用同一晶振频率在选择不同的通信速率时通信时钟误差会有很大差别。
为了通信的稳定,我们应该尽量选择时钟误差最小的频率进行通信。
2..3、RS-232简介2.3.1 RS-232电平转换器—MAX232图2.3.1 RS-232电路RS-232规定了自己的电气标准,由于它是在TTL电路之前研制的,因此它的电平不是+5V和地,而是采用负逻辑,即逻辑“0”:+5V~—5V,逻辑“1”:—5V~—15V。
因此RS-232不能和TTL电平直接相连,必须进行电平转换。
本设计选用MAX232。
管脚说明如下①C0+、C0-、C1+、C1-是外接电容端;②R1IN、R2IN是2路RS-232C电平信号接收输入端;③RlOUT、R2OUT是2路转换后的TTL电平接收信号输出端,送8051的RXD接收端;④TlIN、T2IN是2路TTL电平发送输入端,接8051的TxD发送端;⑤TlOUT、T2OUT是2路转换后的发送RS-232C电平信号输出端,接传输线;⑥V+经电容接电源+5V;⑦V-经电容接地。
2.3.2 RS-232的接口信号RS-232规标准接口有25条线,4条数据线、11条控制线、3条定时线、7条备用和未定义线。
常用的只有9根,它们是:2个数据信号:发送TXD;接收RXD。
1个信号地线:SG。
6个控制信号:DSR;数传机(即modem)准备好,Data Set Ready.DTR;数据终端(DTE,即微机接口电路,如Intel8250/8251,16550)准备好,Data Terminal Ready。
RTS;DTE请求DCE发送(Request To Send)。
CTS;DCE允许DTE发送(Clear To Send),该信号是对RTS信号的回答。
DCD;数据载波检出,Data Carrier Detection当本地DCE设备(Modem)收到对方的DCE设备送来的载波信号时,使DCD有效,通知DTE准备接收,并且由DCE将接收到的载波信号解调为数字信号,经RXD线送给DTE。
RI;振铃信号Ringing当DCE收到交换机送来的振铃呼叫信号时,使该信号有效,通知DTE已被呼叫。
3 数码显示管要用单片机构成发射机,就需要一个人机界面。
常采用的方式是LED 数码管显示测试结果,用一个小键盘执行某些功能,如请零、预置值、改变测量范围等。
3.1LED显示器的工作原理LED显示是用发光二极管显示字段的显示器件,也可称为数码管,其外形结构如图所示,由图可见它由8个发光二极管构成,通过不同的组合可用来显示0~9、A~F及小数点。
图3.1.1 “8”字型数码管LED显示器分为共阴极和共阳极,共阴极是将8个发光二极管阴极连接在一起作为公共端,而共阳极是将8个发光二极管的阳极连接在一起作为公共端。
我们这次就是采用的共阳极LED,所以这里要介绍共阳极数码管。
如图所示,LED显示器有静态和动态显示两种方式,静态显示是将共阴极联到一起接地,每位的显示段(a-dp)分别与一个8位的锁存器输出相连。
由于显示的各位可以相互独立,各位可以互相显示,只要在该位的段选线上保持段选码电平,该位就能保持相应的显示字符。
并且由于各位由一个8位锁存器控制段选线,故在同一时间内每一位显示的字符可以不同。
段码D7DP D6gD5fD4eD3dD2cD2bD0a字形3FH 0 0 1 1 1 1 1 1 0 06H 0 0 0 0 0 0 1 0 1 5BH 0 1 0 1 1 0 1 1 2 4FH 0 1 0 0 1 1 1 1 3 66H 0 1 1 0 0 1 1 0 4 6DH 0 1 1 0 1 1 0 1 5 7DH 0 1 1 1 1 1 0 1 6 07H 0 0 0 0 0 1 1 1 7 7FH 0 1 1 1 1 1 1 1 8 6FH 0 1 1 0 1 1 1 1 977H 0 1 1 1 0 1 1 1 a 7CH 0 1 1 1 0 1 1 1 b 39H 0 0 1 1 1 0 0 1 c 5EH 0 1 0 1 1 1 1 0 d 79H 0 1 1 1 1 0 0 1 e 71H 0 1 1 1 0 0 0 0 f图3.1.2 段码与字型的关系这种方式占用锁存器较多。