新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機第一次作業

        單片機第一次作業

        作者: 時間:2016-11-25 來源:網絡 收藏
        作業:把片內RAM的30H處的值(是壓縮BCD碼)展開為非壓縮BCD碼放41H,42H處。(高位放41H處)
        ,此題不是太難,所以就選了這道啦!具體步驟,請大家看好啦!

        1、先fileànew建asm文件5.asm。
        MOV A,30H
        ANL A,#0FH
        MOV 42H,A
        MOV A,30H
        SWAP A
        ANL A,#0FH
        MOV 41H,A
        END
        為了調試時看數據,預先在30H中賦值為56H,所以程序前加:
        MOV 30H,#56H
        為了在最后不至于出現不想看到的框,可以在END前加兩三個NOP指令,程序變為:
        MOV 30H,#56H
        MOV A,30H
        ANL A,#0FH
        MOV 42H,A
        MOV A,30H
        SWAP A
        ANL A,#0FH
        MOV 41H,A
        NOP
        NOP;因為NOP是僅耗時但什么也不做的空指令,對本程序無影響,也可以不寫。
        NOP
        END
        2、建新工程,Projectànewproject,選AtemlàAT89C51,導入文件5.asm。
        注意,對初學者,一個工程里只能有本程序5.asm,無關的程序要刪除,新試驗一個程序最好重新建工程,以保證一個工程里只有你要試驗的那一個程序。

        ,前面的出了程序基本照抄老師的,圖省事嘛!

        3、可見程序:

        4、進行編譯、連接。編譯通過后,點debug下的start/stop開始調試,step和stepover都是單步調試,step是遇到子程序或中斷也要進入進行單步調試,stepover是遇到子程序或中斷當一句一次執行完。本程序物子程序,二者是一樣的。,準備工作已經做好,下面就開始執行嘍!我們執行一句得到:


        點viewàmemorywindows,再輸入D:30h回車,得到:



        可見D:30H處變為56H.是將要執行的語句,再執行一步,可見:



        把30H中的值賦給了A,所以A中的值變為56H,再執行一步,可見:



        把A中的值與0FH進行邏輯“與”,A中的值高四位被屏蔽,所以A中的值變為06H,再執行一步,可見:


        上一頁 1 2 下一頁

        關鍵詞: 單片機壓縮BCD

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 额济纳旗| 木兰县| 横峰县| 清新县| 岳西县| 上栗县| 阳东县| 普定县| 涿鹿县| 五常市| 密云县| 漠河县| 南平市| 辽中县| 乌海市| 神池县| 花莲市| 湟源县| 上蔡县| 瑞金市| 朝阳市| 拉萨市| 台前县| 台北市| 新龙县| 柳河县| 普格县| 昌图县| 祁东县| 桦南县| 衡阳县| 凉山| 阜南县| 呈贡县| 视频| 仙居县| 鲁山县| 双桥区| 镇远县| 绵阳市| 广州市|