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

📄 show.lis

📁 项目是为日本瑞萨工作所做的BAKE炉温控系统 整个文件夹包括设计文档
💻 LIS
📖 第 1 页 / 共 3 页
字号:
                        .module Show.c
                        .area text
 0000                   .dbfile Show.c
 0000                   .dbfunc e InBuff _InBuff fV
 0000           ;              i -> 0,X
 0000           ;              p -> 1,X
 0000           ;           Buff -> 13,X
 0000           ;          time2 -> 11,X
 0000           ;          time1 -> 9,X
 0000           ;           tmp2 -> 7,X
 0000           ;           tmp1 -> 5,X
 0000           _InBuff::
 0000                   .dbline -1
 0000 A7FD              ais #-3
 0002 95                tsx
 0003                   .dbline 20
 0003           ; #include "Show.h"
 0003           ; 
 0003           ; //内部函数声明
 0003           ; void NumFormatChange(INT8U * ReP,INT8U * Data);
 0003           ; void Show1Data(INT16U showdata,INT8U showline,INT8U fbflag,INT8U *Buff);
 0003           ; 
 0003           ; //InBuff:LCD显示数据合并子函数---------------------------------------------*
 0003           ; //功  能:将需要显示的4行数据按LCD显示位置放入一个64字节的缓冲区           *
 0003           ; //参  数:                                                                 *
 0003           ; //       tmp1:第2行左对齐显示的数据                                        *
 0003           ; //       tmp2:第2行右对齐显示的数据                                        *
 0003           ; //       time1:第3行左对齐显示的数据                                       *
 0003           ; //       time2:第3行右对齐显示的数据                                       *
 0003           ; //       Buff:存放显示64字节数据的缓冲区                                   *
 0003           ; //返  回:内存Buff开始连续的64个地址内即为转换后要显示的数据               *
 0003           ; //调  用:Show1Data                                                        *
 0003           ; //说  明:第4行显示“青星科技有限公司”                                    *
 0003           ; //-------------------------------------------------------------------------*
 0003           ; void InBuff(INT16U tmp1,INT16U tmp2,INT16U time1,INT16U time2,INT8U *Buff)
 0003           ; {
 0003                   .dbline 29
 0003           ;     INT8U *p;
 0003           ;     INT8U i;
 0003           ;     
 0003           ;     //1 显示当前温度和设定温度
 0003           ;     //1.1空1格,因为汉字要从奇数位开始显示,否则为乱码
 0003           ; //    Buff[16]=' ';
 0003           ;     //1.2在第2行左对齐显示当前温度及其单位,共占用7字节
 0003           ; //    Show1Data(tmp1,2,0,Buff+1);
 0003           ;     p="℃";      //当1个汉字(2字节)显示
 0003 A603              lda #>L2
 0005 E701              sta 1,X
 0007 A603              lda #<L2
 0009 E702              sta 2,X
 000B                   .dbline 30
 000B           ;     Buff[22]=*p;
 000B E601              lda 1,X
 000D EE02              ldx 2,X
 000F 87                psha
 0010 8A                pulh
 0011 F6                lda ,x
 0012 95                tsx
 0013 B700              sta *__r1
 0015 E60E              lda 14,X
 0017 AB16              add #22
 0019 B700              sta *__r3
 001B E60D              lda 13,X
 001D A900              adc #0
 001F B700              sta *__r2
 0021 B600              lda *__r1
 0023 5500              ldhx *__r2
 0025 F7                sta ,x
 0026 95                tsx
 0027                   .dbline 31
 0027           ;     Buff[23]=*(p+1);
 0027 E602              lda 2,X
 0029 AB01              add #1
 002B B700              sta *__r1
 002D E601              lda 1,X
 002F A900              adc #0
 0031 B700              sta *__r0
 0033 5500              ldhx *__r0
 0035 F6                lda ,x
 0036 95                tsx
 0037 B700              sta *__r1
 0039 E60E              lda 14,X
 003B AB17              add #23
 003D B700              sta *__r3
 003F E60D              lda 13,X
 0041 A900              adc #0
 0043 B700              sta *__r2
 0045 B600              lda *__r1
 0047 5500              ldhx *__r2
 0049 F7                sta ,x
 004A 95                tsx
 004B                   .dbline 33
 004B           ;     //1.3中间用1个空格分开左右的显示
 004B           ;     Buff[24]=' ';
 004B E60E              lda 14,X
 004D AB18              add #24
 004F B700              sta *__r1
 0051 E60D              lda 13,X
 0053 A900              adc #0
 0055 B700              sta *__r0
 0057 A620              lda #32
 0059 5500              ldhx *__r0
 005B F7                sta ,x
 005C 95                tsx
 005D                   .dbline 35
 005D           ;     //1.4在第2行右对齐显示设定温度及其单位,也占用7字节
 005D           ;     Show1Data(tmp2,2,1,Buff);
 005D E60E              lda 14,X
 005F 87                psha
 0060 E60D              lda 13,X
 0062 87                psha
 0063 A601              lda #1
 0065 87                psha
 0066 A602              lda #2
 0068 87                psha
 0069 E608              lda 8,X
 006B 87                psha
 006C E607              lda 7,X
 006E 87                psha
 006F CD019F            jsr _Show1Data
 0072 A706              ais #6
 0074 95                tsx
 0075                   .dbline 36
 0075           ;     Buff[30]=*p;
 0075 E601              lda 1,X
 0077 EE02              ldx 2,X
 0079 87                psha
 007A 8A                pulh
 007B F6                lda ,x
 007C 95                tsx
 007D B700              sta *__r1
 007F E60E              lda 14,X
 0081 AB1E              add #30
 0083 B700              sta *__r3
 0085 E60D              lda 13,X
 0087 A900              adc #0
 0089 B700              sta *__r2
 008B B600              lda *__r1
 008D 5500              ldhx *__r2
 008F F7                sta ,x
 0090 95                tsx
 0091                   .dbline 37
 0091           ;     Buff[31]=*(p+1);
 0091 E602              lda 2,X
 0093 AB01              add #1
 0095 B700              sta *__r1
 0097 E601              lda 1,X
 0099 A900              adc #0
 009B B700              sta *__r0
 009D 5500              ldhx *__r0
 009F F6                lda ,x
 00A0 95                tsx
 00A1 B700              sta *__r1
 00A3 E60E              lda 14,X
 00A5 AB1F              add #31
 00A7 B700              sta *__r3
 00A9 E60D              lda 13,X
 00AB A900              adc #0
 00AD B700              sta *__r2
 00AF B600              lda *__r1
 00B1 5500              ldhx *__r2
 00B3 F7                sta ,x
 00B4 95                tsx
 00B5                   .dbline 40
 00B5           ;     
 00B5           ;     //2 同样显示当前温度和设定温度
 00B5           ;     Buff[32]=' ';
 00B5 E60E              lda 14,X
 00B7 AB20              add #32
 00B9 B700              sta *__r1
 00BB E60D              lda 13,X
 00BD A900              adc #0
 00BF B700              sta *__r0
 00C1 A620              lda #32
 00C3 5500              ldhx *__r0
 00C5 F7                sta ,x
 00C6 95                tsx
 00C7                   .dbline 41
 00C7           ;     Show1Data(time1,3,0,Buff+1);
 00C7 E60E              lda 14,X
 00C9 AB01              add #1
 00CB B700              sta *__r1
 00CD E60D              lda 13,X
 00CF A900              adc #0
 00D1 B700              sta *__r0
 00D3 B600              lda *__r1
 00D5 87                psha
 00D6 B600              lda *__r0
 00D8 87                psha
 00D9 4F                clra
 00DA 87                psha
 00DB A603              lda #3
 00DD 87                psha
 00DE E60A              lda 10,X
 00E0 87                psha
 00E1 E609              lda 9,X
 00E3 87                psha
 00E4 CD019F            jsr _Show1Data
 00E7 A706              ais #6
 00E9 95                tsx
 00EA                   .dbline 42
 00EA           ;     p="分";
 00EA A600              lda #>L3
 00EC E701              sta 1,X
 00EE A600              lda #<L3
 00F0 E702              sta 2,X
 00F2                   .dbline 43
 00F2           ;     Buff[38]=*p;
 00F2 E601              lda 1,X
 00F4 EE02              ldx 2,X
 00F6 87                psha
 00F7 8A                pulh
 00F8 F6                lda ,x
 00F9 95                tsx
 00FA B700              sta *__r1
 00FC E60E              lda 14,X
 00FE AB26              add #38
 0100 B700              sta *__r3
 0102 E60D              lda 13,X
 0104 A900              adc #0
 0106 B700              sta *__r2
 0108 B600              lda *__r1
 010A 5500              ldhx *__r2
 010C F7                sta ,x
 010D 95                tsx
 010E                   .dbline 44
 010E           ;     Buff[39]=*(p+1);
 010E E602              lda 2,X
 0110 AB01              add #1
 0112 B700              sta *__r1
 0114 E601              lda 1,X
 0116 A900              adc #0
 0118 B700              sta *__r0
 011A 5500              ldhx *__r0
 011C F6                lda ,x
 011D 95                tsx
 011E B700              sta *__r1
 0120 E60E              lda 14,X
 0122 AB27              add #39
 0124 B700              sta *__r3
 0126 E60D              lda 13,X
 0128 A900              adc #0
 012A B700              sta *__r2
 012C B600              lda *__r1
 012E 5500              ldhx *__r2
 0130 F7                sta ,x
 0131 95                tsx
 0132                   .dbline 45
 0132           ;     Buff[40]=' ';
 0132 E60E              lda 14,X
 0134 AB28              add #40
 0136 B700              sta *__r1
 0138 E60D              lda 13,X
 013A A900              adc #0
 013C B700              sta *__r0
 013E A620              lda #32
 0140 5500              ldhx *__r0
 0142 F7                sta ,x
 0143 95                tsx
 0144                   .dbline 46
 0144           ;     Show1Data(time2,3,1,Buff);
 0144 E60E              lda 14,X
 0146 87                psha
 0147 E60D              lda 13,X
 0149 87                psha
 014A A601              lda #1
 014C 87                psha
 014D A603              lda #3
 014F 87                psha
 0150 E60C              lda 12,X
 0152 87                psha
 0153 E60B              lda 11,X
 0155 87                psha
 0156 CD019F            jsr _Show1Data
 0159 A706              ais #6
 015B 95                tsx
 015C                   .dbline 47
 015C           ;     Buff[46]=*p;
 015C E601              lda 1,X
 015E EE02              ldx 2,X
 0160 87                psha
 0161 8A                pulh
 0162 F6                lda ,x
 0163 95                tsx
 0164 B700              sta *__r1
 0166 E60E              lda 14,X
 0168 AB2E              add #46
 016A B700              sta *__r3
 016C E60D              lda 13,X
 016E A900              adc #0
 0170 B700              sta *__r2
 0172 B600              lda *__r1
 0174 5500              ldhx *__r2
 0176 F7                sta ,x
 0177 95                tsx
 0178                   .dbline 48
 0178           ;     Buff[47]=*(p+1);
 0178 E602              lda 2,X
 017A AB01              add #1
 017C B700              sta *__r1
 017E E601              lda 1,X
 0180 A900              adc #0
 0182 B700              sta *__r0
 0184 5500              ldhx *__r0
 0186 F6                lda ,x
 0187 95                tsx
 0188 B700              sta *__r1
 018A E60E              lda 14,X
 018C AB2F              add #47
 018E B700              sta *__r3
 0190 E60D              lda 13,X
 0192 A900              adc #0
 0194 B700              sta *__r2
 0196 B600              lda *__r1
 0198 5500              ldhx *__r2
 019A F7                sta ,x
 019B 95                tsx
 019C                   .dbline -2
 019C           L1:
 019C A703              ais #3
 019E                   .dbline 0 ; func end
 019E 81                rts
 019F                   .dbsym l i 0 c
 019F                   .dbsym l p 1 pc
 019F                   .dbsym l Buff 13 pc
 019F                   .dbsym l time2 11 i
 019F                   .dbsym l time1 9 i
 019F                   .dbsym l tmp2 7 i
 019F                   .dbsym l tmp1 5 i
 019F                   .dbend
 019F                   .dbfunc e Show1Data _Show1Data fV
 019F           ;              j -> 0,X
 019F           ;              p -> 1,X
 019F           ;           data -> 3,X
 019F           ;           line -> 6,X
 019F           ;         redata -> 7,X
 019F           ;              i -> 12,X
 019F           ;           Buff -> 19,X
 019F           ;         lrflag -> 18,X
 019F           ;       showline -> 17,X
 019F           ;       showdata -> 15,X
 019F           _Show1Data::
 019F                   .dbline -1
 019F A7F3              ais #-13
 01A1 95                tsx
 01A2                   .dbline 74
 01A2           ; /*    
 01A2           ;     //3 在第4行显示“青星科技有限公司”
 01A2           ;     p="青星科技有限公司";
 01A2           ;     for(i=48;i<65;i++)
 01A2           ;     {
 01A2           ;        Buff[i]=*p;
 01A2           ;        p++;
 01A2           ;     }*/
 01A2           ; }
 01A2           ; 
 01A2           ; 
 01A2           ; 
 01A2           ; //Show1Data:LCD单个数据显示子函数------------------------------------------*
 01A2           ; //功  能:将需要显示的showdata按LCD显示位置放入一个64字节的缓冲区          *
 01A2           ; //        在LCD第showline行左对齐或右对齐显示1个整型数据showdata           *
 01A2           ; //参  数:                                                                 *
 01A2           ; //       showdata:需要显示的1个整型数据                                    *
 01A2           ; //       showline:数据显示在LCD上的行数                                    *
 01A2           ; //       lrflag:左对齐或右对齐的标志                                       *
 01A2           ; //       Buff:存放显示64字节数据的缓冲区                                   *
 01A2           ; //返  回:将数据放入内存Buff[(showline-1)*16]开始连续的5个地址内           *
 01A2           ; //       或将数据放入内存Buff[(showline-1)*16+9]开始连续的5个地址内        *
 01A2           ; //调  用:NumFormatChange                                                  *
 01A2           ; //-------------------------------------------------------------------------*
 01A2           ; void Show1Data(INT16U showdata,INT8U showline,INT8U lrflag,INT8U *Buff)
 01A2           ; {
 01A2                   .dbline 82
 01A2           ;    INT8U *p;

⌨️ 快捷键说明

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