- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
发送:MOV SBUF,A 接收
5、方式1、2、3的区别 (1)传送位数 方式1是8位异步通信接口,方式2、3是9位异步通信接口。 (2)波特率 方式1、3的波特率是可变的,其波特率取决于定时器T1的溢出率(此时T1作为波特率发生器用,禁止其中断)和PCON中的SMOD的值,即 波特率=(2SMOD/32)?T1的溢出率 方式2的波特率只取决于时钟频率fosc和PCON中的SMOD的值,即 波特率 = fosc ? 2SMOD/64 常用串行口波特率以及定时器T1各参数之间的关系: 6、波特率的设定 方式0时,波特率是时钟频率的1/12,是固定不变的。 方式2时波特率可变,是 波特率 = fosc ? 2SMOD/64 方式1、3时,波特率是可变的 波特率=(2SMOD/32)?T1的溢出率 例7-1:设串行口工作于方式3,SMOD=0,fosc=11.059MHz,定时器/计数器T1工作于定时、方式2,TL1、TH1的初值为0FDH,计算波特率。 例7-2:用8051串行口外接CD4049扩展8位并行输出口。 分析:采用方式0,8位移位寄存器方式。 CD4049是一种8位串入并出的同步移位寄存器。STB为控制端。 若STB=0,允许串行输入,禁止并行输出。 若STB=1,禁止串行输入,允许并行输出。 采用查询方式,程序清单: ORG 2000H MOV SCON,#00H MOV A,#80H CLR P1.0 NEXT:MOV SBUF , A LOOP:JNB TI,LOOP CLR TI SETB P1.0 ACALL DELAY RR A CPL P1.0 SJMP NEXT END 若采用中断方式,程序清单如下: ORG 0000H LJMP MAIN ORG 0023H AJMP NEXT ORG 2000H MAIN:MOV SCON,#00H MOV A,#80H CLR P1.0 MOV SBUF , A LOOP:SJMP $ ORG 2500H NEXT:CLR TI ACALL DELAY RR A CPL P1.0 MOV SBUF,A RETI END 例7-3:甲机为发送,乙机为接收。编写双机通信程序。 串行口都工作在方式1,波特率为1200,fosc=11.0592MHz。甲机将内部RAM的20~3FH的32个字节的ASCII码数据,在最高位加上奇效验,后由串行口送出。乙机接收到32个字节数据后,存放在内部RAM20~3FH单元中,波特率和时钟频率和甲机相同。若接收到的数据奇校验出错,则置相应单元为0FFH。 分析: 波特率选用T1方式2,查表7-4知初值为E8H。 ASCII码奇校验用下面程序设置: MOV A,#DATA MOV C,P CPL C MOV ACC.7,C 甲机发送程序清单: ORG 2000H START: MOV TMOD,#20H MOV TL1,#0E8H MOV TH1,#0E8H SETB TR1 MOV SCON,#40H MOV R0,#20H MOV R7,#20H LOOP: MOV A,@R0 MOV C,P CPL C MOV ACC.7,C MOV SBUF,A NEXT: JNB TI,NEXT CLR TI INC R0 DJNZ R7,LOOP AJMP START 乙机接收程序清单: ORG 2000H START: MOV TMOD,#20H MOV TL1,#0E8H MOV TH1,#0E8H SETB TR1 MOV R0,#20H MOV R7,#20H LOOP: MOV SCON,#50H NEXT: JNB RI,NEXT CLR RI MOV A,SBUF MOV C,P CPL C 乙机接收程序清单: JC ERROR ANL A,#7FH MOV @R0, A LOOP: INC R0 DJNZ R7,LOOP AJMP START ERROR: MOV @R0,#0FFH SJMP LOOP1 7.4.4 串行口在方式2、3下的应用 1、多机通信原理: MCS-51的串行口在方式2、3下具有多机通信功能,可实现一台主机和多台从机之间的通信。
文档评论(0)