欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    PC机与单片机串行通信.docx

    • 资源ID:8967053       资源大小:275.09KB        全文页数:27页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    PC机与单片机串行通信.docx

    1、PC机与单片机串行通信 郑州航空工业管理学院单片机原理与应用课程设计说明书 07 级 电气工程及其自动化 专业 0706071 班级题 目 单片机和计算机的串行通信 姓 名 赵彬植 学号 * 指导教师 职称 二 年 月 日课 程 设 计 任 务 书摘要: 单片机由于性价比高、使用灵活等优点而广泛应用于各种电子系统、自动控制系统,但是存储容量小。处理的数据量不大。为了克服这一缺点,可以将单片机连接到PC机上,由单片机采集数据,然后将数据汇总到PC机,再进行各种数据处理。单片机与PC机之间的通讯是其中的关键技术之一,PC机与单片机间一般采用的是串行通信,由于51系列单片机中一般集成了双全工的串行端

    2、口,只要配以电平转换的驱动电路、隔离电路就可组成一个简单可行的通信接口。关键词:pc机、MCS-51单片机、RS-232接口、串行通信 一、课程设计的目的 二、课程设计具体要求 三、单片机发展简史 四、硬件设计及MCS-51单片机系统和RS-232接口简介 五、软件编程(包括程序流程和程序代码) 六、实验总结 七、参考文献一、课程设计的目的 串行通信技术是单片机系统开发中常用的技术之一,串行口也是单片机常规内部集成的功能。设计PC机与单片机进行串行通信硬件电路及软件流程,本设计通过定时器来设定通信的波特率,通过设置几个寄存器来设定工作方式。PC机与单片机之间则由RS-232C接口相连。1 进一

    3、步熟悉和掌握单片机的结构及工作原理。2 掌握单片机的接口技术及相关外围芯片的外特性,控制方法。3 通过课程设计,掌握以单片机核心的电路设计的基本方法和技术,了解有关电路参数的计算方法。4 通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。5 通过完成一个包括电路设计和程序开发的完整过程,使学生了解开发一单片机应用系统的全过程,为今后从事相应的工作打下基础 二、课程设计具体要求 1、查阅资料,学习PC与 一个或多个单片机串口通信设计;2、硬件设计,给出原理框图,并简要介绍各组成部分;3、软件设计,给出程序流程图和程序清单,并说明各部分程序要实现;4、总结,结出结论 三、单片机发展简史

    4、 如果将8位单片机的推出作为起点,那么单片机的发展历史大致可分为以下几个阶段(1)第一阶段(1976-1978):单片机的控索阶段。以Intel公司的MCS 48为代表。MCS 48的推出是在工控领域的控索,参与这一控索的公司还有Motorola 、Zilog等,都取得了满意的效果。这就是SCM的诞生年代,“单机片”一词即由此而来。(2)第二阶段(1978-1982)单片机的完善阶段。Intel公司在MCS 48 基础上推出了完善的、典型的单片机系列MCS 51。(3)第三阶段(1982-1990):8位单片机的巩固发展及16位单片机的推出阶段,也是单片机向微控制器发展的阶段。Intel公司推

    5、出的MCS 96系列单片机,将一些用于测控系统的模数转换器、程序运行监视器、脉宽调制器等纳入片中,体现了单片机的微控制器特征。随着MCS 51系列的广应用,许多电气厂商竞相使用80C51为内核,将许多测控系统中使用的电路技术、接口技术、多通道A/D转换部件、可靠性技术等应用到单片机中,增强了外围电路路功能,强化了智能控制的特征。(4)第四阶段(1990):微控制器的全面发展阶段。随着单片机在各个领域全面深入地发展和应用,出现了高速、大寻址范围、强运算能力的8位/16位/32位通用型单片机,以及小型廉价的专用型单片机。 四、硬件设计 1、整体设计在PC系统中都装有异步通信适配器,利用它可以实现异

    6、步串行通信。适配器的核心元件是可编程的intel8251芯片,它使PC有能力与其他具有RS-232标准的接口的计算机或设备进行通信,而MCS-51单片机本身具有一个双全工的串行口,因此只要配上电平转换电路就可以和RS-232接口组成一个简单的通信通道。简单的PC与单片机通信只要3根线就可以了,单片机的TXD、RXD与PC的RXD、TXD分别相连,连接地线。由于51系列单片机的串行口使用的是TTL电平,因此在PC和单片机间要有RS-232电平转换电路,图1所示为PC与单片机的通信图。图1 PC机与单片机的通信图2、MCS-51单片机系统(1)MCS-51单片机1MCS-51单片机内部具有一个采用

    7、UART工作方式的全双工的串行通信接口。该接口不仅可以同时进行数据的接受和发送,也可以作为同步移位寄存器使用。该接口有4种工作方式,其中字符格式有8位、10位、11位,并可以以不同的波特率工作。1串行口的内部结构MCS-51单片机的串行接口结构如图2所示:图2 MCS-51单片机的串行接口图该接口有两根串行通信传输线RXD(P3.0)和TXD(P3.1),以串行形式与外部逻辑接口。数据的接收和发送就是通过这两根信号线来实现的。在物理上存在两个互相独立的接收、发送缓冲器SBUF,属于特殊功能寄存器,这样可以同时进行数据的接收和发送,实现全双工传送。2串行口的控制寄存器串行口数据缓冲器SBUF两个

    8、互相独立的接收、发送缓冲器SBUF公用一个地址99H对应着2个寄存器:发送寄存器和接收寄存器。发送缓冲器用于存放要发送的数据,只能写入,不能读出。接收缓冲器用于存放接收到的数据,只能读出,不能写入。通过辨认对SBUF的指令是读指令还是写指令来区别是对接收缓冲器还是对发送缓冲器进行操作。读SBUF,比如MOV A,SBUF指令,就是读接收缓冲器的内容;写SBUF,比如MOV SBUF,A指令,就是修改发送缓冲器的内容。串行控制寄存器SCONSCON可用于确定串行通信的工作方式和控制串行通道的某些功能,监视和控制串行口的工作状态,也可用于存放要发送和接收到的第9个数据(TB9、RB8),并没有接收

    9、和发送中断标志RI和TI。表1 SCON的格式SM0SM1SM2RENTB8RB8TIRISM0、SM1:串行口操作模式选择位,指定了串行通信的工作方式。串行接口有4种工作方式。各种工作方式的区别在于功能、数据格式和波特率的不同。表2 串行口的各种工作方式SM0SM1工作方式功能波特率0008位同步移位寄存器f/1200010位UART可变10211位UARTf/64或f/3211311位UART可变在任务6中,就是使用了MOV SCON,40H(01000000B)指令来设置单片机串行口的工作方式为方式1的。SM2:多机通信控制位。主要用于方式2和方式3 中(数据为9位)。在方式2和方式3处

    10、于接收状态时,如SM2=1,REN=1,且接收到的第9位数据RB8是0,则RI(接收中断标志位)不会被置1。只有在接收到的第9位数据RB8是1,则RI才会被置1。在方式2和方式3处于接收状态时,如SM2=0,无论接收到的第9位数据RB8时0还是1,RI都会被置1。在方式1中,如SM2=1,只有在接收到有效停止位时,则RI才会被置1。在模式0中,SM2必须为0。REN:允许串行接收控制位。由软件置1或清除。REN=1,允许接收。启动串行口的RXD,开始接收数据;REN=0,禁止接收。在任务6中就是用指令SETB REN来允许乙机的串行口接收的。TB8:在方式2 和方式3时,它就是要发送的第9个数

    11、据位,一般是程控位2。按需要由软件进行置1或清0。如在多处理通信中,用于表示是地址桢还是数据桢。在模式9中。此位不用。RB8:接收数据位8。在方式2和3时,它是接收到的第9个数据位。在模式1中,如SM2=0,RB8时接收到的停止位;在模式0中,此位不用。TI:发送中断标志位。在模式0中,当发送完第8位数据时,由硬件置1;在其他模式中,在发送停止位前,由硬件置1。TI=1时,申请中断,CPU响应中断后,发送下一桢数据。RI:接收中断标志位。在模式0中,接收第8位结束时,由硬件置1;在其他模式中,在接收停止位的半中间,由硬件置1。RI=1时,申请中断,要求CPU取走数据。但在模式一中,SM2=1时

    12、,如未接收到有效的停止位,则不会对RI置位。在任何模式中,CPU响应中断后,都必须用软件来清除RI和TI。在任务6中,在甲机发送和乙机接收程序中,都有JBC这样一条指令,就是用来清除TI和RI标志的。特殊功能寄存器PCONPCON主要是为CHMOS型单片机的电源控制而设置的SFR,在HMOS的MCS-51单片机中,除了最高位SMOD位外,其他位都是虚设的。表3 PCON的格式SMODGF1GF0PDIDLSMOD是串行口波特率选择位,只有这一位和串行通信有关。方式0的波特率固定,当使SMOD=1时,则使方式1、方式2、方式3的波特率加倍。当SMOD=0时,各工作方式的波特率不加倍。3串行口的工

    13、作方式MCS-51单片机的串行接口有四种工作方式,用户可以通过SCON中的SM1、SM0位来选择。方式0 方式0为同步移位寄存器方式,其波特率是固定的,为振荡频率f的1/12,数据由RXD(P3.0脚)端输入,同步移位脉冲由TXD(P3.1脚)端输出,发送、接收的是8位数据,低位在前。发送: 当一个数据写入串行口发送缓冲器SBUF时,串行口将8位数据以fosc/12的波特率从RXD引脚输出(低位在前),发送完置中断标志TI为1,请求中断。在再次发送数据之前,必须由软件清TI为0。具体接线图如图3所示。其中,74LS164为串入并出移位寄存器。图3 方式0 的发送接线图接收:在满足REN=1和R

    14、I=0的条件下,串行口即开始从RXD端以fosc/12的波特率输入数据(低位在前),当接收完8位数据后,置中断标志RI为1,请求中断。在再次接收数据之前,必须由软件清RI为0。具体接线图如图4所示。其中,74LS165为并入串出移位寄存器。图4 方式0 的接收接线图串行控制寄存器SCON中的TB8和RB8在方式0中未用。值得注意的是,每当发送或接收完8位数据后,硬件会自动置TI或RI为1,CPU响应TI或RI中断后,必须由用户用软件清0。方式0时,SM2必须为0。方式1在方式1状态下,串行口为8位异步通信接口。一桢信息为10位,包括1位起始位(0),8位数据位(低位在前)和1位停止位(1)。如

    15、图5所示图5 方式1的信息格式TXD为发送端,RXD为接收端。波特率不变。方式1是单片机与PC机串行通信最常用的方式。发送:发送时,数据从TXD端输出,当数据写入发送缓冲器SBUF后,启动发送器发送。当发送完一帧数据后,置中断标志TI为1。方式1所传送的波特率取决于定时器1的溢出率和PCON中的SMOD位。 接收: 接收时,由REN置1,允许接收,串行口采样RXD,当采样由1到0跳变时,确认是起始位“0”,开始接收一帧数据。当RI=0,且停止位为1或SM2=0时,停止位进入RB8位,同时置中断标志RI;否则信息将丢失。所以,方式1接收时,应先用软件清除RI或SM2标志。方式2方式2下,串行口为

    16、11位UART,传送波特率与SMOD有关。发送或接收一帧数据包括1位起始位0,8位数据位,1位可编程位(用于奇偶校验)和1位停止位1。其帧格式如图6所示。图6 方式2 的信息帧格式发送:发送时,先根据通信协议由软件设置TB8,然后用指令将要发送的数据写入SBUF,启动发送器。写SBUF的指令,除了将8位数据送入SBUF外,同时还将TB8装入发送移位寄存器的第9位,并通知发送控制器进行一次发送。一帧信息即从TXD发送,在送完一帧信息后,TI被自动置1,在发送下一帧信息之前,TI必须由中断服务程序或查询程序清0。接收: 当REN=1时,允许串行口接收数据。数据由RXD端输入,接收11位的信息。当接

    17、收器采样到RXD端的负跳变,并判断起始位有效后,开始接收一帧信息。当接收器接收到第9位数据后,若同时满足以下两个条件:RI=0和SM2=0或接收到的第9位数据为1,则接收数据有效,8位数据送入SBUF,第9位送入RB8,并置RI=1。若不满足上述两个条件,则信息丢失。方式3 方式3为波特率可变的11位UART通信方式,除了波特率以外,方式3和方式2完全相同。4MCS-51串行口的波特率在串行通信中,收发双方对传送的数据速率,即波特率要有一定的约定。MCS-51单片机的串行口通过编程可以有4种工作方式。其中,方式0和方式2的波特率是固定的,方式1和方式3的波特率可变,由定时器1的溢出率决定,下面

    18、加以分析。方式0和方式2 在方式0中,波特率为时钟频率的1/12,即fosc/12,固定不变。在方式2中,波特率取决于PCON中的SMOD值,当SMOD=0时,波特率为fosc/64;当SMOD=1时,波特率为fosc/32。 方式1和方式3在方式1和方式3下,波特率由定时器1的溢出率和SMOD共同决定。即:方式1和方式3的波特率=定时器1溢出率其中,定时器1的溢出率取决于单片机定时器1的计数速率和定时器的预置值。计数速率与TMOD寄存器中的C/位有关。当C/=0时,计数速率为fosc/12;当C/=1时,计数速率为外部输入时钟频率。下表列出了各种常用的波特率及获得办法。表4定时器1产生的常用

    19、波特率波特率(b/s)f/MHzSMOD定时器1C/T模式初始值方式0:112*方式2:375k121*方式1、3:62.5k12102FFH19.2k11.059102FDH9.6k11.059002FDH4.8k11.059002FAH2.4k11.059002F4H1.2k11.059002E8H137.5k11.9860021DH110600272H11012001FEEBH3、RS-232接口简介(1)信息格式PC 的主板上通常都预留有一个或两个九针(DB一9)全双工串行接口(COM1、COi2),其电气标准遵循RS一232C标准 RS-232是使用最早、应用最多的一种异步串行通信总

    20、线标准,它是美国电子工业协会1962年公布,1969年最后修订而成的。其中RS表示recommended standard,232是该标准的识别号。RS-232主要用来定义各电路数据终端之间的电气性能。RS-232接口总线适用于设备之间的通信距离不大于15米,传输速度最大为20Kbit/s。 RS-232采用标准的异步通信串行数据格式,即信息的开始为起始位,信息的结束为停止位1,信息本身可以是5、6、7、8位,可根据需要再加上一位奇偶校验位,如果两个信息之间有间隔,加上空闲位1。如图7所示图7 RS-232的信息格式在通常的异步串行通信中只使用其中三个引脚,即引脚2(接收RXD)、引脚3(发送

    21、TXD)、引脚5(信号地SG)各引脚功能如图8所示图8 九针串口引脚功能图(2)RS-232C的接口信号RS-232C规标准接口有25条线,4条数据线、11条控制线、3条定时线、7条备用和未定义线。 常用的只有9根,它们是:联络控制信号线:数据装置准备好(Data set ready-DSR)有效时(ON)状态,表明MODEM处于可以使用的状态。数据终端准备好(Data set ready-DTR)有效时(ON)状态,表明数据终端可以使用。这两个信号有时连到电源上,一上电就立即有效。这两个设备状态信号有效,只表示设备本身可用,并不说明通信链路可以开始进行通信了,能否开始进行通信要由下面的控制信

    22、号决定。请求发送(Request to send-RTS)用来表示DTE请求DCE发送数据,即当终端要发送数据时,使该信号有效(ON状态),向MODEM请求发送。它用来控制MODEM是否要进入发送状态。允许发送(Clear to send-CTS)用来表示DCE准备好接收DTE发来的数据,是对请求发送信号RTS的响应信号。当MODEM已准备好接收终端传来的数据,并向前发送时,使该信号有效,通知终端开始沿发送数据线TxD发送数据。这对RTS/CTS请求应答联络信号是用于半双工MODEM系统中发送方式和接收方式之间的切换。在全双工系统中作发送方式和接收方式之间的切换。在全双工系统中,因配置双向通道

    23、,故不需要RTS/CTS联络信号,使其变高。接收线信号检出(Received Line detection-RLSD)用来表示DCE已接通通信链路,告知DTE准备接收数据。当本地的MODEM收到由通信链路另一端(远地)的MODEM送来的载波信号时,使RLSD信号有效,通知终端准备接收,并且由MODEM将接收下来的载波信号解调成数字两数据后,沿接收数据线RxD送到终端。此线也叫做数据载波检出(Data Carrier dectection-DCD)线。振铃指示(Ringing-RI)当MODEM收到交换台送来的振铃呼叫信号时,使该信号有效(ON状态),通知终端,已被呼叫。数据发送与接收线:发送数

    24、据(Transmitted data-TxD)通过TxD终端将串行数据发送到MODEM,(DTEDCE)。接收数据(Received data-RxD)通过RxD线终端接收从MODEM发来的串行数据,(DCEDTE)。地线有两根线SG、PG信号地和保护地信号线,无方向。上述控制信号线何时有效,何时无效的顺序表示了接口信号的传送过程。例如,只有当DSR和DTR都处于有效(ON)状态时,才能在DTE和DCE之间进行传送操作。若DTE要发送数据,则预先将DTR线置成有效(ON)状态,等CTS线上收到有效(ON)状态的回答后,才能在TxD线上发送串行数据。这种顺序的规定对半双工的通信线路特别有用,因为

    25、半双工的通信才能确定DCE已由接收方向改为发送方向,这时线路才能开始发送。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

    26、 Carrier Detection当本地DCE设备(Modem)收到对方的DCE设备送来的载波信号时,使DCD有效,通知DTE准备接收, 并且由DCE将接收到的载波信号解调为数字信号, 经RXD线送给DTE。RI��振铃信号 Ringing当DCE收到交换机送来的振铃呼叫信号时,使该信号有效,通知DTE已被呼叫。表5 RS-232C的接口信号232引脚CCITTModem名称说明用途异步同步1101AA保护地设备外壳接地PEPE2103BA发送数据数据送ModemTXD3104BB接收数据从Modem接收数据RXD4105CA请求发送在半双工时控制发送器的开和关RTS5106CB

    27、允许发送Modem允许发送CTS6107CC数据终端准备好Modem准备好DSR7102AB信号地信号公共地SGSG8109CF载波信号检测Modem正在接收另一端送来的信号DCD9空10空11空12接收信号检测(2)在第二通道检测到信号13允许发送(2)第二通道允许发送14118发送数据(2)第二通道发送数据15113DA发送器定时为Modem提供发送器定时信号16119接收数据(2)第二通道接收数据17115DD接收器定时为接口和终端提供定时18空19请求发送(2)连接第二通道的发送器20108CD数据终端准备好数据终端准备好DTR21空22125振铃振铃指示RI23111CH数据率选择选

    28、择两个同步数据率24114DB发送器定时为接口和终端提供定时25空(3)RS-232电平转换器MAX232RS-232规定了自己的电气标准,由于它是在TTL电路之前研制的,因此它的电平不是+5V和地,而是采用负逻辑,即逻辑“0”:+5V5V,逻辑“1”:5V15V。因此RS-232不能和TTL电平直接相连,必须进行电平转换。本设计选用MAX232。MAX232的引脚图如下所示:图9 MAX232的引脚图管脚说明如下C0+、C0-、C1+、C1-是外接电容端;R1IN、R2IN是2路RS-232C电平信号接收输入端;RlOUT、R2OUT是2路转换后的TTL电平接收信号输出端,送8051的RXD

    29、接收端;(R代表RS232)TlIN、T2IN是2路TTL电平发送输入端,接8051的TxD发送端;TlOUT、T2OUT是2路转换后的发送RS-232C电平信号输出端,接传输线;(T代表TTL)V+经电容接电源+5V;V-经电容接地。这种连接的传输介质一般采用双绞线,通信距离一般不超过15m,传输率小于20kB/s。(4)RS-232总线规定2RS-232标准总线为25根,采用标准的D型25芯插头座。引脚及功能如图10所示图10 RS-232C引脚图在最简单的全双工系统中,仅有发送数据、接收数据和信号地三根线即可。对于MCS-51单片机。利用其RXD线、TXD线和一根地线。就可以构成符合RS-232接口标准的全双工串行通信口,这是PC机


    注意事项

    本文(PC机与单片机串行通信.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开