欧美视频综合-欧美视频中文字幕-欧美视频在线观在线看-欧美视频在线观看网站-直接观看黄网站免费视频-正在播放久久

機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開(kāi)發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開(kāi)發(fā)
培訓(xùn)信息
贊助商
軟件解碼程序(仿真PT2272)
軟件解碼程序(仿真PT2272)
 更新時(shí)間:2008-7-27 16:51:06  點(diǎn)擊數(shù):3
【字體: 字體顏色

;軟件解碼程序(仿真PT2272)               ;
;晶體頻率為11.0592Mhz
;本程序中的時(shí)間定位關(guān)系只適用于接3.3M振蕩電阻的PT2262解碼
;使用其它阻值電阻時(shí),應(yīng)將定位時(shí)間按電阻比例縮放
;下面的程序中 REM 為信號(hào)輸入端
;RECEIVE        檢測(cè)到有效信號(hào)標(biāo)志位
;ENABLE_DETE    連續(xù)按鍵標(biāo)志
;3AH,3BH用作定時(shí)器                      ;
;PT2262共12根地址線                     ;
;31H,32H:接收的前8 位地址編碼           ;
;33H,30H:接收的后4 位地址編碼(若最后4位用作數(shù)據(jù)端,則只須讀第33H單元的內(nèi)容即可)
;當(dāng)用作數(shù)據(jù)端時(shí),PT2262對(duì)應(yīng)腳懸空被認(rèn)為是低電平。
;地址數(shù)據(jù)說(shuō)明                           ;
;以31H.0 和32H.0 為例                   ;
;懸空 : 31H.0=0 32H.0=1                 ;
;    1: 31H.0=1 32H.0=1                 ;
;    0: 31H.0=0 32H.0=0                 ;
;出錯(cuò)   31H.0=1 32H.0=0                 ;
;
;說(shuō)明:為了能可靠檢測(cè)到有效信號(hào),建議每次接收至少檢測(cè)3次,然后比較3次檢測(cè)值
;3次值相同才認(rèn)為收到了正確信號(hào)。可在主程序中如下處理:第1次檢測(cè)時(shí)調(diào)用REMOTE
;第2、3次檢測(cè)時(shí)調(diào)用REMOTES,請(qǐng)注意必需連續(xù)調(diào)用,否則得不到正確的數(shù)據(jù)
;
;注意:將T1設(shè)定為16位定時(shí)器,允許中斷,否則將導(dǎo)致接收數(shù)據(jù)錯(cuò)誤
;---------------------------------------;
REMOTE:                                 ;
        CLR     RECEIVE                 ;
;檢測(cè)50ms 內(nèi)有沒(méi)有編碼接收              ;
        MOV     3AH,#55                 ;
REMOTEA:                                ;
        MOV     3BH,#250                ;
REMOTEB:                                ;
        JB      REM,REMOTE0             ;有碼發(fā)送則跳轉(zhuǎn)
        DJNZ    3BH,REMOTEB             ;
        DJNZ    3AH,REMOTEA             ;
REMOTE_END_1:                           ;
        CLR     ENABLE_DETE             ;
REMOTE_END:                             ;
        CLR     REMOTING                ;清除探頭檢測(cè)標(biāo)志
        RET                             ;
REMOTE0:                                ;
        JB      ENABLE_DETE,REMOTE_END_1;按鍵沒(méi)有放開(kāi)則返回
REMOTES:
        MOV     34H,#12                 ;接收12位編碼
;解碼                                   ;
;先找出接收碼的開(kāi)頭即10ms 左右的高電平  ;
;設(shè)置高電平時(shí)間為8~12ms                 ;
;檢測(cè)和等待8ms 的低電平,70ms門(mén)限        ;
        CLR     T_OVER                  ;
        MOV     TH1,#00H                ;
        MOV     TL1,#00H                ;
        SETB    TR1                     ;
REMOTE1:                                ;
        MOV     3AH,#50                 ;
REMOTE2:                                ;
        MOV     3BH,#25                 ;
REMOTE3:                                ;
        JB      REM,REMOTE1             ;
        JB      T_OVER,REMOTE_END       ;
        DJNZ    3BH,REMOTE3             ;
        DJNZ    3AH,REMOTE2             ;
                                        ;
;等待在4ms 內(nèi)接收到的高電平             ;
        CLR     T_OVER                  ;
        MOV     TH1,#0F1H               ;
        MOV     TL1,#0F0H               ;
        SETB    TR1                     ;
REMOTE_4:                               ;
        JB      T_OVER,REMOTE_5         ;
        JNB     REM,REMOTE_4            ;
        CLR     TR1                     ;
        AJMP    REMOTE6                 ;
;超出12ms 接收錯(cuò)誤返回                  ;
REMOTE_5:                               ;
        AJMP    REMOTE_END              ;
REMOTE6:                                ;
;等待550us 后采集接收信號(hào)               ;
        MOV     3AH,#00                 ;
        DJNZ    3AH,$                   ;
;采集接收信號(hào)并記錄                     ;
        MOV     C,REM                   ;
        MOV     A,33H                   ;
        RLC     A                       ;
        MOV     33H,A                   ;
        MOV     A,31H                   ;
        RLC     A                       ;
        MOV     31H,A                   ;
;等待第二個(gè)上升沿,限時(shí)1.5ms             ;
        CLR     T_OVER                  ;
        MOV     TH1,#0FAH               ;
        MOV     TL1,#099H               ;
        SETB    TR1                     ;
RM1:    JB      T_OVER,REMOTE_END       ;
        JB      REM,RM1                 ;
        CLR     TR1                     ;
                                        ;
        CLR     T_OVER                  ;
        MOV     TH1,#0FAH               ;
        MOV     TL1,#099H               ;
        SETB    TR1                     ;
RM2:    JB      T_OVER,REMOTE_END       ;
        JNB     REM,RM2                 ;
        CLR     TR1                     ;
;等待550us 后采集接收信號(hào)               ;
        MOV     3AH,#00                 ;
        DJNZ    3AH,$                   ;
        MOV     C,REM                   ;
        MOV     A,30H                   ;
        RLC     A                       ;
        MOV     30H,A                   ;
        MOV     A,32H                   ;
        RLC     A                       ;
        MOV     32H,A                   ;
;等待第二個(gè)碼值的上升沿                 ;
        CLR     T_OVER                  ;
        MOV     TH1,#0FAH               ;
        MOV     TL1,#099H               ;
        SETB    TR1                     ;
RM3:    JB      T_OVER,RM5              ;
        JB      REM,RM3                 ;
        CLR     TR1                     ;
                                        ;
        CLR     T_OVER                  ;
        MOV     TH1,#0FAH               ;
        MOV     TL1,#099H               ;
        SETB    TR1                     ;
RM4:    JB      T_OVER,RM5              ;
        JNB     REM,RM4                 ;
        CLR     TR1                     ;
        DJNZ    34H,REMOTE6             ;
;把接收的編碼左移4 位將8 位密碼放在同一字節(jié)上
        MOV     34H,#4                  ;
        AJMP    REMOTE7                 ;
RM5:    AJMP    REMOTE_END              ;
REMOTE7:                                ;
        CLR     C                       ;
        MOV     A,33H                   ;
        RLC     A                       ;
        MOV     33H,A                   ;
        MOV     A,31H                   ;
        RLC     A                       ;
        MOV     31H,A                   ;
        CLR     C                       ;
        MOV     A,30H                   ;
        RLC     A                       ;
        MOV     30H,A                   ;
        MOV     A,32H                   ;
        RLC     A                       ;
        MOV     32H,A                   ;
        DJNZ    34H,REMOTE7             ;
;把4 位數(shù)據(jù)編碼由高4 位移到低4 位上     ;
        MOV     A,33H                   ;
        SWAP    A                       ;
        MOV     33H,A                   ;
        MOV     A,30H                   ;
        SWAP    A                       ;
        MOV     30H,A                   ;
        SETB    ENABLE_DETE             ;
        SETB    RECEIVE                 ;
                                        ;
        AJMP    REMOTE_END_1            ;

  • 上一篇: 12F629解PT2262IR的源程序
  • 下一篇: PT2262/2272編解碼集成電路介紹
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁(yè)  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1