新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 51單片機的315M發射頭發送匯編程序

        51單片機的315M發射頭發送匯編程序

        作者: 時間:2016-11-28 來源:網絡 收藏
        ;----------------------------------------------------------------
        ;5s時間子程序和電源電壓監測中斷處理程序
        INTT0:CLR TR0 ;關計數器T1
        PUSH ACC ;進棧保護ACC數據
        PUSH PSW ;進棧保護PSW數據
        MOV TH0,#3CH ;設T1為100mS
        MOV TL0,#0B0H
        INC R1 ;時間計數器,100ms進位1次
        CJNE R1,#50,LOP1 ;計時計數器,5s進位1次
        MOV R1,#00H ;時間到清零
        CLR LED1 ;指示燈閃亮一下指示防盜監測狀態
        ACALL YS2
        SETB LED1
        ACALL DYJC1 ;檢測電源電壓
        LOP1: POP PSW ;PSW出棧
        POP ACC ;ACC出棧
        SETB TR0 ;開計數器T1
        RETI ;中斷返回
        ;----------------------------------------------------------------
        ;以下電源電壓檢測程序
        ;----------------------------------------------------------------
        DYJC1:JB DYJC,LOP3 ;檢測電源電壓
        CLR LED1 ;發光管亮
        ACALL DIDI ;是則2聲DI報警
        ACALL DIDI
        DJNZ R0,LOP3 ;報警超過5次,連續報警多次后關機并進入掉電模式
        MOV A,#20 ;低壓則連續報警20次
        LOP2: ACALL DIDI
        ACALL YS2
        DEC A
        JNZ LOP2
        SETB LED1 ;發光管滅
        ORL PCON,#2 ;進入掉電模式,只有復位才能啟動
        NOP
        NOP
        NOP
        AJMP KS1 ;軟件陷阱
        LOP3: RET
        NOP
        NOP
        NOP
        AJMP KS1 ;軟件陷阱
        ;----------------------------------------------------------------
        ;以下為報警子程序
        ;----------------------------------------------------------------
        ;DI聲報警子程序
        DIDI: MOV 20H,#0F0H ;DI聲提示音
        L111: SETB SPK1 ;開喇叭
        ACALL L222 ;延時時間比INT1長
        CLR SPK1 ;關喇叭
        ACALL L222 ;
        DJNZ 20H,L111 ;不為零轉
        RET
        L222: MOV R2,#08H ;
        S00EB:PUSH 02H ;R2(復位后R2即為02H)存放時間常數,進棧保護
        L00ED:PUSH 02H ;R2進棧保護
        L00EF:PUSH 02H ;進棧
        L00F1:DJNZ R2,$ ;R2不為零等待
        POP 02H ;出棧
        DJNZ R2,L00EF ;R2不為零轉
        POP 02H ;出棧
        DJNZ R2,L00ED ;R2不為零轉
        POP 02H ;出棧
        DJNZ R2,S00EB ;R2不為零轉
        RET ;子程序返回
        ;----------------------------------------------------------------
        ;以下為延時子程序
        ;----------------------------------------------------------------
        ;延時子程序
        YS1: MOV R6,#0FFH
        Y11: MOV R7,#0FFH
        Y12: NOP
        NOP
        NOP
        DJNZ R7,Y12
        DJNZ R6,Y11
        RET
        ;----------------------------------------------------------------
        YS2: MOV R5,#08H ;中長時間延時
        Y20: MOV R6,#0FFH
        Y21: MOV R7,#0FFH
        Y22: NOP
        NOP
        NOP
        DJNZ R7,Y22
        DJNZ R6,Y21
        DJNZ R5,Y20
        RET
        ;----------------------------------------------------------------
        YS3: MOV R5,#50 ;長長時間延時
        Y30: MOV R6,#0FFH
        Y31: MOV R7,#0FFH
        Y32: NOP
        NOP
        NOP
        DJNZ R7,Y32
        DJNZ R6,Y31
        DJNZ R5,Y30
        RET
        ORG 0300H
        NOP
        NOP
        NOP
        LJMP KS1 ;軟件陷阱
        END

        上一頁 1 2 下一頁

        關鍵詞: 51單片機315M發射頭發送匯編程

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 八宿县| 岳西县| 赤城县| 桐城市| 宁夏| 三明市| 饶河县| 渝北区| 霍林郭勒市| 京山县| 广安市| 荣昌县| 湟中县| 马山县| 乌恰县| 堆龙德庆县| 宁津县| 新野县| 江西省| 通辽市| 锡林郭勒盟| 繁昌县| 新巴尔虎左旗| 尚义县| 贞丰县| 厦门市| 宝坻区| 荥经县| 赣州市| 珲春市| 昂仁县| 山东省| 平利县| 衡水市| 崇阳县| 璧山县| 冕宁县| 黔西县| 贵州省| 宣威市| 九龙县|