单片机课件-第七章 串行通信.ppt

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

实验:串行口自发自收程序 (方式0)例2用8031串行口外接CD4049或164串入并出移位寄存器扩展8位并行口;8位并行口的每位都接一个发光二极管,要求发光二极管从左到右以一定延迟轮流显示,并不断循环。 解:设数据串行发送采用中断方式,显示的延迟通过调用延迟程序DELAY实现. 程序清单: ORG 0023H  ;串行口中断入口 AJMP SBR ;转入串行口中断服务程序 0RG 2000H ;主程序起始地 MOV SCON,#00H ;串行口方式0初始化 MOV A,#80H ;最左一位发光二极管先亮 CLR P1.0 ;关闭并行输出 MOV SBUF,A ;启动串口串行输出 LOOP: SJMP $   ;等待中断 SBR: SETB P1.0   ;启动寄存器并行输出 ACALL DELAY ;显示延迟一段时间 CLR TI ;清发送中断标志  RR A ;准备右边一位显示 CLR P1.0 ;关闭并行输出 MOV SBUF,A ;再一次串行输出 RETI  ;中断返回 图7-13 串入并出电路  双机通信。甲机发送,乙机接收,进行单工串行异步通讯。 (方式1)例3 甲机从片内RAM 30H~39H单元逐个取出共10个ASCII码数据,在D7位补奇后由串行口发送出去,乙机每接收一个数据都有奇/偶校验,然后存入30H~39H单元。若奇/偶校验有错,则将FFH存入相应单元,设波特率为1200b/s,fosc=6MHZ。     0RG 0000H     LJMP MAINT     ORG 0100H MAINT: MOV SCON,#40H  ;方式1串行发送     MOV TMOD,#20H ;(TMOD)←20H,T1方式2     MOV TH1, #0F3H ;(T1)←F3F3H,T1初值     MOV TL1, #0F3H     SETB TR1 ;启动T1      1.甲机发送程序 把片内RAM 30H~39H中的数据块通过串行口TXD引脚输出。参考程序如下: 图6-15 双机通信电路 CLR ET1 ;禁止T1中断      MOV R0, #30H ;R0:发送数据首址,(R0)←30H L1: MOV A,@R0      MOV C,P ;设置奇偶校验位(补奇)      CPL C      MOV ACC.7,C      MOV SBUF, A ;启动发送 L2: JBC TI,L3 ;若TI=1,则转L3执行且(T1)←0      SJMP L2 ;TI=0,一帧未完,连续发送 L3: INC R0 ;取下一数据      CJNE R0,#3AH,L1 ;若10个数据未完,转L1执行      SJMP $      END ORG 0000H LJMP MAINR 0RG 0200H MAINR:MOV SCON, #50H   ;启动接收 MOV TMOD, #20H ;(TMOD)=20H,T1方式2 MOV TH1, #0F3H ;(T1)=F3F3H,Tl初值 MOV TL1, #0F3H SETB TR1 ;启动T1 CLR ET1 ;禁止T1中断 2. 乙机接收程序 乙机通过RXD引脚接收甲机发送的串行字节,波特率必须与甲机相同,乙机fosc=6MHZ,波特率为1200b/s,采用定时器T1方式2,初值同为0F3H。参考程序如下:   MOV R0, #30H ;R0:接收数据首址,(R0)←30H L4:JBC RI,L5      ;若RI=1,则转L5执行且(RI)←0   SJMP L4

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档