這個很簡單,只要會串列埠接收就 行,然後要所接收的內容控制相應的輸出。
#include
unsigned char tmp;
sbit shebei1=P1^0;//定義被控制裝置管腳
sbit shebei2=P1^1;
sbit shebei3=P1^2;
sbit shebei4=P1^3;
sbit shebei5=P1^4;
sbit shebei6=P1^5;
main()
{
TMOD = 0x20; // 定時器1工作於8位自動過載模式, 用於產生波特率
TH1 = 0xFD; // 波特率9600
TL1 = 0xFD;
SCON = 0x50; // 設定序列口工作方式
PCON &= 0xef; // 波特率不倍增
TR1 = 1; // 啟動定時器1
IE = 0x0; // 禁止任何中斷
while(1)
if(RI) // 是否有資料到來
RI = 0;
tmp = SBUF; // 暫存接收到的資料
switch(tmp )
case 0x22:shebei1=0;break;
case 0x33:shebei1=1;break;
case 0x44:shebei2=0;break;
case 0x55:shebei2=1;break;
case 0x66:shebei3=0;break;
case 0x77:shebei3=1;break;
case 0x88:shebei4=0;break;
case 0x99:shebei4=1;break;
// case 0xaa:shebei5=0;break;
// case 0xbb:shebei5=1;break;
// case 0xcc:shebei6=0;break;
// case 0xdd:shebei6=1;break;
case 0x17:shebei5=0;break;
case 0x18:shebei5=1;break;
case 0x19:shebei6=0;break;
case 0x20:shebei6=1;break;
case 0x24:fmq=0;break;
case 0x25:fmq=1;break;
}
這個很簡單,只要會串列埠接收就 行,然後要所接收的內容控制相應的輸出。
#include
unsigned char tmp;
sbit shebei1=P1^0;//定義被控制裝置管腳
sbit shebei2=P1^1;
sbit shebei3=P1^2;
sbit shebei4=P1^3;
sbit shebei5=P1^4;
sbit shebei6=P1^5;
main()
{
TMOD = 0x20; // 定時器1工作於8位自動過載模式, 用於產生波特率
TH1 = 0xFD; // 波特率9600
TL1 = 0xFD;
SCON = 0x50; // 設定序列口工作方式
PCON &= 0xef; // 波特率不倍增
TR1 = 1; // 啟動定時器1
IE = 0x0; // 禁止任何中斷
while(1)
{
if(RI) // 是否有資料到來
{
RI = 0;
tmp = SBUF; // 暫存接收到的資料
switch(tmp )
{
case 0x22:shebei1=0;break;
case 0x33:shebei1=1;break;
case 0x44:shebei2=0;break;
case 0x55:shebei2=1;break;
case 0x66:shebei3=0;break;
case 0x77:shebei3=1;break;
case 0x88:shebei4=0;break;
case 0x99:shebei4=1;break;
// case 0xaa:shebei5=0;break;
// case 0xbb:shebei5=1;break;
// case 0xcc:shebei6=0;break;
// case 0xdd:shebei6=1;break;
case 0x17:shebei5=0;break;
case 0x18:shebei5=1;break;
case 0x19:shebei6=0;break;
case 0x20:shebei6=1;break;
case 0x24:fmq=0;break;
case 0x25:fmq=1;break;
}
}
}
}