?? m16_t1_capature.lis
字號:
.module M16_T1_Capature.c
.area data(ram, con, rel)
0000 _Flag::
0000 .blkb 1
.area idata
0000 00 .byte 0
.area data(ram, con, rel)
0001 .dbfile F:\myavr\temp\M16_T1_Capature\M16_T1_Capature.c
0001 .dbsym e Flag _Flag c
0001 _Table::
0001 .blkb 2
.area idata
0001 3F06 .byte 63,6
.area data(ram, con, rel)
0003 .dbfile F:\myavr\temp\M16_T1_Capature\M16_T1_Capature.c
0003 .blkb 2
.area idata
0003 5B4F .byte 91,'O
.area data(ram, con, rel)
0005 .dbfile F:\myavr\temp\M16_T1_Capature\M16_T1_Capature.c
0005 .blkb 2
.area idata
0005 666D .byte 'f,'m
.area data(ram, con, rel)
0007 .dbfile F:\myavr\temp\M16_T1_Capature\M16_T1_Capature.c
0007 .blkb 2
.area idata
0007 7D07 .byte 125,7
.area data(ram, con, rel)
0009 .dbfile F:\myavr\temp\M16_T1_Capature\M16_T1_Capature.c
0009 .blkb 2
.area idata
0009 7F6F .byte 127,'o
.area data(ram, con, rel)
000B .dbfile F:\myavr\temp\M16_T1_Capature\M16_T1_Capature.c
000B .blkb 2
.area idata
000B 777C .byte 'w,124
.area data(ram, con, rel)
000D .dbfile F:\myavr\temp\M16_T1_Capature\M16_T1_Capature.c
000D .blkb 2
.area idata
000D 395E .byte 57,94
.area data(ram, con, rel)
000F .dbfile F:\myavr\temp\M16_T1_Capature\M16_T1_Capature.c
000F .blkb 2
.area idata
000F 7971 .byte 'y,'q
.area data(ram, con, rel)
0011 .dbfile F:\myavr\temp\M16_T1_Capature\M16_T1_Capature.c
0011 .blkb 4
.area idata
0011 00000000 .byte 0,0,0,0
.area data(ram, con, rel)
0015 .dbfile F:\myavr\temp\M16_T1_Capature\M16_T1_Capature.c
0015 .dbsym e Table _Table A[20:20]c
0015 _Data::
0015 .blkb 2
.area idata
0015 0000 .byte 0,0
.area data(ram, con, rel)
0017 .dbfile F:\myavr\temp\M16_T1_Capature\M16_T1_Capature.c
0017 .blkb 2
.area idata
0017 0000 .byte 0,0
.area data(ram, con, rel)
0019 .dbfile F:\myavr\temp\M16_T1_Capature\M16_T1_Capature.c
0019 .dbsym e Data _Data A[4:4]c
0019 _CNT::
0019 .blkb 2
.area idata
0019 6400 .word 100
.area data(ram, con, rel)
001B .dbfile F:\myavr\temp\M16_T1_Capature\M16_T1_Capature.c
001B .dbsym e CNT _CNT i
.area text(rom, con, rel)
0000 .dbfile F:\myavr\temp\M16_T1_Capature\M16_T1_Capature.c
0000 .dbfunc e DelayMs _DelayMs fV
0000 ; j -> R20,R21
0000 ; i -> R16,R17
.even
0000 _DelayMs::
0000 0E940000 xcall push_gset1
0004 .dbline -1
0004 .dbline 21
0004 ; //***************FileName:Capature.C***************//
0004 ; //***************ICCAVR V6.30編譯*****************//
0004 ;
0004 ; #include <iom16v.h>
0004 ; #include <macros.h>
0004 ; #define uchar unsigned char
0004 ; #define uint unsigned int
0004 ;
0004 ; #define CON 1000 //頻率常數(shù)定義
0004 ; uchar Flag=0; //捕獲次數(shù)定義
0004 ;
0004 ; //數(shù)碼管字型表,對應(yīng)0,1,2,3,4,5,6,7,8,9,A,b,C,d,E,F//
0004 ; uchar Table[20]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0004 ; 0x7f,0x6f,0x77,0x7c,0x39,0x5E,0x79,0x71};
0004 ; uchar Data[4]={0,0,0,0}; //顯示初始值:0 0 0 0
0004 ; uint CNT1; //第一次捕獲值
0004 ; uint CNT2; //第二此捕獲值
0004 ; uint CNT=100; //捕獲差值
0004 ;
0004 ; void DelayMs(uint i) //Ms級延時,參數(shù)i為延時時間
0004 ; {uint j;
0004 .dbline 22
0004 ; for(;i!=0;i--)
0004 0AC0 xjmp L5
0006 L2:
0006 .dbline 23
0006 .dbline 23
0006 4AEF ldi R20,250
0008 50E0 ldi R21,0
000A 02C0 xjmp L9
000C L6:
000C .dbline 23
000C .dbline 23
000C .dbline 23
000C L7:
000C .dbline 23
000C 4150 subi R20,1
000E 5040 sbci R21,0
0010 L9:
0010 .dbline 23
0010 4030 cpi R20,0
0012 4507 cpc R20,R21
0014 D9F7 brne L6
0016 X0:
0016 .dbline 23
0016 L3:
0016 .dbline 22
0016 0150 subi R16,1
0018 1040 sbci R17,0
001A L5:
001A .dbline 22
001A 0030 cpi R16,0
001C 0107 cpc R16,R17
001E 99F7 brne L2
0020 X1:
0020 .dbline -2
0020 .dbline 24
0020 ; {for(j=250;j!=0;j--) {;}}
0020 ; }
0020 L1:
0020 0E940000 xcall pop_gset1
0024 .dbline 0 ; func end
0024 0895 ret
0026 .dbsym r j 20 i
0026 .dbsym r i 16 i
0026 .dbend
0026 .dbfunc e Pre_Display _Pre_Display fV
0026 ; i -> R20
.even
0026 _Pre_Display::
0026 0E940000 xcall push_gset1
002A .dbline -1
002A .dbline 27
002A ;
002A ; void Pre_Display(void) //預(yù)顯示函數(shù),數(shù)碼管顯示檢測
002A ; {uchar i;
002A .dbline 28
002A ; for(i=0;i<16;i++)
002A 4427 clr R20
002C 0EC0 xjmp L14
002E L11:
002E .dbline 29
002E .dbline 29
002E 2224 clr R2
0030 25BA out 0x15,R2
0032 .dbline 30
0032 80E0 ldi R24,<_Table
0034 90E0 ldi R25,>_Table
0036 E42F mov R30,R20
0038 FF27 clr R31
003A E80F add R30,R24
003C F91F adc R31,R25
003E 2080 ldd R2,z+0
0040 2BBA out 0x1b,R2
0042 .dbline 31
0042 04E6 ldi R16,100
0044 10E0 ldi R17,0
0046 DCDF xcall _DelayMs
0048 .dbline 32
0048 L12:
0048 .dbline 28
0048 4395 inc R20
004A L14:
004A .dbline 28
004A 4031 cpi R20,16
004C 80F3 brlo L11
004E .dbline -2
004E .dbline 33
004E ; {PORTC=0x00;
004E ; PORTA=Table[i];
004E ; DelayMs(100);
004E ; }
004E ; }
004E L10:
004E 0E940000 xcall pop_gset1
0052 .dbline 0 ; func end
0052 0895 ret
0054 .dbsym r i 20 c
0054 .dbend
0054 .dbfunc e Display _Display fV
0054 ; sel -> R20
0054 ; i -> R22
0054 ; p -> R10,R11
.even
0054 _Display::
0054 0E940000 xcall push_gset3
0058 5801 movw R10,R16
005A .dbline -1
005A .dbline 36
005A ;
005A ; void Display(uchar *p) //動態(tài)顯示函數(shù),參數(shù)p為待顯示的數(shù)組名
005A ; {uchar i,sel=0x08;
005A .dbline 36
005A 48E0 ldi R20,8
005C .dbline 37
005C ; for(i=0;i<4;i++)
005C 6627 clr R22
005E 14C0 xjmp L19
0060 L16:
0060 .dbline 38
0060 .dbline 38
0060 242E mov R2,R20
0062 2094 com R2
0064 25BA out 0x15,R2
0066 .dbline 39
0066 E62F mov R30,R22
0068 FF27 clr R31
006A EA0D add R30,R10
006C FB1D adc R31,R11
006E E081 ldd R30,z+0
0070 FF27 clr R31
0072 80E0 ldi R24,<_Table
0074 90E0 ldi R25,>_Table
0076 E80F add R30,R24
0078 F91F adc R31,R25
007A 2080 ldd R2,z+0
007C 2BBA out 0x1b,R2
007E .dbline 40
007E 02E0 ldi R16,2
0080 10E0 ldi R17,0
0082 BEDF xcall _DelayMs
0084 .dbline 41
0084 4695 lsr R20
0086 .dbline 42
0086 L17:
0086 .dbline 37
0086 6395 inc R22
0088 L19:
0088 .dbline 37
0088 6430 cpi R22,4
008A 50F3 brlo L16
008C .dbline -2
008C .dbline 43
008C ; {PORTC=~sel; //選通最右邊的數(shù)碼管
008C ; PORTA=Table[p[i]]; //送字型碼
008C ; DelayMs(2); //顯示延時
008C ; sel=sel>>1; //移位以顯示前一位
008C ; }
008C ; }
008C L15:
008C 0E940000 xcall pop_gset3
0090 .dbline 0 ; func end
0090 0895 ret
0092 .dbsym r sel 20 c
0092 .dbsym r i 22 c
0092 .dbsym r p 10 pc
0092 .dbend
0092 .dbfunc e HZ _HZ fV
0092 ; TEM -> R22,R23
0092 ; p -> R20,R21
0092 ; i -> R10,R11
.even
0092 _HZ::
0092 0E940000 xcall push_gset3
0096 A901 movw R20,R18
0098 5801 movw R10,R16
009A .dbline -1
009A .dbline 46
009A ;
009A ; void HZ(uint i,uchar *p)
009A ; {uint TEM;
009A .dbline 47
009A ; p[0]=CON/i;
009A 08EE ldi R16,1000
009C 13E0 ldi R17,3
009E 9501 movw R18,R10
00A0 0E940000 xcall div16u
00A4 FA01 movw R30,R20
00A6 0083 std z+0,R16
00A8 .dbline 48
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -