freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)設(shè)計論文-智能學習型遙控系統(tǒng)的設(shè)計與實現(xiàn)(編輯修改稿)

2024-12-11 21:22 本頁面
 

【文章內(nèi)容簡介】 發(fā)碼。要想譯碼必須先了解其發(fā)碼規(guī)則,經(jīng)查閱相關(guān)資料,了解到此遙控器所發(fā)的紅外信號是由引導碼,8位的客戶碼,8位的客戶碼反碼,8位的鍵碼,8位的鍵碼反碼,再加延時,然后再有第二個引導碼,如果按鍵還按著就循環(huán)第二引導碼。經(jīng)過研究此遙控器各鍵的發(fā)碼,發(fā)現(xiàn)各鍵所發(fā)的紅外信號引導碼,客戶碼,第二引導碼都是相同的,不同之處僅只有鍵碼不同,而且鍵碼后8位為前8位的反碼,所以我們所關(guān)注的只是鍵碼部分的波形。從資料上了解到此,此波形的邏輯0定義為560ms的高電平加上560 ms的底電平,邏輯1定義為560ms的高電平加上1690ms的底電平。我們譯碼就是要譯出8位鍵碼的各位是0還是1,從邏輯定義可以發(fā)現(xiàn),它們只是低電平時間不同,因此只要用定時器記住低電平的時間就可以譯碼了,當然還要斷判下是否是NEC編碼,這里只需要檢測引導碼就可以了。以下程序段是此遙控器的譯碼檢測程序:/ //紅外發(fā)送程序 include define uchar unsigned char define uint unsigned int define send0 send_pulse_565 ()。 send_space_1685 ()。 define send1 send_pulse_565 ()。 send_space_560 ()。 uchar SYS_DATA=0x49。 //系統(tǒng)碼 sbit OUT=P3^7。 void send_bit (uchar one_bit)。 //發(fā)送一位字節(jié) void send_data (uchar one_data)。 //發(fā)送一個數(shù)據(jù) //包括一個起始標志 一個系統(tǒng)碼及其反碼 一個數(shù)據(jù)碼(one_data)及其反碼 char code disp[]={0x28,0x7E,0xA2,0x62,0x74,0x61,0x21,0x7A,0x20,0x60,0x30,0x25,0xA7,0x26,0xA1,0xB1}。 char i1=0,i2=0,i3=0,i4=0,i5=0,i6=0,i7=0,i8=0。 //顯示緩沖 void delay(uchar t) { char a。 while(t) for(a=255。a0。a)。 } void display(uchar t) { while(t) { P0=disp[i1]。 P2=0x7f。 //對P2口進行賦值 delay(1)。 P2=0xff。 //對P2口進行賦值 P0=disp[i2]。 P2=0xbf。 //對P2口進行賦值 delay(1)。 P2=0xff。 //對P2口進行賦值 P0=disp[i3]。 P2=0xdf。 delay(1)。 P2=0xff。 //對P2口進行賦值 P0=disp[i4]。 P2=0xef。 delay(1)。 //延時一小段時間 P2=0xff。 P0=disp[i5]。 P2=0xf7。 delay(1)。 P2=0xff。 P0=disp[i6]。 P2=0xfb。 //對P2口進行賦值 delay(1)。 //延時一小段時間 P2=0xff。 P0=disp[i7]。 P2=0xfd。 delay(1)。 P2=0xff。 P0=disp[i8]。 P2=0xfe。 delay(1)。 P2=0xff。 } } void send_pulse_9000 (void) //9ms脈寬 { TH0=0xdc。 TL0=0xff。 TR0=1。 TR1=1。 while(TR0)。 TR1=0。 OUT=1。 } //發(fā)送引導碼中9ms的高電平void send_space_4500 (void) // { OUT=1。 TH0=0xee。 TL0=0x7f。 TR0=1。 while(TR0)。 OUT=1。 } //void send_pulse_565 (void) // { TH0=0xfd。 TL0=0xee。 TR0=1。 TR1=1。 while(TR0)。 TR1=0。 OUT=1。 } //發(fā)送客戶碼565ms的高電平void send_space_1685 (void) // { OUT=1。 TH0=0xf9。 TL0=0x7f。 TR0=1。 while(TR0)。 OUT=1。 } void send_space_560 (void) // { OUT=1。 TH0=0xfd。 TL0=0xea。 TR0=1。 while(TR0)。 OUT=1。 } void send_bit (uchar one_bit) { uchar i。 uchar key_num=0x01。 for(i=0。i8。i++) { send_pulse_565 ()。 // if( (one_bitamp。key_num)==1 ) send_space_1685 ()。 //先發(fā)低位 else send_space_560()。 // one_bit=one_bit1。 //one_bit右移一位 } } void send_data (uchar one_data) { uint t=1000。 send_pulse_9000()。 //起始碼 9ms的脈寬 考慮到誤差 send_space_4500()。 // send_bit (SYS_DATA)。 //發(fā)系統(tǒng)碼 send_bit (~SYS_DATA)。 //發(fā)系統(tǒng)碼的反碼 send_bit (one_data)。 //發(fā)數(shù)據(jù)碼 send_bit (~one_data)。 //發(fā)數(shù)據(jù)碼的反碼 TR1=1。 while(t)。 TR1=0。 OUT=1。 } void main(void) { uchar c=0x77。 uint t=65535。 TMOD=0x21。 //T0產(chǎn)生精確時間的延時或脈寬 16位 //T1產(chǎn)生38kHz方波 8位自動重裝 TH1=0xf3。 TL1=0xf3。 IE=0x8a。 delay(255)。 display(100)。 delay(255)。 display(100)。 while(1) { send_data(c)。 } } void time0 (void) interrupt 1 { TR0=0。 TR1=0。 } void time1 (void) interrupt 3 //T1用來產(chǎn)生38kHz方波 { OUT=~OUT。 } 按鍵檢測程序的實現(xiàn) 本系統(tǒng)的按鍵檢測分兩種情況,一種是矩陣按鍵按下的時候,這時候紅外發(fā)射頭會發(fā)送一幀信號,信號里面含有該按鍵的鍵碼。另一種是按下學習按鍵后,系統(tǒng)將等待對方的信號輸入,如果有信號輸入,將該信號譯碼并保存至存儲器中備用,如果沒有信號輸入,系統(tǒng)將等待一定得時間,如果超過等待時間還沒有信號輸入,系統(tǒng)將又回到獲取鍵碼的狀態(tài)。以下程序段是此系統(tǒng)檢要的按鍵檢測程序://判斷是哪鍵接下程序//功能:根據(jù)鍵碼中的值按鍵后需要做出的反應//條件:temp_h,temp_l中要有值//結(jié)果:current_n中得到當前按鍵if(temp_h==0x00amp。temp_l==0x09)current_n=1。 //判斷是不是矩陣鍵1if(temp_h==0x01amp。temp_l==0x0d)current_n=2。 //判斷是不是矩陣鍵2if(temp_h==0x01amp。temp_l==0x0f)current_n=3。 //判斷是不是矩陣鍵3if(temp_h==0x01amp。temp_l==0x09)current_n=4。 //判斷是不是矩陣鍵4if(temp_h==0x00amp。temp_l==0x0d) //判斷是不是學習按鍵 {current_n++。 if(current_n==7)current_n=1。 } 對蜂鳴器鳴叫控制程序的實現(xiàn)本系統(tǒng)中的蜂鳴器鳴叫控制程序比較簡單,當需要鳴叫的時候,給控制蜂鳴器的腳輸出低電平,則蜂鳴器鳴叫,當輸出高電平時,蜂鳴器不會鳴叫。通過調(diào)整輸出低電平時間的長短可以控制鳴叫的時間長短。反復通斷可以讓蜂鳴器連續(xù)鳴叫。以下程序段為對蜂鳴器鳴叫控制程序://蜂鳴器鳴叫程序 Beep=1。 //一開始蜂鳴器是不應該叫的//有按鍵按下時,譯碼,蜂鳴器鳴叫 beep=0。 //輸出低電平讓蜂鳴器鳴叫 delay05s()。 // beep=1。 //輸出高電平讓蜂鳴器停止鳴叫 寫入單片機的部分詳細程序請參見附錄。系統(tǒng)的開發(fā)環(huán)境及測試分析6 系統(tǒng)的開發(fā)環(huán)境及測試分析
點擊復制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1