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

📄 m128_my.lis

📁 ewts avr驱动程序 角速度传感器 104为秒
💻 LIS
📖 第 1 页 / 共 2 页
字号:
                        .even
 00F0           _asc_tran1::
 00F0 0E940000          xcall push_gset2
 00F4 422F              mov R20,R18
 00F6 602F              mov R22,R16
 00F8                   .dbline -1
 00F8                   .dbline 97
 00F8           ; }
 00F8           ; 
 00F8           ; 
 00F8           ; /*          传送ASCII字母到LCD            */
 00F8           ; /*          x:0x00~0x0f y:0~64            */  
 00F8           ; void asc_tran1(unsigned char x,unsigned char y,unsigned char *asc_p)
 00F8           ;     {
 00F8                   .dbline 98
 00F8           ;        x+=4;
 00F8 6C5F              subi R22,252    ; addi 4
 00FA                   .dbline 100
 00FA           ;        //while((*asc_p)!=0)
 00FA           ;           {
 00FA                   .dbline 101
 00FA           ;                ocmj_write(0xf1);
 00FA 01EF              ldi R16,241
 00FC 10E0              ldi R17,0
 00FE 0E940000          xcall _ocmj_write
 0102                   .dbline 102
 0102           ;                ocmj_write(x);
 0102 062F              mov R16,R22
 0104 1127              clr R17
 0106 0E940000          xcall _ocmj_write
 010A                   .dbline 103
 010A           ;                ocmj_write(y);
 010A 042F              mov R16,R20
 010C 1127              clr R17
 010E 0E940000          xcall _ocmj_write
 0112                   .dbline 104
 0112           ;                ocmj_write(*asc_p);
 0112 EC81              ldd R30,y+4
 0114 FD81              ldd R31,y+5
 0116 0081              ldd R16,z+0
 0118 1127              clr R17
 011A 0E940000          xcall _ocmj_write
 011E                   .dbline 105
 011E           ;                asc_p++;
 011E 8C81              ldd R24,y+4
 0120 9D81              ldd R25,y+5
 0122 0196              adiw R24,1
 0124 9D83              std y+5,R25
 0126 8C83              std y+4,R24
 0128                   .dbline 106
 0128           ;                if (x<0x13) 
 0128 6331              cpi R22,19
 012A 10F4              brsh L10
 012C                   .dbline 107
 012C           ;                   x++;
 012C 6395              inc R22
 012E 02C0              xjmp L11
 0130           L10:
 0130                   .dbline 109
 0130           ;                else
 0130           ;                  {
 0130                   .dbline 110
 0130           ;                   x=0x04;
 0130 64E0              ldi R22,4
 0132                   .dbline 111
 0132           ;                       y+=8;               
 0132 485F              subi R20,248    ; addi 8
 0134                   .dbline 112
 0134           ;                  }    
 0134           L11:
 0134                   .dbline 113
 0134           ;               }       
 0134                   .dbline -2
 0134           L9:
 0134 0E940000          xcall pop_gset2
 0138                   .dbline 0 ; func end
 0138 0895              ret
 013A                   .dbsym l asc_p 4 pc
 013A                   .dbsym r y 20 c
 013A                   .dbsym r x 22 c
 013A                   .dbend
                        .area lit(rom, con, rel)
 0000           L13:
 0000 3031              .byte 48,49
 0002 3233              .byte 50,51
 0004 3435              .byte 52,53
 0006 3637              .byte 54,55
 0008 3839              .byte 56,57
 000A 2D2B              .byte 45,43
                        .area text(rom, con, rel)
 013A                   .dbfile D:\PROTEU~1.7\PROTEU~1.7\JOHU\a___EWTS82\m128_my.c
 013A                   .dbfunc e main _main fI
 013A           ;              j -> R20
 013A           ;           code -> y+2
 013A           ;              a -> R22,R23
 013A           ;              i -> R10,R11
 013A           ;              x -> R12,R13
                        .even
 013A           _main::
 013A 2E97              sbiw R28,14
 013C                   .dbline -1
 013C                   .dbline 119
 013C           ;       }
 013C           ;       
 013C           ;       
 013C           ;       
 013C           ; main()
 013C           ; {
 013C                   .dbline 120
 013C           ; int x=0,a=0,i=0;
 013C CC24              clr R12
 013E DD24              clr R13
 0140                   .dbline 120
 0140 6627              clr R22
 0142 7727              clr R23
 0144                   .dbline 120
 0144 AA24              clr R10
 0146 BB24              clr R11
 0148                   .dbline 121
 0148           ; char j=0;
 0148 4427              clr R20
 014A                   .dbline 122
 014A           ; char code[]={'0','1','2','3','4','5','6','7','8','9','-','+',};
 014A 80E0              ldi R24,<L13
 014C 90E0              ldi R25,>L13
 014E FE01              movw R30,R28
 0150 3296              adiw R30,2
 0152 0CE0              ldi R16,12
 0154 10E0              ldi R17,0
 0156 FA93              st -y,R31
 0158 EA93              st -y,R30
 015A 9A93              st -y,R25
 015C 8A93              st -y,R24
 015E 0E940000          xcall asgncblk
 0162                   .dbline 123
 0162           ; DDRD=0x00;
 0162 2224              clr R2
 0164 21BA              out 0x11,R2
 0166                   .dbline 124
 0166           ; PORTD=0x03;
 0166 83E0              ldi R24,3
 0168 82BB              out 0x12,R24
 016A                   .dbline 127
 016A           ; 
 016A           ; //while(1);
 016A           ; init_devices();
 016A 74DF              xcall _init_devices
 016C                   .dbline 129
 016C           ; 
 016C           ; ocmj_init();//初始化  
 016C 0E940000          xcall _ocmj_init
 0170                   .dbline 130
 0170           ; ocmj_write(0xf4);//清屏
 0170 04EF              ldi R16,244
 0172 10E0              ldi R17,0
 0174 0E940000          xcall _ocmj_write
 0178                   .dbline 131
 0178           ; hz_tran(3,0,"数模转换");//传送内部汉字
 0178 80E0              ldi R24,<L14
 017A 90E0              ldi R25,>L14
 017C 9983              std y+1,R25
 017E 8883              std y+0,R24
 0180 2227              clr R18
 0182 3327              clr R19
 0184 03E0              ldi R16,3
 0186 10E0              ldi R17,0
 0188 0E940000          xcall _hz_tran
 018C                   .dbline 135
 018C           ; 
 018C           ; 
 018C           ; 
 018C           ; DDRB=0x03;
 018C 83E0              ldi R24,3
 018E 87BB              out 0x17,R24
 0190                   .dbline 136
 0190           ; PORTB=0xfc;
 0190 8CEF              ldi R24,252
 0192 88BB              out 0x18,R24
 0194 5BC0              xjmp L16
 0196           L15:
 0196                   .dbline 139
 0196           ; //while(1);
 0196           ; while(1)
 0196           ;  {    for(j=0;j<128;j++)      
 0196                   .dbline 139
 0196 4427              clr R20
 0198 52C0              xjmp L21
 019A           L18:
 019A                   .dbline 140
 019A           ;       {       x=v;
 019A                   .dbline 140
 019A C0900000          lds R12,_v
 019E D0900100          lds R13,_v+1
 01A2                   .dbline 141
 01A2           ;               pset(j,x/17);
 01A2 21E1              ldi R18,17
 01A4 30E0              ldi R19,0
 01A6 8601              movw R16,R12
 01A8 0E940000          xcall div16s
 01AC 9801              movw R18,R16
 01AE 042F              mov R16,R20
 01B0 1127              clr R17
 01B2 0E940000          xcall _pset
 01B6                   .dbline 142
 01B6           ;               for(i=0;i<7;i++)
 01B6 AA24              clr R10
 01B8 BB24              clr R11
 01BA           L22:
 01BA                   .dbline 143
 01BA           ;               {
 01BA                   .dbline 144
 01BA           ;                if (x<0)
 01BA C601              movw R24,R12
 01BC 8030              cpi R24,0
 01BE E0E0              ldi R30,0
 01C0 9E07              cpc R25,R30
 01C2 64F4              brge L26
 01C4                   .dbline 145
 01C4           ;                       {x=-x;asc_tran1(9-7,50,& code[10]);}
 01C4                   .dbline 145
 01C4 8095              com R24
 01C6 9095              com R25
 01C8 8F5F              subi R24,0xFF
 01CA 9F4F              sbci R25,0xFF
 01CC 6C01              movw R12,R24
 01CE                   .dbline 145
 01CE CE01              movw R24,R28
 01D0 0C96              adiw R24,12
 01D2 9983              std y+1,R25
 01D4 8883              std y+0,R24
 01D6 22E3              ldi R18,50
 01D8 02E0              ldi R16,2
 01DA 8ADF              xcall _asc_tran1
 01DC                   .dbline 145
 01DC           L26:
 01DC                   .dbline 146
 01DC 2AE0              ldi R18,10
 01DE 30E0              ldi R19,0
 01E0 8601              movw R16,R12
 01E2 0E940000          xcall mod16s
 01E6 B801              movw R22,R16
 01E8                   .dbline 147
 01E8 CE01              movw R24,R28
 01EA 0296              adiw R24,2
 01EC 1B01              movw R2,R22
 01EE 280E              add R2,R24
 01F0 391E              adc R3,R25
 01F2 3982              std y+1,R3
 01F4 2882              std y+0,R2
 01F6 22E3              ldi R18,50
 01F8 0AE0              ldi R16,10
 01FA 0A19              sub R16,R10
 01FC 1B09              sbc R17,R11
 01FE 78DF              xcall _asc_tran1
 0200                   .dbline 148
 0200 2AE0              ldi R18,10
 0202 30E0              ldi R19,0
 0204 8601              movw R16,R12
 0206 0E940000          xcall div16s
 020A 6801              movw R12,R16
 020C                   .dbline 149
 020C           L23:
 020C                   .dbline 142
 020C C501              movw R24,R10
 020E 0196              adiw R24,1
 0210 5C01              movw R10,R24
 0212                   .dbline 142
 0212 8730              cpi R24,7
 0214 E0E0              ldi R30,0
 0216 9E07              cpc R25,R30
 0218 84F2              brlt L22
 021A                   .dbline 150
 021A           ;                a=x%10;
 021A           ;                asc_tran1(10-i,50,& code[a]);
 021A           ;                x=x/10;
 021A           ;               }       //for
 021A           ;               delay_ms(1);    
 021A 01E0              ldi R16,1
 021C 10E0              ldi R17,0
 021E 0E940000          xcall _delay_ms
 0222                   .dbline 151
 0222           ;       if (time>100)   
 0222 84E6              ldi R24,100
 0224 90E0              ldi R25,0
 0226 20900200          lds R2,_time
 022A 30900300          lds R3,_time+1
 022E 8215              cp R24,R2
 0230 9305              cpc R25,R3
 0232 20F4              brsh L29
 0234                   .dbline 152
 0234           ;       {       EIMSK = 0x03;
 0234                   .dbline 152
 0234 83E0              ldi R24,3
 0236 89BF              out 0x39,R24
 0238                   .dbline 153
 0238           ;               PORTB=0xfc;
 0238 8CEF              ldi R24,252
 023A 88BB              out 0x18,R24
 023C                   .dbline 154
 023C           ;       }       
 023C           L29:
 023C                   .dbline 157
 023C           L19:
 023C                   .dbline 139
 023C 4395              inc R20
 023E           L21:
 023E                   .dbline 139
 023E 4038              cpi R20,128
 0240 08F4              brsh X1
 0242 ABCF              xjmp L18
 0244           X1:
 0244                   .dbline 158
 0244 04EF              ldi R16,244
 0246 10E0              ldi R17,0
 0248 0E940000          xcall _ocmj_write
 024C                   .dbline 159
 024C           L16:
 024C                   .dbline 138
 024C A4CF              xjmp L15
 024E           X0:
 024E                   .dbline -2
 024E           L12:
 024E 2E96              adiw R28,14
 0250                   .dbline 0 ; func end
 0250 0895              ret
 0252                   .dbsym r j 20 c
 0252                   .dbsym l code 2 A[12:12]c
 0252                   .dbsym r a 22 I
 0252                   .dbsym r i 10 I
 0252                   .dbsym r x 12 I
 0252                   .dbend
                        .area data(ram, con, rel)
 0004                   .dbfile D:\PROTEU~1.7\PROTEU~1.7\JOHU\a___EWTS82\m128_my.c
 0004           L14:
 0004                   .blkb 9
                        .area idata
 0004 CAFDC4A3D7AABBBB00        .byte 202,253,196,163,215,170,187,187,0
                        .area data(ram, con, rel)
 000D                   .dbfile D:\PROTEU~1.7\PROTEU~1.7\JOHU\a___EWTS82\m128_my.c

⌨️ 快捷键说明

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