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

📄 cc1000.lst

📁 adhoc信息节点程序源代码(点对多点)——for atmega128
💻 LST
📖 第 1 页 / 共 5 页
字号:
 753 03a0 16E0      		ldi r17,lo8(6)
 754               	.L29:
 365:cc1000.c      **** 	for (cnt = 0; cnt < 7; cnt++) 
 366:cc1000.c      ****     {
 367:cc1000.c      **** 		if (addr & 0x80) {
 756               	.LM76:
 757 03a2 C7FF      		sbrs r28,7
 758 03a4 03C0      		rjmp .L27
 368:cc1000.c      **** 			OSH_SET_CC_PDATA_PIN();
 760               	.LM77:
 761 03a6 0E94 0000 		call OSH_SET_CC_PDATA_PIN
 762 03aa 02C0      		rjmp .L28
 763               	.L27:
 369:cc1000.c      ****         }
 370:cc1000.c      **** 		else {
 371:cc1000.c      **** 			OSH_CLR_CC_PDATA_PIN();
 765               	.LM78:
 766 03ac 0E94 0000 		call OSH_CLR_CC_PDATA_PIN
 767               	.L28:
 372:cc1000.c      ****         }
 373:cc1000.c      **** 		OSH_CLR_CC_PCLK_PIN();
 769               	.LM79:
 770 03b0 0E94 0000 		call OSH_CLR_CC_PCLK_PIN
 374:cc1000.c      **** 		OSH_SET_CC_PCLK_PIN();
 772               	.LM80:
 773 03b4 0E94 0000 		call OSH_SET_CC_PCLK_PIN
 375:cc1000.c      **** 		addr <<= 1;
 775               	.LM81:
 776 03b8 CC0F      		lsl r28
 778               	.LM82:
 779 03ba 1150      		subi r17,lo8(-(-1))
 780 03bc 17FF      		sbrs r17,7
 781 03be F1CF      		rjmp .L29
 376:cc1000.c      ****     }
 377:cc1000.c      **** 	OSH_SET_CC_PDATA_PIN();
 783               	.LM83:
 784 03c0 0E94 0000 		call OSH_SET_CC_PDATA_PIN
 378:cc1000.c      **** 	OSH_CLR_CC_PCLK_PIN();
 786               	.LM84:
 787 03c4 0E94 0000 		call OSH_CLR_CC_PCLK_PIN
 379:cc1000.c      **** 	OSH_SET_CC_PCLK_PIN();
 789               	.LM85:
 790 03c8 0E94 0000 		call OSH_SET_CC_PCLK_PIN
 380:cc1000.c      **** 	
 381:cc1000.c      **** 	OSH_SET_CC_PALE_PIN();
 792               	.LM86:
 793 03cc 0E94 0000 		call OSH_SET_CC_PALE_PIN
 794 03d0 17E0      		ldi r17,lo8(7)
 795               	.L35:
 382:cc1000.c      **** 	
 383:cc1000.c      **** 	for (cnt = 0; cnt < 8; cnt++) 
 384:cc1000.c      ****     {
 385:cc1000.c      **** 		if (data & 0x80) {
 797               	.LM87:
 798 03d2 07FF      		sbrs r16,7
 799 03d4 03C0      		rjmp .L33
 386:cc1000.c      **** 			OSH_SET_CC_PDATA_PIN();
 801               	.LM88:
 802 03d6 0E94 0000 		call OSH_SET_CC_PDATA_PIN
 803 03da 02C0      		rjmp .L34
 804               	.L33:
 387:cc1000.c      ****         }
 388:cc1000.c      **** 		else {
 389:cc1000.c      **** 			OSH_CLR_CC_PDATA_PIN();
 806               	.LM89:
 807 03dc 0E94 0000 		call OSH_CLR_CC_PDATA_PIN
 808               	.L34:
 390:cc1000.c      ****         }
 391:cc1000.c      **** 		OSH_CLR_CC_PCLK_PIN();
 810               	.LM90:
 811 03e0 0E94 0000 		call OSH_CLR_CC_PCLK_PIN
 392:cc1000.c      **** 		OSH_SET_CC_PCLK_PIN();
 813               	.LM91:
 814 03e4 0E94 0000 		call OSH_SET_CC_PCLK_PIN
 393:cc1000.c      **** 		data <<= 1;
 816               	.LM92:
 817 03e8 000F      		lsl r16
 819               	.LM93:
 820 03ea 1150      		subi r17,lo8(-(-1))
 821 03ec 17FF      		sbrs r17,7
 822 03ee F1CF      		rjmp .L35
 394:cc1000.c      ****     }
 395:cc1000.c      **** 	OSH_SET_CC_PALE_PIN();
 824               	.LM94:
 825 03f0 0E94 0000 		call OSH_SET_CC_PALE_PIN
 396:cc1000.c      **** 	OSH_SET_CC_PDATA_PIN();
 827               	.LM95:
 828 03f4 0E94 0000 		call OSH_SET_CC_PDATA_PIN
 397:cc1000.c      **** 	OSH_SET_CC_PCLK_PIN();
 830               	.LM96:
 831 03f8 0E94 0000 		call OSH_SET_CC_PCLK_PIN
 398:cc1000.c      **** 	return SUCCESS;
 399:cc1000.c      **** }
 833               	.LM97:
 834 03fc 81E0      		ldi r24,lo8(1)
 835 03fe 90E0      		ldi r25,hi8(1)
 836               	/* epilogue: frame size=0 */
 837 0400 CF91      		pop r28
 838 0402 1F91      		pop r17
 839 0404 0F91      		pop r16
 840 0406 0895      		ret
 841               	/* epilogue end (size=4) */
 842               	/* function CC1000HPLWrite size 60 (53) */
 846               	.global	CC1000ControlStdControlStop
 848               	CC1000ControlStdControlStop:
 850               	.LM98:
 851               	/* prologue: frame size=0 */
 852               	/* prologue end (size=0) */
 854               	.LM99:
 855 0408 60E0      		ldi r22,lo8(0)
 856 040a 8BE0      		ldi r24,lo8(11)
 857 040c 0E94 0000 		call CC1000HPLWrite
 859               	.LM100:
 860 0410 6FE3      		ldi r22,lo8(63)
 861 0412 80E0      		ldi r24,lo8(0)
 862 0414 0E94 0000 		call CC1000HPLWrite
 864               	.LM101:
 865 0418 81E0      		ldi r24,lo8(1)
 866 041a 90E0      		ldi r25,hi8(1)
 867               	/* epilogue: frame size=0 */
 868 041c 0895      		ret
 869               	/* epilogue end (size=1) */
 870               	/* function CC1000ControlStdControlStop size 11 (10) */
 873               	.global	CC1000ControlRxMode
 875               	CC1000ControlRxMode:
 877               	.LM102:
 878               	/* prologue: frame size=0 */
 879               	/* prologue end (size=0) */
 881               	.LM103:
 882 041e 61E1      		ldi r22,lo8(17)
 883 0420 80E0      		ldi r24,lo8(0)
 884 0422 0E94 0000 		call CC1000HPLWrite
 886               	.LM104:
 887 0426 6091 0000 		lds r22,CC1000ControlM_gCurrentParameters+9
 888 042a 89E0      		ldi r24,lo8(9)
 889 042c 0E94 0000 		call CC1000HPLWrite
 891               	.LM105:
 892 0430 60E0      		ldi r22,lo8(0)
 893 0432 8BE0      		ldi r24,lo8(11)
 894 0434 0E94 0000 		call CC1000HPLWrite
 896               	.LM106:
 897 0438 8AEF      		ldi r24,lo8(250)
 898 043a 90E0      		ldi r25,hi8(250)
 899 043c 0E94 0000 		call OSH_uwait
 901               	.LM107:
 902 0440 81E0      		ldi r24,lo8(1)
 903 0442 90E0      		ldi r25,hi8(1)
 904               	/* epilogue: frame size=0 */
 905 0444 0895      		ret
 906               	/* epilogue end (size=1) */
 907               	/* function CC1000ControlRxMode size 20 (19) */
 910               	.global	CC1000ControlTxMode
 912               	CC1000ControlTxMode:
 914               	.LM108:
 915               	/* prologue: frame size=0 */
 916               	/* prologue end (size=0) */
 918               	.LM109:
 919 0446 61EE      		ldi r22,lo8(-31)
 920 0448 80E0      		ldi r24,lo8(0)
 921 044a 0E94 0000 		call CC1000HPLWrite
 923               	.LM110:
 924 044e 6091 0000 		lds r22,CC1000ControlM_gCurrentParameters+29
 925 0452 89E0      		ldi r24,lo8(9)
 926 0454 0E94 0000 		call CC1000HPLWrite
 928               	.LM111:
 929 0458 8AEF      		ldi r24,lo8(250)
 930 045a 90E0      		ldi r25,hi8(250)
 931 045c 0E94 0000 		call OSH_uwait
 933               	.LM112:
 934 0460 6091 0000 		lds r22,CC1000ControlM_gCurrentParameters+11
 935 0464 8BE0      		ldi r24,lo8(11)
 936 0466 0E94 0000 		call CC1000HPLWrite
 938               	.LM113:
 939 046a 84E1      		ldi r24,lo8(20)
 940 046c 90E0      		ldi r25,hi8(20)
 941 046e 0E94 0000 		call OSH_uwait
 943               	.LM114:
 944 0472 81E0      		ldi r24,lo8(1)
 945 0474 90E0      		ldi r25,hi8(1)
 946               	/* epilogue: frame size=0 */
 947 0476 0895      		ret
 948               	/* epilogue end (size=1) */
 949               	/* function CC1000ControlTxMode size 25 (24) */
 952               	.global	CC1000ControlStdControlStart
 954               	CC1000ControlStdControlStart:
 956               	.LM115:
 957               	/* prologue: frame size=0 */
 958               	/* prologue end (size=0) */
 960               	.LM116:
 961 0478 6BE3      		ldi r22,lo8(59)
 962 047a 80E0      		ldi r24,lo8(0)
 963 047c 0E94 0000 		call CC1000HPLWrite
 965               	.LM117:
 966 0480 80ED      		ldi r24,lo8(2000)
 967 0482 97E0      		ldi r25,hi8(2000)
 968 0484 0E94 0000 		call OSH_uwait
 970               	.LM118:
 971 0488 81E0      		ldi r24,lo8(1)
 972 048a 90E0      		ldi r25,hi8(1)
 973               	/* epilogue: frame size=0 */
 974 048c 0895      		ret
 975               	/* epilogue end (size=1) */
 976               	/* function CC1000ControlStdControlStart size 11 (10) */
 979               	.global	CC1000ControlBIASOn
 981               	CC1000ControlBIASOn:
 983               	.LM119:
 984               	/* prologue: frame size=0 */
 985               	/* prologue end (size=0) */
 987               	.LM120:
 988 048e 69E3      		ldi r22,lo8(57)
 989 0490 80E0      		ldi r24,lo8(0)
 990 0492 0E94 0000 		call CC1000HPLWrite
 992               	.LM121:
 993 0496 88EC      		ldi r24,lo8(200)
 994 0498 90E0      		ldi r25,hi8(200)
 995 049a 0E94 0000 		call OSH_uwait
 997               	.LM122:
 998 049e 81E0      		ldi r24,lo8(1)
 999 04a0 90E0      		ldi r25,hi8(1)
 1000               	/* epilogue: frame size=0 */
 1001 04a2 0895      		ret
 1002               	/* epilogue end (size=1) */
 1003               	/* function CC1000ControlBIASOn size 11 (10) */
 1006               	.global	CC1000ControlCC1000SetModem
 1008               	CC1000ControlCC1000SetModem:
 1010               	.LM123:
 1011               	/* prologue: frame size=0 */
 1012               	/* prologue end (size=0) */
 1014               	.LM124:
 1015 04a4 6091 0000 		lds r22,CC1000ControlM_gCurrentParameters+15
 1016 04a8 8FE0      		ldi r24,lo8(15)
 1017 04aa 0E94 0000 		call CC1000HPLWrite
 1019               	.LM125:
 1020 04ae 6091 0000 		lds r22,CC1000ControlM_gCurrentParameters+16
 1021 04b2 80E1      		ldi r24,lo8(16)
 1022 04b4 0E94 0000 		call CC1000HPLWrite
 1024               	.LM126:
 1025 04b8 6091 0000 		lds r22,CC1000ControlM_gCurrentParameters+17
 1026 04bc 81E1      		ldi r24,lo8(17)
 1027 04be 0E94 0000 		call CC1000HPLWrite
 1028               	/* epilogue: frame size=0 */
 1029 04c2 0895      		ret
 1030               	/* epilogue end (size=1) */
 1031               	/* function CC1000ControlCC1000SetModem size 16 (15) */
 1035               	.global	CC1000ControlSelectLock
 1037               	CC1000ControlSelectLock:
 1039               	.LM127:
 1040               	/* prologue: frame size=0 */
 1041               	/* prologue end (size=0) */
 1043               	.LM128:
 1044 04c4 8295      		swap r24
 1045 04c6 807F      		andi r24,0xf0
 1046 04c8 8093 0000 		sts CC1000ControlM_gCurrentParameters+13,r24
 1048               	.LM129:
 1049 04cc 682F      		mov r22,r24
 1050 04ce 8DE0      		ldi r24,lo8(13)
 1051 04d0 0E94 0000 		call CC1000HPLWrite
 1053               	.LM130:
 1054 04d4 9927      		clr r25
 1055               	/* epilogue: frame size=0 */
 1056 04d6 0895      		ret
 1057               	/* epilogue end (size=1) */
 1058               	/* function CC1000ControlSelectLock size 10 (9) */
 1062               	.global	CC1000HPLRead
 1064               	CC1000HPLRead:
 400:cc1000.c      **** 
 401:cc1000.c      **** uint8_t CC1000HPLRead(uint8_t addr)
 402:cc1000.c      **** {
 1066               	.LM131:
 1067               	/* prologue: frame size=0 */
 1068 04d8 0F93      		push r16
 1069 04da 1F93      		push r17
 1070 04dc CF93      		push r28
 1071 04de DF93      		push r29
 1072               	/* prologue end (size=4) */
 403:cc1000.c      **** 	int cnt;
 404:cc1000.c      **** 	uint8_t din;
 405:cc1000.c      **** 	uint8_t data = 0;
 1074               	.LM132:
 1075 04e0 00E0      		ldi r16,lo8(0)
 406:cc1000.c      **** 	
 407:cc1000.c      **** 	addr <<= 1;
 1077               	.LM133:
 1078 04e2 182F      		mov r17,r24
 1079 04e4 110F      		lsl r17
 408:cc1000.c      **** 	OSH_CLR_CC_PALE_PIN();
 1081               	.LM134:
 1082 04e6 0E94 0000 		call OSH_CLR_CC_PALE_PIN
 1083 04ea C6E0      		ldi r28,lo8(6)
 1084 04ec D0E0      		ldi r29,hi8(6)
 1085               	.L53:
 409:cc1000.c      **** 	for (cnt = 0; cnt < 7; cnt++) 
 410:cc1000.c      ****     {
 411:cc1000.c      **** 		if (addr & 0x80) {
 1087               	.LM135:
 1088 04ee 17FF      		sbrs r17,7
 1089 04f0 03C0      		rjmp .L51
 412:cc1000.c      **** 			OSH_SET_CC_PDATA_PIN();
 1091               	.LM136:
 1092 04f2 0E94 0000 		call OSH_SET_CC_PDATA_PIN
 1093 04f6 02C0      		rjmp .L52
 1094               	.L51:
 413:cc1000.c      ****         }
 414:cc1000.c      **** 		else {
 415:cc1000.c      **** 			OSH_CLR_CC_PDATA_PIN();
 1096               	.LM137:
 1097 04f8 0E94 0000 		call OSH_CLR_CC_PDATA_PIN
 1098               	.L52:
 416:cc1000.c      ****         }
 417:cc1000.c      **** 		OSH_CLR_CC_PCLK_PIN();
 1100               	.LM138:
 1101 04fc 0E94 0000 		call OSH_CLR_CC_PCLK_PIN
 418:cc1000.c      **** 		OSH_SET_CC_PCLK_PIN();
 1103               	.LM139:
 1104 0500 0E94 0000 		call OSH_SET_CC_PCLK_PIN
 419:cc1000.c      **** 		addr <<= 1;
 1106               	.LM140:
 1107 0504 110F      		lsl r17

⌨️ 快捷键说明

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