機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開(kāi)發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開(kāi)發(fā)
培訓(xùn)信息
贊助商
PIC單片機(jī)電子鐘(已測(cè)試OK)
PIC單片機(jī)電子鐘(已測(cè)試OK)
 更新時(shí)間:2008-8-3 15:43:26  點(diǎn)擊數(shù):30
【字體: 字體顏色

HOUR_H   MOVF   BUF2, W         ;
         XORLW  24H             ;
         BTFSC  STATUS,Z        ;
         CLRF   BUF2            ;
WAITREL  CALL   DISP2           ;
         MOVF   PORTB,W         ;
         ANDLW  B'00110111'     ;
         XORLW  B'00110111'     ;
         BTFSC  STATUS,Z        ;
         GOTO   KEYLOOP1        ;
         GOTO   WAITREL         ;
KEYLOOP1 CALL   delay10ms       ;
         GOTO   KEYLOOP         ;
;*********************************
INTSERV
         MOVWF   W_TEMP         ;
         SWAPF   STATUS,W       ;
         CLRF    STATUS         ;
         MOVWF   STATUS_TEMP    ;

         BCF     INTCON,T0IF    ;
         DECFSZ  CNT2,1         ;
         GOTO    KEYOUT         ;
         MOVLW   .16            ;
         MOVWF   CNT2           ;
         INCF    BUF,1          ;
         MOVF    BUF,W          ;
         ANDLW   0FH            ;
         XORLW   0AH            ;
         BTFSS   STATUS,Z       ;
         GOTO    KEYOUT         ;
         MOVF    BUF,W          ;
         ANDLW   0F0H           ;
         MOVWF   BUF            ;
         MOVLW   10H            ;
         ADDWF   BUF,1          ;
         MOVF    BUF,W          ;
         ANDLW   0F0H           ;
         XORLW   60H            ;
         BTFSS   STATUS,Z       ;
         GOTO    KEYOUT         ;
         CLRF    BUF            ;

         INCF    BUF1,1         ;
         MOVF    BUF1,W         ;
         ANDLW   0FH            ;
         XORLW   0AH            ;
         BTFSS   STATUS,Z       ;
         GOTO    KEYOUT         ;
         MOVF    BUF1,W         ;
         ANDLW   0F0H           ;
         MOVWF   BUF1           ;
         MOVLW   10H            ;
         ADDWF   BUF1,1         ;
         MOVF    BUF1,W         ;
         ANDLW   0F0H           ;
         XORLW   60H            ;
         BTFSS   STATUS,Z       ;
         GOTO    KEYOUT         ;
         CLRF    BUF1           ;

         INCF    BUF2,1         ;
         MOVF    BUF2,W         ;
         ANDLW   0FH            ;
         XORLW   0AH            ;
         BTFSS   STATUS,Z       ;
         GOTO    HOUR_OUT       ;
         MOVF    BUF2,W         ;
         ANDLW   0F0H           ;
         MOVWF   BUF2           ;
         MOVLW   10H            ;
         ADDWF   BUF2,1         ;
         MOVF    BUF2,W         ;
         ANDLW   0F0H           ;
         XORLW   20H            ;
         BTFSS   STATUS,Z       ;
         GOTO    HOUR_OUT       ;
HOUR_OUT MOVF    BUF2, W        ;
         XORLW   24H            ;
         BTFSC   STATUS,Z       ;
         CLRF    BUF2           ;

KEYOUT   MOVLW   .12            ;
         MOVWF   TMR0           ;
         SWAPF   STATUS_TEMP,W  ;
         MOVWF   STATUS         ;
         SWAPF   W_TEMP,F       ;
         SWAPF   W_TEMP,W       ;
         RETFIE                 ;
;*********************************
;        顯示子程序             ;
;*********************************
DISP2    MOVF   BUF,  W         ;
         ANDLW  0FH             ;
         CALL   convert         ;
         MOVWF  PORTC           ;
         BCF    PORTD,0         ;
         CALL   DELAY           ;
         BSF    PORTD,0         ;

         MOVF   BUF, W          ;
         MOVWF  BUF_TEMP        ;
         SWAPF  BUF_TEMP,W      ;
         ANDLW  0FH             ;
         CALL   convert         ;
         MOVWF  PORTC           ;
         BCF    PORTD,1         ;
         CALL   DELAY           ;
         BSF    PORTD,1         ;

         MOVF   BUF1, W         ;
         ANDLW  0FH             ;
         CALL   convert         ;
         MOVWF  PORTC           ;
         BCF    PORTD,2         ;
         CALL   DELAY           ;
         BSF    PORTD,2         ;

         MOVF   BUF1, W         ;
         MOVWF  BUF1_TEMP       ;
         SWAPF  BUF1_TEMP,W     ;
         ANDLW  0FH             ;
         CALL   convert         ;
         MOVWF  PORTC           ;
         BCF    PORTD,3         ;
         CALL   DELAY           ;
         BSF    PORTD,3         ;

         MOVF   BUF2, W         ;
         ANDLW  0FH             ;
         CALL   convert         ;
         MOVWF  PORTC           ;
         BCF    PORTD,4         ;
         CALL   DELAY           ;
         BSF    PORTD,4         ;

         MOVF   BUF2, W         ;
         MOVWF  BUF2_TEMP       ;
         SWAPF  BUF2_TEMP,W     ;
         ANDLW  0FH             ;
         CALL   convert         ;
         MOVWF  PORTC           ;
         BCF    PORTD,5         ;
         CALL   DELAY           ;
         BSF    PORTD,5         ;
         RETURN                 ;
;*********************************
DELAY                           ;{2+[2+(1+2)*(DATA2-1)+2+1+2]*(DATA1-1)+2+2}=0.382MS
         MOVLW  N1              ;(1)
         MOVWF  DATA1           ;(1)
DEL1     MOVLW  N2              ;(1)
         MOVWF  DATA2           ;(1)
DEL2     DECFSZ DATA2,1         ;(1\2)DATA2-1=0?
         GOTO   DEL2            ;(2)
         DECFSZ DATA1,1         ;(1\2)DATA1-1=0?
         GOTO   DEL1            ;(2)
         RETURN                 ;(2)
;;********************************
delay10ms
         MOVLW  .4              ;將外層循環(huán)參數(shù)值送到DATA3
         MOVWF  DATA3           ;
LP0
         MOVLW  .3              ;將內(nèi)層循環(huán)參數(shù)值送到DATA4
         MOVWF  DATA4           ;
LP1      CALL   DISP2           ;(382*4+44)uS=1.572MS
         DECFSZ DATA4,1         ;變量DATA4內(nèi)容遞減,若為0則跳躍
         GOTO   LP1             ;跳轉(zhuǎn)到LP1
         DECFSZ DATA3,1         ;變量DATA3內(nèi)容遞減,若為0則跳躍
         GOTO   LP0             ;跳轉(zhuǎn)到LP0
         RETURN                 ;返回主程序
;**********************************
convert
         ADDWF   PCL,1          ;
TABLE    RETLW   0C0H           ; 0  
         RETLW   0F9H           ; 1
         RETLW   0A4H           ; 2
         RETLW   0B0H           ; 3
         RETLW   99H            ; 4
         RETLW   92H            ; 5
         RETLW   82H            ; 6
         RETLW   0F8H           ; 7
         RETLW   80H            ; 8
         RETLW   90H            ; 9
         END


參考鏈接:http://www.picavr.com/news/2008-06/6755.htm



  • 上一篇: 16X16點(diǎn)陣漢字顯示89C51(已測(cè)試OK)
  • 下一篇: AT892051設(shè)計(jì)智能洗衣機(jī)的思路和方法
  • 發(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)更名-聲明
    電話(huà):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