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

正文內(nèi)容

基于單片機(jī)的電器遙控器的設(shè)計-閱讀頁

2025-07-12 20:23本頁面
  

【正文】 對應(yīng)相接。圖 遙控接收器電路原理圖4 系統(tǒng)的軟件設(shè)計 遙控發(fā)射部分下圖是遙控發(fā)射的主程序,首先初始化程序,然后調(diào)用鍵掃描處理子程序。如圖 所示:開始 初始化調(diào)用鍵掃描處理子程序 N Y圖 掃鍵過程圖紅外信號發(fā)射過程:先裝入發(fā)射脈沖個數(shù)(發(fā)射時為 3ms 脈沖,停發(fā)時為 1ms 脈沖),當(dāng)發(fā)射脈沖個數(shù)為 1 的時候,就返回主程序,如果不為 1 就發(fā) 1ms 脈沖,然后再停發(fā) 1ms脈沖,這樣整個發(fā)射過程就結(jié)束了。掃鍵開始鍵按下?逐行掃描,按 P口值查鍵號按鍵號轉(zhuǎn)至相應(yīng)的發(fā)射程序返回 Y N圖 紅外信號發(fā)射過程圖 遙控接收部分遙控接收部分的主程序及初始化和延時過程如下:首先初始化,再按照顯示亮度數(shù)據(jù)設(shè)定調(diào)光脈沖延時值,最后看 口的脈沖是否為 0,如果不是 0 就調(diào)入延時程序,此時 口輸出調(diào)光脈沖然后返回。發(fā)射開始裝入發(fā)射脈沖個數(shù)(R1)發(fā) 3ms 脈沖停發(fā) 1ms(R1 )1=0發(fā) 1ms 脈沖停發(fā) 1ms返回NY圖 遙控接收部分主程序圖中斷過程:首先判斷低電平脈沖寬度是否大于 2ms,如果脈寬不到 2ms 就中斷返回。開始初始化按顯示亮度數(shù)據(jù)設(shè)定調(diào)光脈沖延時值=0?調(diào)延時程序 口輸出調(diào)光脈沖 N Y N Y圖 中斷過程圖5 系統(tǒng)調(diào)試控制電路板的安裝與調(diào)試在整個系統(tǒng)研制中占有很重要位置,它不但是把理論付諸實(shí)踐的過程,而且也是把紙面設(shè)計轉(zhuǎn)變到實(shí)際產(chǎn)品的必經(jīng)階段。一般用面包板焊接,因?yàn)橛妹姘搴附邮褂梅奖?,容易更換器件和線路,而且可以反復(fù)使用。實(shí)驗(yàn)和調(diào)試常用的儀器有:信號發(fā)生器、穩(wěn)壓電源、萬用表、示波器等。電路經(jīng)過上述檢查,確認(rèn)無誤后,可轉(zhuǎn)入靜態(tài)檢測與調(diào)試。對于放大電路還要用示波器觀察是不是有自激發(fā)生。發(fā)現(xiàn)問題,按照原理和常規(guī)知識找出原因,排除故障,繼續(xù)檢測調(diào)試。因?yàn)樗O(shè)計的遙控器電路是采用碼分制遙控方式?!餃y量電壓所用儀器的輸入阻抗必須遠(yuǎn)大于被測處的等效阻抗?!餃y量儀器的接地端要正確使用,儀器的接地端與電路的接地端要可靠連接;6 結(jié)束語經(jīng)過幾個月的努力,我在張老師的耐心幫助和自己的努力下終于完成了此次設(shè)計,并按設(shè)計要求實(shí)現(xiàn)了遙控器的各項(xiàng)功能。通過自己親自去動手和調(diào)試我明白的實(shí)踐的重要性\理論結(jié)合實(shí)踐的含義,同時也大大的提高了自己的動手能力,這在我以后的工作中都是非常有用的。extern void delay(unsigned int)。unsigned char irm_code。void main(){unsigned char tmp。timer_init()。if(tmp!=0xff) {if(irm_code==0xff) {//一次鍵值發(fā)射完成后會將 irm_code 置為 0xffirm_code = tmp。 //啟動定時器,完成編碼發(fā)射}delay(10)。TH0 = 0xff。EA = 1。TR0 = 0。QD=~QD。TL0 = 255TIMEL/2。}else if(i18) { //數(shù)據(jù)編碼if((irm_code amp。TL0 = 255TIMEL。i++。TL0 = 255TIMEL/2。i++。}}else {TR0 = 0。QD=1。TH0 = 0xff。 }}void delay(unsigned int t){unsigned char i。i230。}/*矩陣按鍵掃描*/unsigned char scan_key(void){unsigned char j。ROW = 255(1i)。j8。i++。=0x03。}include define TIMEH 12 //基于 時鐘晶振,數(shù)字越大,時間越長define TIMEL 50define ROW P3define LINE P2extern void timer_init(void)。extern unsigned char scan_key(void)。sbit QD = P1^0。irm_code=0。timer_init()。if(tmp!=0xff) {irm_code = tmp。turn_flag=0xff。TH0 = 0xff。EA = 1。TR0 = 0。QD=~QD。TL0 = 255TIMEL/2。}else if(i18) {if((irm_code amp。TL0 = 255TIMEL。i++。TL0 = 255TIMEL/2。i++。}}else {TR0 = 0。QD=1。TH0 = 0xff。 }}void delay(unsigned int t){unsigned char i。i230。}unsigned char scan_key(void){static unsigned char i。 unsigned char code row_code[]={0xfe,0xfd,0xfb,0xf7}。ROW=row_decode[i]。for(j=0。j++) {if(tmp==lin_code[j]) return j。 break。break。 break。break。 break。break。 break。break。}ROW=0xfd。switch (tmp){case 0xfe:return 0x09。case 0xfd:return 0x0a。case 0xfb:return 0x0b。case 0xf7:return 0x0c。case 0xef:return 0x0d。case 0xdf:return 0x0e。case 0xbf:return 0x0f。case 0x7f:return 0x10。default:break。tmp=LINE|0x80。 break。break。 break。break。 break。break。 break。break。}ROW=0xf7。switch (tmp){case 0xfe:return 0x19。case 0xfd:return 0x1a。case 0xfb:return 0x1b。case 0xf7:return 0x1c。case 0xef:return 0x1d。case 0xdf:return 0x1e。case 0xbf:return 0x1f。case 0x7f:return 0x20。default:break。//紅外解碼鍵值返回全局變量void irm_int2_init(void){EA = 1。//下降沿中斷EX0 = 1。}void irm_int(void) interrupt 0{unsigned char i,flag。unsigned int temp=0。temp=0xff。flag=0。i13。while(!IRM_DQ) {if(++counter300) break。amp。 if(counter200) temp++。}counter=0。}if((counter10)amp。(counter300)) {if(flag==0) temp=1。else flag ^= 0xff。0x00ff)。EA = 1。//紅外解碼鍵值返回全局變量void irm_int2_init(void){EA = 1。//下降沿中斷EX0 = 1。}void irm_int(void) interrupt 0{unsigned char i,flag。unsigned int temp=0。temp=0xff。flag=0。i13。while(!IRM_DQ) {if(++counter300) break。amp。 if(counter200) temp++。}counter=0。}if((counter10)amp。(counter300)) {if(flag==0) temp=1。else flag ^= 0xff。0x00ff)。EA = 1。/*數(shù)碼管地址定義*/define SEG_Q XBYTE[0xffec]//千位,LEFTdefine SEG_B XBYTE[0xffed]//百位define SEG_S XBYTE[0xffee]//十位define SEG_G XBYTE[0xffef]//個位,RIGHTvoid main(){irm_int2_init()。while(1)if(irm_code!=0xff) {led_disp(irm_code)。} }//通用數(shù)碼管顯示函數(shù),傳入數(shù)據(jù) 0~9999void led_disp(unsigned int number){unsigned char code tab1[20]= {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,}。if(number 10000){//千位數(shù)碼管temp = number/1000%10。flag = 1。//數(shù)碼管熄滅flag = 0。if(flag | temp) {SEG_B = tab1[temp]。}else {SEG_B = 0xff。}//十位數(shù)碼管temp = number/10%10。else SEG_S = 0xff。SEG_G = tab1[temp]。//SEG_B = 0xbf。SEG_G = 0x
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1