导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→二个二.十进制转换程序实验.并运行通过.[czha1]

 *第50154篇: 二个二.十进制转换程序实验.并运行通过.

  
楼 主:czha1 2007年6月20日11:06
 二个二.十进制转换程序实验.并运行通过.

--------------------------------------------------------------------------------
 
本人利用自己开发的控制板做了二个二.十进制转换程序实验.并运行通过.

相当于测量温度,频率.速度所取得的二进制数.转换成十进制以便于在液晶或数码

管显示.对于注塑机测量位移有相当的一致性.程序加以改进也可应用于普通设备

的数字化测量.比如车床.铣床等需要行程测量控制的方面.具有一定的参考价值

;十进制16除2  三次分别显示在百位十位个位程序      
            GDM    EQU   50H  ;定义寄存单元个位
            SDM    EQU   51H  ;定义寄存单元十位
            BDM    EQU   52H  ;定义寄存单元百位
           ORG    0000H
           LJMP   MAIN
           ORG    0030H
MAIN:   MOV    SCON,#00H
        MOV    R0,#02H
        MOV    A,#10H
        MOV    B,R0
        DIV    A
        MOV    R1,A      ;8
        MOV    B,R0
        DIV    AB
        MOV    R2,A      ;4
        MOV    B,R0
        DIV    AB
        MOV    R3,A      ;2
 LCALL  XSCL      ;调用显示处理子程序
        MOV    SBUF,BDM
        MOV    P1,R3
        LCALL  TT
        MOV    SBUF,SDM
        MOV    P1,R2
        LCALL  TT
        MOV    SBUF,GDM
        MOV    P1,R1
        LCALL  TT
LOP:    JB     P3.2,LOP
        ACALL  D1
        JB     P3.2,LOP
        CLR    P3.7
        AJMP   MAIN 
TT:     JBC    TI,TT
        CLR    TI
        RET
XSCL:   MOV    A,R3
        MOV    DPTR,#TAB  ;数据指针首地址
        MOVC   A,@A+DPTR
 MOV    BDM,A
        MOV    A,R2
 MOV    DPTR,#TAB
 MOVC   A,@A+DPTR
 MOV    SDM,A
 MOV    A,R1
 MOV    DPTR,#TAB
 MOVC   A,@A+DPTR
 MOV    GDM,A
 RET
D1:     MOV    R4,#0FFH
DE:     MOV    R5,#0FFH
DE1:    DJNZ   R5,DE1
        DJNZ   R4,DE
        RET
 ORG    0100H
TAB:    DB 3FH,06H,5BH,4FH,66H   ;共阴代码   三位数码管最后显示  8   4    2
        DB 6DH,7DH,07H,7FH,6FH
        END


;二进制10011000 用十进制152在数码管显示程序
        GDM    EQU   50H
 SDM    EQU   51H
 BDM    EQU   52H
        ORG    0000H
        LJMP   MAIN
        ORG    0030H
MAIN:   MOV    SCON,#00H
        MOV    R0,#98H   ;152 
        MOV    B,#64H    ;/100除100
        MOV    A,R0
 DIV    AB
        MOV    R1,A
        MOV    A,B
        MOV    B,#0AH    ;/10除10
        DIV    AB
        MOV    R2,A
        MOV    A,B
        MOV    B,#01H    ;/1除1
        DIV    AB
        MOV    R3,A
 LCALL  XSCL
        MOV    SBUF,BDM
        MOV    P1,R3
        LCALL  TT
        MOV    SBUF,SDM
        MOV    P1,R2
        LCALL  TT
        MOV    SBUF,GDM
        MOV    P1,R1
        LCALL  TT
LOP:    JB     P3.2,LOP
        ACALL  D1
        JB     P3.2,LOP
        CLR    P3.7
        AJMP   MAIN 
TT:     JBC    TI,TT
        CLR    TI
        RET
XSCL:   MOV    A,R1
        MOV    DPTR,#TAB
        MOVC   A,@A+DPTR
 MOV    BDM,A
        MOV    A,R2
 MOV    DPTR,#TAB
 MOVC   A,@A+DPTR
 MOV    SDM,A
 MOV    A,R3
 MOV    DPTR,#TAB
 MOVC   A,@A+DPTR
 MOV    GDM,A
 RET
D1:     MOV    R4,#0FFH
DE:     MOV    R5,#0FFH
DE1:    DJNZ   R5,DE1
        DJNZ   R4,DE
        RET
      ORG    0100H
TAB:    DB 3FH,06H,5BH,4FH,66H    ;三位数码管最后显示152
        DB 6DH,7DH,07H,7FH,6FH
        END

 
    czha1@yahoo.com.cn
    13775061792
    江苏常州

 

  
2楼:daogui6 2012年10月23日22:13
 谢谢楼主的分享

>>>>>>对该主题发表你的看法

本主题贴数2,分页: [第1页]


[上一篇主题]:[原创]工业以太网交换机嵌入式核心模块技术解析

[下一篇主题]:诚聘嵌入式系统硬、软件研发工程师(全职/兼职) www.ruiva.com.cn