串口通信c语言stm32多机通信,51单片机 | 串口通信实验(模拟串口通信/多机通信实例)...

主机

jishu_1884253_1_1.html

1 #include 2 #include 3 unsigned char cort = 0; 4 sbit P3_5 = P3 ^ 5; 5 key_serial() interrupt 0 using 1 6 { 7     ++cort; 8     if (cort == 3) 9         cort = 1;10 }11 void main()12 {13     P2 = 0xff;14     TMOD = 0x20;15     TH1 = 0xFD;16     TL1 = 0xFD;17     PCON = 0x00;18     TR1 = 1;19     SCON = 0xF8;20     EA = 1;21     EX0 = 1;22     IT0 = 1;23     P3_5 = 1;24     while(1)25     {26         if (cort == 1)27         {28             SBUF = 0x01;29             while(TI != 1);30             TI = 0;31             P3_5 = 0;32             RB8 = 1;33             while(RI != 1);34             RI = 0;35             P2 = SBUF;36             P3_5 = 1;37         }38         if(cort == 2)39         {40             SBUF = 0x02;41             while(TI != 1);42             TI = 0;43             P3_5 = 0;44             RB8 = 1;45             while(RI != 1);46             RI = 0;47             P2 = SBUF;48             SM2 = 1;49             P3_5 = 1;50         }51 52     }53 }

jishu_1884253_1_1.html

从机1

jishu_1884253_1_1.html

1 #include 2 #include 3 sbit P3_5 = P3 ^ 5; 4 void serial(void) interrupt 4 using 1 5 { 6     ES = 0; 7     RI = 0; 8     if (SBUF == 0x01) 9     {10         P3_5 = 1;11         RI = 0;12         TB8 = 1;13         P1 = 0x10;14         SBUF = 0x10;15         while(!TI);16         TI = 0;17     }18     else P1 = 0;19     P3_5 = 0;20     ES = 1;21 }22 void main()23 {24     P1 = 0x00;25     TMOD = 0x20;26     TH1 = 0xFD;27     TL1 = 0xFD;28     PCON = 0x00;29     TR1 = 1;30     SCON = 0xF0;31     EA = 1;32     ES = 1;33     P3_5 = 0;34     while(1)35         _nop_();36 }

jishu_1884253_1_1.html

从机2

jishu_1884253_1_1.html

1 #include 2 #include 3 sbit P3_5 = P3 ^ 5; 4 void serial() interrupt 4 using 1 5 { 6     ES = 0; 7     RI = 0; 8     if (SBUF == 0x02) 9     {10         P3_5 = 1;11         RI = 0;12         TB8 = 1;13         P1 = 0x20;14         SBUF = 0x20;15         while(!TI);16         TI = 0;17     }18     else P1 = 0;19     P3_5 = 0;20     ES = 1;21 }22 void main()23 {24     P1 = 0x00;25     TMOD = 0x20;26     TH1 = 0xFD;27     TL1 = 0xFD;28     PCON = 0x00;29     TR1 = 1;30     SCON = 0xF0;31     EA = 1;32     ES = 1;33     P3_5 = 0;34     while(1)35         _nop_();36 }

jishu_1884253_1_1.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值