/*****單片機甲、發送單片機*****/
#include<reg51.h>
/*
unsigned char dat=0; //顯示值dat為全局變量,初值為0
char code tab[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //定義共陽極LED字形碼
*/
void delay() // 延時
{ unsigned char i;
for(i=0;i<40;i++)
{
TH0=(65536-5000)/256;
TL0=(65536-5000)%256;
TR0=1;
do{;} while(TF0!=1) ;
TF0=0; TR0=0;
}
}
void main()
{
TMOD=0x21; // T1 方式2 T0 方式1
TH1=TL1=0xe8; //設定波特率 1200
TR1=1;
SCON=0x40; //方式1 REN=1
while(1)
{
TI=0;
P1=0xff;
SBUF=P1;
do{;}while(TI!=1);
TI=0;
delay();
}
}
/*******單片機乙、接收單片機********/
#include<reg51.h>
unsigned char a;
unsigned char dat=0; //顯示值dat為全局變量,初值為0
char code tab[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //定義共陽極LED字形碼
void main()
{
TMOD=0x21; // T1 方式2 T0 方式1
TH1=TL1=0xe8; //設定波特率 1200
TR1=1;
SCON=0x50; //方式1 REN=1
while(1)
{
do{;}while( RI!=1);
RI=0;
a=SBUF; // 接收數據
if(a==0xfe)
{if(dat!=9){dat++;}
else
dat=0; }
if(a==0xfd)
{ if(dat!=0){dat--;}
else
dat=9; }
if(dat>=0&&dat<=9){P2=tab[dat]; }
}
}
2.png (137.97 KB, 下載次數: 32)
下載附件
2020-7-7 19:44 上傳
|