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

📄 tc1_2.lss

📁 arm的功能测试模块
💻 LSS
📖 第 1 页 / 共 2 页
字号:
                     //时清除OC0(反向PWM) 
 OCR2=0X80;    
 182:	80 e8       	ldi	r24, 0x80	; 128
 184:	80 93 43 00 	sts	0x0043, r24
 188:	df 91       	pop	r29
 18a:	cf 91       	pop	r28
 18c:	08 95       	ret

0000018e <init_timer0>:
 }

//T/C0初始化子程序
void init_timer0(void)
{TCCR0=0X04;     //T/C0普通模式计数,计数器时钟为系统时钟的256分频
 18e:	cf 93       	push	r28
 190:	df 93       	push	r29
 192:	cd b7       	in	r28, 0x3d	; 61
 194:	de b7       	in	r29, 0x3e	; 62
 196:	84 e0       	ldi	r24, 0x04	; 4
 198:	80 93 53 00 	sts	0x0053, r24
 TCNT0=0X06;     //T/C0置初值6
 19c:	86 e0       	ldi	r24, 0x06	; 6
 19e:	80 93 52 00 	sts	0x0052, r24
 TIMSK=0X01;     //T/C0允许中断
 1a2:	81 e0       	ldi	r24, 0x01	; 1
 1a4:	80 93 59 00 	sts	0x0059, r24
 1a8:	df 91       	pop	r29
 1aa:	cf 91       	pop	r28
 1ac:	08 95       	ret

000001ae <init_timer1>:
 }

//T/C1初始化子程序
void init_timer1(void)
{
 1ae:	cf 93       	push	r28
 1b0:	df 93       	push	r29
 1b2:	cd b7       	in	r28, 0x3d	; 61
 1b4:	de b7       	in	r29, 0x3e	; 62
 DDRB|=(1<<PB1);    //PB1(T1)引脚定义为输入
 1b6:	80 91 37 00 	lds	r24, 0x0037
 1ba:	82 60       	ori	r24, 0x02	; 2
 1bc:	80 93 37 00 	sts	0x0037, r24
 TCCR1B=0X07;        //T/C1普通模式计数,外部T1引脚,上升沿驱动
 1c0:	87 e0       	ldi	r24, 0x07	; 7
 1c2:	80 93 4e 00 	sts	0x004E, r24
 1c6:	df 91       	pop	r29
 1c8:	cf 91       	pop	r28
 1ca:	08 95       	ret

000001cc <__vector_9>:
 }
 
 //T/C0溢出中断服务程序
 SIGNAL(SIG_OVERFLOW0)
 {  TCNT0=0X06;  //重新装入定时器0的初始值
 1cc:	1f 92       	push	r1
 1ce:	0f 92       	push	r0
 1d0:	0f b6       	in	r0, 0x3f	; 63
 1d2:	0f 92       	push	r0
 1d4:	11 24       	eor	r1, r1
 1d6:	2f 93       	push	r18
 1d8:	3f 93       	push	r19
 1da:	8f 93       	push	r24
 1dc:	9f 93       	push	r25
 1de:	cf 93       	push	r28
 1e0:	df 93       	push	r29
 1e2:	cd b7       	in	r28, 0x3d	; 61
 1e4:	de b7       	in	r29, 0x3e	; 62
 1e6:	86 e0       	ldi	r24, 0x06	; 6
 1e8:	80 93 52 00 	sts	0x0052, r24
    n++;
 1ec:	80 91 68 00 	lds	r24, 0x0068
 1f0:	8f 5f       	subi	r24, 0xFF	; 255
 1f2:	80 93 68 00 	sts	0x0068, r24
	m++;
 1f6:	80 91 69 00 	lds	r24, 0x0069
 1fa:	8f 5f       	subi	r24, 0xFF	; 255
 1fc:	80 93 69 00 	sts	0x0069, r24
	if(n==125)
 200:	80 91 68 00 	lds	r24, 0x0068
 204:	8d 37       	cpi	r24, 0x7D	; 125
 206:	c9 f4       	brne	.+50     	; 0x23a
	{temp2=TCNT1-temp1;
 208:	20 91 4c 00 	lds	r18, 0x004C
 20c:	30 91 4d 00 	lds	r19, 0x004D
 210:	80 91 66 00 	lds	r24, 0x0066
 214:	90 91 67 00 	lds	r25, 0x0067
 218:	28 1b       	sub	r18, r24
 21a:	39 0b       	sbc	r19, r25
 21c:	c9 01       	movw	r24, r18
 21e:	90 93 6d 00 	sts	0x006D, r25
 222:	80 93 6c 00 	sts	0x006C, r24
	 temp1=temp2;
 226:	80 91 6c 00 	lds	r24, 0x006C
 22a:	90 91 6d 00 	lds	r25, 0x006D
 22e:	90 93 67 00 	sts	0x0067, r25
 232:	80 93 66 00 	sts	0x0066, r24
	 n=0;
 236:	10 92 68 00 	sts	0x0068, r1
 23a:	df 91       	pop	r29
 23c:	cf 91       	pop	r28
 23e:	9f 91       	pop	r25
 240:	8f 91       	pop	r24
 242:	3f 91       	pop	r19
 244:	2f 91       	pop	r18
 246:	0f 90       	pop	r0
 248:	0f be       	out	0x3f, r0	; 63
 24a:	0f 90       	pop	r0
 24c:	1f 90       	pop	r1
 24e:	18 95       	reti

00000250 <main>:
     }
  }
   
   
 int main(void)
 {
 250:	cf e5       	ldi	r28, 0x5F	; 95
 252:	d4 e0       	ldi	r29, 0x04	; 4
 254:	de bf       	out	0x3e, r29	; 62
 256:	cd bf       	out	0x3d, r28	; 61
   USART_Init();
 258:	0e 94 47 00 	call	0x8e
   init_timer0();
 25c:	0e 94 c7 00 	call	0x18e
   init_timer1();
 260:	0e 94 d7 00 	call	0x1ae
   t2pwm2();
 264:	0e 94 b5 00 	call	0x16a
   sei();
 268:	78 94       	sei
   while(1)
   {
    if(m>0 && m%125==0)
 26a:	80 91 69 00 	lds	r24, 0x0069
 26e:	88 23       	and	r24, r24
 270:	99 f0       	breq	.+38     	; 0x298
 272:	80 91 69 00 	lds	r24, 0x0069
 276:	9d e7       	ldi	r25, 0x7D	; 125
 278:	69 2f       	mov	r22, r25
 27a:	0e 94 7b 01 	call	0x2f6
 27e:	89 2f       	mov	r24, r25
 280:	88 23       	and	r24, r24
 282:	51 f4       	brne	.+20     	; 0x298
	{/*b16td5(temp2);
     send_num[0]=i_g;
	 send_num[1]=i_sh;
	 send_num[2]=i_b;
	 send_num[3]=i_q;
	 send_num[4]=i_w;*/
	utoa(temp2,send_num,10);
 284:	4a e0       	ldi	r20, 0x0A	; 10
 286:	50 e0       	ldi	r21, 0x00	; 0
 288:	60 e6       	ldi	r22, 0x60	; 96
 28a:	70 e0       	ldi	r23, 0x00	; 0
 28c:	80 91 6c 00 	lds	r24, 0x006C
 290:	90 91 6d 00 	lds	r25, 0x006D
 294:	0e 94 51 01 	call	0x2a2
	 }
    USART_puts(send_num);
 298:	80 e6       	ldi	r24, 0x60	; 96
 29a:	90 e0       	ldi	r25, 0x00	; 0
 29c:	0e 94 88 00 	call	0x110
 2a0:	e4 cf       	rjmp	.-56     	; 0x26a

000002a2 <utoa>:
 2a2:	e6 2f       	mov	r30, r22
 2a4:	f7 2f       	mov	r31, r23
 2a6:	2e 2f       	mov	r18, r30
 2a8:	3f 2f       	mov	r19, r31
 2aa:	42 30       	cpi	r20, 0x02	; 2
 2ac:	7c f0       	brlt	.+30     	; 0x2cc
 2ae:	45 32       	cpi	r20, 0x25	; 37
 2b0:	6c f4       	brge	.+26     	; 0x2cc

000002b2 <divide_loop>:
 2b2:	64 2f       	mov	r22, r20
 2b4:	77 27       	eor	r23, r23
 2b6:	0e 94 87 01 	call	0x30e
 2ba:	80 5d       	subi	r24, 0xD0	; 208
 2bc:	8a 33       	cpi	r24, 0x3A	; 58
 2be:	0c f0       	brlt	.+2      	; 0x2c2
 2c0:	89 5d       	subi	r24, 0xD9	; 217

000002c2 <L_10>:
 2c2:	81 93       	st	Z+, r24
 2c4:	86 2f       	mov	r24, r22
 2c6:	97 2f       	mov	r25, r23
 2c8:	00 97       	sbiw	r24, 0x00	; 0
 2ca:	99 f7       	brne	.-26     	; 0x2b2

000002cc <terminate>:
 2cc:	93 2f       	mov	r25, r19
 2ce:	82 2f       	mov	r24, r18
 2d0:	10 82       	st	Z, r1
 2d2:	0c 94 6b 01 	jmp	0x2d6

000002d6 <strrev>:
 2d6:	dc 01       	movw	r26, r24
 2d8:	fc 01       	movw	r30, r24

000002da <.strrev_eos>:
 2da:	01 90       	ld	r0, Z+
 2dc:	00 20       	and	r0, r0
 2de:	e9 f7       	brne	.-6      	; 0x2da
 2e0:	32 97       	sbiw	r30, 0x02	; 2

000002e2 <.strrev_loop>:
 2e2:	ae 17       	cp	r26, r30
 2e4:	bf 07       	cpc	r27, r31
 2e6:	30 f4       	brcc	.+12     	; 0x2f4
 2e8:	7c 91       	ld	r23, X
 2ea:	60 81       	ld	r22, Z
 2ec:	70 83       	st	Z, r23
 2ee:	31 97       	sbiw	r30, 0x01	; 1
 2f0:	6d 93       	st	X+, r22
 2f2:	f7 cf       	rjmp	.-18     	; 0x2e2

000002f4 <.strrev_done>:
 2f4:	08 95       	ret

000002f6 <__udivmodqi4>:
 2f6:	99 1b       	sub	r25, r25
 2f8:	79 e0       	ldi	r23, 0x09	; 9
 2fa:	04 c0       	rjmp	.+8      	; 0x304

000002fc <__udivmodqi4_loop>:
 2fc:	99 1f       	adc	r25, r25
 2fe:	96 17       	cp	r25, r22
 300:	08 f0       	brcs	.+2      	; 0x304
 302:	96 1b       	sub	r25, r22

00000304 <__udivmodqi4_ep>:
 304:	88 1f       	adc	r24, r24
 306:	7a 95       	dec	r23
 308:	c9 f7       	brne	.-14     	; 0x2fc
 30a:	80 95       	com	r24
 30c:	08 95       	ret

0000030e <__udivmodhi4>:
 30e:	aa 1b       	sub	r26, r26
 310:	bb 1b       	sub	r27, r27
 312:	51 e1       	ldi	r21, 0x11	; 17
 314:	07 c0       	rjmp	.+14     	; 0x324

00000316 <__udivmodhi4_loop>:
 316:	aa 1f       	adc	r26, r26
 318:	bb 1f       	adc	r27, r27
 31a:	a6 17       	cp	r26, r22
 31c:	b7 07       	cpc	r27, r23
 31e:	10 f0       	brcs	.+4      	; 0x324
 320:	a6 1b       	sub	r26, r22
 322:	b7 0b       	sbc	r27, r23

00000324 <__udivmodhi4_ep>:
 324:	88 1f       	adc	r24, r24
 326:	99 1f       	adc	r25, r25
 328:	5a 95       	dec	r21
 32a:	a9 f7       	brne	.-22     	; 0x316
 32c:	80 95       	com	r24
 32e:	90 95       	com	r25
 330:	bc 01       	movw	r22, r24
 332:	cd 01       	movw	r24, r26
 334:	08 95       	ret

⌨️ 快捷键说明

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