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

📄 main.lss

📁 adhoc信息节点程序源代码(点对多点)——for atmega128
💻 LSS
📖 第 1 页 / 共 5 页
字号:
	
	MainStdControlInit();
     2da:	0e 94 92 08 	call	0x1124
	MainStdControlStart();
     2de:	0e 94 96 08 	call	0x112c
	
	EnableInterrupt();
     2e2:	0e 94 9a 08 	call	0x1134
	
	while (1) {
		OSHRunTask();
     2e6:	0e 94 d6 08 	call	0x11ac
     2ea:	fd cf       	rjmp	.-6      	; 0x2e6

000002ec <ADCHPLInitPortmap>:

void ADCHPLInitPortmap(void)
{
	
	{ uint8_t atomicState = AtomicStart();
     2ec:	0e 94 a6 08 	call	0x114c
     2f0:	28 2f       	mov	r18, r24
    {
		if (HPLADCM_init_portmap_done == FALSE) {
     2f2:	80 91 63 01 	lds	r24, 0x0163
     2f6:	88 23       	and	r24, r24
     2f8:	91 f4       	brne	.+36     	; 0x31e
			int i;
			
			for (i = 0; i < OSH_ADC_PORTMAPSIZE; i++) 
     2fa:	80 e0       	ldi	r24, 0x00	; 0
     2fc:	90 e0       	ldi	r25, 0x00	; 0
     2fe:	e5 e5       	ldi	r30, 0x55	; 85
     300:	f1 e0       	ldi	r31, 0x01	; 1
				adcPortmap[i] = i;
     302:	81 93       	st	Z+, r24
     304:	01 96       	adiw	r24, 0x01	; 1
     306:	8c 30       	cpi	r24, 0x0C	; 12
     308:	91 05       	cpc	r25, r1
     30a:	dc f3       	brlt	.-10     	; 0x302
			
			
			adcPortmap[OS_ADC_BANDGAP_PORT] = OSH_ACTUAL_BANDGAP_PORT;
     30c:	8e e1       	ldi	r24, 0x1E	; 30
     30e:	80 93 5f 01 	sts	0x015F, r24
			adcPortmap[OS_ADC_GND_PORT] = OSH_ACTUAL_GND_PORT;
     312:	8f e1       	ldi	r24, 0x1F	; 31
     314:	80 93 60 01 	sts	0x0160, r24
			HPLADCM_init_portmap_done = TRUE;
     318:	81 e0       	ldi	r24, 0x01	; 1
     31a:	80 93 63 01 	sts	0x0163, r24
        }
    }
    AtomicEnd(atomicState); }
     31e:	82 2f       	mov	r24, r18
     320:	0e 94 a4 08 	call	0x1148
     324:	08 95       	ret

00000326 <ADCHPLInit>:
     326:	0e 94 76 01 	call	0x2ec
     32a:	0e 94 a6 08 	call	0x114c
     32e:	9e e0       	ldi	r25, 0x0E	; 14
     330:	96 b9       	out	0x06, r25	; 6
     332:	17 b8       	out	0x07, r1	; 7
     334:	0e 94 a4 08 	call	0x1148
     338:	81 e0       	ldi	r24, 0x01	; 1
     33a:	90 e0       	ldi	r25, 0x00	; 0
     33c:	08 95       	ret

0000033e <ADCControlInit>:
     33e:	0e 94 a6 08 	call	0x114c
     342:	10 92 65 01 	sts	0x0165, r1
     346:	10 92 64 01 	sts	0x0164, r1
     34a:	10 92 67 01 	sts	0x0167, r1
     34e:	10 92 66 01 	sts	0x0166, r1
     352:	10 92 62 01 	sts	0x0162, r1
     356:	10 92 61 01 	sts	0x0161, r1
     35a:	0e 94 a4 08 	call	0x1148
     35e:	0e 94 93 01 	call	0x326
     362:	99 27       	eor	r25, r25
     364:	08 95       	ret

00000366 <ADCBindPort>:
     366:	1f 93       	push	r17
     368:	cf 93       	push	r28
     36a:	c8 2f       	mov	r28, r24
     36c:	16 2f       	mov	r17, r22
     36e:	8c 30       	cpi	r24, 0x0C	; 12
     370:	90 f4       	brcc	.+36     	; 0x396
     372:	8a 30       	cpi	r24, 0x0A	; 10
     374:	81 f0       	breq	.+32     	; 0x396
     376:	8b 30       	cpi	r24, 0x0B	; 11
     378:	71 f0       	breq	.+28     	; 0x396
     37a:	0e 94 76 01 	call	0x2ec
     37e:	0e 94 a6 08 	call	0x114c
     382:	ec 2f       	mov	r30, r28
     384:	ff 27       	eor	r31, r31
     386:	eb 5a       	subi	r30, 0xAB	; 171
     388:	fe 4f       	sbci	r31, 0xFE	; 254
     38a:	10 83       	st	Z, r17
     38c:	0e 94 a4 08 	call	0x1148
     390:	81 e0       	ldi	r24, 0x01	; 1
     392:	90 e0       	ldi	r25, 0x00	; 0
     394:	02 c0       	rjmp	.+4      	; 0x39a
     396:	80 e0       	ldi	r24, 0x00	; 0
     398:	90 e0       	ldi	r25, 0x00	; 0
     39a:	cf 91       	pop	r28
     39c:	1f 91       	pop	r17
     39e:	08 95       	ret

000003a0 <ADCDataReady>:
     3a0:	28 2f       	mov	r18, r24
     3a2:	33 27       	eor	r19, r19
     3a4:	21 30       	cpi	r18, 0x01	; 1
     3a6:	31 05       	cpc	r19, r1
     3a8:	71 f0       	breq	.+28     	; 0x3c6
     3aa:	22 30       	cpi	r18, 0x02	; 2
     3ac:	31 05       	cpc	r19, r1
     3ae:	1c f4       	brge	.+6      	; 0x3b6
     3b0:	23 2b       	or	r18, r19
     3b2:	29 f0       	breq	.+10     	; 0x3be
     3b4:	10 c0       	rjmp	.+32     	; 0x3d6
     3b6:	22 30       	cpi	r18, 0x02	; 2
     3b8:	31 05       	cpc	r19, r1
     3ba:	49 f0       	breq	.+18     	; 0x3ce
     3bc:	0c c0       	rjmp	.+24     	; 0x3d6
     3be:	cb 01       	movw	r24, r22
     3c0:	0e 94 41 0b 	call	0x1682
     3c4:	09 c0       	rjmp	.+18     	; 0x3d8
     3c6:	cb 01       	movw	r24, r22
     3c8:	0e 94 df 0f 	call	0x1fbe
     3cc:	05 c0       	rjmp	.+10     	; 0x3d8
     3ce:	cb 01       	movw	r24, r22
     3d0:	0e 94 54 0f 	call	0x1ea8
     3d4:	01 c0       	rjmp	.+2      	; 0x3d8
     3d6:	80 e0       	ldi	r24, 0x00	; 0
     3d8:	99 27       	eor	r25, r25
     3da:	08 95       	ret

000003dc <ADCHPLSamplePort>:
}

void __attribute((signal))   __vector_21(void)
{
	uint16_t data = * (volatile unsigned int *)(unsigned int )& * (volatile unsigned char *)(0x04 + 0x20);
	
	data &= 0x3ff;
	* (volatile unsigned char *)(0x06 + 0x20) |= 1 << 4;
	* (volatile unsigned char *)(0x06 + 0x20) &= ~(1 << 7);
	EnableInterrupt();
	ADCHPLDataReady(data);
}

result_t ADCHPLSamplePort(uint8_t port)
{
     3dc:	1f 93       	push	r17
     3de:	18 2f       	mov	r17, r24
	{ uint8_t atomicState = AtomicStart();
     3e0:	0e 94 a6 08 	call	0x114c
    {
		* (volatile unsigned char *)(0x07 + 0x20) = adcPortmap[port] & 0x1F;
     3e4:	e5 e5       	ldi	r30, 0x55	; 85
     3e6:	f1 e0       	ldi	r31, 0x01	; 1
     3e8:	e1 0f       	add	r30, r17
     3ea:	f1 1d       	adc	r31, r1
     3ec:	90 81       	ld	r25, Z
     3ee:	9f 71       	andi	r25, 0x1F	; 31
     3f0:	97 b9       	out	0x07, r25	; 7
    }
    AtomicEnd(atomicState); }
     3f2:	0e 94 a4 08 	call	0x1148
	* (volatile unsigned char *)(0x06 + 0x20) |= 1 << 7;
     3f6:	37 9a       	sbi	0x06, 7	; 6
	* (volatile unsigned char *)(0x06 + 0x20) |= 1 << 6;
     3f8:	36 9a       	sbi	0x06, 6	; 6
	
	return SUCCESS;
}     3fa:	81 e0       	ldi	r24, 0x01	; 1
     3fc:	90 e0       	ldi	r25, 0x00	; 0
     3fe:	1f 91       	pop	r17
     400:	08 95       	ret

00000402 <ADCHPLDataReady>:
     402:	ef 92       	push	r14
     404:	ff 92       	push	r15
     406:	0f 93       	push	r16
     408:	1f 93       	push	r17
     40a:	cf 93       	push	r28
     40c:	df 93       	push	r29
     40e:	8c 01       	movw	r16, r24
     410:	0e 94 a6 08 	call	0x114c
     414:	e8 2e       	mov	r14, r24
     416:	f0 90 64 01 	lds	r15, 0x0164
     41a:	cf 2d       	mov	r28, r15
     41c:	dd 27       	eor	r29, r29
     41e:	41 e0       	ldi	r20, 0x01	; 1
     420:	50 e0       	ldi	r21, 0x00	; 0
     422:	9a 01       	movw	r18, r20
     424:	0c 2e       	mov	r0, r28
     426:	02 c0       	rjmp	.+4      	; 0x42c
     428:	22 0f       	add	r18, r18
     42a:	33 1f       	adc	r19, r19
     42c:	0a 94       	dec	r0
     42e:	e2 f7       	brpl	.-8      	; 0x428
     430:	80 91 66 01 	lds	r24, 0x0166
     434:	90 91 67 01 	lds	r25, 0x0167
     438:	82 23       	and	r24, r18
     43a:	93 23       	and	r25, r19
     43c:	89 2b       	or	r24, r25
     43e:	61 f4       	brne	.+24     	; 0x458
     440:	20 95       	com	r18
     442:	30 95       	com	r19
     444:	80 91 61 01 	lds	r24, 0x0161
     448:	90 91 62 01 	lds	r25, 0x0162
     44c:	82 23       	and	r24, r18
     44e:	93 23       	and	r25, r19
     450:	90 93 62 01 	sts	0x0162, r25
     454:	80 93 61 01 	sts	0x0161, r24
     458:	60 91 61 01 	lds	r22, 0x0161
     45c:	70 91 62 01 	lds	r23, 0x0162
     460:	61 15       	cp	r22, r1
     462:	71 05       	cpc	r23, r1
     464:	11 f1       	breq	.+68     	; 0x4aa
     466:	fa 01       	movw	r30, r20
     468:	40 91 64 01 	lds	r20, 0x0164
     46c:	50 91 65 01 	lds	r21, 0x0165
     470:	4f 5f       	subi	r20, 0xFF	; 255
     472:	5f 4f       	sbci	r21, 0xFF	; 255
     474:	4c 30       	cpi	r20, 0x0C	; 12
     476:	51 05       	cpc	r21, r1
     478:	11 f0       	breq	.+4      	; 0x47e
     47a:	9a 01       	movw	r18, r20
     47c:	02 c0       	rjmp	.+4      	; 0x482
     47e:	20 e0       	ldi	r18, 0x00	; 0
     480:	30 e0       	ldi	r19, 0x00	; 0
     482:	a9 01       	movw	r20, r18
     484:	cf 01       	movw	r24, r30
     486:	02 2e       	mov	r0, r18
     488:	02 c0       	rjmp	.+4      	; 0x48e
     48a:	88 0f       	add	r24, r24
     48c:	99 1f       	adc	r25, r25
     48e:	0a 94       	dec	r0
     490:	e2 f7       	brpl	.-8      	; 0x48a
     492:	86 23       	and	r24, r22
     494:	97 23       	and	r25, r23
     496:	89 2b       	or	r24, r25
     498:	59 f3       	breq	.-42     	; 0x470
     49a:	30 93 65 01 	sts	0x0165, r19
     49e:	20 93 64 01 	sts	0x0164, r18
     4a2:	80 91 64 01 	lds	r24, 0x0164
     4a6:	0e 94 ee 01 	call	0x3dc
     4aa:	8e 2d       	mov	r24, r14
     4ac:	0e 94 a4 08 	call	0x1148
     4b0:	b8 01       	movw	r22, r16
     4b2:	8f 2d       	mov	r24, r15
     4b4:	0e 94 d0 01 	call	0x3a0
     4b8:	18 2f       	mov	r17, r24
     4ba:	0e 94 a6 08 	call	0x114c
     4be:	68 2f       	mov	r22, r24
     4c0:	11 23       	and	r17, r17
     4c2:	c9 f4       	brne	.+50     	; 0x4f6
     4c4:	41 e0       	ldi	r20, 0x01	; 1
     4c6:	50 e0       	ldi	r21, 0x00	; 0
     4c8:	02 c0       	rjmp	.+4      	; 0x4ce
     4ca:	44 0f       	add	r20, r20
     4cc:	55 1f       	adc	r21, r21
     4ce:	ca 95       	dec	r28
     4d0:	e2 f7       	brpl	.-8      	; 0x4ca
     4d2:	20 91 66 01 	lds	r18, 0x0166
     4d6:	30 91 67 01 	lds	r19, 0x0167
     4da:	c9 01       	movw	r24, r18
     4dc:	84 23       	and	r24, r20
     4de:	95 23       	and	r25, r21
     4e0:	89 2b       	or	r24, r25
     4e2:	49 f0       	breq	.+18     	; 0x4f6
     4e4:	ca 01       	movw	r24, r20
     4e6:	80 95       	com	r24
     4e8:	90 95       	com	r25
     4ea:	28 23       	and	r18, r24
     4ec:	39 23       	and	r19, r25
     4ee:	30 93 67 01 	sts	0x0167, r19
     4f2:	20 93 66 01 	sts	0x0166, r18
     4f6:	86 2f       	mov	r24, r22
     4f8:	0e 94 a4 08 	call	0x1148
     4fc:	81 e0       	ldi	r24, 0x01	; 1
     4fe:	90 e0       	ldi	r25, 0x00	; 0
     500:	df 91       	pop	r29
     502:	cf 91       	pop	r28
     504:	1f 91       	pop	r17
     506:	0f 91       	pop	r16
     508:	ff 90       	pop	r15
     50a:	ef 90       	pop	r14
     50c:	08 95       	ret

0000050e <ADCStartGet>:
     50e:	cf 92       	push	r12
     510:	df 92       	push	r13
     512:	ef 92       	push	r14
     514:	ff 92       	push	r15
     516:	0f 93       	push	r16
     518:	1f 93       	push	r17
     51a:	cf 93       	push	r28
     51c:	df 93       	push	r29
     51e:	d8 2e       	mov	r13, r24
     520:	16 2f       	mov	r17, r22
     522:	01 e0       	ldi	r16, 0x01	; 1
     524:	6d 30       	cpi	r22, 0x0D	; 13
     526:	18 f0       	brcs	.+6      	; 0x52e
     528:	80 e0       	ldi	r24, 0x00	; 0
     52a:	90 e0       	ldi	r25, 0x00	; 0
     52c:	3b c0       	rjmp	.+118    	; 0x5a4
     52e:	e6 2e       	mov	r14, r22
     530:	ff 24       	eor	r15, r15
     532:	c1 e0       	ldi	r28, 0x01	; 1
     534:	d0 e0       	ldi	r29, 0x00	; 0
     536:	0e 2c       	mov	r0, r14
     538:	02 c0       	rjmp	.+4      	; 0x53e
     53a:	cc 0f       	add	r28, r28
     53c:	dd 1f       	adc	r29, r29
     53e:	0a 94       	dec	r0
     540:	e2 f7       	brpl	.-8      	; 0x53a
     542:	0e 94 a6 08 	call	0x114c
     546:	c8 2e       	mov	r12, r24
     548:	20 91 61 01 	lds	r18, 0x0161
     54c:	30 91 62 01 	lds	r19, 0x0162
     550:	ce 01       	movw	r24, r28
     552:	82 23       	and	r24, r18
     554:	93 23       	and	r25, r19
     556:	89 2b       	or	r24, r25
     558:	11 f0       	breq	.+4      	; 0x55e
     55a:	00 e0       	ldi	r16, 0x00	; 0
     55c:	1e c0       	rjmp	.+60     	; 0x59a
     55e:	c9 01       	movw	r24, r18
     560:	8c 2b       	or	r24, r28
     562:	9d 2b       	or	r25, r29
     564:	90 93 62 01 	sts	0x0162, r25
     568:	80 93 61 01 	sts	0x0161, r24
     56c:	82 e0       	ldi	r24, 0x02	; 2
     56e:	d8 16       	cp	r13, r24
     570:	51 f4       	brne	.+20     	; 0x586
     572:	80 91 66 01 	lds	r24, 0x0166
     576:	90 91 67 01 	lds	r25, 0x0167
     57a:	8c 2b       	or	r24, r28
     57c:	9d 2b       	or	r25, r29
     57e:	90 93 67 01 	sts	0x0167, r25
     582:	80 93 66 01 	sts	0x0166, r24
     586:	23 2b       	or	r18, r19
     588:	41 f4       	brne	.+16     	; 0x59a
     58a:	f0 92 65 01 	sts	0x0165, r15
     58e:	e0 92 64 01 	sts	0x0164, r14
     592:	81 2f       	mov	r24, r17
     594:	0e 94 ee 01 	call	0x3dc
     598:	08 2f       	mov	r16, r24
     59a:	8c 2d       	mov	r24, r12
     59c:	0e 94 a4 08 	call	0x1148
     5a0:	80 2f       	mov	r24, r16
     5a2:	99 27       	eor	r25, r25
     5a4:	df 91       	pop	r29
     5a6:	cf 91       	pop	r28
     5a8:	1f 91       	pop	r17
     5aa:	0f 91       	pop	r16
     5ac:	ff 90       	pop	r15
     5ae:	ef 90       	pop	r14
     5b0:	df 90       	pop	r13
     5b2:	cf 90       	pop	r12
     5b4:	08 95       	ret

000005b6 <ADCGetData>:
     5b6:	68 2f       	mov	r22, r24
     5b8:	81 e0       	ldi	r24, 0x01	; 1
     5ba:	0e 94 87 02 	call	0x50e
     5be:	99 27       	eor	r25, r25
     5c0:	08 95       	ret

000005c2 <__vector_21>:

⌨️ 快捷键说明

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