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

📄 display.lis

📁 已经上传的YF-320240-3.5寸彩屏(可由单片机控制)的测试程序。主CPU为MEGA128
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 05FC 08F4              brsh X5
 05FE 3CCF              xjmp L50
 0600           X5:
 0600                   .dbline 172
 0600           ;                    Y_ADDR = y;
 0600           ;              X_ADDR = x;
 0600           ;              CMD = ( x/256)<<2;//TFT板为CMD = ( x/256)<<2;,CSTN板为CMD = (( x/256)<<6)|0x04;
 0600           ;                    DAT = color;
 0600           ;                    Y_ADDR = y+1;
 0600           ;              X_ADDR = x;
 0600           ;              CMD = ( x/256)<<2;//TFT板为CMD = ( x/256)<<2;,CSTN板为CMD = (( x/256)<<6)|0x04;
 0600           ;                    DAT = color;
 0600           ;          }
 0600           ;      }
 0600 A8C0              xjmp L47
 0602           L46:
 0602                   .dbline 174
 0602           ;        else
 0602           ;        {
 0602                   .dbline 175
 0602           ;            if(y1>y2)//交换两者数据,保证y1<y2
 0602 0AA0              ldd R0,y+34
 0604 0E8D              ldd R16,y+30
 0606 0016              cp R0,R16
 0608 18F4              brsh L57
 060A                   .dbline 176
 060A           ;                {
 060A                   .dbline 177
 060A           ;                    y = y1;
 060A A02E              mov R10,R16
 060C                   .dbline 178
 060C           ;                        y1 = y2;
 060C 0E8E              std y+30,R0
 060E                   .dbline 179
 060E           ;                        y2 = y;
 060E AAA2              std y+34,R10
 0610                   .dbline 180
 0610           ;                }
 0610           L57:
 0610                   .dbline 181
 0610           ;            for(y=y1;y<y2;y++)
 0610 AE8C              ldd R10,y+30
 0612 9BC0              xjmp L62
 0614           L59:
 0614                   .dbline 182
 0614           ;            { 
 0614                   .dbline 183
 0614           ;                    x = (ex-sx)*(y-sy)/(ey-sy)+sx;
 0614 FE01              movw R30,R28
 0616 2084              ldd R2,z+8
 0618 3184              ldd R3,z+9
 061A 4284              ldd R4,z+10
 061C 5384              ldd R5,z+11
 061E 5A92              st -y,R5
 0620 4A92              st -y,R4
 0622 3A92              st -y,R3
 0624 2A92              st -y,R2
 0626 FE01              movw R30,R28
 0628            ; stack offset 4
 0628 2480              ldd R2,z+4
 062A 3580              ldd R3,z+5
 062C 4680              ldd R4,z+6
 062E 5780              ldd R5,z+7
 0630 5A92              st -y,R5
 0632 4A92              st -y,R4
 0634 3A92              st -y,R3
 0636 2A92              st -y,R2
 0638 0E940000          xcall sub32fs
 063C 0A2D              mov R16,R10
 063E 1127              clr R17
 0640 0E940000          xcall int2fp
 0644 3A93              st -y,R19
 0646 2A93              st -y,R18
 0648 1A93              st -y,R17
 064A 0A93              st -y,R16
 064C FE01              movw R30,R28
 064E            ; stack offset 8
 064E 2484              ldd R2,z+12
 0650 3584              ldd R3,z+13
 0652 4684              ldd R4,z+14
 0654 5784              ldd R5,z+15
 0656 5A92              st -y,R5
 0658 4A92              st -y,R4
 065A 3A92              st -y,R3
 065C 2A92              st -y,R2
 065E 0E940000          xcall sub32fs
 0662 0E940000          xcall empy32fs
 0666 FE01              movw R30,R28
 0668            ; stack offset 4
 0668 2088              ldd R2,z+16
 066A 3188              ldd R3,z+17
 066C 4288              ldd R4,z+18
 066E 5388              ldd R5,z+19
 0670 5A92              st -y,R5
 0672 4A92              st -y,R4
 0674 3A92              st -y,R3
 0676 2A92              st -y,R2
 0678 FE01              movw R30,R28
 067A            ; stack offset 8
 067A 2484              ldd R2,z+12
 067C 3584              ldd R3,z+13
 067E 4684              ldd R4,z+14
 0680 5784              ldd R5,z+15
 0682 5A92              st -y,R5
 0684 4A92              st -y,R4
 0686 3A92              st -y,R3
 0688 2A92              st -y,R2
 068A 0E940000          xcall sub32fs
 068E 0E940000          xcall div32fs
 0692 FE01              movw R30,R28
 0694            ; stack offset 4
 0694 2480              ldd R2,z+4
 0696 3580              ldd R3,z+5
 0698 4680              ldd R4,z+6
 069A 5780              ldd R5,z+7
 069C 5A92              st -y,R5
 069E 4A92              st -y,R4
 06A0 3A92              st -y,R3
 06A2 2A92              st -y,R2
 06A4 0E940000          xcall add32f
 06A8 FE01              movw R30,R28
 06AA 008B              std z+16,R16
 06AC 118B              std z+17,R17
 06AE 228B              std z+18,R18
 06B0 338B              std z+19,R19
 06B2 FE01              movw R30,R28
 06B4 2088              ldd R2,z+16
 06B6 3188              ldd R3,z+17
 06B8 4288              ldd R4,z+18
 06BA 5388              ldd R5,z+19
 06BC 5A92              st -y,R5
 06BE 4A92              st -y,R4
 06C0 3A92              st -y,R3
 06C2 2A92              st -y,R2
 06C4 00E0              ldi R16,<L56
 06C6 10E0              ldi R17,>L56
 06C8 0E940000          xcall elpm32
 06CC 3A93              st -y,R19
 06CE 2A93              st -y,R18
 06D0 1A93              st -y,R17
 06D2 0A93              st -y,R16
 06D4 0E940000          xcall cmp32f
 06D8 D4F0              brlt L63
 06DA FE01              movw R30,R28
 06DC 2088              ldd R2,z+16
 06DE 3188              ldd R3,z+17
 06E0 4288              ldd R4,z+18
 06E2 5388              ldd R5,z+19
 06E4 5A92              st -y,R5
 06E6 4A92              st -y,R4
 06E8 3A92              st -y,R3
 06EA 2A92              st -y,R2
 06EC 00E0              ldi R16,<L56
 06EE 10E0              ldi R17,>L56
 06F0 0E940000          xcall elpm32
 06F4 3A93              st -y,R19
 06F6 2A93              st -y,R18
 06F8 1A93              st -y,R17
 06FA 0A93              st -y,R16
 06FC 0E940000          xcall sub32f
 0700 0E940000          xcall fp2int
 0704 C801              movw R24,R16
 0706 8050              subi R24,0  ; offset = 32768
 0708 9048              sbci R25,128
 070A 7C01              movw R14,R24
 070C 08C0              xjmp L64
 070E           L63:
 070E FE01              movw R30,R28
 0710 0089              ldd R16,z+16
 0712 1189              ldd R17,z+17
 0714 2289              ldd R18,z+18
 0716 3389              ldd R19,z+19
 0718 0E940000          xcall fp2int
 071C 7801              movw R14,R16
 071E           L64:
 071E 6701              movw R12,R14
 0720                   .dbline 184
 0720 A0920180          sts 32769,R10
 0724                   .dbline 185
 0724 C0920080          sts 32768,R12
 0728                   .dbline 186
 0728 1601              movw R2,R12
 072A 232C              mov R2,R3
 072C 3324              clr R3
 072E 220C              lsl R2
 0730 331C              rol R3
 0732 220C              lsl R2
 0734 331C              rol R3
 0736 20920280          sts 32770,R2
 073A                   .dbline 187
 073A 0CA0              ldd R0,y+36
 073C 00920380          sts 32771,R0
 0740                   .dbline 188
 0740 0000              nop
 0742                   .dbline 189
 0742 0000              nop
 0744                   .dbline 190
 0744 00920380          sts 32771,R0
 0748                   .dbline 195
 0748           L60:
 0748                   .dbline 181
 0748 A394              inc R10
 074A           L62:
 074A                   .dbline 181
 074A 0AA0              ldd R0,y+34
 074C A014              cp R10,R0
 074E 08F4              brsh X6
 0750 61CF              xjmp L59
 0752           X6:
 0752                   .dbline 196
 0752           L47:
 0752                   .dbline -2
 0752           L44:
 0752 6496              adiw R28,20
 0754 0E940000          xcall pop_gset5
 0758 2296              adiw R28,2
 075A                   .dbline 0 ; func end
 075A 0895              ret
 075C                   .dbsym l ey 12 D
 075C                   .dbsym l ex 8 D
 075C                   .dbsym l sy 4 D
 075C                   .dbsym l sx 0 D
 075C                   .dbsym r y 10 c
 075C                   .dbsym r x 12 i
 075C                   .dbsym l color 36 c
 075C                   .dbsym l y2 34 c
 075C                   .dbsym r x2 20 i
 075C                   .dbsym l y1 30 c
 075C                   .dbsym r x1 10 i
 075C                   .dbend
 075C                   .dbfunc e Dis_Command _Dis_Command fV
 075C                   .dbstruct 0 17 Command
 075C                   .dbfield 0 x i
 075C                   .dbfield 2 y c
 075C                   .dbfield 3 width i
 075C                   .dbfield 5 width_e i
 075C                   .dbfield 7 lenth c
 075C                   .dbfield 8 lenth_e c
 075C                   .dbfield 9 color c
 075C                   .dbfield 10 str pc
 075C                   .dbfield 12 english pc
 075C                   .dbfield 14 string_color c
 075C                   .dbfield 15 font c
 075C                   .dbfield 16 cursor_color c
 075C                   .dbend
 075C           ;            cmd -> R20,R21
                        .even
 075C           _Dis_Command::
 075C 0E940000          xcall push_gset1
 0760 A801              movw R20,R16
 0762 2797              sbiw R28,7
 0764                   .dbline -1
 0764                   .dbline 205
 0764           ;                    Y_ADDR = y;
 0764           ;              X_ADDR = x;
 0764           ;              CMD = ( x/256)<<2;//TFT板为CMD = ( x/256)<<2;,CSTN板为CMD = (( x/256)<<6)|0x04;
 0764           ;                    DAT = color;
 0764           ;                        _NOP();
 0764           ;                        _NOP();
 0764           ;                        DAT = color;
 0764           ;                    //Y_ADDR = y;
 0764           ;              //X_ADDR = x+1;
 0764           ;              //CMD = ( x/256)<<2;//TFT板为CMD = ( x/256)<<2;,CSTN板为CMD = (( x/256)<<6)|0x04;
 0764           ;                    //DAT = color; 
 0764           ;          }
 0764           ;        }               
 0764           ; }
 0764           ; 
 0764           ; /*
 0764           ;     功能:显示命令按键
 0764           ;       参数:struct Command
 0764           ;       
 0764           ; */
 0764           ; void Dis_Command(struct Command cmd)
 0764           ; {
 0764                   .dbline 206
 0764           ;     if((cursor.x >cmd.x)&&(cursor.y >cmd.y)&&((cursor.x-cmd.x)<cmd.width)&&((cursor.y - cmd.y) < cmd.lenth))
 0764 FA01              movw R30,R20
 0766 2080              ldd R2,z+0
 0768 3180              ldd R3,z+1
 076A 40900000          lds R4,_cursor
 076E 50900100          lds R5,_cursor+1
 0772 2414              cp R2,R4
 0774 3504              cpc R3,R5
 0776 08F0              brlo X9
 0778 77C0              xjmp L66
 077A           X9:
 077A 4280              ldd R4,z+2
 077C 5524              clr R5
 077E 60900200          lds R6,_cursor+2
 0782 7724              clr R7
 0784 4614              cp R4,R6
 0786 5704              cpc R5,R7
 0788 0CF0              brlt X10
 078A 6EC0              xjmp L66
 078C           X10:
 078C 60900000          lds R6,_cursor
 0790 70900100          lds R7,_cursor+1
 0794 6218              sub R6,R2
 0796 7308              sbc R7,R3
 0798 FA01              movw R30,R20
 079A 2380              ldd R2,z+3
 079C 3480              ldd R3,z+4
 079E 6214              cp R6,R2
 07A0 7304              cpc R7,R3
 07A2 08F0              brlo X11
 07A4 61C0              xjmp L66
 07A6           X11:
 07A6 20900200          lds R2,_cursor+2
 07AA 3324              clr R3
 07AC 2418              sub R2,R4
 07AE 3508              sbc R3,R5
 07B0 FA01              movw R30,R20
 07B2 4780              ldd R4,z+7
 07B4 5524              clr R5
 07B6 2414              cp R2,R4
 07B8 3504              cpc R3,R5
 07BA 0CF0              brlt X12
 07BC 55C0              xjmp L66
 07BE           X12:
 07BE                   .dbline 207
 07BE           ;       {
 07BE                   .dbline 208
 07BE           ;           if((cmd.width >0)&&(cmd.lenth>0))
 07BE FA01              movw R30,R20
 07C0 2380              ldd R2,z+3
 07C2 3480              ldd R3,z+4
 07C4 2220              tst R2
 07C6 11F4              brne X7
 07C8 3320              tst R3
 07CA B9F0              breq L70
 07CC           X7:
 07CC 2224              clr R2
 07CE FA01              movw R30,R20
 07D0 3780              ldd R3,z+7
 07D2 2314              cp R2,R3
 07D4 90F4              brsh L70
 07D6                   .dbline 209
 07D6           ;           {
 07D6                   .dbline 210
 07D6           ;               Dis_Rect(cmd.x,cmd.y,cmd.width,cmd.lenth,cmd.cursor_color);
 07D6 FA01              movw R30,R20
 07D8 2088              ldd R2,z+16
 07DA 2C82              std y+4,R2
 07DC FA01              movw R30,R20
 07DE 2780              ldd R2,z+7
 07E0 2A82              std y+2,R2
 07E2 FA01              movw R30,R20
 07E4 2380              ldd R2,z+3
 07E6 3480              ldd R3,z+4
 07E8 3982              std y+1,R3
 07EA 2882              std y+0,R2
 07EC FA01              movw R30,R20
 07EE 2281              ldd R18,z+2

⌨️ 快捷键说明

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