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

📄 lcd.lst

📁 FE42X单相防窃电电表DEMO(编译器 AQ430 AQ430 V2.0.6.5)
💻 LST
📖 第 1 页 / 共 5 页
字号:
                   291 ;   DISPLAY_STAGE_TEST7,
                   292 ;   DISPLAY_STAGE_TEST8,
                   293 ;   DISPLAY_STAGE_TEST9,                
                   294 ;     DISPLAY_STAGE_LAST
                   295 ; };
                   296 ; struct  rtc_s
                   297 ; {
                   298 ;   uint8 second;
                   299 ;   uint8 minute;
                   300 ;   uint8 hour;
                   301 ;   uint8 day;
                   302 ;   uint8 week;
                   303 ;   uint8 month;
                   304 ;   uint8 year;
                   305 ;   uint8 sumcheck;
                   306 ; };
                   307 ; extern struct rtc_s rtc;  
                   308 ; extern uint32 ul_actensper1;
                   309 ; extern uint32 ul_actensper2;
                   310 ; extern void display (unsigned int value);
                   311 ; extern void update_display(void);
                   312 ; extern void LCDudec16(unsigned int value, int pos, int digits, int after);
                   313 ; extern void LCDudec32(unsigned long value, int pos, int digits, int after);
                   314 ; extern void LCDicon(int id, int on);
                   315 ; extern void LCDmodify_char(unsigned char ch, int pos, int on);
                   316 ; extern void LCDchar(unsigned char ch, int pos);
                   317 ; extern void clr_lcd_display(void);
                   318 ; extern void bin2bcd32(unsigned char bcd[5], unsigned long bin);
                   319 ; extern void bin2bcd16(unsigned char bcd[3], unsigned int bin);
                   320 ; extern unsigned long scale_long(unsigned long l, float f);
                   321 ; extern unsigned int scale_int(unsigned int i, float f);
                   322 ; extern void set_rtc_sumcheck(void);
                   323 ; extern int check_rtc_sumcheck(void);
                   324 ; extern int bump_rtc(void);
                   325 ; extern int weekday(void);
                   326 ; extern void rtc_bumper(void);
                   327 ; extern void correct_rtc(void);
                   328 ; extern void init_analog_front_end_ESP(void);
                   329 ; extern void init_esp_parameter(void);
                   330 ; extern void set_parameter(unsigned int param, unsigned int data);
                   331 ; extern void start_measurement(void);
                   332 ; extern char store_flash_var(char *ptr,char *from, int len);
                   333 ; extern void EnergyReadyIntMapping(void);
                   334 ; extern void ActensperReadyIntMapping(void);
                   335 ; extern void BasicTimerIntMapping(void);
                   336 ; void init_analog_front_end_SD16(void);
                   337 ; extern void tpd_gen(void);
                   338 ; extern int16_t dc_filter(register int32_t *p, register int16_t x);
                   339 ; extern int32_t imul16_up(register int16_t x, register int16_t y);
                   340 ; extern void accum48(register int16_t x[3], register int32_t y);
                   341 ; extern void log_parameters(void);
                   342 ; extern void transfer48(register int16_t y[3], register int16_t x[3]);
                   343 ; extern int32_t div48(register int16_t x[3], register int16_t y);
                   344 ; extern int32_t isqrt32(register int32_t h);
                   345 ; extern int32_t div_sh48(register int16_t x[3], int sh, register int16_t y);
                   346 ; extern int32_t current(void);
                   347 ; extern int32_t voltage(void);
                   348 ; extern void CheckExternVoltage(void);
                   349 ; extern void EnterSD16Measure (void);
                   350 ; extern void ExitSD16Measure (void);
                   351 ; extern void EnterESPMeasure (void);
                   352 ; extern void ExitESPMeasure (void);
                   353 ; extern void SwitchToSD16Measure(void);
                   354 ; extern void SwitchToESPMeasure(void);
                   355 ; extern void OnlyRTCMode(void);
                   356 ; void ClrDispVary(unsigned char OpMode);
                   357 ; const uint8 lcd_digit_table[] =
                   358     .iseg lcd_data_const
0000               359     .align 0x2
                   360     .global _lcd_digit_table
                   361 _lcd_digit_table:
                   362 ; {
0000 7d            363     .byte 0x7d
                   364 ;   ( 0x10 | 0x20 | 0x40 | 0x08 | 0x04 | 0x01 ) ,
0001 60            365     .byte 0x60
                   366 ;   ( 0x20 | 0x40 ) ,
0002 3e            367     .byte 0x3e
                   368 ;   ( 0x10 | 0x20 | 0x08 | 0x04 | 0x02 ) ,
0003 7a            369     .byte 0x7a
                   370 ;   ( 0x10 | 0x20 | 0x40 | 0x08 | 0x02 ) ,
0004 63            371     .byte 0x63
                   372 ;   ( 0x20 | 0x40 | 0x01 | 0x02 ) ,
0005 5b            373     .byte 0x5b
                   374 ;   ( 0x10 | 0x40 | 0x08 | 0x01 | 0x02 ) ,
0006 5f            375     .byte 0x5f
                   376 ;   ( 0x10 | 0x40 | 0x08 | 0x04 | 0x01 | 0x02 ) ,
0007 70            377     .byte 0x70
                   378 ;   ( 0x10 | 0x20 | 0x40 ) ,
0008 7f            379     .byte 0x7f
                   380 ;   ( 0x10 | 0x20 | 0x40 | 0x08 | 0x04 | 0x01 | 0x02 ) ,
0009 7b            381     .byte 0x7b
                   382 ;   ( 0x10 | 0x20 | 0x40 | 0x08 | 0x01 | 0x02 ) ,
000a 77            383     .byte 0x77
                   384 ;   ( 0x10 | 0x20 | 0x40 | 0x04 | 0x01 | 0x02 ) ,
000b 4f            385     .byte 0x4f
                   386 ;   ( 0x40 | 0x08 | 0x04 | 0x01 | 0x02 ) ,
000c 1d            387     .byte 0x1d
                   388 ;   ( 0x10 | 0x08 | 0x04 | 0x01 ) ,
000d 6e            389     .byte 0x6e
                   390 ;   ( 0x20 | 0x40 | 0x08 | 0x04 | 0x02 ) ,
000e 1f            391     .byte 0x1f
                   392 ;   ( 0x10 | 0x08 | 0x04 | 0x01 | 0x02 ) ,
                   393 ;   ( 0x10 | 0x04 | 0x01 | 0x02 ) 
000f 17            394     .byte 0x17
                   395 ; lcd_digit_table size 16
                   396 ; };
                   397 ; void clr_lcd_display(void)
                   398     .dbgseg dbg_syms
                   399 DBG3:
0028 00000000      400     .long 0x0
002c 00000134      401     .long DBG10
0030 00000000      402     .long _clr_lcd_display
0034 00000040      403     .long 0x40
0038 01020001      404     .long 0x1020001
003c 00000050      405     .long DBG1
0040 0000001a      406     .long DBG7-DBG8
0044 00000000      407     .long DBG9
0048 00000154      408     .long DBG6
004c 00000000      409     .long 0x0
                   410     .pseg lcd_code
                   411 DBG8:
                   412     .dbgseg dbg_syms
                   413 DBG1:
0050 0066622e      414     .long 0x66622e
0054 00000000      415     .long 0x0
0058 00000000      416     .long DBG8
005c 00000000      417     .long 0x0
0060 01650001      418     .long 0x1650001
0064 00000000      419     .long 0x0
0068 0000002b      420     .long 0x2b
006c 00000000      421     .long 0x0
0070 0000017c      422     .long DBG11
0074 00000000      423     .long 0x0
                   424     .dbgseg dbg_line
0000               425     .align 0x2
                   426 DBG9:
0000 00000028      427     .long DBG3
0004 00000000      428     .long 0x0
0008 00000000      429     .long _clr_lcd_display
000c 00000001      430     .long 0x1
0010 00000000      431     .long DBG13
0014 00000002      432     .long 0x2
0018 00000000      433     .long DBG14
001c 00000004      434     .long 0x4
0020 00000002      435     .long DBG15
0024 00000005      436     .long 0x5
0028 00000002      437     .long DBG16
002c 00000006      438     .long 0x6
0030 00000010      439     .long DBG17
0034 00000007      440     .long 0x7
0038 00000018      441     .long DBG18
003c 00000008      442     .long 0x8
                   443     .pseg lcd_code
                   444     .global _clr_lcd_display
                   445 _clr_lcd_display:
                   446 ; ENTRY
                   447 DBG12:
                   448 ; i in reg  size 1
                   449 ; {
                   450 DBG13:
                   451 ;   uint8 i;
                   452 ;   for (i=0; i<12; i++)
                   453 DBG14:
0000 4d43          454     mov.b   #0x0,r13
                   455 clr_lcd_display_L1:
                   456 ;       {
                   457 DBG15:
                   458 ;       ((char*) (0x0091) ) [i] = 0;
                   459 DBG16:
0002 4c4d          460     mov.b   r13,r12
0004 3cf0ff00      461     and #0xff,r12
0008 3c509100      462     add #0x91,r12
000c cc430000      463     mov.b   #0x0,0(r12)
                   464 DBG17:
0010 5d53          465     add.b   #0x1,r13
0012 7d900c00      466     cmp.b   #0xc,r13
0016 f52b          467     jnc clr_lcd_display_L1
                   468 DBG19:
                   469 DBG18:
                   470 ;       } 
                   471 ; EXIT
0018 3041          472     ret
                   473     .dbgseg dbg_syms
0078 00000000      474     .long 0x0
007c 000000d8      475     .long DBG20
0080 00000000      476     .long 0x0
0084 00000000      477     .long 0x0
0088 00010002      478     .long 0x10002
008c 00000000      479     .long 0x0
0090 00000314      480     .long DBG21
0094 00000002      481     .long 0x2
0098 00000000      482     .long 0x0
009c 00010002      483     .long 0x10002
00a0 504e5f5f      484     .long 0x504e5f5f
00a4 534d5241      485     .long 0x534d5241
00a8 00000000      486     .long 0x0
00ac 00000000      487     .long 0x0
00b0 00010002      488     .long 0x10002
                   489 DBG2:
00b4 0062622e      490     .long 0x62622e
00b8 00000000      491     .long 0x0
00bc 00000002      492     .long DBG15
00c0 00000000      493     .long 0x0
00c4 01640001      494     .long 0x1640001
00c8 00000000      495     .long 0x0
00cc 00000005      496     .long 0x5
00d0 00000000      497     .long 0x0
00d4 000001f4      498     .long DBG22
00d8 00000000      499     .long 0x0
00dc 00000069      500     .long 0x69
00e0 00000000      501     .long 0x0
00e4 000d0102      502     .long 0xd0102
00e8 0000000c      503     .long 0xc
00ec 0004ffff      504     .long 0x4ffff
00f0 0062652e      505     .long 0x62652e
00f4 00000000      506     .long 0x0
00f8 00000018      507     .long DBG18
00fc 00000000      508     .long 0x0
0100 01640001      509     .long 0x1640001
0104 00000000      510     .long 0x0
0108 00000008      511     .long 0x8
010c 00000000      512     .long 0x0
0110 00000000      513     .long 0x0
0114 00000000      514     .long 0x0
0118 0066652e      515     .long 0x66652e
011c 00000000      516     .long 0x0
0120 00000018      517     .long DBG19
0124 00000000      518     .long 0x0
0128 01650001      519     .long 0x1650001
012c 00000000      520     .long 0x0
0130 00000032      521     .long 0x32
0134 00000000      522     .long 0x0
0138 00000000      523     .long 0x0
013c 00000000      524     .long 0x0
                   525     .pseg lcd_code
                   526 DBG7:
                   527     .dbgseg dbg_syms
0140 00000000      528     .long 0x0
0144 00000134      529     .long DBG10
0148 0000001a      530     .long DBG7
014c 00000000      531     .long 0x0
0150 00ff0001      532     .long 0xff0001
                   533 ; }
                   534 ; void display (uint16 value)
                   535 DBG6:
0154 70736964      536     .long 0x70736964
0158 0079616c      537     .long 0x79616c
015c 0000001a      538     .long _display
0160 00000040      539     .long 0x40
0164 01020001      540     .long 0x1020001
0168 0000017c      541     .long DBG11
016c 00000048      542     .long DBG24-DBG25
0170 00000040      543     .long DBG26
0174 000004b0      544     .long DBG23
0178 00000000      545     .long 0x0
                   546     .pseg lcd_code
                   547 DBG25:
                   548     .dbgseg dbg_syms
                   549 DBG11:
017c 0066622e      550     .long 0x66622e
0180 00000000      551     .long 0x0
0184 0000001a      552     .long DBG25
0188 00000000      553     .long 0x0
018c 01650001      554     .long 0x1650001
0190 00000000      555     .long 0x0
0194 00000037      556     .long 0x37
0198 00000000      557     .long 0x0
019c 000004d8      558     .long DBG27
01a0 00000000      559     .long 0x0
                   560     .dbgseg dbg_line
                   561 DBG26:
0040 00000154      562     .long DBG6
0044 00000000      563     .long 0x0
0048 0000001a      564     .long _display
004c 00000001      565     .long 0x1
0050 00000020      566     .long DBG29
0054 00000002      567     .long 0x2
0058 00000020      568     .long DBG30
005c 00000004      569     .long 0x4
0060 00000024      570     .long DBG31
0064 00000006      571     .long 0x6
0068 00000028      572     .long DBG32
006c 00000007      573     .long 0x7
0070 00000028      574     .long DBG33
0074 00000008      575     .long 0x8
0078 00000048      576     .long DBG34
007c 00000009      577     .long 0x9
0080 00000050      578     .long DBG35
0084 0000000a      579     .long 0xa
0088 0000005a      580     .long DBG36
008c 0000000b      581     .long 0xb
                   582     .pseg lcd_code

⌨️ 快捷键说明

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