⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mainboard.txt

📁 msp430驱动ht1621液晶的汇编驱动程序
💻 TXT
📖 第 1 页 / 共 2 页
字号:
              mov    &outhigh_word,R4
              swpb   R4
              call   #rrcR4_sub
              and    #0Fh,R4
              jz     _bcd_bin_highest
_bcd_bin_most_highest1
              clrc
              addc   #09680h,lowest_word
              addc   #098h,highest_word
              dec    R4
              jnz    _bcd_bin_most_highest1
;;------最高位的转换,
_bcd_bin_highest
              mov    &outhigh_word,R4
              swpb   R4
              and    #0Fh,R4
              jz     _bcd_bin_higher
_bcd_bin_highest1
              clrc
              addc   #04240h,lowest_word
              addc   #0Fh,highest_word
              dec    R4
              jnz    _bcd_bin_highest1
;;------次高位的转换
_bcd_bin_higher
              mov    &outhigh_word,R4
              call   #rrcR4_sub
              and    #0Fh,R4
              jz     _bcd_bin_lowest
_bcd_bin_higher1
              clrc
              addc   #086A0h,lowest_word
              addc   #01h,highest_word
              dec    R4
              jnz    _bcd_bin_higher1
;;------最低位的转换
_bcd_bin_lowest
              mov    &outhigh_word,R4
              and    #0Fh,R4
              jz     bcd_bin_most_highest
_bcd_bin_lowest1
              clrc
              addc   #02710h,lowest_word
              addc   #0h,highest_word
              dec    R4
              jnz    _bcd_bin_lowest1

;;------最最高位的转换
bcd_bin_most_highest
              mov    &outlow_word,R4
              swpb   R4
              call   #rrcR4_sub
              and    #0Fh,R4
              jz     bcd_bin_highest
bcd_bin_most_highest1
              clrc
              addc   #03E8h,lowest_word
              addc   #0h,highest_word
              dec    R4
              jnz    bcd_bin_most_highest1

;;------最高位的转换,
bcd_bin_highest
              mov    &outlow_word,R4
              swpb   R4
              and    #0Fh,R4
              jz     bcd_bin_higher
bcd_bin_highest1
              clrc
              addc   #064h,lowest_word
              addc   #0h,highest_word
              dec    R4
              jnz    bcd_bin_highest1
;;------次高位的转换
bcd_bin_higher
              mov    &outlow_word,R4
              call   #rrcR4_sub
              and    #0Fh,R4
              jz     bcd_bin_lowest
bcd_bin_higher1
              clrc
              addc   #0Ah,lowest_word
              addc   #0h,highest_word
              dec    R4
              jnz    bcd_bin_higher1
;;------最低位的转换
bcd_bin_lowest
              mov    &outlow_word,R4
              and    #0Fh,R4
              clrc
              addc    R4,lowest_word
              addc   #0h,highest_word
              ret
rrcR4_sub
              rrc    R4
              rrc    R4
              rrc    R4
              rrc    R4
              ret

;;将十六进制数变为十进制数,以便显示.
com_bin_bcd
              clr    lowest_word
              clr    highest_word
              clr    BinWord
com_bin_bcd_L1
              mov    &outhigh_word,R4
              swpb   R4
              call   #rrcR4_sub
              and    #0Fh,R4
              jz     com_bin_bcd_L2
_com_bin_bcd_L1
              clrc
              dadd   #05456h,lowest_word
              dadd   #06843h,highest_word
              dadd   #2h,BinWord
              dec    R4
              jnz    _com_bin_bcd_L1
;;--------------------------------------------------------
com_bin_bcd_L2
              mov    &outhigh_word,R4
              swpb   R4
              and    #0Fh,R4
              jz     com_bin_bcd_L3
_com_bin_bcd_L2
              clrc
              dadd   #07216h,lowest_word
              dadd   #01677h,highest_word
              dadc   BinWord
              dec    R4
              jnz    _com_bin_bcd_L2
;;--------------------------------------------------------
;;------最最高位的转换
com_bin_bcd_L3
              mov    &outhigh_word,R4
              call   #rrcR4_sub
              and    #0Fh,R4
              jz     com_bin_bcd_L4
_com_bin_bcd_L3
              clrc
              dadd   #08576h,lowest_word
              dadd   #104h,highest_word
              dadc   BinWord
              dec    R4
              jnz    _com_bin_bcd_L3
;;--------------------------------------------------------
;;------最高位的转换
com_bin_bcd_L4
              mov    &outhigh_word,R4
              and    #0Fh,R4
              jz     com_bin_bcd_L5
_com_bin_bcd_L4
              clrc
              dadd   #05536h,lowest_word
              dadd   #6,highest_word
              dadc   BinWord
              dec    R4
              jnz    _com_bin_bcd_L4
;;--------------------------------------------------------
;;------次高位的转换
com_bin_bcd_L5
              mov    &outlow_word,R4
              swpb   R4
              call   #rrcR4_sub
              and    #0Fh,R4
              jz     com_bin_bcd_L6
_com_bin_bcd_L5
              clrc
              dadd   #4096h,lowest_word
              dadc   highest_word
              dadc   BinWord
              dec    R4
              jnz    _com_bin_bcd_L5
;;--------------------------------------------------------
;;------中间位的转换
com_bin_bcd_L6
              mov    &outlow_word,R4
              swpb   R4
              and    #0Fh,R4
              jz     com_bin_bcd_L7
_com_bin_bcd_L6
              clrc
              dadd   #256h,lowest_word
              dadc   highest_word
              dadc   BinWord
              dec    R4
              jnz    _com_bin_bcd_L6
;;--------------------------------------------------------
;;------次低位的转换
com_bin_bcd_L7
              mov    &outlow_word,R4
              call   #rrcR4_sub
              and    #0Fh,R4
              jz     com_bin_bcd_L8
_com_bin_bcd_L7
              clrc
              dadd   #16h,lowest_word
              dadc   highest_word
              dadc   BinWord
              dec    R4
              jnz    _com_bin_bcd_L7
;;--------------------------------------------------------
;;------最低位的转换
com_bin_bcd_L8
              mov    &outlow_word,R4
              and    #0Fh,R4
              jz     bin_bcd_end
_com_bin_bcd_L8
              clrc
              dadd   #1h,lowest_word
              dadc   highest_word
              dadc   BinWord
              dec    R4
              jnz    _com_bin_bcd_L8
bin_bcd_end
              ret














;******************************************************************************
; Interrupt Vector Table
;******************************************************************************
        RSEG  INTVEC    ; *** Interrupt Vector Table MSP430F41x
        DW    Main      ; FFE0h: Basic Timer1
        DW    Main      ; FFE2h: I/O Port 2
        DW    Main      ; FFE4h: not used
        DW    Main      ; FFE6h: not used
        DW    Main      ; FFE8h: I/O Port 1
        DW    Main      ; FFEAh: not used
        DW    Main      ; FFECh: Timer_A (CCIFG0)
        DW    Main      ; FFEEh: not used
        DW    Main      ; FFF0h: not used
        DW    Main      ; FFE2h: Timer_A (CCIFG0)
        DW    Main      ; FFF4h: Watchdog Timer
        DW    Main      ; FFF6h: Comparator_A
        DW    Main      ; FFF8h: not used
        DW    Main      ; FFFAh: not used
        DW    Main      ; FFFCh: NMI, Osc. Fault, Flash memory
        DW    Main      ; FFFEh: Power-Up, ext. Reset, Watchdog,Flash mem.
        END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -