久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
msp430單片機紅外解碼1838.c驅(qū)動程序
[打印本頁]
作者:
das
時間:
2015-4-18 03:45
標題:
msp430單片機紅外解碼1838.c驅(qū)動程序
//***********************************************************************
// 遙控器鍵碼
//***********************************************************************
#define KEY_0 0x16 //鍵0
#define KEY_1 0x0C //鍵1
#define KEY_2 0x18 //鍵2
#define KEY_3 0x5E //鍵3
#define KEY_4 0x08 //鍵4
#define KEY_5 0x1C //鍵5
#define KEY_6 0x5A //鍵6
#define KEY_7 0x42 //鍵7
#define KEY_8 0x52 //鍵8
#define KEY_9 0x4A //鍵9
#define KEY_POWER 0x45 //電源
#define KEY_MODE 0x46 //模式
#define KEY_SOUND 0x47 //靜音
#define ch_ 0x45 //模式
#define ch 0x46
#define cha 0x47 //模式
uchar KEY_VAL=0;
uchar code_value=0;
uchar key_code[4],code='_';
//***********************************************************************
// MSP430IO口初始化
//***********************************************************************
/*void Port_Init()
{
LED8DIR = 0xFF; //設(shè)置IO口方向為輸出
LED8 = 0xFF; //P2口初始設(shè)置為FF
RED_L;
RED_IN;
}*/
//*************************************************************************
// 遙控器鍵值賦功能值子程序
//*************************************************************************
void Key_Icode(void)
{
switch(key_code[2]) //第3個字節(jié)是數(shù)據(jù),第4個字節(jié)是反碼
{ //為了更穩(wěn)定,可以加上第4個字節(jié)數(shù)據(jù)的判斷
case KEY_0:KEY_VAL=0;break;
case KEY_1:KEY_VAL=1;break;
case KEY_2:KEY_VAL=2;break;
case KEY_3:KEY_VAL=3;break;
case KEY_4:KEY_VAL=4;break;
case KEY_5:KEY_VAL=5;break;
case KEY_6:KEY_VAL=6;break;
case KEY_7:KEY_VAL=7;break;
case KEY_8:KEY_VAL=8;break;
case KEY_9:KEY_VAL=9;break;
case ch_ :code='-';break;
case ch :code='_';break;
case cha :code='+';break;
default:KEY_VAL=10;break;
}
}
//*************************************************************************
// 顯示采集到的數(shù)據(jù)到LED燈
//*************************************************************************
void Display_Key(uint data_KEY)
{if(code=='_');
//鍵值顯示到LED燈上,二進制的形式顯示,只識別0~9
}
//*************************************************************************
// 遙控器解碼子程序
//*************************************************************************
void Red_Code()
{
uchar i,j,k = 0;
for(i = 0;i < 19;i++)
{
delay_us(400); //延時400us
if(RED_R) //9ms內(nèi)有高電平,則判斷為干擾,退出處理程序
{
return;
}
}
while(!RED_R); //等待9ms低電平過去
for(i=0;i<5;i++) //是否連發(fā)碼
{
delay_us(500);
if(!RED_R)
{
return;
}
}
while(RED_R); //等待4.5ms高電平過去
for(i = 0;i < 4;i++) //接收4個字節(jié)的數(shù)據(jù)
{
for(j = 0;j < 8;j++) //每個字節(jié)的數(shù)據(jù)8位
{
while(!RED_R); //等待變高電平
while(RED_R) //計算高電平時間
{
delay_us(100);
k++;
if(k >22) //高電平時間過長,則退出處理程序
{
return;
}
}
code_value>>=1; //接受一位數(shù)據(jù)
if(k >= 7)
{
code_value|=0x80; //高電平時間大于0.56,則為數(shù)據(jù)1
}
k = 0; //計時清零
}
key_code[i]=code_value; //四個字節(jié)的數(shù)據(jù)
}
Key_Icode(); //調(diào)用賦值函數(shù)
// Display_Key(KEY_VAL); //顯示按鍵值
delay_ms(50);
}
//***********************************************************************
// 主程序
//***********************************************************************
/*void main(void)
{
WDT_Init(); //看門狗初始化
Clock_Init(); //時鐘初始化
Port_Init(); //端口初始化,用于控制IO口輸入或輸出
while(1)
{
Red_Code(); //調(diào)用遙控器解碼子程序
}
}*/
復制代碼
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
中文字幕网址在线
|
二区三区视频
|
欧美黄色一级
|
国产区一区
|
亚洲第一免费视频
|
www.男人天堂
|
欧美日本国产
|
四虎网站
|
少妇高潮久久久久久潘金莲
|
国产又粗又长又爽
|
午夜h
|
国产黄色在线观看
|
免费在线观看黄色片
|
色婷婷精品国产一区二区三区
|
躁躁躁日日躁
|
99国产在线视频
|
欧美日韩a
|
国产一级在线视频
|
精品久久久久久
|
91小视频在线观看
|
亚洲视频色
|
亚色网站
|
brazzers精品成人一区
|
日韩精品视频免费播放
|
国产成人综合网
|
谁有毛片网址
|
国产一级黄
|
天天草天天干
|
国产成人黄色
|
91成人亚洲
|
黄色成人毛片
|
手机看片在线
|
国产伦精品一区二区
|
h片免费
|
国产精品国产三级国产
|
日本精品视频在线
|
亚洲高清视频在线观看
|
成人午夜在线
|
www.麻豆av
|
四虎黄色影院
|
色午夜
|