📄 tmin.asm
字号:
.org $0500
change_disp:nop
;----------------------------------------------
;
;Display Magnetic field trength"10_90"
;
cd10_90: cpi r27,-4
brne cd20_90
rcall disp_10
rcall delay
cd20_90: cpi r27,-3
brne cd30_90
rcall disp_20
rcall delay
cd30_90: cpi r27,-2
brne cd40_90
rcall disp_30
rcall delay
cd40_90: cpi r27,-1
brne cd50_90
rcall disp_40
rcall delay
cd50_90: cpi r27,0
brne cd60_90
rcall disp_50
rcall delay
cd60_90: cpi r27,1
brne cd70_90
rcall disp_60
rcall delay
cd70_90: cpi r27,2
brne cd80_90
rcall disp_70
rcall delay
cd80_90: cpi r27,3
brne cd90_90
rcall disp_80
rcall delay
cd90_90: cpi r27,4
brne cd30_480
rcall disp_90
rcall delay
;----------------------------------
;
;Display Time " 030--480"
;
cd30_480: cpi r26,-3
brne cd60_480
rcall tad_030
rcall delay
cd60_480: cpi r26,-2
brne cd90_480
rcall tad_060
rcall delay
cd90_480: cpi r26,-1
brne cd120_480
rcall tad_090
rcall delay
cd120_480: cpi r26,0
brne cd150_480
rcall tad_120
rcall delay
cd150_480: cpi r26,1
brne cd180_480
rcall tad_150
rcall delay
cd180_480: cpi r26,2
brne cd210_480
rcall tad_180
rcall delay
cd210_480: cpi r26,3
brne cd240_480
rcall tad_210
rcall delay
cd240_480: cpi r26,4
brne cd270_480
rcall tad_240
rcall delay
cd270_480: cpi r26,5
brne cd300_480
rcall tad_270
rcall delay
cd300_480: cpi r26,6
brne cd330_480
rcall tad_300
rcall delay
cd330_480: cpi r26,7
brne cd360_480
rcall tad_330
rcall delay
cd360_480: cpi r26,8
brne cd390_480
rcall tad_360
rcall delay
cd390_480: cpi r26,9
brne cd420_480
rcall tad_390
rcall delay
cd420_480: cpi r26,10
brne cd450_480
rcall tad_420
rcall delay
cd450_480: cpi r26,11
brne cd480_480
rcall tad_450
rcall delay
cd480_480: cpi r26,12
brne return
rcall tad_480
rcall delay
return: ret
;-----------------------------------------------
display120:ser r16
out DDRC,r16 ;portc is output mode and turn off all LEDS
ldi r21,$00
out PORTC,r21 ;turn off "50" display
ldi r21,$06
out SPDR , r21
ldi r17,0b0000100
out PORTC,r17 ;PC.2 display "1"
; wait0:sbis SPSR,7
; rjmp wait0
rcall delay
ldi r17,0b0000000
out PORTC,r17
ldi r21,$5b
out SPDR , r21
ldi r17,0b0001000
out PORTC,r17
out PORTC,r17 ;PC.3 display "2"
; wait0:sbis SPSR,7
; rjmp wait0
rcall delay
ldi r17,0b0000000
out PORTC,r17
ldi r21,$3f
out SPDR , r21
ldi r17,0b0010000
out PORTC,r17 ;PC.4 display "0"
; wait0:sbis SPSR,7
; rjmp wait0
rcall delay
ldi r17,0b0000000
out PORTC,r17
ret
;-----------------------------------------------
;-----------------------------
b1_d0: rcall turn_off
rcall display_0
rcall dispbyte_1
; rcall trans_wait
rcall delay
rcall turn_off
ret
;-----------------------------
disp_10: rcall display_1
rcall dispbyte_0
; rcall trans_wait
rcall delay
rcall b1_d0
rcall delay
rcall turn_off
ldi r27,-4
ret
;-----------------------------
disp_20: rcall display_2
rcall dispbyte_0
; rcall trans_wait
rcall delay
rcall b1_d0
rcall delay
rcall turn_off
ldi r27,-3
ret
;-----------------------------
disp_30: rcall display_3
rcall dispbyte_0
; rcall trans_wait
rcall delay
rcall b1_d0
rcall delay
rcall turn_off
ldi r27,-2
ret
;-----------------------------
disp_40: rcall display_4
rcall dispbyte_0
; rcall trans_wait
rcall delay
rcall b1_d0
rcall delay
rcall turn_off
ldi r27,-1
ret
;-----------------------------
disp_50: rcall display_5
rcall dispbyte_0
; rcall trans_wait
rcall delay
rcall b1_d0
ldi r27,0
ret
;-----------------------------
disp_60: rcall turn_off
rcall display_6
rcall dispbyte_0
; rcall trans_wait
rcall delay
rcall b1_d0
ldi r27,1
ret
;------------------------------
disp_70:rcall turn_off
rcall display_7
rcall dispbyte_0
;rcall trans_wait
rcall delay
rcall b1_d0
ldi r27,2
ret
;-----------------------------
disp_80:rcall turn_off
rcall display_8
rcall dispbyte_0
;rcall trans_wait
rcall delay
rcall b1_d0
ldi r27,3
ret
;-------------------------------
disp_90: rcall turn_off
rcall display_9
rcall dispbyte_0
;rcall trans_wait
rcall delay
rcall b1_d0
ldi r27,4
ret
;-----------------------------
b4_d0: rcall turn_off
rcall display_0
rcall dispbyte_4
; rcall trans_wait
rcall delay
rcall turn_off
ret
;----------------------------
tad_030:rcall turn_off
rcall display_0
rcall dispbyte_2
rcall delay
rcall turn_off
rcall display_3
rcall dispbyte_3
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -