找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2464|回复: 1
打印 上一主题 下一主题
收起左侧

单片机与单片机通信仿真与源程序

[复制链接]
跳转到指定楼层
楼主
这是一个单片机与单片机通信的

仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


单片机源程序如下:
  1. /*发送程序*/
  2. #include<reg52.h>
  3. #define uchar unsigned char
  4. void initUart(void);                  //初始化串口波特率
  5. void time(unsigned int ucMs); //延时单位:毫秒


  6. void main(void){
  7.            uchar counter=0;                //定义计数器
  8.            initUart();  
  9.         while(1){          
  10.        SBUF = counter;                //发送联络信号
  11.        while(!TI);                //等待发送完成
  12.        TI = 0;                                //清TI标志位
  13.        while(!RI);                //等待乙机回答
  14.        RI = 0;
  15.            if(SBUF ==counter){  //若返回值与发送值相同,组织新数据
  16.               P2 = counter;            //显示已发送值
  17.               if(++counter>15) counter=0;//修正计数器值
  18.               time(500);
  19. }}}

  20. void time(unsigned int ucMs)//延时单位:ms
  21. {
  22. #define DELAYTIMES 239
  23. unsigned char  ucCounter;  // 延时设定的循环次数
  24.         while (ucMs!=0) {
  25.                 for (ucCounter=0; ucCounter<DELAYTIMES; ucCounter++){}//延时
  26.                 ucMs--;
  27.           }
  28. }
  29. /********** 初始化串口波特率 ************/
  30. void initUart(void)
  31. {                SCON=0X50;                //串口工作在方式1
  32.                 PCON=0;                  
  33.                 TMOD=0X20;
  34.                 TH1=0XF4;                //2400bps
  35.                 TL1=0XF4;
  36.                 TCON=0X40;
  37. }
复制代码

所有资料51hei提供下载:
串口双机通信.zip (129.73 KB, 下载次数: 22)


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:427740 发表于 2018-11-16 15:21 | 只看该作者
感谢楼主分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表