|
單片機C語言實例-391-無線遙控接收模塊實驗
#include "reg52.h"
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar i,j;
sbit P2_7=P2^7;
sbit fmq=P3^6;
sbit P3_7=P3^7;
sbit D0=P1^0;
sbit D1=P1^1;
sbit D2=P1^2;
sbit D3=P1^3;
void delay1ms(unsigned int i)
{
unsigned char j;
while(i--)
{
for(j=0;j<115;j++) //1ms基準延時程序
{
;
}
}
}
void delay500us()
{
unsigned char j;
for(j=0;j<57;j++) //500us基準延時程序
{
;
}
}
void beep() //產(chǎn)生1KHZ頻率聲音的函數(shù)
{
fmq=0;
delay500us();
fmq=1;
delay500us();
}
void beep1()
{
uint k;
for(k=0;k<500;k++)
{
beep();
}
fmq=1;
delay1ms(500);
}
void main(void)
{
P2_7=0;//開數(shù)碼管顯示 選通左右側(cè)的數(shù)碼管
P0=0xc0; //初始顯示數(shù)字0
P3=0xff; //P3口設置為輸入狀態(tài) 先全部寫1
while(1){
//i=i&0x0f; //和0x0f相與 屏蔽高四位,讀取無線遙控碼
if (D0==1)//如果是0x04,則代表無線遙控器的按鍵A按下,執(zhí)行顯示
{
P0=0x88; //字母A的字型碼
beep1();
}
if (D1==1)//如果是0x01,則代表無線遙控器的按鍵b按下,執(zhí)行顯示
{
P0=0x83;//字母b的字型碼
fmq=1;
}
if (D2==1)//如果是0x08,則代表無線遙控器的按鍵C按下,執(zhí)行顯示
{
P0=0xc6;//字母C的字型碼
P3_7=0;//繼電器吸合
}
if (D3==1)//如果是0x02,則代表無線遙控器的按鍵d按下,執(zhí)行顯示
{
P0=0xa1;//字母d的字型碼
P3_7=1; //繼電器釋放
}
}
}
更多詳情參考附件文檔
+08:00C132聯(lián)盟網(wǎng)1269.png (32.45 KB, 下載次數(shù): 3)
下載附件
保存到相冊
2022-4-18 10:11 上傳
|
|