网站大量收购闲置独家精品文档,联系QQ:2885784924

单片机原理及应用(陈燕)第7章 串行口.pptVIP

单片机原理及应用(陈燕)第7章 串行口.ppt

  1. 1、本文档共83页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(7)RI——接收中断标志位 方式0时,接收完第8位数据时,RI由硬件置“1”。在其他工作方式中,串行接收到停止位时,该位置“1”。RI?=?1,表示一帧数据接收完毕,并申请中断,要求CPU从接收SBUF取走数据。该位的状态也可供软件查询。RI必须由软件清“0”。 SCON的所有位都可进行位操作清“0”或置“1”。 (1)从机接收到的主机发来的第9位数据RB8=1时,前8位数据才装入SBUF,并置中断标志RI?=?1,向CPU发出中断请求。 在中断服务程序中,从机把接收到的SBUF中的数据存入数据缓冲区中。 (2)如果从机接收到的第9位数据RB8=0时,则不产生中断标志RI=1,不引起中断,从机不接收主机发来的数据。 若SM2?=?0,则接收的第9位数据不论是0还是1,从机都将产生RI?=?1中断标志,接收到的数据装入SBUF中。 (4)结束数据通信并为下一次的多机通信做好准备。在多机系统,每个从机都被赋予唯一的地址。例如,图7-16三个从机的地址可设为:01H、02H、03H。 还要预留1~2个“广播地址”,它是所有从机共有的地址,例如将“广播地址”设为00H。当主机与从机的数据通信结束后,一定要将从机再设置为多机通信模式,以便进行下一次的多机通信。这时要求与主机正在进行数据传输的从机必须随时注意,一旦接收的数据第9位(RB8)为“1”,说明主机传送的不再是数据,而是地址,这个地址就有可能是“广播地址”。 当收到“广播地址”后,便将从机的通信模式再设置成多机模式,为下一次的多机通信做好准备。 1.串行口方式1应用编程 【例7-?4】 采用方式1进行双机串行通信,收、发双方均采用6MHz晶振,波特率为2?400bit/s,一帧信息为10位,发送方把以78H、77H单元的内容为首地址,以76H、75H单元内容减1为末地址的数据块通过串口发送给收方。 发送方要发送的数据块的地址为2000H~201FH。先发地址帧,再发数据帧;接收方在接收时使用一个标志位来区分接收的是地址还是数据,然后将其分别存放到指定的单元中。发送方可采用查询方式或中断方式发送数据,接收方可采用中断或查询方式接收。 (1)甲机发送程序 中断方式的发送程序如下: ORG 0000H ;程序初始入口 LJMP MAIN ORG 0023H ;串行中断入口 LJMP COM_INT ORG 1000H MAIN: MOV SP,#53H ;设置堆栈指针 MOV 78H,#20H ;设发送的数据块首、末地址 MOV 77H,#00H MOV 76H,#20H MOV 75H,#40H ACALL TRANS ;调用发送子程序 HERE:SJMP HERE COM_INT: CLR TI ;关发送中断标志位TI INC DPTR ;数据指针加1, 准备发送 :下个数据 MOV A,DPH ;判断当前被发送的数据 ;的地址是不是末地址 CJNE A,76H,END1;不是末地址则跳转 MOV A,DPL ;同上 CJNE A,75H,END1 SETB F0 ;数据发送完, 置1标志位 CLR ES ;关串行口中断 CLR EA ;关中断 RET ;中断返回 * END1: MOVX A,@DPTR ;将要发送的数据送累加器, ;准备发送 MOV SBUF,A ;发送数据 RETI ;中断返回 END * (2)乙机接收程序。 中断方式的接收程序如下: ORG 0000H LJMP MAIN ORG 0023H LJMP COM_INT ORG 1000H MAIN: MOV SP,#53H ;设置堆栈指针 ACALL RECEI ;调用接收子程序 HERE: SJMP HERE * RECEI: MOV R0,#78H ;设置地址接收区 MOV TMOD,#20H ;设置定时器/计数器工作方式 MOV TH1,#0F3H ;设置波特率 MOV TL1,#0F3H MOV PCON,#80H ;波特率加倍 SETB TR1 ;开计数

文档评论(0)

1243595614 + 关注
实名认证
文档贡献者

文档有任何问题,请私信留言,会第一时间解决。

版权声明书
用户编号:7043023136000000

1亿VIP精品文档

相关文档