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

📄 ds1302.s

📁 DS1302
💻 S
📖 第 1 页 / 共 5 页
字号:
	.dbline 0 ; func end
	ret
	.dbsym r i 20 i
	.dbsym r n 22 i
	.dbend
	.dbfile E:\biyesheji\SUCCES~1\SENDSE~1\SETPFI~2\程序\DS1302.c
	.dbfunc e port_init _port_init fV
	.even
_port_init::
	.dbline -1
	.dbline 20
	.dbline 21
	ldi R24,1
	out 0x18,R24
	.dbline 22
	clr R2
	out 0x17,R2
	.dbline 23
	ldi R24,56
	out 0x15,R24
	.dbline 24
	ldi R24,199
	out 0x14,R24
	.dbline 25
	out 0x12,R2
	.dbline 26
	ldi R24,255
	out 0x11,R24
	.dbline -2
L49:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e init_devices _init_devices fV
	.even
_init_devices::
	.dbline -1
	.dbline 32
	.dbline 34
	rcall _port_init
	.dbline 35
	rcall _DS1302_set
	.dbline 37
	clr R2
	out 0x35,R2
	.dbline 38
	out 0x3b,R2
	.dbline 39
	ldi R24,4
	out 0x39,R24
	.dbline -2
L50:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e init_devicesl _init_devicesl fV
	.even
_init_devicesl::
	.dbline -1
	.dbline 46
	.dbline 48
	rcall _LCD_init
	.dbline 50
	clr R2
	out 0x35,R2
	.dbline 51
	out 0x3b,R2
	.dbline 52
	out 0x39,R2
	.dbline -2
L51:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e SendDataForDisplay _SendDataForDisplay fV
	.even
_SendDataForDisplay::
	sbiw R28,2
	.dbline -1
	.dbline 59
	.dbline 63
	ldi R24,<L53
	ldi R25,>L53
	std y+1,R25
	std y+0,R24
	clr R18
	clr R16
	rcall _LCD_write_string
	.dbline 64
	lds R24,_hourth
	subi R24,208    ; addi 48
	std y+0,R24
	clr R18
	ldi R16,6
	rcall _LCD_write_char
	.dbline 65
	lds R24,_hourtl
	subi R24,208    ; addi 48
	std y+0,R24
	clr R18
	ldi R16,7
	rcall _LCD_write_char
	.dbline 66
	ldi R24,45
	std y+0,R24
	clr R18
	ldi R16,8
	rcall _LCD_write_char
	.dbline 67
	lds R24,_minuteth
	subi R24,208    ; addi 48
	std y+0,R24
	clr R18
	ldi R16,9
	rcall _LCD_write_char
	.dbline 68
	lds R24,_minutetl
	subi R24,208    ; addi 48
	std y+0,R24
	clr R18
	ldi R16,10
	rcall _LCD_write_char
	.dbline 69
	ldi R24,45
	std y+0,R24
	clr R18
	ldi R16,11
	rcall _LCD_write_char
	.dbline 70
	lds R24,_secondth
	subi R24,208    ; addi 48
	std y+0,R24
	clr R18
	ldi R16,12
	rcall _LCD_write_char
	.dbline 71
	lds R24,_secondtl
	subi R24,208    ; addi 48
	std y+0,R24
	clr R18
	ldi R16,13
	rcall _LCD_write_char
	.dbline 73
	ldi R24,<L54
	ldi R25,>L54
	std y+1,R25
	std y+0,R24
	ldi R18,1
	clr R16
	rcall _LCD_write_string
	.dbline 74
	lds R24,_yearth
	subi R24,208    ; addi 48
	std y+0,R24
	ldi R18,1
	ldi R16,6
	rcall _LCD_write_char
	.dbline 75
	lds R24,_yeartl
	subi R24,208    ; addi 48
	std y+0,R24
	ldi R18,1
	ldi R16,7
	rcall _LCD_write_char
	.dbline 76
	ldi R24,45
	std y+0,R24
	ldi R18,1
	ldi R16,8
	rcall _LCD_write_char
	.dbline 77
	lds R24,_monthth
	subi R24,208    ; addi 48
	std y+0,R24
	ldi R18,1
	ldi R16,9
	rcall _LCD_write_char
	.dbline 78
	lds R24,_monthtl
	subi R24,208    ; addi 48
	std y+0,R24
	ldi R18,1
	ldi R16,10
	rcall _LCD_write_char
	.dbline 79
	ldi R24,45
	std y+0,R24
	ldi R18,1
	ldi R16,11
	rcall _LCD_write_char
	.dbline 80
	lds R24,_dateth
	subi R24,208    ; addi 48
	std y+0,R24
	ldi R18,1
	ldi R16,12
	rcall _LCD_write_char
	.dbline 81
	lds R24,_datetl
	subi R24,208    ; addi 48
	std y+0,R24
	ldi R18,1
	ldi R16,13
	rcall _LCD_write_char
	.dbline 83
	ldi R16,200
	ldi R17,0
	rcall _delay_nus
	.dbline -2
L52:
	adiw R28,2
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e black _black fV
;              n -> R22,R23
;              m -> R20,R21
	.even
_black::
	rcall push_gset2
	movw R22,R18
	movw R20,R16
	sbiw R28,1
	.dbline -1
	.dbline 90
	.dbline 91
	ldi R24,95
	std y+0,R24
	mov R18,R22
	mov R16,R20
	rcall _LCD_write_char
	.dbline 92
	ldi R16,1000
	ldi R17,3
	rcall _delay_nus
	.dbline -2
L55:
	adiw R28,1
	rcall pop_gset2
	.dbline 0 ; func end
	ret
	.dbsym r n 22 I
	.dbsym r m 20 I
	.dbend
	.dbfunc e PlusForSET _PlusForSET fV
;              i -> R16,R17
	.even
_PlusForSET::
	.dbline -1
	.dbline 98
	.dbline 99
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,9
	brne L57
	.dbline 100
	.dbline 100
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,15
	std z+0,R24
	.dbline 101
L57:
	.dbline 102
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,25
	brne L59
	.dbline 103
	.dbline 103
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,31
	std z+0,R24
	.dbline 104
L59:
	.dbline 105
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,41
	brne L61
	.dbline 106
	.dbline 106
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,47
	std z+0,R24
	.dbline 107
L61:
	.dbline 108
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,57
	brne L63
	.dbline 109
	.dbline 109
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,63
	std z+0,R24
	.dbline 110
L63:
	.dbline 111
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,73
	brne L65
	.dbline 112
	.dbline 112
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,79
	std z+0,R24
	.dbline 113
L65:
	.dbline 114
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,89
	brne L67
	.dbline 115
	.dbline 115
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	clr R2
	std z+0,R2
	.dbline 116
	rjmp L68
L67:
	.dbline 118
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R2,R16
	add R2,R24
	adc R3,R25
	movw R30,R2
	ldd R24,z+0
	subi R24,255    ; addi 1
	std z+0,R24
L68:
	.dbline -2
L56:
	.dbline 0 ; func end
	ret
	.dbsym r i 16 I
	.dbend
	.dbfunc e SubForSET _SubForSET fV
;              i -> R16,R17
	.even
_SubForSET::
	.dbline -1
	.dbline 124
	.dbline 125
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R2,z+0
	tst R2
	brne L70
	.dbline 126
	.dbline 126
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,90
	std z+0,R24
	.dbline 127
L70:
	.dbline 128
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,16
	brne L72
	.dbline 129
	.dbline 129
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,10
	std z+0,R24
	.dbline 130
L72:
	.dbline 131
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,32
	brne L74
	.dbline 132
	.dbline 132
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,26
	std z+0,R24
	.dbline 133
L74:
	.dbline 134
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,48
	brne L76
	.dbline 135
	.dbline 135
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,42
	std z+0,R24
	.dbline 136
L76:
	.dbline 137
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,64
	brne L78
	.dbline 138
	.dbline 138
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,58
	std z+0,R24
	.dbline 139
L78:
	.dbline 140
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,80
	brne L80
	.dbline 141
	.dbline 141
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,73
	std z+0,R24
	.dbline 142
	rjmp L81
L80:
	.dbline 144
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R2,R16
	add R2,R24
	adc R3,R25
	movw R30,R2
	ldd R24,z+0
	subi R24,1
	std z+0,R24
L81:
	.dbline -2
L69:
	.dbline 0 ; func end
	ret
	.dbsym r i 16 I
	.dbend
	.dbfunc e PlusHour _PlusHour fV
;              i -> R16,R17
	.even
_PlusHour::
	.dbline -1
	.dbline 152
	.dbline 153
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,9
	brne L83
	.dbline 154
	.dbline 154
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,15
	std z+0,R24
	.dbline 155
L83:
	.dbline 156
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,25
	brne L85
	.dbline 157
	.dbline 157
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,31
	std z+0,R24
	.dbline 158
L85:
	.dbline 159
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,35
	brne L87
	.dbline 160
	.dbline 160
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	clr R2
	std z+0,R2
	.dbline 161
	rjmp L88
L87:
	.dbline 163
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R2,R16
	add R2,R24
	adc R3,R25
	movw R30,R2
	ldd R24,z+0
	subi R24,255    ; addi 1
	std z+0,R24
L88:
	.dbline -2
L82:
	.dbline 0 ; func end
	ret
	.dbsym r i 16 I
	.dbend
	.dbfunc e SubHour _SubHour fV
;              i -> R16,R17
	.even
_SubHour::
	.dbline -1
	.dbline 167
	.dbline 168
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R2,z+0
	tst R2
	brne L90
	.dbline 169
	.dbline 169
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,36
	std z+0,R24
	.dbline 170
L90:
	.dbline 171
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,16
	brne L92
	.dbline 172
	.dbline 172
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,10
	std z+0,R24
	.dbline 173
L92:
	.dbline 174
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,32
	brne L94
	.dbline 175
	.dbline 175
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,25
	std z+0,R24
	.dbline 176
	rjmp L95
L94:
	.dbline 178
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R2,R16
	add R2,R24
	adc R3,R25
	movw R30,R2
	ldd R24,z+0
	subi R24,1
	std z+0,R24
L95:
	.dbline -2
L89:
	.dbline 0 ; func end
	ret
	.dbsym r i 16 I
	.dbend
	.dbfunc e PlusDay _PlusDay fV
;              i -> R16,R17
	.even
_PlusDay::
	.dbline -1
	.dbline 185
; //cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
; //设置日期,子程序
; //cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
; //日期加法
; void PlusDay(int i)
; {           if(WriteTime[i]==0x09)
	.dbline 185
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldd R24,z+0
	cpi R24,9
	brne L97
	.dbline 186
; 			{ WriteTime[i]=0x0f;
	.dbline 186
	ldi R24,<_WriteTime
	ldi R25,>_WriteTime
	movw R30,R16
	add R30,R24
	adc R31,R25
	ldi R24,15
	std z+0,R24
	.dbline 187
; 			  }
L97:

⌨️ 快捷键说明

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