第八章单片机串行接口课件.ppt

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第八章单片机串行接口课件

第八章 51单片机串行接口;串行通信:数据在一根线路上按照位的先后顺序一位一位的传送。 特点:占用线路少,硬件接口简单,比较适合长距离传输,一般比并行通信方式略慢。串行通信需要定义专门的通信协议。 基本的串行通信方式有同步通信和异步通信两种。 串行通信中的数据是按帧(Frame)进行传输。 通信方向:异步串行通信的三种工作方式: 单工、半双工、全双工(p133. 图8-2) 通信协议:指通信双方为确保通信成功而订立并共同遵守的通信约定,主要包括数据帧格式,时钟速率,检查纠错方式。各种串行通信方式都必须严格遵守其通信协议才能保证通信的正确性。;1. 异步传送方式中的帧数据格式;为逻辑“0”信号,占用一位,用来通知;2.波特率(Baud rate):简单理解为每秒钟一根串行线路上可以传输的二进制数据位数,如PC机串行口常见的波特率值:600,1200,2400,4800,9600,19200…… 比特率(bps,bit per second):指每秒钟能够传输的有效二进制位数。例如某设置中一帧数据为10位,其中有效字节位数为8位,波特率为9600,则比特率=8×9600/10=7680 bps ;波特率发生器: 串行通信中数据是按照一定的时钟频率按位向外一位一位移入移出内部移位寄存器的,用于产生该移位时钟的电路叫波特率发生器。 在51单片机中,方式0采用固定波特率方式,方式1为可变波特率方式,通常是由T1定时器溢出作为波特率发生器的。 双机异步串行通信的几种不同接口方式。 1)单片机双机直连(TTL电平,仅适用于很短通信距离和较低波特率,连接如下图 ;2)RS-232串行接口 国际电子工业协会(EIA)制定RS-232串行通信接口标准,规定如下: TXD,RXD信号:逻辑1=-3~-15V,逻辑0=+3~+15V,RS-232C最大通信距离在15m左右,PC机串口即是一个标准RS-232口 ;RS-232电平和单片机TTL电平间需要电平转换芯片接口,常用的是MAX232.;485、422串行通信接口(*仅做了解*) 为进一步提高串行通信的距离,采用差分输出驱动方式可以有效大幅提高可靠通信距离,即485通信方式,其中485为半双工,422为全双工通信方式,接口方式和常用芯片如下: ;485半双工通信接口示意图和真值表;488全双工串行接口(*仅做了解*);二 MCS-51单片机串行口结构;SM0 SM1 SM2 REN TB8 RB8 TI RI;*TB8:;3、特殊功能寄存器PCON;8051;⑵方式0 接收;2、方式1;四、波特率的设计;五、串行口的应用;某共阴数码管脚位图;例:利用串行口工作方式0扩展出8位并行I/O口,驱动共阳LED数码管显示0—9。;AB;TABLE: DB 0C0H,0F9H,0A4H,0B0H,99H DB 92H,82H,0F8H,80H,90H DISBUF EQU 70H;例:把内部RAM 40H~5FH单元中的ASCII码,由甲机发送到乙机,波特率1200,无奇偶校验,晶振fosc=11.0592MHz。 解:设置甲机在方式1下发送,SCON←40H;乙机串行方式1接收,SCON←50H。T1做波特率发生器,TH1重装初值E8H,TMOD←20H。 波特率计算 波特率=2SMOD/32×T1的溢出率 T1的溢出率=fosc/(28-x)*12 因此T1的初值 代入条件得 x=256-24=232=E8H;参考程序:甲机发送 MOV TMOD,#20H ; T1 方式2 MOV TL1,#0E8H MOV TH1,#0E8H ; 赋初值 SETB TR1 ;启动T1 MOV SCON,#40H ;串口方式1 MOV R0,#40H ;内部RAM指针 MOV R1,#32 NEXT: MOV A,@R0 ;取ASCII码 MOV SBUF,A JNB TI,$ CLR TI INC R0 DJNZ R1, NEXT ; 循环将32字节发送完 ;乙机接收:将收到的32字节??在60~7FH单元。 (查询接收方

文档评论(0)

gm8099 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档