h08sci.lis

来自「项目是为日本瑞萨工作所做的BAKE炉温控系统 整个文件夹包括设计文档」· LIS 代码 · 共 367 行 · 第 1/2 页

LIS
367
字号
 005D 6F02              clr 2,X
 005F 6F01              clr 1,X
 0061 2021              bra L43
 0063           L40:
 0063                   .dbline 70
 0063           ;         if ((ReSendStatusR & (1<<ReTestBit)) != 0)
 0063 0B1612            brclr #5,0x16,L44
 0066                   .dbline 71
 0066           ;         {
 0066                   .dbline 72
 0066           ;             i=ReSendDataR;
 0066 B618              lda 0x18
 0068 F7                sta ,X
 0069                   .dbline 73
 0069           ;             *p=0x00; 
 0069 E606              lda 6,X
 006B B700              sta *__r1
 006D E605              lda 5,X
 006F B700              sta *__r0
 0071 4F                clra
 0072 5500              ldhx *__r0
 0074 F7                sta ,x
 0075 95                tsx
 0076                   .dbline 74
 0076           ;             break;
 0076 201C              bra L42
 0078           L44:
 0078           L41:
 0078                   .dbline 69
 0078 E602              lda 2,X
 007A AB01              add #1
 007C E702              sta 2,X
 007E E601              lda 1,X
 0080 A900              adc #0
 0082 E701              sta 1,X
 0084           L43:
 0084                   .dbline 69
 0084 E602              lda 2,X
 0086 B700              sta *__r1
 0088 E601              lda 1,X
 008A B700              sta *__r0
 008C 5500              ldhx *__r0
 008E 65FBBB            cphx #-1093
 0091 95                tsx
 0092 25CF              blo L40
 0094           L42:
 0094                   .dbline 77
 0094           ;         } 
 0094           ;    //接受失败
 0094           ;    if(k>=0xfbbb) 
 0094 E602              lda 2,X
 0096 B700              sta *__r1
 0098 E601              lda 1,X
 009A B700              sta *__r0
 009C 5500              ldhx *__r0
 009E 65FBBB            cphx #-1093
 00A1 95                tsx
 00A2 2511              blo L46
 00A4                   .dbline 78
 00A4           ;    {
 00A4                   .dbline 79
 00A4           ;         i=0xff;
 00A4 A6FF              lda #-1
 00A6 F7                sta ,X
 00A7                   .dbline 80
 00A7           ;         *p=0x01;
 00A7 E606              lda 6,X
 00A9 B700              sta *__r1
 00AB E605              lda 5,X
 00AD B700              sta *__r0
 00AF A601              lda #1
 00B1 5500              ldhx *__r0
 00B3 F7                sta ,x
 00B4 95                tsx
 00B5                   .dbline 81
 00B5           ;    }
 00B5           L46:
 00B5                   .dbline 82
 00B5           ;    return i;
 00B5 F6                lda ,X
 00B6                   .dbline -2
 00B6           L39:
 00B6 A703              ais #3
 00B8                   .dbline 0 ; func end
 00B8 81                rts
 00B9                   .dbsym l i 0 c
 00B9                   .dbsym l k 1 i
 00B9                   .dbsym l p 5 pc
 00B9                   .dbend
 00B9                   .dbfunc e SCIReN _SCIReN fc
 00B9           ;             fp -> 0,X
 00B9           ;              m -> 1,X
 00B9           ;             ch -> 6,X
 00B9           ;              n -> 5,X
 00B9           _SCIReN::
 00B9                   .dbline -1
 00B9 A7FD              ais #-3
 00BB 95                tsx
 00BC                   .dbline 91
 00BC           ; }
 00BC           ; 
 00BC           ; //SCIReN:HC08串行接收N个字节-----------------------------------------------*
 00BC           ; //功  能:接收N个字节数据,并存放在ch数组中                                  *
 00BC           ; //参  数:待接收的数据字节数及其存放的数组首地址                            *
 00BC           ; //返  回:接收标志=0 收到数据,=1 未收到数据                                 *
 00BC           ; //-------------------------------------------------------------------------*
 00BC           ; INT8U SCIReN(INT8U n,INT8U ch[])
 00BC           ; {
 00BC                   .dbline 94
 00BC           ;    int m;                  
 00BC           ;    INT8U fp;
 00BC           ;    m=0;
 00BC 6F02              clr 2,X
 00BE 6F01              clr 1,X
 00C0 2031              bra L50
 00C2           L49:
 00C2                   .dbline 96
 00C2           ;    while (m<n)
 00C2           ;    {            
 00C2                   .dbline 97
 00C2           ;         ch[m]=SCIRe1(&fp); 
 00C2 89                pshx
 00C3 8B                pshh
 00C4 CD005A            jsr _SCIRe1
 00C7 A702              ais #2
 00C9 95                tsx
 00CA B700              sta *__r1
 00CC E602              lda 2,X
 00CE EB07              add 7,X
 00D0 B700              sta *__r3
 00D2 E601              lda 1,X
 00D4 E906              adc 6,X
 00D6 B700              sta *__r2
 00D8 B600              lda *__r1
 00DA 5500              ldhx *__r2
 00DC F7                sta ,x
 00DD 95                tsx
 00DE                   .dbline 98
 00DE           ;         if (fp==1) return 1;
 00DE F6                lda ,X
 00DF A101              cmp #1
 00E1 2604              bne L52
 00E3                   .dbline 98
 00E3 A601              lda #1
 00E5 2022              bra L48
 00E7           L52:
 00E7                   .dbline 99
 00E7 E602              lda 2,X
 00E9 AB01              add #1
 00EB E702              sta 2,X
 00ED E601              lda 1,X
 00EF A900              adc #0
 00F1 E701              sta 1,X
 00F3                   .dbline 100
 00F3           L50:
 00F3                   .dbline 95
 00F3 3F00              clr *__r0
 00F5 E605              lda 5,X
 00F7 B700              sta *__r1
 00F9 E602              lda 2,X
 00FB B700              sta *__r3
 00FD E601              lda 1,X
 00FF B700              sta *__r2
 0101 5500              ldhx *__r2
 0103 7500              cphx *__r0
 0105 95                tsx
 0106 91BA              blt L49
 0108                   .dbline 101
 0108           ;         m++;
 0108           ;    } 
 0108           ;    return 0;   
 0108 4F                clra
 0109                   .dbline -2
 0109           L48:
 0109 A703              ais #3
 010B                   .dbline 0 ; func end
 010B 81                rts
 010C                   .dbsym l fp 0 c
 010C                   .dbsym l m 1 I
 010C                   .dbsym l ch 6 pc
 010C                   .dbsym l n 5 c
 010C                   .dbend

⌨️ 快捷键说明

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