📄 main.lis
字号:
.module main.c
.area text(rom, con, rel)
0000 .dbfile D:\RJ\Project\AVR\AD9852/AD9852.h
0000 .dbfunc e AD9852_ByteSend _AD9852_ByteSend fV
0000 ; i -> R20
0000 ; dat -> R16
.even
0000 _AD9852_ByteSend::
0000 0E940000 xcall push_gset1
0004 .dbline -1
0004 .dbline 37
0004 ; #include <iom16v.h>
0004 ; #include "AD9852.h"
0004 ;
0004 ; //送入9852的数据缓冲区,初始化为控制寄存器值,使能PLL,5倍频,外部刷新
0004 ; unsigned char AD9852_Data[]={0x10,0x45,0x00,0x60,0x00,0x00};
0004 ;
0004 ; void delay_us(unsigned int us)
0004 ; {
0004 ; while (--us);
0004 ; {
0004 ; us++;
0004 ; us--;
0004 ; }
0004 ; }
0004 ;
0004 ; void AD9852_DataPost(unsigned char Addr, unsigned char *pDat, unsigned char DataLen)
0004 ; {
0004 ; unsigned char i=0;
0004 ;
0004 ; AD9852_Set_IORESET();
0004 ; asm("nop");
0004 ; AD9852_Clr_IORESET();
0004 ;
0004 ; i=Addr;
0004 ; AD9852_ByteSend(i);
0004 ;
0004 ; for (i=0;i<DataLen;i++)
0004 ; {
0004 ; AD9852_ByteSend(pDat[i]);
0004 ; }
0004 ;
0004 ; AD9852_Set_IOUD();
0004 ; asm("nop");
0004 ; AD9852_Clr_IOUD();
0004 ; }
0004 ;
0004 ; void AD9852_Init()
0004 .dbline 39
0004 ; {
0004 ;
0004 4427 clr R20
0006 0FC0 xjmp L5
0008 L2:
0008 .dbline 40
0008 ; AD9852_CTRL_DDR |= ((0x01<<AD9852_IORESET)|(0x01<<AD9852_SCLK)|(0x01<<AD9852_MasterReset)|(0x01<<AD9852_CLKPOWER)|(0x01<<AD9852_IOUD)|(0x01<<AD9852_SDIO));
0008 .dbline 41
0008 ;
0008 BB9A sbi 0x17,3
000A .dbline 41
000A C398 cbi 0x18,3
000C .dbline 42
000C ; AD9852_CTRL_PORT &= (~((0x01<<AD9852_CLKPOWER)|(0x01<<AD9852_IOUD)));
000C 0000 nop
000E .dbline 43
000E ; AD9852_CTRL_PORT |= ((0x01<<AD9852_IORESET)|(0x01<<AD9852_SCLK)|(0x01<<AD9852_MasterReset));
000E 07FF sbrs R16,7
0010 03C0 rjmp L6
0012 .dbline 44
0012 ;
0012 .dbline 45
0012 ; delay_us(500);
0012 BE9A sbi 0x17,6
0014 .dbline 45
0014 C69A sbi 0x18,6
0016 .dbline 46
0016 ;
0016 02C0 xjmp L7
0018 L6:
0018 .dbline 48
0018 ; AD9852_Clr_MasterReset(); //AD9852复位
0018 ; asm("nop");
0018 .dbline 49
0018 ; AD9852_Set_MasterReset();
0018 BE9A sbi 0x17,6
001A .dbline 49
001A C698 cbi 0x18,6
001C .dbline 50
001C ; asm("nop");
001C L7:
001C .dbline 51
001C 0000 nop
001E .dbline 52
001E BB9A sbi 0x17,3
0020 .dbline 52
0020 C39A sbi 0x18,3
0022 .dbline 53
0022 000F lsl R16
0024 .dbline 54
0024 L3:
0024 .dbline 39
0024 4395 inc R20
0026 L5:
0026 .dbline 39
0026 4830 cpi R20,8
0028 78F3 brlo L2
002A .dbline -2
002A L1:
002A 0E940000 xcall pop_gset1
002E .dbline 0 ; func end
002E 0895 ret
0030 .dbsym r i 20 c
0030 .dbsym r dat 16 c
0030 .dbend
.area data(ram, con, rel)
0000 .dbfile D:\RJ\Project\AVR\AD9852/AD9852.h
0000 _AD9852_Data::
0000 .blkb 2
.area idata
0000 1045 .byte 16,'E
.area data(ram, con, rel)
0002 .dbfile D:\RJ\Project\AVR\AD9852/AD9852.h
0002 .blkb 2
.area idata
0002 0060 .byte 0,96
.area data(ram, con, rel)
0004 .dbfile D:\RJ\Project\AVR\AD9852/AD9852.h
0004 .blkb 2
.area idata
0004 0000 .byte 0,0
.area data(ram, con, rel)
0006 .dbfile D:\RJ\Project\AVR\AD9852/AD9852.h
0006 .dbfile D:\RJ\Project\AVR\AD9852\main.c
0006 .dbsym e AD9852_Data _AD9852_Data A[6:6]c
.area text(rom, con, rel)
0030 .dbfile D:\RJ\Project\AVR\AD9852\main.c
0030 .dbfunc e delay_us _delay_us fV
0030 ; us -> R16,R17
.even
0030 _delay_us::
0030 .dbline -1
0030 .dbline 8
0030 L9:
0030 .dbline 9
0030 L10:
0030 .dbline 9
0030 C801 movw R24,R16
0032 0197 sbiw R24,1
0034 8C01 movw R16,R24
0036 0030 cpi R16,0
0038 0107 cpc R16,R17
003A D1F7 brne L9
003C X0:
003C .dbline 10
003C .dbline 11
003C 0F5F subi R16,255 ; offset = 1
003E 1F4F sbci R17,255
0040 .dbline 12
0040 0150 subi R16,1
0042 1040 sbci R17,0
0044 .dbline 13
0044 .dbline -2
0044 L8:
0044 .dbline 0 ; func end
0044 0895 ret
0046 .dbsym r us 16 i
0046 .dbend
0046 .dbfunc e AD9852_DataPost _AD9852_DataPost fV
0046 ; i -> R20
0046 ; DataLen -> R22
0046 ; pDat -> R10,R11
0046 ; Addr -> R12
.even
0046 _AD9852_DataPost::
0046 0E940000 xcall push_gset4
004A 5901 movw R10,R18
004C C02E mov R12,R16
004E 6885 ldd R22,y+8
0050 .dbline -1
0050 .dbline 17
0050 .dbline 18
0050 4427 clr R20
0052 .dbline 20
0052 BD9A sbi 0x17,5
0054 .dbline 20
0054 C59A sbi 0x18,5
0056 .dbline 21
0056 0000 nop
0058 .dbline 22
0058 BD9A sbi 0x17,5
005A .dbline 22
005A C598 cbi 0x18,5
005C .dbline 24
005C 4C2D mov R20,R12
005E .dbline 25
005E 042F mov R16,R20
0060 CFDF xcall _AD9852_ByteSend
0062 .dbline 27
0062 4427 clr R20
0064 07C0 xjmp L16
0066 L13:
0066 .dbline 28
0066 .dbline 29
0066 E42F mov R30,R20
0068 FF27 clr R31
006A EA0D add R30,R10
006C FB1D adc R31,R11
006E 0081 ldd R16,z+0
0070 C7DF xcall _AD9852_ByteSend
0072 .dbline 30
0072 L14:
0072 .dbline 27
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -