?? main.lis
字號:
.module main.c
.area text(rom, con, rel)
0000 .dbfile D:\ATP_AVR\main.c
0000 .dbfunc e ucHex2BCD _ucHex2BCD fc
0000 ; uctemp -> R20
0000 ; ucIn -> R22
.even
0000 _ucHex2BCD::
0000 0E940000 xcall push_gset2
0004 602F mov R22,R16
0006 .dbline -1
0006 .dbline 24
0006 ; //ICC-AVR application builder : 2007-10-30 15:43:17
0006 ; #include "public.h"
0006 ;
0006 ;
0006 ; #define Fy0 61242
0006 ; #define FyL 60742
0006 ; #define FyH 61742
0006 ;
0006 ; #define RadPer1MHz 0.001
0006 ;
0006 ; #define Rad0 0.087266 //5度
0006 ;
0006 ;
0006 ; //方程的系數
0006 ;
0006 ; #define xishuA 4.9201506335
0006 ; #define xishuB -11.4057818550
0006 ; #define xishuC -4.9964661567
0006 ;
0006 ; //const u8 ucHEX2BCD[3000][3];
0006 ;
0006 ;
0006 ; u8 ucHex2BCD(u8 ucIn)
0006 ; {
0006 .dbline 27
0006 ; u8 uctemp;
0006 ;
0006 ; uctemp=ucIn%10;
0006 1AE0 ldi R17,10
0008 062F mov R16,R22
000A 0E940000 xcall mod8u
000E 402F mov R20,R16
0010 .dbline 28
0010 ; uctemp=uctemp|(((ucIn%100)/10)<<4);
0010 14E6 ldi R17,100
0012 062F mov R16,R22
0014 0E940000 xcall mod8u
0018 1AE0 ldi R17,10
001A 0E940000 xcall div8u
001E 802F mov R24,R16
0020 8F70 andi R24,#0x0F
0022 8295 swap R24
0024 482B or R20,R24
0026 .dbline 30
0026 ;
0026 ; return uctemp;
0026 042F mov R16,R20
0028 .dbline -2
0028 L1:
0028 0E940000 xcall pop_gset2
002C .dbline 0 ; func end
002C 0895 ret
002E .dbsym r uctemp 20 c
002E .dbsym r ucIn 22 c
002E .dbend
002E .dbfunc e HEX2BCD _HEX2BCD fV
002E ; uctemp -> <dead>
002E ; pucOutBuff -> R10,R11
002E ; ulHex -> y+6
.even
002E _HEX2BCD::
002E 0E940000 xcall push_arg4
0032 0E940000 xcall push_gset3
0036 AA84 ldd R10,y+10
0038 BB84 ldd R11,y+11
003A .dbline -1
003A .dbline 34
003A ;
003A ; }
003A ; void HEX2BCD(u32 ulHex,u8* pucOutBuff)
003A ; {
003A .dbline 37
003A ; u8 uctemp;
003A ;
003A ; pucOutBuff[2]=ulHex%10;
003A 4AE0 ldi R20,10
003C 50E0 ldi R21,0
003E 60E0 ldi R22,0
0040 70E0 ldi R23,0
0042 FE01 movw R30,R28
0044 2680 ldd R2,z+6
0046 3780 ldd R3,z+7
0048 4084 ldd R4,z+8
004A 5184 ldd R5,z+9
004C 7A93 st -y,R23
004E 6A93 st -y,R22
0050 5A93 st -y,R21
0052 4A93 st -y,R20
0054 8101 movw R16,R2
0056 9201 movw R18,R4
0058 0E940000 xcall mod32u
005C F501 movw R30,R10
005E 0283 std z+2,R16
0060 .dbline 38
0060 ; ulHex=ulHex/10;
0060 4AE0 ldi R20,10
0062 50E0 ldi R21,0
0064 60E0 ldi R22,0
0066 70E0 ldi R23,0
0068 FE01 movw R30,R28
006A 2680 ldd R2,z+6
006C 3780 ldd R3,z+7
006E 4084 ldd R4,z+8
0070 5184 ldd R5,z+9
0072 7A93 st -y,R23
0074 6A93 st -y,R22
0076 5A93 st -y,R21
0078 4A93 st -y,R20
007A 8101 movw R16,R2
007C 9201 movw R18,R4
007E 0E940000 xcall div32u
0082 FE01 movw R30,R28
0084 0683 std z+6,R16
0086 1783 std z+7,R17
0088 2087 std z+8,R18
008A 3187 std z+9,R19
008C .dbline 39
008C ; pucOutBuff[2]=pucOutBuff[2]|((ulHex%10)<<4);
008C C501 movw R24,R10
008E 0296 adiw R24,2
0090 1C01 movw R2,R24
0092 4AE0 ldi R20,10
0094 50E0 ldi R21,0
0096 60E0 ldi R22,0
0098 70E0 ldi R23,0
009A FE01 movw R30,R28
009C 4680 ldd R4,z+6
009E 5780 ldd R5,z+7
00A0 6084 ldd R6,z+8
00A2 7184 ldd R7,z+9
00A4 7A93 st -y,R23
00A6 6A93 st -y,R22
00A8 5A93 st -y,R21
00AA 4A93 st -y,R20
00AC 8201 movw R16,R4
00AE 9301 movw R18,R6
00B0 0E940000 xcall mod32u
00B4 84E0 ldi R24,4
00B6 90E0 ldi R25,0
00B8 8A93 st -y,R24
00BA 0E940000 xcall lsl32
00BE F101 movw R30,R2
00C0 4080 ldd R4,z+0
00C2 5524 clr R5
00C4 6624 clr R6
00C6 7724 clr R7
00C8 402A or R4,R16
00CA 512A or R5,R17
00CC 622A or R6,R18
00CE 732A or R7,R19
00D0 4082 std z+0,R4
00D2 .dbline 40
00D2 ; ulHex=ulHex/10;
00D2 4AE0 ldi R20,10
00D4 50E0 ldi R21,0
00D6 60E0 ldi R22,0
00D8 70E0 ldi R23,0
00DA FE01 movw R30,R28
00DC 2680 ldd R2,z+6
00DE 3780 ldd R3,z+7
00E0 4084 ldd R4,z+8
00E2 5184 ldd R5,z+9
00E4 7A93 st -y,R23
00E6 6A93 st -y,R22
00E8 5A93 st -y,R21
00EA 4A93 st -y,R20
00EC 8101 movw R16,R2
00EE 9201 movw R18,R4
00F0 0E940000 xcall div32u
00F4 FE01 movw R30,R28
00F6 0683 std z+6,R16
00F8 1783 std z+7,R17
00FA 2087 std z+8,R18
00FC 3187 std z+9,R19
00FE .dbline 41
00FE ; pucOutBuff[1]=ulHex%10;
00FE 4AE0 ldi R20,10
0100 50E0 ldi R21,0
0102 60E0 ldi R22,0
0104 70E0 ldi R23,0
0106 FE01 movw R30,R28
0108 2680 ldd R2,z+6
010A 3780 ldd R3,z+7
010C 4084 ldd R4,z+8
010E 5184 ldd R5,z+9
0110 7A93 st -y,R23
0112 6A93 st -y,R22
0114 5A93 st -y,R21
0116 4A93 st -y,R20
0118 8101 movw R16,R2
011A 9201 movw R18,R4
011C 0E940000 xcall mod32u
0120 F501 movw R30,R10
0122 0183 std z+1,R16
0124 .dbline 42
0124 ; ulHex=ulHex/10;
0124 4AE0 ldi R20,10
0126 50E0 ldi R21,0
0128 60E0 ldi R22,0
012A 70E0 ldi R23,0
012C FE01 movw R30,R28
012E 2680 ldd R2,z+6
0130 3780 ldd R3,z+7
0132 4084 ldd R4,z+8
0134 5184 ldd R5,z+9
0136 7A93 st -y,R23
0138 6A93 st -y,R22
013A 5A93 st -y,R21
013C 4A93 st -y,R20
013E 8101 movw R16,R2
0140 9201 movw R18,R4
0142 0E940000 xcall div32u
0146 FE01 movw R30,R28
0148 0683 std z+6,R16
014A 1783 std z+7,R17
014C 2087 std z+8,R18
014E 3187 std z+9,R19
0150 .dbline 43
0150 ; pucOutBuff[1]=pucOutBuff[1]|((ulHex%10)<<4);
0150 C501 movw R24,R10
0152 0196 adiw R24,1
0154 1C01 movw R2,R24
0156 4AE0 ldi R20,10
0158 50E0 ldi R21,0
015A 60E0 ldi R22,0
015C 70E0 ldi R23,0
015E FE01 movw R30,R28
0160 4680 ldd R4,z+6
0162 5780 ldd R5,z+7
0164 6084 ldd R6,z+8
0166 7184 ldd R7,z+9
0168 7A93 st -y,R23
016A 6A93 st -y,R22
016C 5A93 st -y,R21
016E 4A93 st -y,R20
0170 8201 movw R16,R4
0172 9301 movw R18,R6
0174 0E940000 xcall mod32u
0178 84E0 ldi R24,4
017A 90E0 ldi R25,0
017C 8A93 st -y,R24
017E 0E940000 xcall lsl32
0182 F101 movw R30,R2
0184 4080 ldd R4,z+0
0186 5524 clr R5
0188 6624 clr R6
018A 7724 clr R7
018C 402A or R4,R16
018E 512A or R5,R17
0190 622A or R6,R18
0192 732A or R7,R19
0194 4082 std z+0,R4
0196 .dbline 44
0196 ; ulHex=ulHex/10;
0196 4AE0 ldi R20,10
0198 50E0 ldi R21,0
019A 60E0 ldi R22,0
019C 70E0 ldi R23,0
019E FE01 movw R30,R28
01A0 2680 ldd R2,z+6
01A2 3780 ldd R3,z+7
01A4 4084 ldd R4,z+8
01A6 5184 ldd R5,z+9
01A8 7A93 st -y,R23
01AA 6A93 st -y,R22
01AC 5A93 st -y,R21
01AE 4A93 st -y,R20
01B0 8101 movw R16,R2
01B2 9201 movw R18,R4
01B4 0E940000 xcall div32u
01B8 FE01 movw R30,R28
01BA 0683 std z+6,R16
01BC 1783 std z+7,R17
01BE 2087 std z+8,R18
01C0 3187 std z+9,R19
01C2 .dbline 45
01C2 ; pucOutBuff[0]=ulHex%10;
01C2 4AE0 ldi R20,10
01C4 50E0 ldi R21,0
01C6 60E0 ldi R22,0
01C8 70E0 ldi R23,0
01CA FE01 movw R30,R28
01CC 2680 ldd R2,z+6
01CE 3780 ldd R3,z+7
01D0 4084 ldd R4,z+8
01D2 5184 ldd R5,z+9
01D4 7A93 st -y,R23
01D6 6A93 st -y,R22
01D8 5A93 st -y,R21
01DA 4A93 st -y,R20
01DC 8101 movw R16,R2
01DE 9201 movw R18,R4
01E0 0E940000 xcall mod32u
01E4 F501 movw R30,R10
01E6 0083 std z+0,R16
01E8 .dbline 46
01E8 ; ulHex=ulHex/10;
01E8 4AE0 ldi R20,10
01EA 50E0 ldi R21,0
01EC 60E0 ldi R22,0
01EE 70E0 ldi R23,0
01F0 FE01 movw R30,R28
01F2 2680 ldd R2,z+6
01F4 3780 ldd R3,z+7
01F6 4084 ldd R4,z+8
01F8 5184 ldd R5,z+9
01FA 7A93 st -y,R23
01FC 6A93 st -y,R22
01FE 5A93 st -y,R21
0200 4A93 st -y,R20
0202 8101 movw R16,R2
0204 9201 movw R18,R4
0206 0E940000 xcall div32u
020A FE01 movw R30,R28
020C 0683 std z+6,R16
020E 1783 std z+7,R17
0210 2087 std z+8,R18
0212 3187 std z+9,R19
0214 .dbline 47
0214 ; pucOutBuff[0]=pucOutBuff[0]|((ulHex%10)<<4);
0214 4AE0 ldi R20,10
0216 50E0 ldi R21,0
0218 60E0 ldi R22,0
021A 70E0 ldi R23,0
021C FE01 movw R30,R28
021E 2680 ldd R2,z+6
0220 3780 ldd R3,z+7
0222 4084 ldd R4,z+8
0224 5184 ldd R5,z+9
0226 7A93 st -y,R23
0228 6A93 st -y,R22
022A 5A93 st -y,R21
022C 4A93 st -y,R20
022E 8101 movw R16,R2
0230 9201 movw R18,R4
0232 0E940000 xcall mod32u
0236 84E0 ldi R24,4
0238 90E0 ldi R25,0
023A 8A93 st -y,R24
023C 0E940000 xcall lsl32
0240 F501 movw R30,R10
0242 2080 ldd R2,z+0
0244 3324 clr R3
0246 4424 clr R4
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -