?? keyproc.lst
字號:
204:task/keyproc.c **** }
205:task/keyproc.c **** }
206:task/keyproc.c ****
207:task/keyproc.c ****
208:task/keyproc.c ****
209:task/keyproc.c **** void key_set_long_press(void)
210:task/keyproc.c **** {
211:task/keyproc.c **** RstSoftTimer(_60S); //avoid escaping the edit mode
212:task/keyproc.c **** }
213:task/keyproc.c ****
214:task/keyproc.c ****
215:task/keyproc.c **** void key_add_long_press(void)
216:task/keyproc.c **** {
217:task/keyproc.c **** u08 i;
218:task/keyproc.c **** for(i=0;i<10;i++)
219:task/keyproc.c **** {
220:task/keyproc.c **** key_add_click();
221:task/keyproc.c **** }
222:task/keyproc.c **** }
223:task/keyproc.c ****
224:task/keyproc.c **** BOOL JudgeTemperature( void )
225:task/keyproc.c **** //////////////////////////////////////////////////////
226:task/keyproc.c **** {
227:task/keyproc.c **** u08 ret ;
228:task/keyproc.c ****
229:task/keyproc.c **** ret = true;
230:task/keyproc.c ****
231:task/keyproc.c **** if( TH > TL )
232:task/keyproc.c **** {
233:task/keyproc.c **** if( TL < -400 )
234:task/keyproc.c **** {
235:task/keyproc.c **** ret = false;
236:task/keyproc.c **** }
237:task/keyproc.c ****
238:task/keyproc.c **** if( TH > 1250 )
239:task/keyproc.c **** {
240:task/keyproc.c **** ret = false;
241:task/keyproc.c **** }
242:task/keyproc.c **** }
243:task/keyproc.c ****
244:task/keyproc.c **** else
245:task/keyproc.c **** {
246:task/keyproc.c **** ret = false;
247:task/keyproc.c **** }
248:task/keyproc.c **** return ret;
249:task/keyproc.c ****
250:task/keyproc.c **** }
251:task/keyproc.c **** //////////////////////////////////////////////////////
252:task/keyproc.c **** BOOL JudgeHumidity (void)
253:task/keyproc.c **** {
254:task/keyproc.c **** if( HH<=100 &&HH>=10)
255:task/keyproc.c **** {
256:task/keyproc.c **** return true;
257:task/keyproc.c **** }
258:task/keyproc.c **** else
259:task/keyproc.c **** {
260:task/keyproc.c **** return false;
261:task/keyproc.c **** }
262:task/keyproc.c **** }
263:task/keyproc.c ****
264:task/keyproc.c **** /////////////////////////////////////////
265:task/keyproc.c **** void AddTempSetVal( int16 * setval )
266:task/keyproc.c **** {
267:task/keyproc.c **** if( *setval<1250 && *setval>=-400 )//
268:task/keyproc.c **** {
269:task/keyproc.c **** if( *setval<1000 &&*setval>=-100) //-10-99.9 Celsius degree
270:task/keyproc.c **** {
271:task/keyproc.c **** *setval+=1;
272:task/keyproc.c **** if(!JudgeTemperature()) *setval-=1; //if invalid,cancel operation
273:task/keyproc.c **** }
274:task/keyproc.c **** else
275:task/keyproc.c **** {
276:task/keyproc.c **** *setval+=10;
277:task/keyproc.c **** if(!JudgeTemperature()) *setval-=10; //if invalid,cancel operation
278:task/keyproc.c **** }
279:task/keyproc.c **** }
280:task/keyproc.c **** }
281:task/keyproc.c ****
282:task/keyproc.c **** void AddHumSetVal(unsigned char * setval) //DT??êa?èset?μ
283:task/keyproc.c **** {
284:task/keyproc.c **** if( *setval<=99 ) //0-98.can add 1;
285:task/keyproc.c **** {
286:task/keyproc.c **** (*setval)++;
287:task/keyproc.c ****
288:task/keyproc.c **** }
289:task/keyproc.c **** }
290:task/keyproc.c ****
291:task/keyproc.c **** void AddRS485AdrSetVal(u08 * p) //DT??485μ??·
292:task/keyproc.c **** {
293:task/keyproc.c **** (*p)++;
294:task/keyproc.c ****
295:task/keyproc.c **** // if(*p==0) *p=255;
296:task/keyproc.c ****
297:task/keyproc.c **** }
298:task/keyproc.c **** void AddBaudRate(void)
299:task/keyproc.c **** {
300:task/keyproc.c **** if( 192 == BAUDRATE )
301:task/keyproc.c **** {
302:task/keyproc.c **** BAUDRATE = 96 ;
303:task/keyproc.c **** }
304:task/keyproc.c **** else if(96 == BAUDRATE )
305:task/keyproc.c **** {
306:task/keyproc.c **** BAUDRATE = 48;
307:task/keyproc.c **** }
308:task/keyproc.c **** else
309:task/keyproc.c **** {
310:task/keyproc.c **** BAUDRATE = 192;
311:task/keyproc.c **** }
312:task/keyproc.c **** }
313:task/keyproc.c ****
314:task/keyproc.c **** void AddAutoSwitch(void)
315:task/keyproc.c **** {
316:task/keyproc.c **** if( ON == AUTOSWITCH )
317:task/keyproc.c ****
318:task/keyproc.c **** AUTOSWITCH = OFF ;
319:task/keyproc.c **** else
320:task/keyproc.c **** AUTOSWITCH = ON;
321:task/keyproc.c **** }
322:task/keyproc.c ****
323:task/keyproc.c ****
324:task/keyproc.c **** void DecTempSetVal(int16 * setval)
325:task/keyproc.c **** {
326:task/keyproc.c **** if(*setval > -400 && *setval<=1250 )
327:task/keyproc.c **** {
328:task/keyproc.c **** if( *setval<=1000 &&*setval>-100) //-9.9-99.9 Celsius degree
329:task/keyproc.c **** {
330:task/keyproc.c **** *setval-=1;
331:task/keyproc.c **** if(!JudgeTemperature()) *setval+=1; //if invalid,cancel operation
332:task/keyproc.c **** }
333:task/keyproc.c **** else //others
334:task/keyproc.c **** {
335:task/keyproc.c **** *setval-=10;
336:task/keyproc.c **** if(!JudgeTemperature()) *setval+=10; //if invalid,cancel operation
337:task/keyproc.c **** }
338:task/keyproc.c **** }
339:task/keyproc.c **** }
340:task/keyproc.c ****
341:task/keyproc.c **** void DecHumSetVal(u08 * setval)
342:task/keyproc.c **** {
343:task/keyproc.c **** if( *setval > 10 )// && *setval <= 99 )
344:task/keyproc.c **** {
345:task/keyproc.c **** ( *setval )--;
346:task/keyproc.c **** }
347:task/keyproc.c **** }
348:task/keyproc.c ****
349:task/keyproc.c **** void DecRS485AdrSetVal(u08 * p)
350:task/keyproc.c **** {
351:task/keyproc.c **** (*p)--;
352:task/keyproc.c **** // if(*p==0) *p=1;
353:task/keyproc.c **** }
354:task/keyproc.c ****
355:task/keyproc.c ****
356:task/keyproc.c ****
357:task/keyproc.c **** void MenuIndexDisp (uint8 editname)
358:task/keyproc.c **** {
294 .LM13:
295 /* prologue: frame size=0 */
296 006c CF93 push r28
297 /* prologue end (size=1) */
298 006e C82F mov r28,r24
359:task/keyproc.c **** FlashDigOn(1);
300 .LM14:
301 0070 81E0 ldi r24,lo8(1)
302 0072 90E0 ldi r25,hi8(1)
303 0074 00D0 rcall FlashDigOn
360:task/keyproc.c **** FlashDigOn(2);
305 .LM15:
306 0076 82E0 ldi r24,lo8(2)
307 0078 90E0 ldi r25,hi8(2)
308 007a 00D0 rcall FlashDigOn
361:task/keyproc.c **** FlashDigOn(3);
310 .LM16:
311 007c 83E0 ldi r24,lo8(3)
312 007e 90E0 ldi r25,hi8(3)
313 0080 00D0 rcall FlashDigOn
362:task/keyproc.c ****
363:task/keyproc.c **** if( EDIT11 == editname )
315 .LM17:
316 0082 C130 cpi r28,lo8(1)
317 0084 39F4 brne .L10
364:task/keyproc.c **** {
365:task/keyproc.c **** LedData[1]=0x00;
319 .LM18:
320 0086 1092 0000 sts LedData+1,__zero_reg__
366:task/keyproc.c **** LedData[2]=SEGF+SEGG+SEGE+SEGB+SEGC;
322 .LM19:
323 008a 86E7 ldi r24,lo8(118)
324 008c 8093 0000 sts LedData+2,r24
367:task/keyproc.c **** LedData[3]=SEGF+SEGE;
326 .LM20:
327 0090 80E3 ldi r24,lo8(48)
328 0092 12C0 rjmp .L13
329 .L10:
368:task/keyproc.c **** }
369:task/keyproc.c **** if( EDIT12 == editname )
331 .LM21:
332 0094 C230 cpi r28,lo8(2)
333 0096 39F4 brne .L11
370:task/keyproc.c **** {
371:task/keyproc.c **** LedData[1]=0;
335 .LM22:
336 0098 1092 0000 sts LedData+1,__zero_reg__
372:task/keyproc.c **** LedData[2]=SEGF+SEGE+SEGD;
338 .LM23:
339 009c 88E3 ldi r24,lo8(56)
340 009e 8093 0000 sts LedData+2,r24
373:task/keyproc.c **** LedData[3]=SEGD+SEGE+SEGG+SEGC;
342 .LM24:
343 00a2 8CE5 ldi r24,lo8(92)
344 00a4 09C0 rjmp .L13
345 .L11:
374:task/keyproc.c **** }
375:task/keyproc.c **** if( EDIT13 == editname )
347 .LM25:
348 00a6 C330 cpi r28,lo8(3)
349 00a8 49F4 brne .L9
376:task/keyproc.c **** {
377:task/keyproc.c **** LedData[1]=SEGF+SEGG+SEGE+SEGB+SEGC;
351 .LM26:
352 00aa 86E7 ldi r24,lo8(118)
353 00ac 8093 0000 sts LedData+1,r24
378:task/keyproc.c **** LedData[2]=SEGF+SEGE; //show "Adr"
355 .LM27:
356 00b0 80E3 ldi r24,lo8(48)
357 00b2 8093 0000 sts LedData+2,r24
379:task/keyproc.c **** LedData[3]=SEGA+SEGB+SEGE+SEGF+SEGG;
359 .LM28:
360 00b6 83E7 ldi r24,lo8(115)
361 .L13:
362 00b8 8093 0000 sts LedData+3,r24
363 .L9:
364 /* epilogue: frame size=0 */
365 00bc CF91 pop r28
366 00be 0895 ret
367 /* epilogue end (size=2) */
368 /* function MenuIndexDisp size 42 (39) */
370 .Lscope2:
372 .global key_do_nothing
374 key_do_nothing:
376 .LM29:
377 /* prologue: frame size=0 */
378 /* prologue end (size=0) */
379 /* epilogue: frame size=0 */
380 00c0 0895 ret
381 /* epilogue end (size=1) */
382 /* function key_do_nothing size 1 (0) */
384 .Lscope3:
386 .global key_set_long_press
388 key_set_long_press:
390 .LM30:
391 /* prologue: frame size=0 */
392 /* prologue end (size=0) */
394 .LM31:
395 00c2 83E0 ldi r24,lo8(3)
396 00c4 00D0 rcall RstSoftTimer
397 /* epilogue: frame size=0 */
398 00c6 0895 ret
399 /* epilogue end (size=1) */
400 /* function key_set_long_press size 3 (2) */
402 .Lscope4:
404 .global JudgeTemperature
406 JudgeTemperature:
408 .LM32:
409 /* prologue: frame size=0 */
410 /* prologue end (size=0) */
412 .LM33:
413 00c8 81E0 ldi r24,lo8(1)
415 .LM34:
416 00ca 4091 0000 lds r20,TH
417 00ce 5091 0000 lds r21,(TH)+1
418 00d2 2091 0000 lds r18,TL
419 00d6 3091 0000 lds r19,(TL)+1
420 00da 2417 cp r18,r20
421 00dc 3507 cpc r19,r21
422 00de 3CF4 brge .L17
424 .LM35:
425 00e0 2057 subi r18,lo8(-400)
426 00e2 3E4F sbci r19,hi8(-400)
427 00e4 0CF4 brge .L18
429 .LM36:
430 00e6 80E0 ldi r24,lo8(0)
431 .L18:
433 .LM37:
434 00e8 435E subi r20,lo8(1251)
435 00ea 5440 sbci r21,hi8(1251)
436 00ec 0CF0 brlt .L20
437 .L17:
439 .LM38:
440 00ee 80E0 ldi r24,lo8(0)
441 .L20:
443 .LM39:
444 00f0 9927 clr r25
445 /* epilogue: frame size=0 */
446 00f2 0895 ret
447 /* epilogue end (size=1) */
448 /* function JudgeTemperature size 24 (23) */
453 .Lscope5:
455 .global JudgeHumidity
457 JudgeHumidity:
459 .LM40:
460 /* prologue: frame size=0 */
461 /* prologue end (size=0) */
463 .LM41:
464 00f4 8091 0000 lds r24,HH
465 00f8 8A50 subi r24,lo8(-(-10))
466 00fa 8B35 cpi r24,lo8(91)
467 00fc 18F4 brsh .L22
469 .LM42:
470 00fe 81E0 ldi r24,lo8(1)
471 0100 90E0 ldi r25,hi8(1)
472 0102 0895 ret
473 .L22:
475 .LM43:
476 0104 80E0 ldi r24,lo8(0)
477 0106 90E0 ldi r25,hi8(0)
479 .LM44:
480 0108 0895 ret
481 /* epilogue: frame size=0 */
482 /* epilogue: noreturn */
483 /* epilogue end (size=0) */
484 /* function JudgeHumidity size 11 (11) */
486 .Lscope6:
489 .global AddTempSetVal
491 AddTempSetVal:
493 .LM45:
494 /* prologue: frame size=0 */
495 010a 0F93 push r16
496 010c 1F93 push r17
497 010e CF93 push r28
498 0110 DF93 push r29
499 /* prologue end (size=4) */
500 0112 8C01 movw r16,r24
502 .LM46:
503 0114 FC01 movw r30,r24
504 0116 C081 ld r28,Z
505 0118 D181 ldd r29,Z+1
506 011a CE01 movw r24,r28
507 011c 8057 subi r24,lo8(-(400))
508 011e 9E4F sbci r25,hi8(-(400))
509 0120 8257 subi r24,lo8(1650)
510 0122 9640 sbci r25,hi8(1650)
511 0124 D0F4 brsh .L24
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -