新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 三維坐標調整的單片機實驗

        三維坐標調整的單片機實驗

        作者: 時間:2016-11-30 來源:網絡 收藏

        ;;;;;;;;;;;;;;;;;;;;;;;;;
        ORG 0H ;程序代碼由地址0開始執行
        MAIN:
        ;;;;;;;;;;;;;;;;;;;;;;;;;;;;啟動數據顯示
        SX:JBYX,XX1
        JNBYX,$
        AJMPB_J
        XX1:JBQD,XX2
        JNBQD,$
        AJMP S_T_D
        XX2: LCALL LSLED
        AJMP SX
        RET
        ;;;;;;;;;;;;;;;;;;;;;;;;;運行時數碼管顯示
        LSLED:
        ;LCALLLED1
        ;LCALL LED2
        ;RET
        MOVP3,#0D0H
        LCALL LED_1
        INCP3
        LCALL LED_2
        INCP3
        LCALL LED_3
        INCP3
        LCALL LED_4
        INCP3
        LCALL LED_5
        INCP3
        LCALL LED_6
        INCP3
        LCALL LED_7
        INCP3
        LCALL LED_8
        INCP3
        LCALL LED_9
        INCP3
        LCALL LED_10
        INCP3
        LCALL LED_11
        INCP3
        LCALL LED_12
        INCP3
        LCALL LED_13
        INCP3
        LCALL LED_14
        INCP3
        LCALL LED_15
        INCP3
        LCALL LED_16
        INCP3
        LCALL LED_17
        INCP3
        LCALL LED_18
        INCP3
        LCALL LED_19
        INCP3
        LCALL LED_20
        INCP3
        LCALL LED_21
        INCP3
        LCALL LED_22
        INCP3
        LCALL LED_23
        INCP3
        LCALL LED_24
        RET
        LED1:
        MOVLSL,#0D0H
        MOVR1,#60H
        LED1_1:
        MOVXA,@R1
        MOVP3,LSL
        LCALL LED
        INCLSL
        INCR1
        MOVA,LSL
        CJNEA,#0DFH,LED1_1
        MOVR1,#30H
        MOVA,LSL
        CJNEA,#0E7H,LED1_1
        RET
        ;;;;;;;;;;;;;;;;;;;;;;;;;;運行數據調用
        B_J:JBYX,B_J_0
        JNBYX,$
        AJMPSX
        B_J_0:LCALLL_S_X_L
        LCALLB_J_L
        LCALLL_S_L_X
        LCALLL_S_Y_L
        LCALLB_J_L
        LCALLL_S_L_Y
        LCALLL_S_Z_L
        LCALLB_J_L
        LCALLL_S_L_Z
        MOVYANS,#5;;;;;;;;;;;;;;;;;;;;;加一數據延時賦值
        B_J_LED:LCALLLSLED
        DECYANS
        MOVA,YANS
        CJNEA,#0,B_J_LED
        AJMPB_J
        ;;;;;;;;;;;;;;;;;;;;;;;數據調用;;;;;;;;;;;;;;;;;;;;;;;;;
        L_S_X_L:MOVLSQ,MXQ
        MOVLSB,MXB
        MOVLSS,MXS
        MOVLSG,MXG
        MOVLSQ1,LXQ
        MOVLSB1,LXB
        MOVLSS1,LXS
        MOVLSG1,LXG
        RET
        L_S_Y_L:MOVLSQ,MYQ
        MOVLSB,MYB
        MOVLSS,MYS
        MOVLSG,MYG
        MOVLSQ1,LYQ
        MOVLSB1,LYB
        MOVLSS1,LYS
        MOVLSG1,LYG
        RET
        L_S_Z_L:MOVLSQ,MZQ
        MOVLSB,MZB
        MOVLSS,MZS
        MOVLSG,MZG
        MOVLSQ1,LZQ
        MOVLSB1,LZB
        MOVLSS1,LZS
        MOVLSG1,LZG
        RET
        L_S_L_X:MOVLXQ,LSQ1
        MOVLXB,LSB1
        MOVLXS,LSS1
        MOVLXG,LSG1
        RET
        L_S_L_Y:MOVLYQ,LSQ1
        MOVLYB,LSB1
        MOVLYS,LSS1
        MOVLYG,LSG1
        RET
        L_S_L_Z:MOVLZQ,LSQ1
        MOVLZB,LSB1
        MOVLZS,LSS1
        MOVLZG,LSG1
        RET
        ;;;;;;;;;;;;;;;;;;;;;數據比較;;;;;;;;;;;;;;;;;;;;;;
        B_J_L:
        MOVA,LSQ
        CJNEA,LSQ1,B_J_LD
        MOVA,LSB
        CJNEA,LSB1,B_J_LD
        MOVA,LSS
        CJNEA,LSS1,B_J_LD
        MOVA,LSG
        CJNEA,LSG1,B_J_LD
        RET
        B_J_LD:JCB_J_LQ_X

        B_J_LQ_D:INCLSG1
        MOVA,LSG1
        CJNEA,#10,B_J_END
        MOVLSG1,#0
        INCLSS1
        MOVA,LSS1
        CJNEA,#10,B_J_END
        MOVLSS1,#0
        INCLSB1
        MOVA,LSB1
        CJNEA,#10,B_J_END
        MOVLSB1,#0
        INCLSQ1
        MOVA,LSQ1
        CJNEA,#10,B_J_END
        MOVLSQ1,#9
        MOVLSB1,#9
        MOVLSS1,#9
        MOVLSG1,#9
        AJMPB_J_END
        B_J_LQ_X:DECLSG1
        MOVA,LSG1
        CJNEA,#-1,B_J_END
        MOVLSG1,#9
        DECLSS1
        MOVA,LSS1
        CJNEA,#-1,B_J_END
        MOVLSS1,#9
        DECLSB1
        MOVA,LSB1
        CJNEA,#-1,B_J_END
        MOVLSB1,#9
        DECLSQ1
        MOVA,LSQ1
        CJNEA,#-1,B_J_END
        MOVLSQ1,#0
        MOVLSB1,#0
        MOVLSS1,#0
        MOVLSG1,#0
        AJMPB_J_END
        B_J_END:
        RET
        ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;光標操作
        ;;;;;;;;;;延時賦值;;;;;;;;;;;;;;;;;;;
        FU_Z:MOV R4,#10
        MOV YANS,#10
        RET
        ;;;;;;;;;;;;;;;指針值;;;;;;;;;;;;;;;;;;;;
        S_T_D:MOVR0,#60H
        MOVLS,@R0
        S_T_D_0:
        MOV@R0,LS
        JBQD,S_T_D_B
        JNBQD,$
        AJMPSX
        S_T_D_B:
        LCALL FU_Z
        ;;;;;;;;;;;;;;;光標判斷;;;;;;;;;;;;;;;;;
        S_T_D_A:

        JBGI,S_T_D_1
        JNBGI,$
        MOV@R0,LS
        INCR0
        MOVA,R0
        CJNEA,#6CH,S_T_D_2
        MOVR0,#60H
        AJMPS_T_D_2
        S_T_D_1:
        JBGD,S_T_D_2
        JNBGD,$
        MOV@R0,LS
        DECR0
        MOVA,R0
        CJNEA,#5FH,S_T_D_2
        MOVR0,#6BH
        ;;;;;;;;;;;;;;;;數據判斷;;;;;;;;;;;;;;;;
        S_T_D_2:
        MOVA,@R0
        LCALL S_L
        MOVLS,A
        MOV@R0,LS
        ;;;;;;;;;;;;;;;;;;閃爍判斷;;;;;;;;;;;;;
        S_T_D_R:
        MOVA,R4
        CJNE A,#0,S_T_D_RD
        LJMP S_T_D_Y
        S_T_D_RD:
        DEC R4
        LCALL LSLED
        LJMP S_T_D_A
        S_T_D_Y:
        MOV@R0,#10
        MOV A,YANS
        CJNE A,#0,S_T_D_YD
        LJMP S_T_D_0
        S_T_D_YD:
        DEC YANS
        LCALL LSLED
        MOV@R0,LS
        LJMP S_T_D_A
        ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;數據判斷
        S_L:
        SETB SI
        SETB SD
        JB SI,S_J
        JNB SI,$
        CJNE A,#9,S_E
        MOV A,#9
        AJMP S_J
        S_E:INC A
        S_J:JB SD,S_E3
        JNB SD,$
        CJNE A,#0,S_E2
        MOV A,#0
        AJMP S_E3
        S_E2: DEC A
        S_E3:RET
        ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;數碼管顯示
        LED: MOV DPTR,#TABLE
        MOVC A,@A+DPTR
        MOV P1,A
        LCALL DELAY1
        RET
        ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
        LED_1:MOV A,LXQ
        LCALL LED
        RET
        LED_2:MOV A,LXB
        LCALL LED
        RET
        LED_3:MOV A,LXS
        LCALL LED
        RET
        LED_4:MOV A,LXG
        LCALL LED
        RET
        LED_5:MOV A,LYQ
        LCALL LED
        RET
        LED_6:MOV A,LYB
        LCALL LED
        RET
        LED_7: MOV A,LYS
        LCALL LED
        RET
        LED_8:MOV A,LYG
        LCALL LED
        RET
        LED_9:MOV A,LZQ
        LCALL LED
        RET
        LED_10: MOV A,LZB
        LCALL LED
        RET
        LED_11:MOV A,LZS
        LCALL LED
        RET
        LED_12:MOV A,LZG
        LCALL LED
        RET
        LED_13:MOV A,MXQ
        LCALL LED
        RET
        LED_14:MOV A,MXB
        LCALL LED
        RET
        LED_15:MOV A,MXS
        LCALL LED
        RET
        LED_16:MOV A,MXG
        LCALL LED
        RET
        LED_17:MOV A,MYQ
        LCALL LED
        RET
        LED_18:MOV A,MYB
        LCALL LED
        RET
        LED_19: MOV A,MYS
        LCALL LED
        RET
        LED_20:MOV A,MYG
        LCALL LED
        RET
        LED_21:MOV A,MZQ
        LCALL LED
        RET
        LED_22: MOV A,MZB
        LCALL LED
        RET
        LED_23:MOV A,MZS
        LCALL LED
        RET
        LED_24:MOV A,MZG
        LCALL LED
        RET
        TABLE:
        DB 0C0H ;"0"
        DB 0F9H ;"1"
        DB 0A4H ;"2"
        DB 0B0H ;"3"
        DB 99H ;"4"
        DB 92H ;"5"
        DB 82H ;"6"
        DB 0F8H ;"7"
        DB 80H ;"8"
        DB 90H ;"9"
        DB0FFH
        DB0FFH
        DB0FFH
        DB0FFH
        DB0FFH
        DB0FFH
        DELAY1:
        MOV R7,#10
        L1: MOV R6,#50
        DJNZ R6,$
        DJNZ R7,L1
        RET
        END


        上一頁 1 2 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 巨野县| 延长县| 莒南县| 上蔡县| 昌都县| 兰坪| 吴堡县| 时尚| 灌阳县| 天长市| 靖远县| 遂溪县| 台中市| 丰城市| 和田县| 麟游县| 东山县| 拉萨市| 宁德市| 富源县| 前郭尔| 磴口县| 辉南县| 扶绥县| 雷州市| 鹤庆县| 台江县| 荥经县| 华容县| 息烽县| 新野县| 新余市| 宝丰县| 屏南县| 德令哈市| 山东| 丽水市| 延川县| 吴桥县| 湖口县| 六盘水市|