微机控制系统与应用4(2013老师修改补充版).ppt

微机控制系统与应用4(2013老师修改补充版).ppt

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

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 4.3 串行口及其编程 4.3.3 串行口的初始化与编程 1. 串行口的波特率 [方式0的波特率]:fosc(振荡频率)的1/12(固定) [方式2的波特率]:2SMOD*fosc/64 (几乎固定) [方式1、3的波特率]:用定时器T1作波特率发生器时,方式1和方式3的波特率 = 2SMOD*定时器T1溢出率/32(溢出率为定时时间的倒数,即每秒溢出的次数)。典型应用中,定时器T1被设置成自动再装入的工作方式2,此时 波特率 = 2SMOD*1/((256-THl初值)*12/fosc)/32 =2SMOD*fosc/12/(256-THl初值) /32 * 4.3 串行口及其编程 * UART硬件电路逻辑 UART的同步方法 4.3 串行口及其编程 2. 初始化步骤 (1)设置定时器T1的工作方式(TMOD); (2)根据所需的波特率,设置定时器T1的初值(TH1、TL1); (3)置位TR1,启动定时(TR1); (4)设置串行口工作方式(SCON); (5)开中断(IE)。 3. 点-点通信编程示例 甲机将4000H--40FFH单元的内容发送给乙机。先发数据长度,再发数据,最后发送累加和。乙机接收正确时,回送00H,否则回送FFH。串口为方式1工作,波特率为2400,由T1产生。R5存放累加和,R6存放数据长度。 * * * ORG 0000H AJMP MAIN ;主程序入口 ORG 0030H MAIN:MOV TMOD,#20H ;T1方式2 MOV TH1,#0F4H ;定时器初值 MOV TL0,#0F4H SETB TR1 ;启动T1 MOV SCON #50H ;串口方式1 MOV PCON #00H ;SMOD=0 RPT: MOV DPTR,#4000H ;数据首址 MOV R6,#0FFH ;数据长度 MOV R5,#00H ;累加和清0 MOV SBUF,R6 ;送数据长度 L1: JBC TI,L2 ;等待发送结束 AJMP L1 甲机的发送程序 ORG 0000H AJMP MAIN ;主程序入口 ORG 0030H MAIN:MOV TMOD,#20H ;T1方式2 MOV TH1,#0F4H ;定时器初值 MOV TL0,#0F4H SETB TR1 ;启动T1 MOV SCON #50H ;串口方式1 MOV PCON #00H ;SMOD=0 RPT: MOV DPTR,#4000H ;数据首址 MOV R5,#00H ;累加和清0 L0: JBC RI,L1 ;等待接收结束 AJMP L0 L1: MOV R6,SBUF ;接收数据长度 乙机的接收程序 * L2: MOVX A,@DPTR ;取数据 MOV SBUF,A ;发送数据 ADD A,R5 ;计算累加和 MOV R5,A INC DPTR ;地址指针加1 L4: JBC TI,L3 ;等待发送结束 AJMP L4 L3: DJNZ R6,L2 ;数据发送完? MOV SBUF,R5 ;发送累加和 L6: JBC TI,L5 ;等待发送结束 AJMP L6 L5: JBC RI,L7 ;等待乙机应答 AJMP L5 L7: MOV A,SBUF ;读乙机应答 JNZ RPT ;出错重发 END WTD:JBC RI,L2 ;等待接收数据 AJMP WTD L2: MOV A,SBUF ;接收数据 MOVX @DPTR,A ;送入缓冲区 ADD A,R5 ;计算累加和 MOV R5,A INC DPTR ;地址指针加1 DJNZ R6,WTD ;数据接收完? L5: JBC RI,L

文档评论(0)

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

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

1亿VIP精品文档

相关文档