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

📄 ad9850_main.lss

📁 AD9851 驱动 原理图 pcb
💻 LSS
字号:

AD9850_main.elf:     file format elf32-avr

Sections:
Idx Name          Size      VMA       LMA       File off  Algn
  0 .text         000000c8  00000000  00000000  00000094  2**0
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
  1 .data         00000006  00800060  000000c8  0000015c  2**0
                  CONTENTS, ALLOC, LOAD, DATA
  2 .bss          00000000  00800066  000000ce  00000162  2**0
                  ALLOC
  3 .noinit       00000000  00800066  00800066  00000162  2**0
                  CONTENTS
  4 .eeprom       00000000  00810000  00810000  00000162  2**0
                  CONTENTS
  5 .stab         000003c0  00000000  00000000  00000164  2**2
                  CONTENTS, READONLY, DEBUGGING
  6 .stabstr      0000057c  00000000  00000000  00000524  2**0
                  CONTENTS, READONLY, DEBUGGING
Disassembly of section .text:

00000000 <__vectors>:
   0:	12 c0       	rjmp	.+36     	; 0x26
   2:	2b c0       	rjmp	.+86     	; 0x5a
   4:	2a c0       	rjmp	.+84     	; 0x5a
   6:	29 c0       	rjmp	.+82     	; 0x5a
   8:	28 c0       	rjmp	.+80     	; 0x5a
   a:	27 c0       	rjmp	.+78     	; 0x5a
   c:	26 c0       	rjmp	.+76     	; 0x5a
   e:	25 c0       	rjmp	.+74     	; 0x5a
  10:	24 c0       	rjmp	.+72     	; 0x5a
  12:	23 c0       	rjmp	.+70     	; 0x5a
  14:	22 c0       	rjmp	.+68     	; 0x5a
  16:	21 c0       	rjmp	.+66     	; 0x5a
  18:	20 c0       	rjmp	.+64     	; 0x5a
  1a:	1f c0       	rjmp	.+62     	; 0x5a
  1c:	1e c0       	rjmp	.+60     	; 0x5a
  1e:	1d c0       	rjmp	.+58     	; 0x5a
  20:	1c c0       	rjmp	.+56     	; 0x5a
  22:	1b c0       	rjmp	.+54     	; 0x5a
  24:	1a c0       	rjmp	.+52     	; 0x5a

00000026 <__ctors_end>:
  26:	11 24       	eor	r1, r1
  28:	1f be       	out	0x3f, r1	; 63
  2a:	cf e5       	ldi	r28, 0x5F	; 95
  2c:	d4 e0       	ldi	r29, 0x04	; 4
  2e:	de bf       	out	0x3e, r29	; 62
  30:	cd bf       	out	0x3d, r28	; 61

00000032 <__do_copy_data>:
  32:	10 e0       	ldi	r17, 0x00	; 0
  34:	a0 e6       	ldi	r26, 0x60	; 96
  36:	b0 e0       	ldi	r27, 0x00	; 0
  38:	e8 ec       	ldi	r30, 0xC8	; 200
  3a:	f0 e0       	ldi	r31, 0x00	; 0
  3c:	02 c0       	rjmp	.+4      	; 0x42

0000003e <.do_copy_data_loop>:
  3e:	05 90       	lpm	r0, Z+
  40:	0d 92       	st	X+, r0

00000042 <.do_copy_data_start>:
  42:	a6 36       	cpi	r26, 0x66	; 102
  44:	b1 07       	cpc	r27, r17
  46:	d9 f7       	brne	.-10     	; 0x3e

00000048 <__do_clear_bss>:
  48:	10 e0       	ldi	r17, 0x00	; 0
  4a:	a6 e6       	ldi	r26, 0x66	; 102
  4c:	b0 e0       	ldi	r27, 0x00	; 0
  4e:	01 c0       	rjmp	.+2      	; 0x52

00000050 <.do_clear_bss_loop>:
  50:	1d 92       	st	X+, r1

00000052 <.do_clear_bss_start>:
  52:	a6 36       	cpi	r26, 0x66	; 102
  54:	b1 07       	cpc	r27, r17
  56:	e1 f7       	brne	.-8      	; 0x50
  58:	1c c0       	rjmp	.+56     	; 0x92

0000005a <__bad_interrupt>:
  5a:	d2 cf       	rjmp	.-92     	; 0x0

0000005c <AD9850WriteBytes>:

void AD9850WriteBytes(unsigned char *byte)
{
	unsigned char i,j,temp;
	ClrW_CLK();
  5c:	a9 98       	cbi	0x15, 1	; 21
	ClrFQ_UD();
  5e:	aa 98       	cbi	0x15, 2	; 21
	for(i=0;i<5;i++)
  60:	30 e0       	ldi	r19, 0x00	; 0
	{
		temp=byte[i];
  62:	fc 01       	movw	r30, r24
  64:	e3 0f       	add	r30, r19
  66:	f1 1d       	adc	r31, r1
  68:	e0 81       	ld	r30, Z
  6a:	27 e0       	ldi	r18, 0x07	; 7
		for(j=0;j<8;j++)
		{
			ClrW_CLK();
  6c:	a9 98       	cbi	0x15, 1	; 21
			if(temp&0x01) SetDATA();
  6e:	e0 ff       	sbrs	r30, 0
  70:	02 c0       	rjmp	.+4      	; 0x76
  72:	a8 9a       	sbi	0x15, 0	; 21
  74:	01 c0       	rjmp	.+2      	; 0x78
			else ClrDATA();
  76:	a8 98       	cbi	0x15, 0	; 21
			temp=temp>>1;
  78:	e6 95       	lsr	r30
			SetW_CLK();
  7a:	a9 9a       	sbi	0x15, 1	; 21
  7c:	21 50       	subi	r18, 0x01	; 1
  7e:	27 ff       	sbrs	r18, 7
  80:	f5 cf       	rjmp	.-22     	; 0x6c
  82:	3f 5f       	subi	r19, 0xFF	; 255
  84:	35 30       	cpi	r19, 0x05	; 5
  86:	68 f3       	brcs	.-38     	; 0x62
		}
	}
	ClrW_CLK();
  88:	a9 98       	cbi	0x15, 1	; 21
	SetFQ_UD();
  8a:	aa 9a       	sbi	0x15, 2	; 21
	SetFQ_UD();
  8c:	aa 9a       	sbi	0x15, 2	; 21
	ClrFQ_UD();
  8e:	aa 98       	cbi	0x15, 2	; 21
  90:	08 95       	ret

00000092 <main>:
}
int main(void)
{
  92:	ca e5       	ldi	r28, 0x5A	; 90
  94:	d4 e0       	ldi	r29, 0x04	; 4
  96:	de bf       	out	0x3e, r29	; 62
  98:	cd bf       	out	0x3d, r28	; 61
	unsigned char test[5]={0xff,0xff,0xff,0b01010011,0b00000001};//547ae147
  9a:	85 e0       	ldi	r24, 0x05	; 5
  9c:	a0 e6       	ldi	r26, 0x60	; 96
  9e:	b0 e0       	ldi	r27, 0x00	; 0
  a0:	fe 01       	movw	r30, r28
  a2:	31 96       	adiw	r30, 0x01	; 1
  a4:	0d 90       	ld	r0, X+
  a6:	01 92       	st	Z+, r0
  a8:	8a 95       	dec	r24
  aa:	e1 f7       	brne	.-8      	; 0xa4
	unsigned char i,j;
	ConDdr=0xff;
  ac:	8f ef       	ldi	r24, 0xFF	; 255
  ae:	84 bb       	out	0x14, r24	; 20
	for(i=0;i<200;i++)
  b0:	90 e0       	ldi	r25, 0x00	; 0
	for(j=0;j<200;j++);
  b2:	80 e0       	ldi	r24, 0x00	; 0
  b4:	8e 5c       	subi	r24, 0xCE	; 206
  b6:	88 3c       	cpi	r24, 0xC8	; 200
  b8:	e8 f3       	brcs	.-6      	; 0xb4
  ba:	9f 5f       	subi	r25, 0xFF	; 255
  bc:	98 3c       	cpi	r25, 0xC8	; 200
  be:	c8 f3       	brcs	.-14     	; 0xb2
	AD9850WriteBytes(test);
  c0:	ce 01       	movw	r24, r28
  c2:	01 96       	adiw	r24, 0x01	; 1
  c4:	cb df       	rcall	.-106    	; 0x5c
//	AD9850WriteBytes(test);
//	AD9850WriteBytes(test);
	while(1);
  c6:	ff cf       	rjmp	.-2      	; 0xc6

⌨️ 快捷键说明

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