欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機雙機串行通信加數碼顯示程序 [打印本頁]

作者: yq1113    時間: 2020-11-16 20:00
標題: 單片機雙機串行通信加數碼顯示程序
甲為傳輸機乙為接收機,現在想加共陽數碼顯示。功能為當按鍵按下時甲機發送數據,乙機接收數據,甲機的K1按鍵通過串口發送信息控制乙機的LED燈D3和D4閃爍:① 第一次按下K1鍵,甲機發送字符“A”, 甲機的D1和乙機的D3都閃爍;甲乙數碼管同時顯示1  ② 第二次按下K1鍵,甲機發送字符“B”, 甲機的D2和乙機的D4都閃爍,甲乙數碼管同時顯示2  ③ 第三次按下K1鍵,甲機發送字符“C”, 甲機的D1、D2和乙機的D3、D4都閃爍,甲乙數碼管同時顯示3   ④ 第四次按下K1鍵,甲機停止發送,甲機的D1、D2和乙機的D3、D4都停止閃爍。
甲乙
數碼管同時顯示0

甲機源程序如下:

#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit  K1 = P1^0;
sbit  D1 = P0^0;
sbit  D2 = P0^4;
void Delay(uint x)   
{ uchar i;
  while(x--)   
    for(i=0; i<120; i++);}
void putc_to_SerialPort (uchar c)
{  SBUF = c ;
   while (TI == 0) ;
   TI = 0;
}
void main( )
{  uchar Operation_NO = 0;
   SCON = 0x40;
   TMOD=0x20;  
   PCON=0x00;
   TH1=0xFD;   
   TL1=0xFD;
   TI= 0;
   TR1=1;
while(1)   
   {  if(K1==0)
         {  while (K1==0);
           Operation_NO=(Operation_NO+1)%4; }
      switch(Operation_NO)
         { case 0:  D1=D2=1; break;
           case 1:  putc_to_SerialPort('A') ;
                    D1=~D1;
                    D2=1;
                    break;
           case 2:  putc_to_SerialPort('B');
                    D2=~D2;
                    D1=1;
                    break;

case 3:  putc_to_SerialPort('C') ;
                  D1=~D1;
                  D2=~D2;
                  break;
         }
    Delay(100);
   }
}

作者: yq1113    時間: 2020-11-16 20:01
乙機如下:
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit D3=P0^0;
sbit D4=P0^4;
void Delay(x)
{ uchar i;
   while(x--)   
     for(i=0; i<120; i++);
}
void main( )
{   SCON=0x50;     
    TMOD=0x20;     
    PCON=0x00;
    TH1=0xFD;   
    TL1=0xFD;
    RI= 0;     
    TR1=1;
    D3=D4=1;
    while(1)
      {  if(RI)
             {RI=0;
switch(SBUF)
        {   case 'A':D3=~D3;
                        D4=1;   break;
            case 'B':D4=~D4;
                        D3=1;   break;
            case 'C':D3=~D3;
                                D4=~D4;
                                break;
         }
       }
    else  D3=D4=1;
    Delay(100);  
  }
}
作者: wmq1517fc    時間: 2020-11-26 22:24
學習了,多多交流。




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1