标题: 分享用proteus仿真的两个单片机通信程序 [打印本页]

作者: jtyhvgc    时间: 2019-2-28 13:45
标题: 分享用proteus仿真的两个单片机通信程序
这个是我用Proteus仿真完成完单片机与单片机进行通信。
就是用单片机U1通过串行口TXD(P3. 1引脚)  细将控制码发至单片机U2的RXD(P3.1脚)端.
U2单片机接收后把控制码送8位LED显示,如图:



因为用到了单片机U1和单片机U2,因此需要对单片机U1和单片机U2分别设计两个程序:单片机U1负责完成数据发送任务:单片机U2负责完成数据接收任务对单片机U1编程时,由于使用方式1,所以需要设置串行控制寄存器SCON,使SM0=0,SM1=1,选波特率为9600b/s, SMOD=0,计算出THI=FAH;
对单片机U2编程时,需要设置SM0=0,SM1=1和REN= 1(允许接收)。


程序如下:

(I)单片机U1数据发送程序。
  1. # include "reg52.h"

  2. unsigned char code Tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0x7f,0xaa,0x0f,0xf0,0x55};


  3. //????????
  4. void Send (unsigned char dat)
  5. {
  6.         SBUF=dat;
  7.         while(TI==0);
  8.         TI=0;
  9. }

  10. void delay150ms(void)   //??? 0us
  11. {
  12.     unsigned char a,b,c;
  13.     for(c=229;c>0;c--)
  14.         for(b=4;b>0;b--)
  15.             for(a=80;a>0;a--);
  16. }

  17. void main(void)
  18. {
  19.         unsigned char i;
  20.         TMOD=0x20;
  21.         SCON=0x40;
  22.         PCON=0x00;
  23.         TH1=0xfa;
  24.         TL1=0xfa;
  25.         TR1=1;
  26.         while(1)
  27.         {
  28.                 for(i=0;i<12;i++)
  29.                 {
  30.                         Send(Tab[i]);
  31.                         delay150ms();
  32.                 }
  33.         }
  34. }








复制代码
单片机U2数据发送程序
  1. # include "reg52.h"

  2. //??????????

  3. unsigned char Receive(void)
  4. {
  5.         unsigned char dat;
  6.         while(RI==0);
  7.         RI=0;
  8.         dat=SBUF;
  9.         return dat;
  10. }

  11. void main(void)
  12. {
  13.         TMOD=0x20;
  14.         SCON=0x50;
  15.         PCON=0x00;
  16.         TH1=0xfa;
  17.         TL1=0xfa;
  18.         TR1=1;
  19.         REN=1;
  20.         while(1)
  21.         {
  22.                 P2=Receive();
  23.         }
  24. }
复制代码
资料分享:
双单通信.rar (61.66 KB, 下载次数: 107)





作者: cr8526    时间: 2019-2-28 17:03
这是2机之间的 通信吗?

作者: ghbwxt    时间: 2019-5-23 14:41
谢谢,非常感谢
作者: jiangquancai    时间: 2019-5-23 21:52
2机通信。不错
作者: 木一小哥    时间: 2020-4-18 13:09
非常好的资料,感谢
作者: 木一小哥    时间: 2020-4-18 13:12
很需要这个资料,谢谢分享
作者: liaoym    时间: 2020-9-23 11:59
文件损坏 打不开 。而且重复扣积分




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1