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

📄 lcd.lis

📁 为苏州一家公司所做的的恒温恒湿车间控制 系统
💻 LIS
📖 第 1 页 / 共 3 页
字号:
 01AB B700              sta *__r1
 01AD B600              lda *__r0
 01AF 40                nega
 01B0 87                psha
 01B1 B600              lda *__r1
 01B3 40                nega
 01B4 B700              sta *__r1
 01B6 86                pula
 01B7 A200              sbc #0
 01B9 B700              sta *__r0
 01BB 4E0000            mov *__r1,*__r3
 01BE 4E0000            mov *__r0,*__r2
 01C1 3F00              clr *__r1
 01C3 3F00              clr *__r0
 01C5 3D00              tst *__r2
 01C7 2A04              bpl X1
 01C9 3300              com *__r1
 01CB 3300              com *__r0
 01CD           X1:
 01CD E604              lda 4,X
 01CF 87                psha
 01D0 E603              lda 3,X
 01D2 87                psha
 01D3 E602              lda 2,X
 01D5 87                psha
 01D6 E601              lda 1,X
 01D8 87                psha
 01D9 B600              lda *__r3
 01DB 87                psha
 01DC B600              lda *__r2
 01DE 87                psha
 01DF B600              lda *__r1
 01E1 87                psha
 01E2 B600              lda *__r0
 01E4 87                psha
 01E5 CD0000            jsr __cmp32
 01E8 A708              ais #8
 01EA 9152              blt L21
 01EC                   .dbline 90
 01EC           ;                    {
 01EC                   .dbline 91
 01EC           ;                 if(GrE==1)   LcdShGr1P(y,x);//显示该点
 01EC E60C              lda 12,X
 01EE A101              cmp #1
 01F0 260D              bne L23
 01F2                   .dbline 91
 01F2 E605              lda 5,X
 01F4 87                psha
 01F5 F6                lda ,X
 01F6 87                psha
 01F7 CD0376            jsr _LcdShGr1P
 01FA A702              ais #2
 01FC 95                tsx
 01FD 203F              bra L24
 01FF           L23:
 01FF                   .dbline 93
 01FF           ;                     //清除该点
 01FF           ;                     else if(y<=31) LcdShGr16P(y,(x/16),0);        
 01FF F6                lda ,X
 0200 A11F              cmp #31
 0202 221C              bhi L25
 0204                   .dbline 93
 0204 450000            ldhx #0
 0207 89                pshx
 0208 8B                pshh
 0209 95                tsx
 020A AF02              aix #2
 020C E605              lda 5,X
 020E AE10              ldx #16
 0210 8C                clrh
 0211 52                div
 0212 95                tsx
 0213 AF02              aix #2
 0215 87                psha
 0216 F6                lda ,X
 0217 87                psha
 0218 CD03E3            jsr _LcdShGr16P
 021B A704              ais #4
 021D 95                tsx
 021E 201E              bra L26
 0220           L25:
 0220                   .dbline 94
 0220           ;                     else           LcdShGr16P(y-32,x/16+8,0); 
 0220 450000            ldhx #0
 0223 89                pshx
 0224 8B                pshh
 0225 95                tsx
 0226 AF02              aix #2
 0228 E605              lda 5,X
 022A AE10              ldx #16
 022C 8C                clrh
 022D 52                div
 022E 95                tsx
 022F AF02              aix #2
 0231 AB08              add #8
 0233 87                psha
 0234 F6                lda ,X
 0235 A020              sub #32
 0237 87                psha
 0238 CD03E3            jsr _LcdShGr16P
 023B A704              ais #4
 023D 95                tsx
 023E           L26:
 023E           L24:
 023E                   .dbline 95
 023E           ;                    }
 023E           L21:
 023E                   .dbline 96
 023E           L18:
 023E                   .dbline 85
 023E 6C05              inc 5,X
 0240           L20:
 0240                   .dbline 85
 0240 E609              lda 9,X
 0242 EB0A              add 10,X
 0244 B700              sta *__r0
 0246 E605              lda 5,X
 0248 B100              cmp *__r0
 024A 2203              bhi X3
 024C CC00DC            jmp L17
 024F           X3:
 024F           L14:
 024F                   .dbline 84
 024F 7C                inc ,X
 0250           L16:
 0250                   .dbline 84
 0250 E608              lda 8,X
 0252 EB0A              add 10,X
 0254 B700              sta *__r0
 0256 F6                lda ,X
 0257 B100              cmp *__r0
 0259 2203              bhi X4
 025B CC00D3            jmp L13
 025E           X4:
 025E                   .dbline 98
 025E           ;                } 
 025E           ;  // LcdShGr1P(Cy,Cx);//显示圆心                  
 025E           ;   Wtite_Command(0b00110000);//基本指令
 025E A630              lda #48
 0260 87                psha
 0261 CD0419            jsr _Wtite_Command
 0264 A701              ais #1
 0266 95                tsx
 0267                   .dbline -2
 0267           L12:
 0267 A706              ais #6
 0269                   .dbline 0 ; func end
 0269 81                rts
 026A                   .dbsym l y 0 c
 026A                   .dbsym l mistake 1 L
 026A                   .dbsym l x 5 c
 026A                   .dbsym l GrE 12 c
 026A                   .dbsym l GrCilMV 11 c
 026A                   .dbsym l CR 10 c
 026A                   .dbsym l Cx 9 c
 026A                   .dbsym l Cy 8 c
 026A                   .dbend
 026A                   .dbfunc e LcdShGrRe _LcdShGrRe fV
 026A           ;             RC -> 0,X
 026A           ;             LC -> 2,X
 026A           ;            TBC -> 4,X
 026A           ;              i -> 6,X
 026A           ;              y -> 7,X
 026A           ;             Px -> 8,X
 026A           ;            GrE -> 12,X
 026A           ;             ln -> 11,X
 026A           _LcdShGrRe::
 026A                   .dbline -1
 026A A7F7              ais #-9
 026C 95                tsx
 026D                   .dbline 107
 026D           ; }
 026D           ; 
 026D           ; /*LcdShGrRe:在Lcd的指定行上显示或取消矩型边框--------*
 026D           ; *功  能:在Lcd上指定行上显示或取消矩型边框            *
 026D           ; *参  数:ln为指定的行数(0-3), GrE确定图形是否有效     *
 026D           ; *返  回:无                                           *
 026D           ; *---------------------------------------------------*/
 026D           ; void LcdShGrRe(unsigned char ln,unsigned char GrE)
 026D           ; {  
 026D                   .dbline 112
 026D E60B              lda 11,X
 026F 2704              beq L30
 0271 A102              cmp #2
 0273 2604              bne L28
 0275           L30:
 0275                   .dbline 112
 0275           ;   unsigned char Px,y;//行页号坐标,列坐标
 0275           ;   unsigned char i;   //循环变量
 0275           ;   int LC,RC,TBC;     //左,右和上下边框色
 0275           ;   //[确定ln所在行的起始坐标(左上角)]
 0275           ;   if((ln==0)||(ln==2))  y=0;
 0275 6F07              clr 7,X
 0277 2004              bra L29
 0279           L28:
 0279                   .dbline 113
 0279           ;   else  y=16;
 0279 A610              lda #16
 027B E707              sta 7,X
 027D           L29:
 027D                   .dbline 114
 027D           ;   if(ln<=1)  Px=0;
 027D E60B              lda 11,X
 027F A101              cmp #1
 0281 2204              bhi L31
 0283                   .dbline 114
 0283 6F08              clr 8,X
 0285 2004              bra L32
 0287           L31:
 0287                   .dbline 115
 0287           ;   else  Px=8;
 0287 A608              lda #8
 0289 E708              sta 8,X
 028B           L32:
 028B                   .dbline 117
 028B           ;   //[确定有无边框(有GrE决定)]
 028B           ;   if(GrE==1)   //有表框
 028B E60C              lda 12,X
 028D A101              cmp #1
 028F 2618              bne L33
 0291                   .dbline 118
 0291           ;        {TBC=65535;LC=32768;RC=1;}
 0291                   .dbline 118
 0291 A6FF              lda #-1
 0293 E704              sta 4,X
 0295 A6FF              lda #-1
 0297 E705              sta 5,X
 0299                   .dbline 118
 0299 A680              lda #-128
 029B E702              sta 2,X
 029D A600              lda #0
 029F E703              sta 3,X
 02A1                   .dbline 118
 02A1 4F                clra
 02A2 F7                sta ,X
 02A3 A601              lda #1
 02A5 E701              sta 1,X
 02A7                   .dbline 118
 02A7 200B              bra L34
 02A9           L33:
 02A9                   .dbline 120
 02A9           ;   else         //无边框
 02A9           ;      {TBC=0;LC=0;RC=0;}
 02A9                   .dbline 120
 02A9 6F05              clr 5,X
 02AB 6F04              clr 4,X
 02AD                   .dbline 120
 02AD 6F03              clr 3,X
 02AF 6F02              clr 2,X
 02B1                   .dbline 120
 02B1 6F01              clr 1,X
 02B3 7F                clr ,X
 02B4                   .dbline 120
 02B4           L34:
 02B4                   .dbline 121
 02B4           ;   Wtite_Command(0b00110110);//扩展指令,绘图开
 02B4 A636              lda #54
 02B6 87                psha
 02B7 CD0419            jsr _Wtite_Command
 02BA A701              ais #1
 02BC 95                tsx
 02BD                   .dbline 123
 02BD           ;   //[在Lcd上指定行上显示矩型边框]
 02BD           ;   for(i=0;i<=7;i++,Px++)
 02BD 6F06              clr 6,X
 02BF 202A              bra L38
 02C1           L35:
 02C1                   .dbline 124
 02C1                   .dbline 125
 02C1 E605              lda 5,X
 02C3 87                psha
 02C4 E604              lda 4,X
 02C6 87                psha
 02C7 E608              lda 8,X
 02C9 87                psha
 02CA E607              lda 7,X
 02CC 87                psha
 02CD CD03E3            jsr _LcdShGr16P
 02D0 A704              ais #4
 02D2 95                tsx
 02D3                   .dbline 126
 02D3 E605              lda 5,X
 02D5 87                psha
 02D6 E604              lda 4,X
 02D8 87                psha
 02D9 E608              lda 8,X
 02DB 87                psha
 02DC E607              lda 7,X
 02DE AB0F              add #15
 02E0 87                psha
 02E1 CD03E3            jsr _LcdShGr16P
 02E4 A704              ais #4
 02E6 95                tsx
 02E7                   .dbline 127
 02E7           L36:
 02E7                   .dbline 123
 02E7 6C06              inc 6,X
 02E9 6C08              inc 8,X
 02EB           L38:
 02EB                   .dbline 123
 02EB E606              lda 6,X
 02ED A107              cmp #7
 02EF 23D0              bls L35
 02F1                   .dbline 128
 02F1           ;      {   
 02F1           ;         LcdShGr16P(y,Px,TBC);    //显示上边框 
 02F1           ;         LcdShGr16P(y+15,Px,TBC); //显示下边框
 02F1           ;      }  
 02F1           ;   for(i=1,y++,Px--;i<=14;i++,y++)
 02F1 A601              lda #1
 02F3 E706              sta 6,X
 02F5 6C07              inc 7,X
 02F7 6A08              dec 8,X
 02F9 2029              bra L42
 02FB           L39:
 02FB                   .dbline 129
 02FB                   .dbline 130
 02FB E601              lda 1,X
 02FD 87                psha
 02FE F6                lda ,X
 02FF 87                psha
 0300 E608              lda 8,X
 0302 87                psha
 0303 E607              lda 7,X
 0305 87                psha
 0306 CD03E3            jsr _LcdShGr16P
 0309 A704              ais #4
 030B 95                tsx
 030C                   .dbline 131
 030C E603              lda 3,X
 030E 87                psha
 030F E602              lda 2,X
 0311 87                psha
 0312 E608              lda 8,X
 0314 A007              sub #7
 0316 87                psha
 0317 E607              lda 7,X
 0319 87                psha
 031A CD03E3            jsr _LcdShGr16P
 031D A704              ais #4
 031F 95                tsx
 0320                   .dbline 132
 0320           L40:
 0320                   .dbline 128
 0320 6C06              inc 6,X
 0322 6C07              inc 7,X
 0324           L42:
 0324                   .dbline 128
 0324 E606              lda 6,X
 0326 A10E              cmp #14
 0328 23D1              bls L39
 032A                   .dbline 133
 032A           ;      {
 032A           ;         LcdShGr16P(y,Px,RC);    //显示右边框 
 032A           ;         LcdShGr16P(y,Px-7,LC);  //显示左边框      
 032A           ;      }
 032A           ;   Wtite_Command(0b00110000);//基本指令
 032A A630              lda #48
 032C 87                psha
 032D CD0419            jsr _Wtite_Command
 0330 A701              ais #1
 0332 95                tsx
 0333                   .dbline -2
 0333           L27:
 0333 A709              ais #9
 0335                   .dbline 0 ; func end
 0335 81                rts
 0336                   .dbsym l RC 0 I
 0336                   .dbsym l LC 2 I
 0336                   .dbsym l TBC 4 I
 0336                   .dbsym l i 6 c
 0336                   .dbsym l y 7 c
 0336                   .dbsym l Px 8 c
 0336                   .dbsym l GrE 12 c
 0336                   .dbsym l ln 11 c
 0336                   .dbend
 0336                   .dbfunc e LcdShGrClr _LcdShGrClr fV
 0336           ;              y -> 0,X
 0336           ;             Px -> 1,X
 0336           _LcdShGrClr::
 0336                   .dbline -1
 0336 A7FE              ais #-2
 0338 95                tsx
 0339                   .dbline 142
 0339           ; }
 0339           ; 
 0339           ; /*LcdShGrClr:在Lcd上清图形显示屏--------------*
 0339           ; *功  能:在Lcd上清图形显示屏(清GDRAM)          *
 0339           ; *参  数:无                                    *
 0339           ; *返  回:无                                    *

⌨️ 快捷键说明

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