久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6590|回復: 5
打印 上一主題 下一主題
收起左側

兩個51單片機,兩機的串口交叉連線,雙機互發數據

[復制鏈接]
跳轉到指定樓層
樓主
ID:53011 發表于 2013-8-13 17:21 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
兩個51單片機,兩機的串口交叉連線,雙機互發數據串口通信是單片機和其它系統交換數據的主要形式。
上周有幾位網友問到單片機雙機通信的問題,做而論道為此特意設計了軟件、硬件,進行了測試。
下列程序,經過編譯、硬件仿真調試成功。
要點如下:
兩個51單片機,兩機的串口交叉連線,雙機互發數據;
發送方大約每隔 1s 發送一個字節,內容遞增(或遞減);
接收方采用兩位數據顯示器顯示收到的數據。
網友實驗時,顯示函數應該根據自己的設備進行改寫。
下面的程序,既包括了發送功能,也包括了接收功能,也就是說:進行雙機通信實驗時,兩個單片機使用同一個程序就可以。
//=========================================
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar Rbuf = 0;
uchar code dis_7[] = {
    0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07,         //共陰段碼
    0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71, 0x00};
    //段碼表 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, off
//-------------------------------
void delay(uint k)
{
    uint i, j;
    for(i = 0; i < k; i++)  for(j = 0; j < 200; j++);
}
//-------------------------------
void Display(uchar x)
{
    P2 = 0xFF;
    P0 = dis_7[x / 16];      //輸出高四位
    P2 = 0xFE;  delay(2);
    P2 = 0xFF;
    P0 = dis_7[x % 16];      //輸出低四位
    P2 = 0xFD;  delay(2);
}
//-------------------------------
void UART()interrupt 4
{
    if(RI) {
      RI = 0;                //清除中斷標志
      Rbuf = SBUF;
    }
    if(TI) {
      TI = 0;                //清除中斷標志
    }
}
//-------------------------------
void main()
{
    uchar t1, i;
    SCON = 0x50;             //串口工作在方式1
    PCON &= 0x7F;            //SMOD=0
    TMOD = 0x20;             //定時器1當做波特率發生器
    TH1 = 0xFD;              //初值, 9600 @ 11.0592MHz
    TL1 = 0xFD;
    TR1 = 1;
    ES = 1;
    EA = 1;
    while (1) {
      for (i = 0; i < 100; i++)//多次循環,便于觀察與發送
        Display(Rbuf);       //顯示收到的數據
      SBUF = t1;             //發送數據
      P1 = ~t1;              //本機顯示
      t1++;
      // t1--;
    }
}
//=========================================

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:51827 發表于 2013-8-17 01:00 | 只看該作者
學習了
回復

使用道具 舉報

板凳
ID:245554 發表于 2017-12-11 09:16 | 只看該作者
怎么沒有原理圖,沒有原理圖。
回復

使用道具 舉報

地板
ID:260637 發表于 2017-12-18 16:06 | 只看該作者
雙機通信can通信可以實現嗎?
回復

使用道具 舉報

5#
ID:72088 發表于 2018-7-2 09:18 | 只看該作者
xbd1763688799 發表于 2017-12-11 09:16
怎么沒有原理圖,沒有原理圖。

看程序就知道了,原理圖不需要,只看IO功能就行了。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 草草精品 | 最新中文字幕在线播放 | 久久久久久亚洲精品不卡 | 一区欧美 | 国产一区二区三区在线视频 | 国产成人精品午夜 | 女人精96xxx免费网站p | 国产ts一区 | 久久久久精 | 国产高清免费视频 | 国产精品欧美精品 | 欧美亚洲第一区 | 四虎影院在线免费观看 | 在线成人 | 野狼在线社区2017入口 | 一级在线毛片 | 亚洲 欧美 日韩在线 | 免费黄色在线观看 | 激情小说综合网 | 欧美日韩在线播放 | 天天干狠狠干 | 91色视频在线 | 亚洲 欧美 另类 综合 偷拍 | 亚洲人的av | 91观看| 亚洲一区二区在线免费观看 | 欧美成人aaa级毛片在线视频 | 日韩区 | 在线亚洲免费视频 | 成人精品在线视频 | 午夜成人免费视频 | 国产欧美精品一区二区三区 | 久久国产欧美日韩精品 | 午夜精品在线观看 | 成人在线视频免费观看 | 日本成人中文字幕 | 在线成人av | 高清av电影| 色悠悠久 | 亚洲午夜av久久乱码 | 精品91久久 |