新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 單片機(jī)之秒表匯編程序

        單片機(jī)之秒表匯編程序

        作者: 時間:2012-10-20 來源:網(wǎng)絡(luò) 收藏
        此程序上電后開始顯示并不正常,過一會才正常,按鍵似乎并沒有用,希望能明白怎么回事

        頻率12mhz ,從零開始計到99秒,原理為先通過十六進(jìn)制和十進(jìn)制的轉(zhuǎn)換后使用變址尋址把數(shù)據(jù)

        顯示出來,十位和各位共延時4毫秒,如果有按鍵按下計數(shù)從零開始

        DIZHI  EQU 21H    ;用于中間的數(shù)據(jù)傳送COUNT  EQU 22H    ;用于計數(shù)器的自加ORG    0000HJMP    STARTORG    0030HTAB:   DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H  ;共陽極代碼START:  CLR    COUNTWORK1:  CALL   DISPY         ;十六進(jìn)制的轉(zhuǎn)換,輸出代碼顯示INC    COUNTJNB     P2.0 , FUYUAN ;s4按下從零開始計數(shù)MOV    A  ,COUNTCJNE   A  ,#100 ,WORK2CLR    COUNTCALL   STARTWORK2:   LJMP   WORK1DISPY:  MOV    A  ,COUNTMOV    B ,#10DIV    ABMOV    R1 ,#250    ;寄存器計數(shù)250次,一次4毫秒MOV    DIZHI  ,ADISP: MOV    A      ,DIZHI ;數(shù)據(jù)的中間交換MOV    DPTR  ,#TABMOVC    A   ,@ A+DPTR;變址尋址MOV    P0  ,A       ;P0為段選CLR     P2.5         ;P2位選,顯示十位CALL    DELSETB    P2.5MOV     A   ,BMOVC    A  , @A+DPTRMOV     P0 ,A        ;顯示個位CLR      P2.4CALL    DELSETB    P2.4DJNZ    R1  ,DISPRETFUYUAN:CALL    DELMOV      P0  ,#11111111BMOV      P2 ,#11111111BLJMP    START   ;從零開始DEL:   MOV     R6 ,#4F1:   MOV     R7, #250    ;延時兩個毫秒F2:   DJNZ     R7 ,F2DJNZ     R6 ,F1RETEND

        模數(shù)轉(zhuǎn)換器相關(guān)文章:模數(shù)轉(zhuǎn)換器工作原理




        關(guān)鍵詞: 單片機(jī) 秒表 匯編程序

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 随州市| 新晃| 金溪县| 南丰县| 郎溪县| 南陵县| 湄潭县| 互助| 泰宁县| 浪卡子县| 阳原县| 彭泽县| 泰和县| 石狮市| 开江县| 揭东县| 苍山县| 乐平市| 五台县| 台中市| 金阳县| 德阳市| 武平县| 甘孜| 安顺市| 庐江县| 谢通门县| 英山县| 隆化县| 旬阳县| 长岛县| 肥乡县| 瑞昌市| 奉节县| 广西| 历史| 五原县| 庆安县| 湘潭市| 东安县| 上林县|