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

📄 fun.lst

📁 adhoc汇聚节点程序源代码(点对多点)——for atmega128
💻 LST
📖 第 1 页 / 共 5 页
字号:
 325:fun.c         **** 			* (volatile unsigned char *)(0x35 + 0x20) = mcu;
 1149               	.LM111:
 1150 0188 85BF      		out 85-0x20,r24
 326:fun.c         **** 			* (volatile unsigned char *)(0x35 + 0x20) |= 1 << 5;
 1152               	.LM112:
 1153 018a 85B7      		in r24,85-0x20
 1154 018c 8062      		ori r24,lo8(32)
 1155 018e 85BF      		out 85-0x20,r24
 1156               	.L59:
 327:fun.c         **** 		}
 328:fun.c         **** 		return 0;
 329:fun.c         **** 	}
 1158               	.LM113:
 1159 0190 80E0      		ldi r24,lo8(0)
 1160 0192 90E0      		ldi r25,hi8(0)
 1161               	/* epilogue: frame size=0 */
 1162 0194 0895      		ret
 1163               	/* epilogue end (size=1) */
 1164               	/* function PowerManagementAdjust size 18 (17) */
 1168               	.global	OSH_CLR_YELLOW_LED_PIN
 1170               	OSH_CLR_YELLOW_LED_PIN:
 330:fun.c         **** 	
 331:fun.c         **** 	void OSH_CLR_YELLOW_LED_PIN(void)
 332:fun.c         **** 	{
 1172               	.LM114:
 1173               	/* prologue: frame size=0 */
 1174               	/* prologue end (size=0) */
 333:fun.c         **** 		* (volatile unsigned char *)(0x1B + 0x20) &= ~(1 << 0);
 1176               	.LM115:
 1177 0196 D898      		cbi 59-0x20,0
 1178               	/* epilogue: frame size=0 */
 1179 0198 0895      		ret
 1180               	/* epilogue end (size=1) */
 1181               	/* function OSH_CLR_YELLOW_LED_PIN size 2 (1) */
 1184               	.global	OSH_MAKE_MOSI_OUTPUT
 1186               	OSH_MAKE_MOSI_OUTPUT:
 334:fun.c         **** 	}
 335:fun.c         **** 	
 336:fun.c         **** 	void OSH_MAKE_MOSI_OUTPUT(void)
 337:fun.c         **** 	{
 1188               	.LM116:
 1189               	/* prologue: frame size=0 */
 1190               	/* prologue end (size=0) */
 338:fun.c         **** 		* (volatile unsigned char *)(0x17 + 0x20) |= 1 << 2;
 1192               	.LM117:
 1193 019a BA9A      		sbi 55-0x20,2
 1194               	/* epilogue: frame size=0 */
 1195 019c 0895      		ret
 1196               	/* epilogue end (size=1) */
 1197               	/* function OSH_MAKE_MOSI_OUTPUT size 2 (1) */
 1200               	.global	OSH_MAKE_MISO_OUTPUT
 1202               	OSH_MAKE_MISO_OUTPUT:
 339:fun.c         **** 	}
 340:fun.c         **** 	
 341:fun.c         **** 	void OSH_MAKE_MISO_OUTPUT(void)
 342:fun.c         **** 	{
 1204               	.LM118:
 1205               	/* prologue: frame size=0 */
 1206               	/* prologue end (size=0) */
 343:fun.c         **** 		* (volatile unsigned char *)(0x17 + 0x20) |= 1 << 3;
 1208               	.LM119:
 1209 019e BB9A      		sbi 55-0x20,3
 1210               	/* epilogue: frame size=0 */
 1211 01a0 0895      		ret
 1212               	/* epilogue end (size=1) */
 1213               	/* function OSH_MAKE_MISO_OUTPUT size 2 (1) */
 1216               	.global	OSH_CLR_RED_LED_PIN
 1218               	OSH_CLR_RED_LED_PIN:
 344:fun.c         **** 	}
 345:fun.c         **** 	
 346:fun.c         **** 	void OSH_CLR_RED_LED_PIN(void)
 347:fun.c         **** 	{
 1220               	.LM120:
 1221               	/* prologue: frame size=0 */
 1222               	/* prologue end (size=0) */
 348:fun.c         **** 		* (volatile unsigned char *)(0x1B + 0x20) &= ~(1 << 2);
 1224               	.LM121:
 1225 01a2 DA98      		cbi 59-0x20,2
 1226               	/* epilogue: frame size=0 */
 1227 01a4 0895      		ret
 1228               	/* epilogue end (size=1) */
 1229               	/* function OSH_CLR_RED_LED_PIN size 2 (1) */
 1232               	.global	OSH_CLR_GREEN_LED_PIN
 1234               	OSH_CLR_GREEN_LED_PIN:
 349:fun.c         **** 	}
 350:fun.c         **** 	
 351:fun.c         **** 	void OSH_CLR_GREEN_LED_PIN(void)
 352:fun.c         **** 	{
 1236               	.LM122:
 1237               	/* prologue: frame size=0 */
 1238               	/* prologue end (size=0) */
 353:fun.c         **** 		* (volatile unsigned char *)(0x1B + 0x20) &= ~(1 << 1);
 1240               	.LM123:
 1241 01a6 D998      		cbi 59-0x20,1
 1242               	/* epilogue: frame size=0 */
 1243 01a8 0895      		ret
 1244               	/* epilogue end (size=1) */
 1245               	/* function OSH_CLR_GREEN_LED_PIN size 2 (1) */
 1250               	.global	crcByte
 1252               	crcByte:
 354:fun.c         **** 	}
 355:fun.c         **** 	
 356:fun.c         **** 	uint16_t crcByte(uint16_t oldCrc, uint8_t byte)
 357:fun.c         **** 	{
 1254               	.LM124:
 1255               	/* prologue: frame size=0 */
 1256               	/* prologue end (size=0) */
 1257 01aa 262F      		mov r18,r22
 358:fun.c         **** 		
 359:fun.c         **** 		uint16_t *table = crcTable;
 1259               	.LM125:
 1260 01ac E0E0      		ldi r30,lo8(crcTable)
 1261 01ae F0E0      		ldi r31,hi8(crcTable)
 360:fun.c         **** 		uint16_t newCrc;
 361:fun.c         **** 		
 362:fun.c         **** 		asm ("eor %1,%B3\n"
 363:fun.c         **** 			"\tlsl %1\n"
 364:fun.c         **** 			"\tadc %B2, __zero_reg__\n"
 365:fun.c         **** 			"\tadd %A2, %1\n"
 366:fun.c         **** 			"\tadc %B2, __zero_reg__\n"
 367:fun.c         **** 			"\tlpm\n"
 368:fun.c         **** 			"\tmov %B0, %A3\n"
 369:fun.c         **** 			"\tmov %A0, r0\n"
 370:fun.c         **** 			"\tadiw r30,1\n"
 371:fun.c         **** 			"\tlpm\n"
 372:fun.c         **** 			"\teor %B0, r0" : 
 373:fun.c         **** 		"=r"(newCrc), "+r"(byte), "+z"(table) : "r"(oldCrc));
 374:fun.c         **** 		return newCrc;
 375:fun.c         **** 	}
 1263               	.LM126:
 1264               	/* #APP */
 1265 01b0 2927      		eor r18,r25
 1266 01b2 220F      		lsl r18
 1267 01b4 F11D      		adc r31, __zero_reg__
 1268 01b6 E20F      		add r30, r18
 1269 01b8 F11D      		adc r31, __zero_reg__
 1270 01ba C895      		lpm
 1271 01bc 982F      		mov r25, r24
 1272 01be 802D      		mov r24, r0
 1273 01c0 3196      		adiw r30,1
 1274 01c2 C895      		lpm
 1275 01c4 9025      		eor r25, r0
 1276               	/* #NOAPP */
 1277               	/* epilogue: frame size=0 */
 1278 01c6 0895      		ret
 1279               	/* epilogue end (size=1) */
 1280               	/* function crcByte size 26 (25) */
 1284               	.global	RandomLFSRGen
 1286               	RandomLFSRGen:
 376:fun.c         **** 	
 377:fun.c         **** 	uint16_t RandomLFSRGen(void)
 378:fun.c         **** 	{
 1288               	.LM127:
 1289               	/* prologue: frame size=0 */
 1290 01c8 EF92      		push r14
 1291 01ca FF92      		push r15
 1292 01cc CF93      		push r28
 1293 01ce DF93      		push r29
 1294               	/* prologue end (size=4) */
 1295               	.LBB3:
 379:fun.c         **** 		bool endbit;
 380:fun.c         **** 		uint16_t tmpShiftReg;
 381:fun.c         **** 		
 382:fun.c         **** 		{ uint8_t nesc_atomic = AtomicStart();
 1297               	.LM128:
 1298 01d0 0E94 0000 		call AtomicStart
 1299 01d4 282F      		mov r18,r24
 383:fun.c         **** 		{
 384:fun.c         **** 			tmpShiftReg = RandomLFSR_shiftReg;
 1301               	.LM129:
 1302 01d6 C091 0000 		lds r28,RandomLFSR_shiftReg
 1303 01da D091 0000 		lds r29,(RandomLFSR_shiftReg)+1
 385:fun.c         **** 			endbit = (tmpShiftReg & 0x8000) != 0;
 1305               	.LM130:
 1306 01de 7E01      		movw r14,r28
 1307 01e0 8F2D      		mov r24,r15
 1308 01e2 881F      		rol r24
 1309 01e4 8827      		clr r24
 1310 01e6 881F      		rol r24
 386:fun.c         **** 			tmpShiftReg <<= 1;
 1312               	.LM131:
 1313 01e8 CC0F      		lsl r28
 1314 01ea DD1F      		rol r29
 387:fun.c         **** 			if (endbit) {
 1316               	.LM132:
 1317 01ec 8823      		tst r24
 1318 01ee 21F0      		breq .L68
 388:fun.c         **** 				tmpShiftReg ^= 0x100b;
 1320               	.LM133:
 1321 01f0 8BE0      		ldi r24,lo8(4107)
 1322 01f2 90E1      		ldi r25,hi8(4107)
 1323 01f4 C827      		eor r28,r24
 1324 01f6 D927      		eor r29,r25
 1325               	.L68:
 389:fun.c         **** 			}
 390:fun.c         **** 			tmpShiftReg++;
 1327               	.LM134:
 1328 01f8 2196      		adiw r28,1
 391:fun.c         **** 			RandomLFSR_shiftReg = tmpShiftReg;
 1330               	.LM135:
 1331 01fa D093 0000 		sts (RandomLFSR_shiftReg)+1,r29
 1332 01fe C093 0000 		sts RandomLFSR_shiftReg,r28
 392:fun.c         **** 			tmpShiftReg = tmpShiftReg ^ RandomLFSR_mask;
 1334               	.LM136:
 1335 0202 8091 0000 		lds r24,RandomLFSR_mask
 1336 0206 9091 0000 		lds r25,(RandomLFSR_mask)+1
 1337 020a C827      		eor r28,r24
 1338 020c D927      		eor r29,r25
 393:fun.c         **** 		}
 394:fun.c         **** 		AtomicEnd(nesc_atomic); }
 1340               	.LM137:
 1341 020e 822F      		mov r24,r18
 1342 0210 0E94 0000 		call AtomicEnd
 1343               	.LBE3:
 395:fun.c         **** 		return tmpShiftReg;
 396:fun.c         **** 	}
 1345               	.LM138:
 1346 0214 CE01      		movw r24,r28
 1347               	/* epilogue: frame size=0 */
 1348 0216 DF91      		pop r29
 1349 0218 CF91      		pop r28
 1350 021a FF90      		pop r15
 1351 021c EF90      		pop r14
 1352 021e 0895      		ret
 1353               	/* epilogue end (size=5) */
 1354               	/* function RandomLFSRGen size 44 (35) */
 1361               		.comm RandomLFSR_shiftReg,2,1
 1362               		.comm RandomLFSR_initSeed,2,1
 1363               		.comm RandomLFSR_mask,2,1
 1369               		.text
 1371               	Letext:
 1372               	/* File "fun.c": code  285 = 0x011d ( 230), prologues   4, epilogues  51 */
DEFINED SYMBOLS
                            *ABS*:00000000 fun.c
                            *ABS*:0000003f __SREG__
                            *ABS*:0000003e __SP_H__
                            *ABS*:0000003d __SP_L__
                            *ABS*:00000000 __tmp_reg__
                            *ABS*:00000001 __zero_reg__
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:68     .data:00000000 HPLPowerManagementM_disabled
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:74     .progmem.data:00000000 crcTable
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:335    .text:00000000 OSH_SET_GREEN_LED_PIN
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:351    .text:00000004 OSH_SET_YELLOW_LED_PIN
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:367    .text:00000008 OSH_SET_RED_LED_PIN
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:383    .text:0000000c OSH_SET_FLASH_SELECT_PIN
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:399    .text:00000010 OSH_MAKE_FLASH_CLK_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:415    .text:00000014 OSH_MAKE_FLASH_OUT_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:431    .text:00000018 OSH_MAKE_FLASH_SELECT_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:447    .text:0000001c OSH_CLR_SERIAL_ID_PIN
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:463    .text:00000020 OSH_MAKE_SERIAL_ID_INPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:479    .text:00000024 OSH_MAKE_SPI_OC1C_INPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:495    .text:00000028 OSH_MAKE_MISO_INPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:511    .text:0000002c OSH_MAKE_CC_PCLK_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:527    .text:00000030 OSH_MAKE_CC_PDATA_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:543    .text:00000034 OSH_MAKE_CC_PALE_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:559    .text:00000038 OSH_MAKE_PW0_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:575    .text:0000003c OSH_MAKE_PW1_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:591    .text:00000040 OSH_MAKE_PW2_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:607    .text:00000044 OSH_MAKE_PW3_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:623    .text:00000048 OSH_MAKE_PW4_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:639    .text:0000004c OSH_MAKE_PW5_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:655    .text:00000050 OSH_MAKE_PW6_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:671    .text:00000054 OSH_MAKE_PW7_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:687    .text:00000058 OSH_MAKE_CC_CHP_OUT_INPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:703    .text:0000005c OSH_MAKE_GREEN_LED_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:719    .text:00000060 OSH_MAKE_YELLOW_LED_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:735    .text:00000064 OSH_MAKE_RED_LED_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:751    .text:00000068 RandomInit
                            *COM*:00000002 RandomLFSR_shiftReg
                            *COM*:00000002 RandomLFSR_initSeed
                            *COM*:00000002 RandomLFSR_mask
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:815    .text:000000c6 OSH_SET_CC_PCLK_PIN
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:831    .text:000000ca OSH_SET_CC_PDATA_PIN
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:847    .text:000000ce OSH_SET_CC_PALE_PIN
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:863    .text:000000d2 OSH_MAKE_MOSI_INPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:879    .text:000000d6 OSH_MAKE_SPI_SCK_INPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:895    .text:000000da OSH_CLR_CC_PALE_PIN
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:911    .text:000000de OSH_CLR_CC_PDATA_PIN
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:927    .text:000000e2 OSH_CLR_CC_PCLK_PIN
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:943    .text:000000e6 OSH_MAKE_CC_PDATA_INPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:959    .text:000000ea OSH_READ_CC_PDATA_PIN
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:986    .text:000000fa GetPowerLevel
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:1063   .text:00000142 PowerAdjustment
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:1125   .text:00000172 PowerManagementAdjust
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:1170   .text:00000196 OSH_CLR_YELLOW_LED_PIN
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:1186   .text:0000019a OSH_MAKE_MOSI_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:1202   .text:0000019e OSH_MAKE_MISO_OUTPUT
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:1218   .text:000001a2 OSH_CLR_RED_LED_PIN
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:1234   .text:000001a6 OSH_CLR_GREEN_LED_PIN
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:1252   .text:000001aa crcByte
C:\DOCUME~1\xiapeng\LOCALS~1\Temp/cc6jbaaa.s:1286   .text:000001c8 RandomLFSRGen
C:\DOCUME~1\xiapeng\LOCALS~1\Te

⌨️ 快捷键说明

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