📄 h2test.lst
字号:
05A0 C018 RJMP 0x05B9
(0214) {
(0215) Send_Command(Gen_Page(page));
05A1 2F06 MOV R16,R22
05A2 DF6C RCALL _Gen_Page
05A3 DF46 RCALL _Send_Command
(0216) Send_Command(Gen_Column_LSB(column));
05A4 2D0C MOV R16,R12
05A5 DF60 RCALL _Gen_Column_LSB
05A6 DF43 RCALL _Send_Command
(0217) Send_Command(Gen_Column_MSB(column));
05A7 2D0C MOV R16,R12
05A8 DF50 RCALL _Gen_Column_MSB
05A9 DF40 RCALL _Send_Command
(0218) for(i=0;i<=7;i++)
05AA 24EE CLR R14
05AB C008 RJMP 0x05B4
(0219) {
(0220) Send_Byte(~(*pdata));
05AC 01F5 MOVW R30,R10
05AD 9104 LPM R16,0(Z)
05AE 9500 COM R16
05AF DF29 RCALL _Send_Byte
(0221) pdata++;
05B0 01C5 MOVW R24,R10
05B1 9601 ADIW R24,1
05B2 015C MOVW R10,R24
05B3 94E3 INC R14
05B4 E087 LDI R24,7
05B5 158E CP R24,R14
05B6 F7A8 BCC 0x05AC
(0222) }
(0223) page++;
05B7 9563 INC R22
05B8 9543 INC R20
05B9 E081 LDI R24,1
05BA 1784 CP R24,R20
05BB F728 BCC 0x05A1
05BC 940E0EBF CALL pop_gset5
05BE 9508 RET
_Draw_NtoArab:
number --> Y+8
column --> R22
page --> R20
05BF 940E0EC6 CALL push_gset3
05C1 2F62 MOV R22,R18
05C2 2F40 MOV R20,R16
05C3 9722 SBIW R28,2
(0224) }
(0225) }
(0226)
(0227) //////////////////////////////////////////////////////////////////////
(0228) //数值大小与阿拉伯数字之间的转换显示
(0229) //////////////////////////////////////////////////////////////////////
(0230) void Draw_NtoArab(unsigned char page,unsigned char column,unsigned char number)
(0231) {
(0232) switch(number)
05C4 84A8 LDD R10,Y+8
05C5 24BB CLR R11
05C6 20AA TST R10
05C7 F419 BNE 0x05CB
05C8 20BB TST R11
05C9 F409 BNE 0x05CB
05CA C02F RJMP 0x05FA
05CB 01C5 MOVW R24,R10
05CC 3081 CPI R24,1
05CD E0E0 LDI R30,0
05CE 079E CPC R25,R30
05CF F409 BNE 0x05D1
05D0 C031 RJMP 0x0602
05D1 3082 CPI R24,2
05D2 E0E0 LDI R30,0
05D3 079E CPC R25,R30
05D4 F409 BNE 0x05D6
05D5 C034 RJMP 0x060A
05D6 3083 CPI R24,3
05D7 E0E0 LDI R30,0
05D8 079E CPC R25,R30
05D9 F409 BNE 0x05DB
05DA C037 RJMP 0x0612
05DB 3084 CPI R24,4
05DC E0E0 LDI R30,0
05DD 079E CPC R25,R30
05DE F409 BNE 0x05E0
05DF C03A RJMP 0x061A
05E0 3085 CPI R24,5
05E1 E0E0 LDI R30,0
05E2 079E CPC R25,R30
05E3 F409 BNE 0x05E5
05E4 C03D RJMP 0x0622
05E5 3086 CPI R24,6
05E6 E0E0 LDI R30,0
05E7 079E CPC R25,R30
05E8 F409 BNE 0x05EA
05E9 C040 RJMP 0x062A
05EA 3087 CPI R24,7
05EB E0E0 LDI R30,0
05EC 079E CPC R25,R30
05ED F409 BNE 0x05EF
05EE C043 RJMP 0x0632
05EF 3088 CPI R24,0x8
05F0 E0E0 LDI R30,0
05F1 079E CPC R25,R30
05F2 F409 BNE 0x05F4
05F3 C046 RJMP 0x063A
05F4 3089 CPI R24,0x9
05F5 E0E0 LDI R30,0
05F6 079E CPC R25,R30
05F7 F409 BNE 0x05F9
05F8 C049 RJMP 0x0642
05F9 C050 RJMP 0x064A
(0233) {
(0234) case 0x00:
(0235) {
(0236) Bmp8x16(page,column,arab_0);
05FA E38C LDI R24,0x3C
05FB E092 LDI R25,2
05FC 8399 STD Y+1,R25
05FD 8388 STD Y+0,R24
05FE 2F26 MOV R18,R22
05FF 2F04 MOV R16,R20
0600 DF73 RCALL _Bmp8x16
(0237) break;
0601 C04F RJMP 0x0651
(0238) }
(0239) case 0x01:
(0240) {
(0241) Bmp8x16(page,column,arab_1);
0602 EA8C LDI R24,0xAC
0603 E091 LDI R25,1
0604 8399 STD Y+1,R25
0605 8388 STD Y+0,R24
0606 2F26 MOV R18,R22
0607 2F04 MOV R16,R20
0608 DF6B RCALL _Bmp8x16
(0242) break;
0609 C047 RJMP 0x0651
(0243)
(0244) }
(0245) case 0x02:
(0246) {
(0247) Bmp8x16(page,column,arab_2);
060A EB8C LDI R24,0xBC
060B E091 LDI R25,1
060C 8399 STD Y+1,R25
060D 8388 STD Y+0,R24
060E 2F26 MOV R18,R22
060F 2F04 MOV R16,R20
0610 DF63 RCALL _Bmp8x16
(0248) break;
0611 C03F RJMP 0x0651
(0249) }
(0250) case 0x03:
(0251) {
(0252) Bmp8x16(page,column,arab_3);
0612 EC8C LDI R24,0xCC
0613 E091 LDI R25,1
0614 8399 STD Y+1,R25
0615 8388 STD Y+0,R24
0616 2F26 MOV R18,R22
0617 2F04 MOV R16,R20
0618 DF5B RCALL _Bmp8x16
(0253) break;
0619 C037 RJMP 0x0651
(0254) }
(0255) case 0x04:
(0256) {
(0257) Bmp8x16(page,column,arab_4);
061A ED8C LDI R24,0xDC
061B E091 LDI R25,1
061C 8399 STD Y+1,R25
061D 8388 STD Y+0,R24
061E 2F26 MOV R18,R22
061F 2F04 MOV R16,R20
0620 DF53 RCALL _Bmp8x16
(0258) break;
0621 C02F RJMP 0x0651
(0259) }
(0260) case 0x05:
(0261) {
(0262) Bmp8x16(page,column,arab_5);
0622 EE8C LDI R24,0xEC
0623 E091 LDI R25,1
0624 8399 STD Y+1,R25
0625 8388 STD Y+0,R24
0626 2F26 MOV R18,R22
0627 2F04 MOV R16,R20
0628 DF4B RCALL _Bmp8x16
(0263) break;
0629 C027 RJMP 0x0651
(0264) }
(0265) case 0x06:
(0266) {
(0267) Bmp8x16(page,column,arab_6);
062A EF8C LDI R24,0xFC
062B E091 LDI R25,1
062C 8399 STD Y+1,R25
062D 8388 STD Y+0,R24
062E 2F26 MOV R18,R22
062F 2F04 MOV R16,R20
0630 DF43 RCALL _Bmp8x16
(0268) break;
0631 C01F RJMP 0x0651
(0269) }
(0270) case 0x07:
(0271) {
(0272) Bmp8x16(page,column,arab_7);
0632 E08C LDI R24,0xC
0633 E092 LDI R25,2
0634 8399 STD Y+1,R25
0635 8388 STD Y+0,R24
0636 2F26 MOV R18,R22
0637 2F04 MOV R16,R20
0638 DF3B RCALL _Bmp8x16
(0273) break;
0639 C017 RJMP 0x0651
(0274) }
(0275) case 0x08:
(0276) {
(0277) Bmp8x16(page,column,arab_8);
063A E18C LDI R24,0x1C
063B E092 LDI R25,2
063C 8399 STD Y+1,R25
063D 8388 STD Y+0,R24
063E 2F26 MOV R18,R22
063F 2F04 MOV R16,R20
0640 DF33 RCALL _Bmp8x16
(0278) break;
0641 C00F RJMP 0x0651
(0279) }
(0280) case 0x09:
(0281) {
(0282) Bmp8x16(page,column,arab_9);
0642 E28C LDI R24,0x2C
0643 E092 LDI R25,2
0644 8399 STD Y+1,R25
0645 8388 STD Y+0,R24
0646 2F26 MOV R18,R22
0647 2F04 MOV R16,R20
0648 DF2B RCALL _Bmp8x16
(0283) break;
0649 C007 RJMP 0x0651
(0284) }
(0285) default:
(0286) {
(0287) Bmp8x16(page,column,arab_0);
064A E38C LDI R24,0x3C
064B E092 LDI R25,2
064C 8399 STD Y+1,R25
064D 8388 STD Y+0,R24
064E 2F26 MOV R18,R22
064F 2F04 MOV R16,R20
0650 DF23 RCALL _Bmp8x16
(0288) }
(0289) break;
0651 9622 ADIW R28,2
0652 940E0EB9 CALL pop_gset3
0654 9508 RET
_Draw_NtoArab_rev:
number --> Y+8
column --> R22
page --> R20
0655 940E0EC6 CALL push_gset3
0657 2F62 MOV R22,R18
0658 2F40 MOV R20,R16
0659 9722 SBIW R28,2
(0290) }
(0291) }
(0292) //////////////////////////////////////////////////////////////////////
(0293) //数值大小与阿拉伯数字之间的转换反白显示
(0294) //////////////////////////////////////////////////////////////////////
(0295) void Draw_NtoArab_rev(unsigned char page,unsigned char column,unsigned char number)
(0296) {
(0297) switch(number)
065A 84A8 LDD R10,Y+8
065B 24BB CLR R11
065C 20AA TST R10
065D F419 BNE 0x0661
065E 20BB TST R11
065F F409 BNE 0x0661
0660 C02F RJMP 0x0690
0661 01C5 MOVW R24,R10
0662 3081 CPI R24,1
0663 E0E0 LDI R30,0
0664 079E CPC R25,R30
0665 F409 BNE 0x0667
0666 C031 RJMP 0x0698
0667 3082 CPI R24,2
0668 E0E0 LDI R30,0
0669 079E CPC R25,R30
066A F409 BNE 0x066C
066B C034 RJMP 0x06A0
066C 3083 CPI R24,3
066D E0E0 LDI R30,0
066E 079E CPC R25,R30
066F F409 BNE 0x0671
0670 C037 RJMP 0x06A8
0671 3084 CPI R24,4
0672 E0E0 LDI R30,0
0673 079E CPC R25,R30
0674 F409 BNE 0x0676
0675 C03A RJMP 0x06B0
0676 3085 CPI R24,5
0677 E0E0 LDI R30,0
0678 079E CPC R25,R30
0679 F409 BNE 0x067B
067A C03D RJMP 0x06B8
067B 3086 CPI R24,6
067C E0E0 LDI R30,0
067D 079E CPC R25,R30
067E F409 BNE 0x0680
067F C040 RJMP 0x06C0
0680 3087 CPI R24,7
0681 E0E0 LDI R30,0
0682 079E CPC R25,R30
0683 F409 BNE 0x0685
0684 C043 RJMP 0x06C8
0685 3088 CPI R24,0x8
0686 E0E0 LDI R30,0
0687 079E CPC R25,R30
0688 F409 BNE 0x068A
0689 C046 RJMP 0x06D0
068A 3089 CPI R24,0x9
068B E0E0 LDI R30,0
068C 079E CPC R25,R30
068D F409 BNE 0x068F
068E C049 RJMP 0x06D8
068F C050 RJMP 0x06E0
(0298) {
(0299) case 0x00:
(0300) {
(0301) Bmp8x16_rev(page,column,arab_0);
0690 E38C LDI R24,0x3C
0691 E092 LDI R25,2
0692 8399 STD Y+1,R25
0693 8388 STD Y+0,R24
0694 2F26 MOV R18,R22
0695 2F04 MOV R16,R20
0696 DF02 RCALL _Bmp8x16_rev
(0302) break;
0697 C04F RJMP 0x06E7
(0303) }
(0304) case 0x01:
(0305) {
(0306) Bmp8x16_rev(page,column,arab_1);
0698 EA8C LDI R24,0xAC
0699 E091 LDI R25,1
069A 8399 STD Y+1,R25
069B 8388 STD Y+0,R24
069C 2F26 MOV R18,R22
069D 2F04 MOV R16,R20
069E DEFA RCALL _Bmp8x16_rev
(0307) break;
069F C047 RJMP 0x06E7
(0308)
(0309) }
(0310) case 0x02:
(0311) {
(0312) Bmp8x16_rev(page,column,arab_2);
06A0 EB8C LDI R24,0xBC
06A1 E091 LDI R25,1
06A2 8399 STD Y+1,R25
06A3 8388 STD Y+0,R24
06A4 2F26 MOV R18,R22
06A5 2F04 MOV R16,R20
06A6 DEF2 RCALL _Bmp8x16_rev
(0313) break;
06A7 C03F RJMP 0x06E7
(0314) }
(0315) case 0x03:
(0316) {
(0317) Bmp8x16_rev(page,column,arab_3);
06A8 EC8C LDI R24,0xCC
06A9 E091 LDI R25,1
06AA 8399 STD Y+1,R25
06AB 8388 STD Y+0,R24
06AC 2F26 MOV R18,R22
06AD 2F04 MOV R16,R20
06AE DEEA RCALL _Bmp8x16_rev
(0318) break;
06AF C037 RJMP 0x06E7
(0319) }
(0320) case 0x04:
(0321) {
(0322) Bmp8x16_rev(page,column,arab_4);
06B0 ED8C LDI R24,0xDC
06B1 E091 LDI R25,1
06B2 8399 STD Y+1,R25
06B3 8388 STD Y+0,R24
06B4 2F26 MOV R18,R22
06B5 2F04 MOV R16,R20
06B6 DEE2 RCALL _Bmp8x16_rev
(0323) break;
06B7 C02F RJMP 0x06E7
(0324) }
(0325) case 0x05:
(0326) {
(0327) Bmp8x16_rev(page,column,arab_5);
06B8 EE8C LDI R24,0xEC
06B9 E091 LDI R25,1
06BA 8399 STD Y+1,R25
06BB 8388 STD Y+0,R24
06BC 2F26 MOV R18,R22
06BD 2F04 MOV R16,R20
06BE DEDA RCALL _Bmp8x16_rev
(0328) break;
06BF C027 RJMP 0x06E7
(0329) }
(0330) case 0x06:
(0331) {
(0332) Bmp8x16_rev(page,column,arab_6);
06C0 EF8C LDI R24,0xFC
06C1 E091 LDI R25,1
06C2 8399 STD Y+1,R25
06C3 8388 STD Y+0,R24
06C4 2F26 MOV R18,R22
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -