?? 串口通信無返回值.c
字號:
/********************************************************************
匯誠科技
實現功能:串口控制繼電器程序
使用芯片:AT89S52
晶振:11.0592MHZ
波特率:9600
編譯環境:Keil
作者:zhangxinchunleo
網站:www.ourhc.cn
淘寶店:匯誠科技 http://shop36330473.taobao.com
【聲明】此程序僅用于學習與參考,引用請注明版權和作者信息!
*********************************************************************/
/********************************************************************
輸入16進制控制
輸入11 所以繼電器開 輸入 ff所以繼電器關
輸入01 對應繼電器1開 輸入 f1對應繼電器1關
輸入02 對應繼電器2開 輸入 f2對應繼電器2關
輸入03 對應繼電器1開 輸入 f3對應繼電器1關
輸入04 對應繼電器2開 輸入 f4對應繼電器2關
***********************************************************************/
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar dat;
sbit k1=P2^0;
sbit k2=P2^1;
sbit k3=P2^2;
sbit k4=P2^3;
//串口波特率為9600方式1;定時器0方式2//
void init(void)
{
TMOD=0x20;
PCON=0x00;
SCON=0x50;
TH1=0xfd;
TL1=0xfd;
TR1=1;
}
/********************************************************************
主函數
*********************************************************************/
void main()
{
init();
while(1)
{
if(RI)
{
dat=SBUF;
RI=0;
}
switch(dat)
{
case 0x11 :P2=0x00;break;
case 0xff :P2=0x0f;break;
case 0xf1 :k1=1;break;
case 0x01 :k1=0;break;
case 0xf2 :k2=1;break;
case 0x02 :k2=0;break;
case 0xf3 :k3=1;break;
case 0x03 :k3=0;break;
case 0xf4 :k4=1;break;
default:break;
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -