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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

求程序 雙單片機之間的通信

[復制鏈接]
跳轉到指定樓層
樓主

兩個單片機之間的通信:在A機的4*4鍵盤(0——f)上按下一個按鍵,在B機數碼管上顯示相應的數據;在B機按下操作,在A機數碼管顯示相應的數據.
哪位大神能幫寫一下實現這個功能的匯編語言程序或者C語言程序嗎?謝謝
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:82765 發表于 2017-12-5 16:07 | 只看該作者
提示: 作者被禁止或刪除 內容自動屏蔽
回復

使用道具 舉報

板凳
ID:257786 發表于 2017-12-5 17:20 | 只看該作者
跟你的不一樣 可以參考一下
ORG 0000H
AJMP MAIN
ORG 0023H
AJMP INTRT

ORG 0030H
MAIN:MOV TMOD,#20H               ;設置定時器1的工作方式
     MOV TH1,#0E6H               ;設置波特率1200
     MOV TL1,#0E6H
     SETB TR1               ;啟動定時器1
     MOV SCON,#50H          ;設置串口工作方式
     CLR RI                 ;清除標志位
     CLR TI                 ;清除標志位
         SETB ES                ;開串口中斷
     SETB EA                ;開總中斷
LOOP:JNB P3.2,S3OK          ;檢測按鍵是否按下
     JNB P3.3,S4OK
         AJMP LOOP
S3OK:MOV A,#0FBH                    ;點亮LED4
     MOV SBUF,A
         JNB TI,$               ;等待發送完
         SJMP LOOP2
S4OK:MOV A,#0F7H                    ;點亮LED5
     MOV SBUF,A
         JNB TI,$               ;等待發送完        
LOOP2:ACALL DELAY
         AJMP LOOP

INTRT:PUSH ACC
      JNB TI,NEXT           
          CLR TI
          AJMP OUT
NEXT: CLR RI                            ;清標志      
          MOV A,SBUF                        ;讀取接收的數據
          MOV P1,A                                ;送P1口
OUT:  POP ACC
          RETI

DELAY:MOV R3,#60     ;   延時0.6秒
D1:   MOV R4,#20
D2:   MOV R5,#248
      DJNZ R5,$
      DJNZ R4,D2
      DJNZ R3,D1
      RET

END
回復

使用道具 舉報

地板
ID:243437 發表于 2017-12-5 19:21 | 只看該作者
gss0418 發表于 2017-12-5 17:20
跟你的不一樣 可以參考一下
ORG 0000H
AJMP MAIN

你這個程序的仿真圖有嗎?可以發一下嗎?謝謝
回復

使用道具 舉報

5#
ID:164602 發表于 2017-12-6 08:49 | 只看該作者
我有試驗成功的例子:
由于你的兩單片機要求一樣,硬件一樣,所以,只需要一個程序就可以了。兩個單片機都下載同樣的程序,功能也是一樣的,符合你的要求。
不過,從你的電路圖中,我沒有看到兩單片機連接的線路,你要注意哦。
我的程序對應的電路如圖



程序如下:
/*
串口實驗:單片機與單片機之間的通訊,這是主機程序
*/                                                                         

#include<reg51.h>

#define LED P2
#define JP P1

unsigned char JZ;
bit AJ;       

void UsartConfiguration();
void Delay10ms(unsigned int c);
void KeyDown(void);

void main()//主函數
{
        UsartConfiguration();
        Delay10ms(10);
        while(1)
        {
                KeyDown();
                if (AJ==1)
                {
                        AJ=0;
                        SBUF = JZ;
                        while (!TI);
                        TI = 0;
                }
        }
}

void UsartConfiguration()
{
        SCON=0X50;
        TMOD=0X20;
        PCON=0X80;
        TH1=0XF3;
        TL1=0XF3;
        TR1=1;
        EA=1;
        ES=1;
}

void Delay10ms(unsigned int c)//延時10ms
{
    unsigned char a, b;
    for (;c>0;c--)
        {
                for (b=38;b>0;b--)
                {
                        for (a=130;a>0;a--);
                }         
        }      
}

void KeyDown(void)
{
        unsigned char a=0;
        JP=0x0f;//測試列
        if(JP!=0x0f)
        {
                Delay10ms(1);
                if(JP!=0x0f)
                {
                        AJ=1;
                        switch(JP)
                        {
                                case(0X07):        JZ=0;break;
                                case(0X0b):        JZ=1;break;
                                case(0X0d): JZ=2;break;
                                case(0X0e):        JZ=3;break;
                        }
                        JP=0Xf0;//測試行
                        switch(JP)
                        {
                                case(0X70):        JZ=JZ;break;
                                case(0Xb0):        JZ=JZ+4;break;
                                case(0Xd0): JZ=JZ+8;break;
                                case(0Xe0):        JZ=JZ+12;break;
                        }
                        for (a=0;(a<50)&&(JP!=0xf0);a++)
                        {
                                 Delay10ms(1);
                        }
                }
        }
}

void FSSZ(void) interrupt 4
{
        RI=0;
        LED=~SBUF;
        Delay10ms(1);
}


回復

使用道具 舉報

6#
ID:243437 發表于 2017-12-6 15:51 | 只看該作者
HC6800-ES-V2.0 發表于 2017-12-6 08:49
我有試驗成功的例子:
由于你的兩單片機要求一樣,硬件一樣,所以,只需要一個程序就可以了。兩個單片機都 ...

我的電路圖兩個單片機有連接的,P3.0與P3.1交錯連接
回復

使用道具 舉報

7#
ID:47286 發表于 2017-12-6 16:17 | 只看該作者
lianjinhui 發表于 2017-12-6 15:51
我的電路圖兩個單片機有連接的,P3.0與P3.1交錯連接

你就這么連上然后互相用uart通訊就行啊
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 伊人网在线综合 | 一区二区三区视频 | 国产99热精品 | 午夜视频在线免费观看 | 午夜免费福利影院 | 国产91精品久久久久久久网曝门 | 日韩性在线 | 欧美亚洲日本 | 日韩日韩日韩日韩日韩日韩日韩 | www.久久国产精品 | 亚洲精品久久久久久一区二区 | 亚洲在线一区 | 伊人欧美视频 | 久久99国产精一区二区三区 | 一区二区在线不卡 | 天天综合久久网 | 欧美日韩国产一区二区三区 | 一级欧美一级日韩片 | 91精品国产一区二区三区 | 国产精品久久久久久久久久免费看 | 日本免费一区二区三区 | 午夜爱爱网 | 欧美精品在线播放 | 国产在线视频一区二区 | 中文字幕一区在线观看视频 | 第一色在线 | 精品一区二区三区在线观看国产 | 国产1区| 欧美成人一区二区 | 一区二区三区国产 | 久久久久九九九女人毛片 | 欧美国产日韩一区二区三区 | 亚洲免费在线观看视频 | 日韩色图视频 | 一区二区三区在线免费观看 | 欧美日韩综合视频 | 国产7777| www.操com| 91精品麻豆日日躁夜夜躁 | 国产一区二 | 中文字幕二区 |