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

📄 main.lss

📁 一个WSN的树状路由,对于那些学WSN路由方面的朋友应该有说帮助.
💻 LSS
📖 第 1 页 / 共 5 页
字号:
     a54:	68 2f       	mov	r22, r24
     a56:	84 e0       	ldi	r24, 0x04	; 4
     a58:	0e 94 b2 03 	call	0x764
     a5c:	10 92 ca 02 	sts	0x02CA, r1
     a60:	8f e6       	ldi	r24, 0x6F	; 111
     a62:	80 93 cb 02 	sts	0x02CB, r24
     a66:	85 e5       	ldi	r24, 0x55	; 85
     a68:	80 93 cc 02 	sts	0x02CC, r24
     a6c:	0e 94 3c 04 	call	0x878
     a70:	11 e0       	ldi	r17, 0x01	; 1
     a72:	10 93 ce 02 	sts	0x02CE, r17
     a76:	61 2f       	mov	r22, r17
     a78:	83 e1       	ldi	r24, 0x13	; 19
     a7a:	0e 94 b2 03 	call	0x764
     a7e:	10 93 d9 02 	sts	0x02D9, r17
     a82:	60 e2       	ldi	r22, 0x20	; 32
     a84:	72 ea       	ldi	r23, 0xA2	; 162
     a86:	83 ed       	ldi	r24, 0xD3	; 211
     a88:	99 e1       	ldi	r25, 0x19	; 25
     a8a:	0e 94 fb 04 	call	0x9f6
     a8e:	81 e0       	ldi	r24, 0x01	; 1
     a90:	90 e0       	ldi	r25, 0x00	; 0
     a92:	1f 91       	pop	r17
     a94:	08 95       	ret

00000a96 <OSH_SET_GREEN_LED_PIN>:
	};
	
	void OSH_SET_GREEN_LED_PIN(void)
	{
		* (volatile unsigned char *)(0x1B + 0x20) |= 1 << 1;
     a96:	d9 9a       	sbi	0x1b, 1	; 27
     a98:	08 95       	ret

00000a9a <OSH_SET_YELLOW_LED_PIN>:
	}
	
	void OSH_SET_YELLOW_LED_PIN(void)
	{
		* (volatile unsigned char *)(0x1B + 0x20) |= 1 << 0;
     a9a:	d8 9a       	sbi	0x1b, 0	; 27
     a9c:	08 95       	ret

00000a9e <OSH_SET_RED_LED_PIN>:
	}
	
	void OSH_SET_RED_LED_PIN(void)
	{
		* (volatile unsigned char *)(0x1B + 0x20) |= 1 << 2;
     a9e:	da 9a       	sbi	0x1b, 2	; 27
     aa0:	08 95       	ret

00000aa2 <OSH_SET_FLASH_SELECT_PIN>:
	}
	
	void OSH_SET_FLASH_SELECT_PIN(void)
	{
		* (volatile unsigned char *)(0x1B + 0x20) |= 1 << 3;
     aa2:	db 9a       	sbi	0x1b, 3	; 27
     aa4:	08 95       	ret

00000aa6 <OSH_MAKE_FLASH_CLK_OUTPUT>:
	}
	
	void OSH_MAKE_FLASH_CLK_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x11 + 0x20) |= 1 << 5;
     aa6:	8d 9a       	sbi	0x11, 5	; 17
     aa8:	08 95       	ret

00000aaa <OSH_MAKE_FLASH_OUT_OUTPUT>:
	}
	
	void OSH_MAKE_FLASH_OUT_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x11 + 0x20) |= 1 << 3;
     aaa:	8b 9a       	sbi	0x11, 3	; 17
     aac:	08 95       	ret

00000aae <OSH_MAKE_FLASH_SELECT_OUTPUT>:
	}
	
	void OSH_MAKE_FLASH_SELECT_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x1A + 0x20) |= 1 << 3;
     aae:	d3 9a       	sbi	0x1a, 3	; 26
     ab0:	08 95       	ret

00000ab2 <OSH_CLR_SERIAL_ID_PIN>:
	}
	
	void OSH_CLR_SERIAL_ID_PIN(void)
	{
		* (volatile unsigned char *)(0x1B + 0x20) &= ~(1 << 4);
     ab2:	dc 98       	cbi	0x1b, 4	; 27
     ab4:	08 95       	ret

00000ab6 <OSH_MAKE_SERIAL_ID_INPUT>:
	}
	
	void OSH_MAKE_SERIAL_ID_INPUT(void)
	{
		* (volatile unsigned char *)(0x1A + 0x20) &= ~(1 << 4);
     ab6:	d4 98       	cbi	0x1a, 4	; 26
     ab8:	08 95       	ret

00000aba <OSH_MAKE_SPI_OC1C_INPUT>:
	}
	
	void OSH_MAKE_SPI_OC1C_INPUT(void)
	{
		* (volatile unsigned char *)(0x17 + 0x20) &= ~(1 << 7);
     aba:	bf 98       	cbi	0x17, 7	; 23
     abc:	08 95       	ret

00000abe <OSH_MAKE_MISO_INPUT>:
	}
	
	void OSH_MAKE_MISO_INPUT(void)
	{
		* (volatile unsigned char *)(0x17 + 0x20) &= ~(1 << 3);
     abe:	bb 98       	cbi	0x17, 3	; 23
     ac0:	08 95       	ret

00000ac2 <OSH_MAKE_CC_PCLK_OUTPUT>:
	}
	
	void OSH_MAKE_CC_PCLK_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x11 + 0x20) |= 1 << 6;
     ac2:	8e 9a       	sbi	0x11, 6	; 17
     ac4:	08 95       	ret

00000ac6 <OSH_MAKE_CC_PDATA_OUTPUT>:
	}
	
	void OSH_MAKE_CC_PDATA_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x11 + 0x20) |= 1 << 7;
     ac6:	8f 9a       	sbi	0x11, 7	; 17
     ac8:	08 95       	ret

00000aca <OSH_MAKE_CC_PALE_OUTPUT>:
	}
	
	void OSH_MAKE_CC_PALE_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x11 + 0x20) |= 1 << 4;
     aca:	8c 9a       	sbi	0x11, 4	; 17
     acc:	08 95       	ret

00000ace <OSH_MAKE_PW0_OUTPUT>:
	}
	
	void OSH_MAKE_PW0_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x14 + 0x20) |= 1 << 0;
     ace:	a0 9a       	sbi	0x14, 0	; 20
     ad0:	08 95       	ret

00000ad2 <OSH_MAKE_PW1_OUTPUT>:
	}
	
	void OSH_MAKE_PW1_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x14 + 0x20) |= 1 << 1;
     ad2:	a1 9a       	sbi	0x14, 1	; 20
     ad4:	08 95       	ret

00000ad6 <OSH_MAKE_PW2_OUTPUT>:
	}
	
	void OSH_MAKE_PW2_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x14 + 0x20) |= 1 << 2;
     ad6:	a2 9a       	sbi	0x14, 2	; 20
     ad8:	08 95       	ret

00000ada <OSH_MAKE_PW3_OUTPUT>:
	}
	
	void OSH_MAKE_PW3_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x14 + 0x20) |= 1 << 3;
     ada:	a3 9a       	sbi	0x14, 3	; 20
     adc:	08 95       	ret

00000ade <OSH_MAKE_PW4_OUTPUT>:
	}
	
	void OSH_MAKE_PW4_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x14 + 0x20) |= 1 << 4;
     ade:	a4 9a       	sbi	0x14, 4	; 20
     ae0:	08 95       	ret

00000ae2 <OSH_MAKE_PW5_OUTPUT>:
	}
	
	void OSH_MAKE_PW5_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x14 + 0x20) |= 1 << 5;
     ae2:	a5 9a       	sbi	0x14, 5	; 20
     ae4:	08 95       	ret

00000ae6 <OSH_MAKE_PW6_OUTPUT>:
	}
	
	void OSH_MAKE_PW6_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x14 + 0x20) |= 1 << 6;
     ae6:	a6 9a       	sbi	0x14, 6	; 20
     ae8:	08 95       	ret

00000aea <OSH_MAKE_PW7_OUTPUT>:
	}
	
	void OSH_MAKE_PW7_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x14 + 0x20) |= 1 << 7;
     aea:	a7 9a       	sbi	0x14, 7	; 20
     aec:	08 95       	ret

00000aee <OSH_MAKE_CC_CHP_OUT_INPUT>:
	}
	
	void OSH_MAKE_CC_CHP_OUT_INPUT(void)
	{
		* (volatile unsigned char *)(0x1A + 0x20) &= ~(1 << 6);
     aee:	d6 98       	cbi	0x1a, 6	; 26
     af0:	08 95       	ret

00000af2 <OSH_MAKE_GREEN_LED_OUTPUT>:
	}
	
	void OSH_MAKE_GREEN_LED_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x1A + 0x20) |= 1 << 1;
     af2:	d1 9a       	sbi	0x1a, 1	; 26
     af4:	08 95       	ret

00000af6 <OSH_MAKE_YELLOW_LED_OUTPUT>:
	}
	
	void OSH_MAKE_YELLOW_LED_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x1A + 0x20) |= 1 << 0;
     af6:	d0 9a       	sbi	0x1a, 0	; 26
     af8:	08 95       	ret

00000afa <OSH_MAKE_RED_LED_OUTPUT>:
	}
	
	void OSH_MAKE_RED_LED_OUTPUT(void)
	{
		* (volatile unsigned char *)(0x1A + 0x20) |= 1 << 2;
     afa:	d2 9a       	sbi	0x1a, 2	; 26
     afc:	08 95       	ret

00000afe <RandomInit>:
	}
	
	result_t RandomInit(void)
	{
     afe:	1f 93       	push	r17
		uint8_t random = OS_LOCAL_ADDRESS;
     b00:	10 91 db 02 	lds	r17, 0x02DB
		{ uint8_t atomic = AtomicStart();
     b04:	0e 94 73 07 	call	0xee6
		{
			//RandomLFSR_shiftReg = (119 * 119 * (OS_LOCAL_ADDRESS + 1)&0xffff);
			RandomLFSR_shiftReg = 119 * 119 * (random + 1);
     b08:	41 2f       	mov	r20, r17
     b0a:	55 27       	eor	r21, r21
     b0c:	21 e5       	ldi	r18, 0x51	; 81
     b0e:	37 e3       	ldi	r19, 0x37	; 55
     b10:	42 9f       	mul	r20, r18
     b12:	b0 01       	movw	r22, r0
     b14:	43 9f       	mul	r20, r19
     b16:	70 0d       	add	r23, r0
     b18:	52 9f       	mul	r21, r18
     b1a:	70 0d       	add	r23, r0
     b1c:	11 24       	eor	r1, r1
     b1e:	9b 01       	movw	r18, r22
     b20:	2f 5a       	subi	r18, 0xAF	; 175
     b22:	38 4c       	sbci	r19, 0xC8	; 200
     b24:	30 93 60 01 	sts	0x0160, r19
     b28:	20 93 5f 01 	sts	0x015F, r18
			RandomLFSR_initSeed = RandomLFSR_shiftReg;
     b2c:	30 93 62 01 	sts	0x0162, r19
     b30:	20 93 61 01 	sts	0x0161, r18
			//RandomLFSR_mask = 137 * 29 * (OS_LOCAL_ADDRESS + 1);
			RandomLFSR_mask = 137 * 29 * (random + 1);
     b34:	25 e8       	ldi	r18, 0x85	; 133
     b36:	3f e0       	ldi	r19, 0x0F	; 15
     b38:	42 9f       	mul	r20, r18
     b3a:	b0 01       	movw	r22, r0
     b3c:	43 9f       	mul	r20, r19
     b3e:	70 0d       	add	r23, r0
     b40:	52 9f       	mul	r21, r18
     b42:	70 0d       	add	r23, r0
     b44:	11 24       	eor	r1, r1
     b46:	9b 01       	movw	r18, r22
     b48:	2b 57       	subi	r18, 0x7B	; 123
     b4a:	30 4f       	sbci	r19, 0xF0	; 240
     b4c:	30 93 64 01 	sts	0x0164, r19
     b50:	20 93 63 01 	sts	0x0163, r18
		}
		AtomicEnd(atomic); }
     b54:	0e 94 71 07 	call	0xee2
		return SUCCESS;
	}
     b58:	81 e0       	ldi	r24, 0x01	; 1
     b5a:	90 e0       	ldi	r25, 0x00	; 0
     b5c:	1f 91       	pop	r17
     b5e:	08 95       	ret

00000b60 <OSH_SET_CC_PCLK_PIN>:
	
	void OSH_SET_CC_PCLK_PIN(void)
	{
		* (volatile unsigned char *)(0x12 + 0x20) |= 1 << 6;
     b60:	96 9a       	sbi	0x12, 6	; 18
     b62:	08 95       	ret

00000b64 <OSH_SET_CC_PDATA_PIN>:
	}
	
	void OSH_SET_CC_PDATA_PIN(void)
	{
		* (volatile unsigned char *)(0x12 + 0x20) |= 1 << 7;
     b64:	97 9a       	sbi	0x12, 7	; 18
     b66:	08 95       	ret

00000b68 <OSH_SET_CC_PALE_PIN>:
	}
	
	void OSH_SET_CC_PALE_PIN(void)
	{
		* (volatile unsigned char *)(0x12 + 0x20) |= 1 << 4;
     b68:	94 9a       	sbi	0x12, 4	; 18
     b6a:	08 95       	ret

00000b6c <OSH_MAKE_MOSI_INPUT>:
	}
	
	void OSH_MAKE_MOSI_INPUT(void)
	{
		* (volatile unsigned char *)(0x17 + 0x20) &= ~(1 << 2);
     b6c:	ba 98       	cbi	0x17, 2	; 23
     b6e:	08 95       	ret

00000b70 <OSH_MAKE_SPI_SCK_INPUT>:
	}
	
	void OSH_MAKE_SPI_SCK_INPUT(void)
	{
		* (volatile unsigned char *)(0x17 + 0x20) &= ~(1 << 1);
     b70:	b9 98       	cbi	0x17, 1	; 23
     b72:	08 95       	ret

00000b74 <OSH_CLR_CC_PALE_PIN>:
	}
	
	void OSH_CLR_CC_PALE_PIN(void)
	{
		* (volatile unsigned char *)(0x12 + 0x20) &= ~(1 << 4);
     b74:	94 98       	cbi	0x12, 4	; 18
     b76:	08 95       	ret

00000b78 <OSH_CLR_CC_PDATA_PIN>:
	}
	
	void OSH_CLR_CC_PDATA_PIN(void)
	{
		* (volatile unsigned char *)(0x12 + 0x20) &= ~(1 << 7);
     b78:	97 98       	cbi	0x12, 7	; 18
     b7a:	08 95       	ret

00000b7c <OSH_CLR_CC_PCLK_PIN>:
	}
	
	void OSH_CLR_CC_PCLK_PIN(void)
	{
		* (volatile unsigned char *)(0x12 + 0x20) &= ~(1 << 6);
     b7c:	96 98       	cbi	0x12, 6	; 18
     b7e:	08 95       	ret

00000b80 <OSH_MAKE_CC_PDATA_INPUT>:
	}
	
	void OSH_MAKE_CC_PDATA_INPUT(void)
	{
		* (volatile unsigned char *)(0x11 + 0x20) &= ~(1 << 7);
     b80:	8f 98       	cbi	0x11, 7	; 17
     b82:	08 95       	ret

00000b84 <OSH_READ_CC_PDATA_PIN>:
	}
	
	int OSH_READ_CC_PDATA_PIN(void)
	{
		return (* (volatile unsigned char *)(0x10 + 0x20) & (1 << 7)) != 0;
     b84:	80

⌨️ 快捷键说明

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