📄 图康科技.lst
字号:
(0111) wr_date(&a); //全部显示空格
1AE 018E MOVW R16,R28
1AF DF73 RCALL _wr_date
1B0 9543 INC R20
1B1 E480 LDI R24,0x40
1B2 1784 CP R24,R20
1B3 F7D0 BCC 0x01AE
1B4 9621 ADIW R28,1
1B5 9149 LD R20,Y+
1B6 9508 RET
_page0:
1B7 9722 SBIW R28,2
(0112) }
(0113) /**********************欢迎界面*********************
(0114) *函 数:page0
(0115) *函数功能:显示欢迎界面
(0116) *入口参数:无
(0117) *返 回 值:无
(0118) *备 注:
(0119) ****************************************************/
(0120) void page0(void)
(0121) {
(0122) dis(2,15,Welcome); //显示欢迎数组
1B8 E680 LDI R24,0x60
1B9 E090 LDI R25,0
1BA 8399 STD Y+1,R25
1BB 8388 STD Y+0,R24
1BC E02F LDI R18,0xF
1BD E002 LDI R16,2
1BE DF86 RCALL _dis
(0123) delay_nms(100); //延时
1BF E604 LDI R16,0x64
1C0 E010 LDI R17,0
1C1 D173 RCALL _delay_nms
1C2 9622 ADIW R28,2
1C3 9508 RET
_K_Symbol:
1C4 9722 SBIW R28,2
(0124) }
(0125) /*************************动作界面******************
(0126) *函 数:K_Symbol
(0127) *函数功能:显示键符名称
(0128) *入口参数:无
(0129) *返 回 值:无
(0130) *备 注:
(0131) ****************************************************/
(0132) void K_Symbol(void)
(0133) {
(0134) lcd_dis(1,0x7,Symbol); //第一行显示键值符号K1
1C5 E780 LDI R24,0x70
1C6 E090 LDI R25,0
1C7 8399 STD Y+1,R25
1C8 8388 STD Y+0,R24
1C9 E027 LDI R18,7
1CA E001 LDI R16,1
1CB DFAC RCALL _lcd_dis
(0135) lcd_dis(2,0x7,Symbol+2); //第二行显示键值符号K2
1CC E782 LDI R24,0x72
1CD E090 LDI R25,0
1CE 8399 STD Y+1,R25
1CF 8388 STD Y+0,R24
1D0 E027 LDI R18,7
1D1 E002 LDI R16,2
1D2 DFA5 RCALL _lcd_dis
(0136) lcd_dis(3,0x7,Symbol+4);
1D3 E784 LDI R24,0x74
1D4 E090 LDI R25,0
1D5 8399 STD Y+1,R25
1D6 8388 STD Y+0,R24
1D7 E027 LDI R18,7
1D8 E003 LDI R16,3
1D9 DF9E RCALL _lcd_dis
(0137) lcd_dis(4,0x7,Symbol+6);
1DA E786 LDI R24,0x76
1DB E090 LDI R25,0
1DC 8399 STD Y+1,R25
1DD 8388 STD Y+0,R24
1DE E027 LDI R18,7
1DF E004 LDI R16,4
1E0 DF97 RCALL _lcd_dis
1E1 9622 ADIW R28,2
1E2 9508 RET
_page1:
1E3 9722 SBIW R28,2
(0138) }
(0139) /********************四种模式界面********************
(0140) *函 数:page1
(0141) *函数功能:显示模式名称
(0142) *入口参数:无
(0143) *返 回 值:无
(0144) *备 注:
(0145) ****************************************************/
(0146) void page1(void)
(0147) {
(0148) clr(); //清屏
1E4 DFC1 RCALL _clr
(0149) dis(1,8,mode1); //第一行显示模式1
1E5 E788 LDI R24,0x78
1E6 E090 LDI R25,0
1E7 8399 STD Y+1,R25
1E8 8388 STD Y+0,R24
1E9 E028 LDI R18,0x8
1EA E001 LDI R16,1
1EB DF59 RCALL _dis
(0150) dis(2,8,mode2); //第二行显示模式2
1EC E880 LDI R24,0x80
1ED E090 LDI R25,0
1EE 8399 STD Y+1,R25
1EF 8388 STD Y+0,R24
1F0 E028 LDI R18,0x8
1F1 E002 LDI R16,2
1F2 DF52 RCALL _dis
(0151) dis(3,8,mode3);
1F3 E888 LDI R24,0x88
1F4 E090 LDI R25,0
1F5 8399 STD Y+1,R25
1F6 8388 STD Y+0,R24
1F7 E028 LDI R18,0x8
1F8 E003 LDI R16,3
1F9 DF4B RCALL _dis
(0152) dis(4,8,mode4);
1FA E980 LDI R24,0x90
1FB E090 LDI R25,0
1FC 8399 STD Y+1,R25
1FD 8388 STD Y+0,R24
1FE E028 LDI R18,0x8
1FF E004 LDI R16,4
200 DF44 RCALL _dis
(0153) K_Symbol(); //显示键盘符号
201 DFC2 RCALL _K_Symbol
202 9622 ADIW R28,2
203 9508 RET
_page2:
204 9722 SBIW R28,2
(0154) }
(0155) /**************************动作界面*******************
(0156) *函 数:page2
(0157) *函数功能:显示动作名称
(0158) *入口参数:无
(0159) *返 回 值:无
(0160) *备 注:
(0161) ****************************************************/
(0162) void page2(void)
(0163) {
(0164) clr(); //清屏
205 DFA0 RCALL _clr
(0165) dis(1,6,Par1); //各行显示对应动作参数
206 EB88 LDI R24,0xB8
207 E090 LDI R25,0
208 8399 STD Y+1,R25
209 8388 STD Y+0,R24
20A E026 LDI R18,6
20B E001 LDI R16,1
20C DF38 RCALL _dis
(0166) dis(2,6,Par2);
20D EB8E LDI R24,0xBE
20E E090 LDI R25,0
20F 8399 STD Y+1,R25
210 8388 STD Y+0,R24
211 E026 LDI R18,6
212 E002 LDI R16,2
213 DF31 RCALL _dis
(0167) dis(3,6,Par3);
214 EC84 LDI R24,0xC4
215 E090 LDI R25,0
216 8399 STD Y+1,R25
217 8388 STD Y+0,R24
218 E026 LDI R18,6
219 E003 LDI R16,3
21A DF2A RCALL _dis
(0168) dis(4,6,Par4);
21B EC8A LDI R24,0xCA
21C E090 LDI R25,0
21D 8399 STD Y+1,R25
21E 8388 STD Y+0,R24
21F E026 LDI R18,6
220 E004 LDI R16,4
221 DF23 RCALL _dis
222 9622 ADIW R28,2
223 9508 RET
_page3:
224 9722 SBIW R28,2
(0169) }
(0170) /*********************参数值界面*********************
(0171) *函 数:page3
(0172) *函数功能:显示动作、百分比、时间量
(0173) *入口参数:无
(0174) *返 回 值:无
(0175) *备 注:
(0176) ****************************************************/
(0177) void page3(void)
(0178) {
(0179) lcd_dis(1,0x3,(name+temp*8)); //显示动作
225 E988 LDI R24,0x98
226 E090 LDI R25,0
227 9020 0110 LDS R2,temp
229 2433 CLR R3
22A 0C22 LSL R2
22B 1C33 ROL R3
22C 0C22 LSL R2
22D 1C33 ROL R3
22E 0C22 LSL R2
22F 1C33 ROL R3
230 0E28 ADD R2,R24
231 1E39 ADC R3,R25
232 8239 STD Y+1,R3
233 8228 STD Y+0,R2
234 E023 LDI R18,3
235 E001 LDI R16,1
236 DF41 RCALL _lcd_dis
(0180) lcd_dis(1,0x4,(name+temp*8+2));
237 E98A LDI R24,0x9A
238 E090 LDI R25,0
239 9020 0110 LDS R2,temp
23B 2433 CLR R3
23C 0C22 LSL R2
23D 1C33 ROL R3
23E 0C22 LSL R2
23F 1C33 ROL R3
240 0C22 LSL R2
241 1C33 ROL R3
242 0E28 ADD R2,R24
243 1E39 ADC R3,R25
244 8239 STD Y+1,R3
245 8228 STD Y+0,R2
246 E024 LDI R18,4
247 E001 LDI R16,1
248 DF2F RCALL _lcd_dis
(0181) lcd_dis(1,0x5,(name+temp*8+4));
249 E98C LDI R24,0x9C
24A E090 LDI R25,0
24B 9020 0110 LDS R2,temp
24D 2433 CLR R3
24E 0C22 LSL R2
24F 1C33 ROL R3
250 0C22 LSL R2
251 1C33 ROL R3
252 0C22 LSL R2
253 1C33 ROL R3
254 0E28 ADD R2,R24
255 1E39 ADC R3,R25
256 8239 STD Y+1,R3
257 8228 STD Y+0,R2
258 E025 LDI R18,5
259 E001 LDI R16,1
25A DF1D RCALL _lcd_dis
(0182) lcd_dis(1,0x6,(name+temp*8+6));
25B E98E LDI R24,0x9E
25C E090 LDI R25,0
25D 9020 0110 LDS R2,temp
25F 2433 CLR R3
260 0C22 LSL R2
261 1C33 ROL R3
262 0C22 LSL R2
263 1C33 ROL R3
264 0C22 LSL R2
265 1C33 ROL R3
266 0E28 ADD R2,R24
267 1E39 ADC R3,R25
268 8239 STD Y+1,R3
269 8228 STD Y+0,R2
26A E026 LDI R18,6
26B E001 LDI R16,1
26C DF0B RCALL _lcd_dis
(0183) lcd_dis(2,0x3,(shu+temp1*4)); //显示幅度
26D ED80 LDI R24,0xD0
26E E090 LDI R25,0
26F 9020 0111 LDS R2,temp1
271 2433 CLR R3
272 0C22 LSL R2
273 1C33 ROL R3
274 0C22 LSL R2
275 1C33 ROL R3
276 0E28 ADD R2,R24
277 1E39 ADC R3,R25
278 8239 STD Y+1,R3
279 8228 STD Y+0,R2
27A E023 LDI R18,3
27B E002 LDI R16,2
27C DEFB RCALL _lcd_dis
(0184) lcd_dis(2,0x4,(shu+temp1*4+2));
27D ED82 LDI R24,0xD2
27E E090 LDI R25,0
27F 9020 0111 LDS R2,temp1
281 2433 CLR R3
282 0C22 LSL R2
283 1C33 ROL R3
284 0C22 LSL R2
285 1C33 ROL R3
286 0E28 ADD R2,R24
287 1E39 ADC R3,R25
288 8239 STD Y+1,R3
289 8228 STD Y+0,R2
28A E024 LDI R18,4
28B E002 LDI R16,2
28C DEEB RCALL _lcd_dis
(0185) lcd_dis(3,0x3,(Minutes+temp2*6)); //显示时间
28D 9020 0112 LDS R2,temp2
28F E086 LDI R24,6
290 9D82 MUL R24,R2
291 0110 MOVW R2,R0
292 EE84 LDI R24,0xE4
293 E090 LDI R25,0
294 0E28 ADD R2,R24
295 1E39 ADC R3,R25
296 8239 STD Y+1,R3
297 8228 STD Y+0,R2
298 E023 LDI R18,3
299 E003 LDI R16,3
29A DEDD RCALL _lcd_dis
(0186) lcd_dis(3,0x4,(Minutes+temp2*6+2));
29B 9020 0112 LDS R2,temp2
29D E086 LDI R24,6
29E 9D82 MUL R24,R2
29F 0110 MOVW R2,R0
2A0 EE86 LDI R24,0xE6
2A1 E090 LDI R25,0
2A2 0E28 ADD R2,R24
2A3 1E39 ADC R3,R25
2A4 8239 STD Y+1,R3
2A5 8228 STD Y+0,R2
2A6 E024 LDI R18,4
2A7 E003 LDI R16,3
2A8 DECF RCALL _lcd_dis
(0187) lcd_dis(3,0x5,(Minutes+temp2*6+4));
2A9 9020 0112 LDS R2,temp2
2AB E086 LDI R24,6
2AC 9D82 MUL R24,R2
2AD 0110 MOVW R2,R0
2AE EE88 LDI R24,0xE8
2AF E090 LDI R25,0
2B0 0E28 ADD R2,R24
2B1 1E39 ADC R3,R25
2B2 8239 STD Y+1,R3
2B3 8228 STD Y+0,R2
2B4 E025 LDI R18,5
2B5 E003 LDI R16,3
2B6 DEC1 RCALL _lcd_dis
(0188) lcd_dis(4,0x3,(shu+temp3*4)); //显示力量
2B7 ED80 LDI R24,0xD0
2B8 E090 LDI R25,0
2B9 9020 0113 LDS R2,temp3
2BB 2433 CLR R3
2BC 0C22 LSL R2
2BD 1C33 ROL R3
2BE 0C22 LSL R2
2BF 1C33 ROL R3
2C0 0E28 ADD R2,R24
2C1 1E39 ADC R3,R25
2C2 8239 STD Y+1,R3
2C3 8228 STD Y+0,R2
2C4 E023 LDI R18,3
2C5 E004 LDI R16,4
2C6 DEB1 RCALL _lcd_dis
(0189) lcd_dis(4,0x4,(shu+temp3*4+2));
2C7 ED82 LDI R24,0xD2
2C8 E090 LDI R25,0
2C9 9020 0113 LDS R2,temp3
2CB 2433 CLR R3
2CC 0C22 LSL R2
2CD 1C33 ROL R3
2CE 0C22 LSL R2
2CF 1C33 ROL R3
2D0 0E28 ADD R2,R24
2D1 1E39 ADC R3,R25
2D2 8239 STD Y+1,R3
2D3 8228 STD Y+0,R2
2D4 E024 LDI R18,4
2D5 E004 LDI R16,4
2D6 DEA1 RCALL _lcd_dis
(0190) K_Symbol(); //键盘符号显示
2D7 DEEC RCALL _K_Symbol
2D8 9622 ADIW R28,2
2D9 9508 RET
_page4:
2DA 9722 SBIW R28,2
(0191) }
(0192) /********************时间到后显示界面***************
(0193) *函 数:page4
(0194) *函数功能:显示时间到界面
(0195) *入口参数:无
(0196) *返 回 值:无
(0197) *备 注:
(0198) ****************************************************/
(0199) void page4(void)
(0200) {
(0201) clr(); //清屏
2DB DECA RCALL _clr
(0202) dis(2,15,Welcome); //显示欢迎
2DC E680 LDI R24,0x60
2DD E090 LDI R25,0
2DE 8399 STD Y+1,R25
2DF 8388 STD Y+0,R24
2E0 E02F LDI R18,0xF
2E1 E002 LDI R16,2
2E2 DE62 RCALL _dis
(0203) lcd_dis(3,0x2,(Minutes+temp2*6));
2E3 9020 0112 LDS R2,temp2
2E5 E086 LDI R24,6
2E6 9D82 MUL R24,R2
2E7 0110 MOVW R2,R0
2E8 EE84 LDI R24,0xE4
2E9 E090 LDI R25,0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -