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

📄 function.lis

📁 为苏州一家公司所做的的恒温恒湿车间控制 系统
💻 LIS
📖 第 1 页 / 共 2 页
字号:
                        .module Function.c
                        .area text
 0000                   .dbfile Function.c
 0000                   .dbfunc e DownBtn _DownBtn fV
 0000           ;              i -> 0,X
 0000           ;     CurrentRow -> 3,X
 0000           _DownBtn::
 0000                   .dbline -1
 0000 A7FF              ais #-1
 0002 95                tsx
 0003                   .dbline 9
 0003           ; #include "Function.h"
 0003           ; #include "SCI.h"
 0003           ; //UpBtn:向移按钮功能函数--------------------------------------------------*
 0003           ; //功  能:将LCD屏幕中的光标向下移一行                                      *
 0003           ; //参  数:当前光标所在行号CurrentRow(取值1/2/3)                            *
 0003           ; //返  回:无                                                               *
 0003           ; //------------------------------------------------------------------------*
 0003           ; void DownBtn(INT8U *CurrentRow)
 0003           ; {
 0003                   .dbline 11
 0003           ;    INT8U i;
 0003           ;    i=(*CurrentRow-1)*16;
 0003 E603              lda 3,X
 0005 EE04              ldx 4,X
 0007 87                psha
 0008 8A                pulh
 0009 F6                lda ,x
 000A 95                tsx
 000B A001              sub #1
 000D 62                nsa
 000E A4F0              and #-16
 0010 F7                sta ,X
 0011                   .dbline 12
 0011           ;    LcdShowBuff[i]=' ';
 0011 3F00              clr *__r0
 0013 AB00              add #<_LcdShowBuff
 0015 B700              sta *__r1
 0017 B600              lda *__r0
 0019 A900              adc #>_LcdShowBuff
 001B B700              sta *__r0
 001D A620              lda #32
 001F 5500              ldhx *__r0
 0021 F7                sta ,x
 0022 95                tsx
 0023                   .dbline 13
 0023           ;    (*CurrentRow)++;
 0023 E603              lda 3,X
 0025 EE04              ldx 4,X
 0027 87                psha
 0028 8A                pulh
 0029 F6                lda ,x
 002A 95                tsx
 002B AB01              add #1
 002D B700              sta *__r1
 002F E604              lda 4,X
 0031 B700              sta *__r3
 0033 E603              lda 3,X
 0035 B700              sta *__r2
 0037 B600              lda *__r1
 0039 5500              ldhx *__r2
 003B F7                sta ,x
 003C 95                tsx
 003D                   .dbline 14
 003D           ;    if(*CurrentRow>=3) *CurrentRow=3;   
 003D E603              lda 3,X
 003F EE04              ldx 4,X
 0041 87                psha
 0042 8A                pulh
 0043 F6                lda ,x
 0044 95                tsx
 0045 A103              cmp #3
 0047 250E              blo L2
 0049                   .dbline 14
 0049 E604              lda 4,X
 004B B700              sta *__r1
 004D E603              lda 3,X
 004F B700              sta *__r0
 0051 A603              lda #3
 0053 5500              ldhx *__r0
 0055 F7                sta ,x
 0056 95                tsx
 0057           L2:
 0057                   .dbline 15
 0057           ;    Print(*CurrentRow,1,">",1);//在当前行显示选中标志'>>'  
 0057 A601              lda #1
 0059 87                psha
 005A 450000            ldhx #L4
 005D 89                pshx
 005E 8B                pshh
 005F 95                tsx
 0060 AF03              aix #3
 0062 87                psha
 0063 E603              lda 3,X
 0065 EE04              ldx 4,X
 0067 87                psha
 0068 8A                pulh
 0069 F6                lda ,x
 006A 87                psha
 006B CD0000            jsr _Print
 006E A705              ais #5
 0070                   .dbline 16
 0070           ;    LcdShCh(LcdShowBuff);    
 0070 450000            ldhx #_LcdShowBuff
 0073 89                pshx
 0074 8B                pshh
 0075 CD0000            jsr _LcdShCh
 0078 A702              ais #2
 007A 95                tsx
 007B                   .dbline -2
 007B           L1:
 007B A701              ais #1
 007D                   .dbline 0 ; func end
 007D 81                rts
 007E                   .dbsym l i 0 c
 007E                   .dbsym l CurrentRow 3 pc
 007E                   .dbend
 007E                   .dbfunc e UpBtn _UpBtn fV
 007E           ;              i -> 0,X
 007E           ;     CurrentRow -> 3,X
 007E           _UpBtn::
 007E                   .dbline -1
 007E A7FF              ais #-1
 0080 95                tsx
 0081                   .dbline 24
 0081           ; }
 0081           ; //DownBtn:向上移按钮功能函数----------------------------------------------*
 0081           ; //功  能:将LCD屏幕中的光标向上移一行                                      *
 0081           ; //参  数:当前光标所在行号CurrentRow(取值1/2/3)                            *
 0081           ; //返  回: 无                                                              *
 0081           ; //------------------------------------------------------------------------*
 0081           ; void UpBtn(INT8U *CurrentRow)
 0081           ; {
 0081                   .dbline 26
 0081           ;   INT8U i;
 0081           ;   i=(*CurrentRow-1)*16;
 0081 E603              lda 3,X
 0083 EE04              ldx 4,X
 0085 87                psha
 0086 8A                pulh
 0087 F6                lda ,x
 0088 95                tsx
 0089 A001              sub #1
 008B 62                nsa
 008C A4F0              and #-16
 008E F7                sta ,X
 008F                   .dbline 27
 008F           ;   LcdShowBuff[i]=' ';
 008F 3F00              clr *__r0
 0091 AB00              add #<_LcdShowBuff
 0093 B700              sta *__r1
 0095 B600              lda *__r0
 0097 A900              adc #>_LcdShowBuff
 0099 B700              sta *__r0
 009B A620              lda #32
 009D 5500              ldhx *__r0
 009F F7                sta ,x
 00A0 95                tsx
 00A1                   .dbline 28
 00A1           ;   (*CurrentRow)--;
 00A1 E603              lda 3,X
 00A3 EE04              ldx 4,X
 00A5 87                psha
 00A6 8A                pulh
 00A7 F6                lda ,x
 00A8 95                tsx
 00A9 A001              sub #1
 00AB B700              sta *__r1
 00AD E604              lda 4,X
 00AF B700              sta *__r3
 00B1 E603              lda 3,X
 00B3 B700              sta *__r2
 00B5 B600              lda *__r1
 00B7 5500              ldhx *__r2
 00B9 F7                sta ,x
 00BA 95                tsx
 00BB                   .dbline 29
 00BB           ;   if(*CurrentRow<=0) *CurrentRow=1;  
 00BB E603              lda 3,X
 00BD EE04              ldx 4,X
 00BF 87                psha
 00C0 8A                pulh
 00C1 F6                lda ,x
 00C2 95                tsx
 00C3 A100              cmp #0
 00C5 220E              bhi L6
 00C7                   .dbline 29
 00C7 E604              lda 4,X
 00C9 B700              sta *__r1
 00CB E603              lda 3,X
 00CD B700              sta *__r0
 00CF A601              lda #1
 00D1 5500              ldhx *__r0
 00D3 F7                sta ,x
 00D4 95                tsx
 00D5           L6:
 00D5                   .dbline 30
 00D5           ;   Print(*CurrentRow,1,">",1);//在当前行显示选中标志'>>'  
 00D5 A601              lda #1
 00D7 87                psha
 00D8 450000            ldhx #L4
 00DB 89                pshx
 00DC 8B                pshh
 00DD 95                tsx
 00DE AF03              aix #3
 00E0 87                psha
 00E1 E603              lda 3,X
 00E3 EE04              ldx 4,X
 00E5 87                psha
 00E6 8A                pulh
 00E7 F6                lda ,x
 00E8 87                psha
 00E9 CD0000            jsr _Print
 00EC A705              ais #5
 00EE                   .dbline 31
 00EE           ;   LcdShCh(LcdShowBuff);
 00EE 450000            ldhx #_LcdShowBuff
 00F1 89                pshx
 00F2 8B                pshh
 00F3 CD0000            jsr _LcdShCh
 00F6 A702              ais #2
 00F8 95                tsx
 00F9                   .dbline -2
 00F9           L5:
 00F9 A701              ais #1
 00FB                   .dbline 0 ; func end
 00FB 81                rts
 00FC                   .dbsym l i 0 c
 00FC                   .dbsym l CurrentRow 3 pc
 00FC                   .dbend
 00FC                   .dbfunc e AddBtn _AddBtn fV
 00FC           ;              i -> 2,X
 00FC           ;     CurrentRow -> 5,X
 00FC           _AddBtn::
 00FC                   .dbline -1
 00FC A7FD              ais #-3
 00FE 95                tsx
 00FF                   .dbline 39
 00FF           ; }
 00FF           ; //AddBtn:增加待调节的值---------------------------------------------------*
 00FF           ; //功  能:将待调节的值增加0.1                                              *
 00FF           ; //参  数:当前光标所在行号CurrentRow(取值1/2/3)                            *
 00FF           ; //返  回: 无                                                              *
 00FF           ; //------------------------------------------------------------------------*
 00FF           ; void AddBtn(INT8U CurrentRow)
 00FF           ; {
 00FF                   .dbline 41
 00FF           ;   INT8U i;
 00FF           ;   i=(CurrentRow-1)*16;
 00FF E605              lda 5,X
 0101 A001              sub #1
 0103 62                nsa
 0104 A4F0              and #-16
 0106 E702              sta 2,X
 0108                   .dbline 42
 0108           ;   switch (CurrentRow)
 0108 7F                clr ,X
 0109 E605              lda 5,X
 010B E701              sta 1,X
 010D F6                lda ,X
 010E 2606              bne X0
 0110 E601              lda 1,X
 0112 A101              cmp #1
 0114 2714              beq L12
 0116           X0:
 0116 F6                lda ,X
 0117 2606              bne X1
 0119 E601              lda 1,X
 011B A102              cmp #2
 011D 274D              beq L23
 011F           X1:
 011F F6                lda ,X
 0120 2606              bne X2
 0122 E601              lda 1,X
 0124 A103              cmp #3
 0126 2762              beq L26
 0128           X2:
 0128 206D              bra L9
 012A           X3:
 012A                   .dbline 43
 012A           ;   {
 012A           L12:
 012A                   .dbline 45
 012A           ;     case 1://温度加1
 012A           ;       if(SignBT=='+')//正数
 012A B600              lda *_SignBT
 012C A12B              cmp #43
 012E 2614              bne L13
 0130                   .dbline 46
 0130           ;       {if(BasicT<1400) BasicT=BasicT+10;
 0130                   .dbline 46
 0130 5500              ldhx *_BasicT
 0132 650578            cphx #1400
 0135 95                tsx
 0136 245F              bhs L10
 0138                   .dbline 46
 0138 B601              lda *_BasicT+1

⌨️ 快捷键说明

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