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

📄 main.lss

📁 一个WSN的树状路由,对于那些学WSN路由方面的朋友应该有说帮助.
💻 LSS
📖 第 1 页 / 共 5 页
字号:
}

result_t CC1000HPLWrite(uint8_t addr, uint8_t data)
{
     764:	0f 93       	push	r16
     766:	1f 93       	push	r17
     768:	cf 93       	push	r28
     76a:	06 2f       	mov	r16, r22
	char cnt = 0;
	
	addr <<= 1;
     76c:	c8 2f       	mov	r28, r24
     76e:	cc 0f       	add	r28, r28
	OSH_CLR_CC_PALE_PIN();
     770:	0e 94 ba 05 	call	0xb74
     774:	16 e0       	ldi	r17, 0x06	; 6
	for (cnt = 0; cnt < 7; cnt++) 
    {
		if (addr & 0x80) {
     776:	c7 ff       	sbrs	r28, 7
     778:	03 c0       	rjmp	.+6      	; 0x780
			OSH_SET_CC_PDATA_PIN();
     77a:	0e 94 b2 05 	call	0xb64
     77e:	02 c0       	rjmp	.+4      	; 0x784
        }
		else {
			OSH_CLR_CC_PDATA_PIN();
     780:	0e 94 bc 05 	call	0xb78
        }
		OSH_CLR_CC_PCLK_PIN();
     784:	0e 94 be 05 	call	0xb7c
		OSH_SET_CC_PCLK_PIN();
     788:	0e 94 b0 05 	call	0xb60
		addr <<= 1;
     78c:	cc 0f       	add	r28, r28
     78e:	11 50       	subi	r17, 0x01	; 1
     790:	17 ff       	sbrs	r17, 7
     792:	f1 cf       	rjmp	.-30     	; 0x776
    }
	OSH_SET_CC_PDATA_PIN();
     794:	0e 94 b2 05 	call	0xb64
	OSH_CLR_CC_PCLK_PIN();
     798:	0e 94 be 05 	call	0xb7c
	OSH_SET_CC_PCLK_PIN();
     79c:	0e 94 b0 05 	call	0xb60
	
	OSH_SET_CC_PALE_PIN();
     7a0:	0e 94 b4 05 	call	0xb68
     7a4:	17 e0       	ldi	r17, 0x07	; 7
	
	for (cnt = 0; cnt < 8; cnt++) 
    {
		if (data & 0x80) {
     7a6:	07 ff       	sbrs	r16, 7
     7a8:	03 c0       	rjmp	.+6      	; 0x7b0
			OSH_SET_CC_PDATA_PIN();
     7aa:	0e 94 b2 05 	call	0xb64
     7ae:	02 c0       	rjmp	.+4      	; 0x7b4
        }
		else {
			OSH_CLR_CC_PDATA_PIN();
     7b0:	0e 94 bc 05 	call	0xb78
        }
		OSH_CLR_CC_PCLK_PIN();
     7b4:	0e 94 be 05 	call	0xb7c
		OSH_SET_CC_PCLK_PIN();
     7b8:	0e 94 b0 05 	call	0xb60
		data <<= 1;
     7bc:	00 0f       	add	r16, r16
     7be:	11 50       	subi	r17, 0x01	; 1
     7c0:	17 ff       	sbrs	r17, 7
     7c2:	f1 cf       	rjmp	.-30     	; 0x7a6
    }
	OSH_SET_CC_PALE_PIN();
     7c4:	0e 94 b4 05 	call	0xb68
	OSH_SET_CC_PDATA_PIN();
     7c8:	0e 94 b2 05 	call	0xb64
	OSH_SET_CC_PCLK_PIN();
     7cc:	0e 94 b0 05 	call	0xb60
	return SUCCESS;
}
     7d0:	81 e0       	ldi	r24, 0x01	; 1
     7d2:	90 e0       	ldi	r25, 0x00	; 0
     7d4:	cf 91       	pop	r28
     7d6:	1f 91       	pop	r17
     7d8:	0f 91       	pop	r16
     7da:	08 95       	ret

000007dc <CC1000ControlStdControlStop>:
     7dc:	60 e0       	ldi	r22, 0x00	; 0
     7de:	8b e0       	ldi	r24, 0x0B	; 11
     7e0:	0e 94 b2 03 	call	0x764
     7e4:	6f e3       	ldi	r22, 0x3F	; 63
     7e6:	80 e0       	ldi	r24, 0x00	; 0
     7e8:	0e 94 b2 03 	call	0x764
     7ec:	81 e0       	ldi	r24, 0x01	; 1
     7ee:	90 e0       	ldi	r25, 0x00	; 0
     7f0:	08 95       	ret

000007f2 <CC1000ControlRxMode>:
     7f2:	61 e1       	ldi	r22, 0x11	; 17
     7f4:	80 e0       	ldi	r24, 0x00	; 0
     7f6:	0e 94 b2 03 	call	0x764
     7fa:	60 91 c4 02 	lds	r22, 0x02C4
     7fe:	89 e0       	ldi	r24, 0x09	; 9
     800:	0e 94 b2 03 	call	0x764
     804:	60 e0       	ldi	r22, 0x00	; 0
     806:	8b e0       	ldi	r24, 0x0B	; 11
     808:	0e 94 b2 03 	call	0x764
     80c:	8a ef       	ldi	r24, 0xFA	; 250
     80e:	90 e0       	ldi	r25, 0x00	; 0
     810:	0e 94 51 07 	call	0xea2
     814:	81 e0       	ldi	r24, 0x01	; 1
     816:	90 e0       	ldi	r25, 0x00	; 0
     818:	08 95       	ret

0000081a <CC1000ControlTxMode>:
     81a:	61 ee       	ldi	r22, 0xE1	; 225
     81c:	80 e0       	ldi	r24, 0x00	; 0
     81e:	0e 94 b2 03 	call	0x764
     822:	60 91 d8 02 	lds	r22, 0x02D8
     826:	89 e0       	ldi	r24, 0x09	; 9
     828:	0e 94 b2 03 	call	0x764
     82c:	8a ef       	ldi	r24, 0xFA	; 250
     82e:	90 e0       	ldi	r25, 0x00	; 0
     830:	0e 94 51 07 	call	0xea2
     834:	60 91 c6 02 	lds	r22, 0x02C6
     838:	8b e0       	ldi	r24, 0x0B	; 11
     83a:	0e 94 b2 03 	call	0x764
     83e:	84 e1       	ldi	r24, 0x14	; 20
     840:	90 e0       	ldi	r25, 0x00	; 0
     842:	0e 94 51 07 	call	0xea2
     846:	81 e0       	ldi	r24, 0x01	; 1
     848:	90 e0       	ldi	r25, 0x00	; 0
     84a:	08 95       	ret

0000084c <CC1000ControlStdControlStart>:
     84c:	6b e3       	ldi	r22, 0x3B	; 59
     84e:	80 e0       	ldi	r24, 0x00	; 0
     850:	0e 94 b2 03 	call	0x764
     854:	80 ed       	ldi	r24, 0xD0	; 208
     856:	97 e0       	ldi	r25, 0x07	; 7
     858:	0e 94 51 07 	call	0xea2
     85c:	81 e0       	ldi	r24, 0x01	; 1
     85e:	90 e0       	ldi	r25, 0x00	; 0
     860:	08 95       	ret

00000862 <CC1000ControlBIASOn>:
     862:	69 e3       	ldi	r22, 0x39	; 57
     864:	80 e0       	ldi	r24, 0x00	; 0
     866:	0e 94 b2 03 	call	0x764
     86a:	88 ec       	ldi	r24, 0xC8	; 200
     86c:	90 e0       	ldi	r25, 0x00	; 0
     86e:	0e 94 51 07 	call	0xea2
     872:	81 e0       	ldi	r24, 0x01	; 1
     874:	90 e0       	ldi	r25, 0x00	; 0
     876:	08 95       	ret

00000878 <CC1000ControlCC1000SetModem>:
     878:	60 91 ca 02 	lds	r22, 0x02CA
     87c:	8f e0       	ldi	r24, 0x0F	; 15
     87e:	0e 94 b2 03 	call	0x764
     882:	60 91 cb 02 	lds	r22, 0x02CB
     886:	80 e1       	ldi	r24, 0x10	; 16
     888:	0e 94 b2 03 	call	0x764
     88c:	60 91 cc 02 	lds	r22, 0x02CC
     890:	81 e1       	ldi	r24, 0x11	; 17
     892:	0e 94 b2 03 	call	0x764
     896:	08 95       	ret

00000898 <CC1000ControlSelectLock>:
     898:	82 95       	swap	r24
     89a:	80 7f       	andi	r24, 0xF0	; 240
     89c:	80 93 c8 02 	sts	0x02C8, r24
     8a0:	68 2f       	mov	r22, r24
     8a2:	8d e0       	ldi	r24, 0x0D	; 13
     8a4:	0e 94 b2 03 	call	0x764
     8a8:	99 27       	eor	r25, r25
     8aa:	08 95       	ret

000008ac <CC1000HPLRead>:

uint8_t CC1000HPLRead(uint8_t addr)
{
     8ac:	0f 93       	push	r16
     8ae:	1f 93       	push	r17
     8b0:	cf 93       	push	r28
     8b2:	df 93       	push	r29
	int cnt;
	uint8_t din;
	uint8_t data = 0;
     8b4:	00 e0       	ldi	r16, 0x00	; 0
	
	addr <<= 1;
     8b6:	18 2f       	mov	r17, r24
     8b8:	11 0f       	add	r17, r17
	OSH_CLR_CC_PALE_PIN();
     8ba:	0e 94 ba 05 	call	0xb74
     8be:	c6 e0       	ldi	r28, 0x06	; 6
     8c0:	d0 e0       	ldi	r29, 0x00	; 0
	for (cnt = 0; cnt < 7; cnt++) 
    {
		if (addr & 0x80) {
     8c2:	17 ff       	sbrs	r17, 7
     8c4:	03 c0       	rjmp	.+6      	; 0x8cc
			OSH_SET_CC_PDATA_PIN();
     8c6:	0e 94 b2 05 	call	0xb64
     8ca:	02 c0       	rjmp	.+4      	; 0x8d0
        }
		else {
			OSH_CLR_CC_PDATA_PIN();
     8cc:	0e 94 bc 05 	call	0xb78
        }
		OSH_CLR_CC_PCLK_PIN();
     8d0:	0e 94 be 05 	call	0xb7c
		OSH_SET_CC_PCLK_PIN();
     8d4:	0e 94 b0 05 	call	0xb60
		addr <<= 1;
     8d8:	11 0f       	add	r17, r17
     8da:	21 97       	sbiw	r28, 0x01	; 1
     8dc:	d7 ff       	sbrs	r29, 7
     8de:	f1 cf       	rjmp	.-30     	; 0x8c2
     8e0:	c7 e0       	ldi	r28, 0x07	; 7
     8e2:	d0 e0       	ldi	r29, 0x00	; 0
    }
	OSH_CLR_CC_PDATA_PIN();
     8e4:	0e 94 bc 05 	call	0xb78
	OSH_CLR_CC_PCLK_PIN();
     8e8:	0e 94 be 05 	call	0xb7c
	OSH_SET_CC_PCLK_PIN();
     8ec:	0e 94 b0 05 	call	0xb60
	
	OSH_MAKE_CC_PDATA_INPUT();
     8f0:	0e 94 c0 05 	call	0xb80
	OSH_SET_CC_PALE_PIN();
     8f4:	0e 94 b4 05 	call	0xb68
	
	
	for (cnt = 7; cnt >= 0; cnt--) 
    {
		OSH_CLR_CC_PCLK_PIN();
     8f8:	0e 94 be 05 	call	0xb7c
		din = OSH_READ_CC_PDATA_PIN();
     8fc:	0e 94 c2 05 	call	0xb84
     900:	20 2f       	mov	r18, r16
     902:	33 27       	eor	r19, r19
     904:	21 97       	sbiw	r28, 0x01	; 1
		if (din) {
     906:	88 23       	and	r24, r24
     908:	29 f0       	breq	.+10     	; 0x914
			data = (data << 1) | 0x01;
     90a:	22 0f       	add	r18, r18
     90c:	33 1f       	adc	r19, r19
     90e:	02 2f       	mov	r16, r18
     910:	01 60       	ori	r16, 0x01	; 1
     912:	02 c0       	rjmp	.+4      	; 0x918
        }
		else {
			data = (data << 1) & 0xfe;
     914:	02 2f       	mov	r16, r18
     916:	00 0f       	add	r16, r16
        }
		OSH_SET_CC_PCLK_PIN();
     918:	0e 94 b0 05 	call	0xb60
     91c:	d7 ff       	sbrs	r29, 7
     91e:	ec cf       	rjmp	.-40     	; 0x8f8
    }
	
	OSH_SET_CC_PALE_PIN();
     920:	0e 94 b4 05 	call	0xb68
	OSH_MAKE_CC_PDATA_OUTPUT();
     924:	0e 94 63 05 	call	0xac6
	OSH_SET_CC_PDATA_PIN();
     928:	0e 94 b2 05 	call	0xb64
	
	return data;
}
     92c:	80 2f       	mov	r24, r16
     92e:	99 27       	eor	r25, r25
     930:	df 91       	pop	r29
     932:	cf 91       	pop	r28
     934:	1f 91       	pop	r17
     936:	0f 91       	pop	r16
     938:	08 95       	ret

0000093a <CC1000ControlChipconCal>:
     93a:	cf 93       	push	r28
     93c:	df 93       	push	r29
     93e:	60 e0       	ldi	r22, 0x00	; 0
     940:	8b e0       	ldi	r24, 0x0B	; 11
     942:	0e 94 b2 03 	call	0x764
     946:	6f e3       	ldi	r22, 0x3F	; 63
     948:	82 e4       	ldi	r24, 0x42	; 66
     94a:	0e 94 b2 03 	call	0x764
     94e:	61 e1       	ldi	r22, 0x11	; 17
     950:	80 e0       	ldi	r24, 0x00	; 0
     952:	0e 94 b2 03 	call	0x764
     956:	66 ea       	ldi	r22, 0xA6	; 166
     958:	8e e0       	ldi	r24, 0x0E	; 14
     95a:	0e 94 b2 03 	call	0x764
     95e:	8e e0       	ldi	r24, 0x0E	; 14
     960:	0e 94 56 04 	call	0x8ac
     964:	83 ff       	sbrs	r24, 3
     966:	fb cf       	rjmp	.-10     	; 0x95e
     968:	66 e2       	ldi	r22, 0x26	; 38
     96a:	8e e0       	ldi	r24, 0x0E	; 14
     96c:	0e 94 b2 03 	call	0x764
     970:	61 ee       	ldi	r22, 0xE1	; 225
     972:	80 e0       	ldi	r24, 0x00	; 0
     974:	0e 94 b2 03 	call	0x764
     978:	60 91 d8 02 	lds	r22, 0x02D8
     97c:	89 e0       	ldi	r24, 0x09	; 9
     97e:	0e 94 b2 03 	call	0x764
     982:	60 e0       	ldi	r22, 0x00	; 0
     984:	8b e0       	ldi	r24, 0x0B	; 11
     986:	0e 94 b2 03 	call	0x764
     98a:	66 ea       	ldi	r22, 0xA6	; 166
     98c:	8e e0       	ldi	r24, 0x0E	; 14
     98e:	0e 94 b2 03 	call	0x764
     992:	8e e0       	ldi	r24, 0x0E	; 14
     994:	0e 94 56 04 	call	0x8ac
     998:	99 27       	eor	r25, r25
     99a:	f3 e0       	ldi	r31, 0x03	; 3
     99c:	96 95       	lsr	r25
     99e:	87 95       	ror	r24
     9a0:	fa 95       	dec	r31
     9a2:	e1 f7       	brne	.-8      	; 0x99c
     9a4:	c1 e0       	ldi	r28, 0x01	; 1
     9a6:	d0 e0       	ldi	r29, 0x00	; 0
     9a8:	8c 23       	and	r24, r28
     9aa:	9d 23       	and	r25, r29
     9ac:	8c 17       	cp	r24, r28
     9ae:	9d 07       	cpc	r25, r29
     9b0:	81 f7       	brne	.-32     	; 0x992
     9b2:	66 e2       	ldi	r22, 0x26	; 38
     9b4:	8e e0       	ldi	r24, 0x0E	; 14
     9b6:	0e 94 b2 03 	call	0x764
     9ba:	ce 01       	movw	r24, r28
     9bc:	df 91       	pop	r29
     9be:	cf 91       	pop	r28
     9c0:	08 95       	ret

000009c2 <CC1000ControlCC1000SetFreq>:
     9c2:	0f 93       	push	r16
     9c4:	1f 93       	push	r17
     9c6:	cf 93       	push	r28
     9c8:	c1 e0       	ldi	r28, 0x01	; 1
     9ca:	0c eb       	ldi	r16, 0xBC	; 188
     9cc:	12 e0       	ldi	r17, 0x02	; 2
     9ce:	f8 01       	movw	r30, r16
     9d0:	61 91       	ld	r22, Z+
     9d2:	8f 01       	movw	r16, r30
     9d4:	8c 2f       	mov	r24, r28
     9d6:	0e 94 b2 03 	call	0x764
     9da:	cf 5f       	subi	r28, 0xFF	; 255
     9dc:	cd 30       	cpi	r28, 0x0D	; 13
     9de:	b8 f3       	brcs	.-18     	; 0x9ce
     9e0:	60 91 cd 02 	lds	r22, 0x02CD
     9e4:	82 e1       	ldi	r24, 0x12	; 18
     9e6:	0e 94 b2 03 	call	0x764
     9ea:	0e 94 9d 04 	call	0x93a
     9ee:	cf 91       	pop	r28
     9f0:	1f 91       	pop	r17
     9f2:	0f 91       	pop	r16
     9f4:	08 95       	ret

000009f6 <CC1000ControlTuneManual>:
     9f6:	ef 92       	push	r14
     9f8:	ff 92       	push	r15
     9fa:	0f 93       	push	r16
     9fc:	1f 93       	push	r17
     9fe:	dc 01       	movw	r26, r24
     a00:	cb 01       	movw	r24, r22
     a02:	bc 01       	movw	r22, r24
     a04:	cd 01       	movw	r24, r26
     a06:	0e 94 ee 01 	call	0x3dc
     a0a:	7b 01       	movw	r14, r22
     a0c:	8c 01       	movw	r16, r24
     a0e:	0e 94 e1 04 	call	0x9c2
     a12:	c8 01       	movw	r24, r16
     a14:	b7 01       	movw	r22, r14
     a16:	1f 91       	pop	r17
     a18:	0f 91       	pop	r16
     a1a:	ff 90       	pop	r15
     a1c:	ef 90       	pop	r14
     a1e:	08 95       	ret

00000a20 <CC1000ControlStdControlInit>:
     a20:	1f 93       	push	r17
     a22:	0e 94 a1 03 	call	0x742
     a26:	6a e3       	ldi	r22, 0x3A	; 58
     a28:	80 e0       	ldi	r24, 0x00	; 0
     a2a:	0e 94 b2 03 	call	0x764
     a2e:	6b e3       	ldi	r22, 0x3B	; 59
     a30:	80 e0       	ldi	r24, 0x00	; 0
     a32:	0e 94 b2 03 	call	0x764
     a36:	80 ed       	ldi	r24, 0xD0	; 208
     a38:	97 e0       	ldi	r25, 0x07	; 7
     a3a:	0e 94 51 07 	call	0xea2
     a3e:	80 91 ba 02 	lds	r24, 0x02BA
     a42:	80 93 c6 02 	sts	0x02C6, r24
     a46:	68 2f       	mov	r22, r24
     a48:	8b e0       	ldi	r24, 0x0B	; 11
     a4a:	0e 94 b2 03 	call	0x764
     a4e:	80 e9       	ldi	r24, 0x90	; 144
     a50:	80 93 c8 02 	sts	0x02C8, r24

⌨️ 快捷键说明

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