您的位置 首页 培训

两台8031单片机经过串行口进行数据交换

两台8031单片机通过串行口进行数据交换-有两台8031单片机相距很近,直接将它们的串行口相连,1#机的TXD接2#机的RXD,2#机的TXD接1#机的RXD,二机的GND相连。二机的晶振频率均为11.0592MHZ,通信的波特率为4800bps。现将第一台8031单片机片内RAM40H~5FH单元内的数据,串行发送到第二台8031单片机片内RAM60H~7FH单元中。

有两台8031单片机相距很近,直接将它们的串行口相连,1#机的TXD接2#机的RXD,2#机的TXD接1#机的RXD,二机的GND相连。二机的晶振频率均为11.0592MHZ,通讯的波特率为4800bps。现将第一台8031单片机片内RAM40H~5FH单元内的数据,串行发送到第二台8031单片机片内RAM60H~7FH单元中。

两台8031单片机经过串行口进行数据交换
 

发送与接纳的参阅程序如下:1#单片机发送程序:

ORG 1000H

TX:MOVTMOD , #02H

MOVTH1 , #0FAH

MOVTL1 , #0FAH

MOVSCON , #80H;

设定工作方式2

MOVPCON, #00H;

波特率为fosc/64

SETBTR0

MOVR0 , #40H;设发送数据的地址指针

MOVR2 , #20H;设发送数据长度

LOOP:MOVA , @R0;取发送数据送A

MOVC , PSW.0

MOVTB8 , C;奇偶位送TB8

MOVSBUF , A;发动发送

WAIT:JBCTI , LL1;判发送中止标志

SJMPWAIT

LL1:INCR0

DJNZR2 ,LOOP

RET

2#单片机接纳程序:

ORG 1000H

RX:MOVTMOD , #02H

MOVTH1 , #0FAH

MOVTL1 , #0FAH

MOVSCON , #90H;设定工作方式2,并答应接纳

MOVPCON , #00H

SETBTR0

MOVR0 , #60H

MOVR2 , #20H

LOOP:JBCRI , MM1;等候接纳数据

SJMPLOOP

MM1:MOVA , SBUF;读入一帧数据

JBPSW.0 , PP1;判接纳端奇偶

JBRB8 , ERROR;判发送端奇偶

SJMPRIGHT

PP1:JNBRB8 , ERROR;接纳犯错

RIGHT:MOV@R0 , A;接纳正确

INCR0

DJNZR2 ,LOOP

ERROR:SETBPSW.5;置犯错标志

RET

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/changshang/peixun/346102.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部