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

📄 main.lst

📁 avr当中的一个简单的温度测试程序和学习avr中的一些笔记
💻 LST
📖 第 1 页 / 共 4 页
字号:
 815               	/* function DS18B20_SearchROM size 6 (5) */
 816               	.LFE27:
 818               	.global	DS18B20_SkipROM
 820               	DS18B20_SkipROM:
 821               	.LFB28:
 822               	.LM111:
 823               	/* prologue: frame size=0 */
 824               	/* prologue end (size=0) */
 825               	.LM112:
 826 02a8 0E94 0000 		call DS18B20_Init
 827               	.LM113:
 828 02ac 8CEC      		ldi r24,lo8(-52)
 829 02ae 0E94 0000 		call Write_DS18B20
 830               	/* epilogue: frame size=0 */
 831 02b2 0895      		ret
 832               	/* epilogue end (size=1) */
 833               	/* function DS18B20_SkipROM size 6 (5) */
 834               	.LFE28:
 836               	.global	DS18B20_MatchROM
 838               	DS18B20_MatchROM:
 839               	.LFB29:
 840               	.LM114:
 841               	/* prologue: frame size=0 */
 842 02b4 CF93      		push r28
 843 02b6 DF93      		push r29
 844               	/* prologue end (size=2) */
 845               	.LM115:
 846 02b8 0E94 0000 		call DS18B20_Init
 847               	.LM116:
 848 02bc 85E5      		ldi r24,lo8(85)
 849 02be 0E94 0000 		call Write_DS18B20
 850 02c2 C0E0      		ldi r28,lo8(ROM_Buff2)
 851 02c4 D0E0      		ldi r29,hi8(ROM_Buff2)
 852               	.L110:
 853               	.LM117:
 854 02c6 8991      		ld r24,Y+
 855 02c8 0E94 0000 		call Write_DS18B20
 856               	.LM118:
 857 02cc 80E0      		ldi r24,hi8(ROM_Buff2+8)
 858 02ce C030      		cpi r28,lo8(ROM_Buff2+8)
 859 02d0 D807      		cpc r29,r24
 860 02d2 01F4      		brne .L110
 861               	/* epilogue: frame size=0 */
 862 02d4 DF91      		pop r29
 863 02d6 CF91      		pop r28
 864 02d8 0895      		ret
 865               	/* epilogue end (size=3) */
 866               	/* function DS18B20_MatchROM size 19 (14) */
 867               	.LFE29:
 869               	.global	DS18B20_GetConvert1
 871               	DS18B20_GetConvert1:
 872               	.LFB21:
 873               	.LM119:
 874               	/* prologue: frame size=0 */
 875               	/* prologue end (size=0) */
 876               	.LM120:
 877 02da 0E94 0000 		call DS18B20_MatchROM
 878               	.LM121:
 879 02de 8EEB      		ldi r24,lo8(-66)
 880 02e0 0E94 0000 		call Write_DS18B20
 881               	.LM122:
 882 02e4 0E94 0000 		call Read_DS18B20
 883 02e8 8093 0000 		sts Temp_L,r24
 884               	.LM123:
 885 02ec 0E94 0000 		call Read_DS18B20
 886 02f0 8093 0000 		sts Temp_H,r24
 887               	/* epilogue: frame size=0 */
 888 02f4 0895      		ret
 889               	/* epilogue end (size=1) */
 890               	/* function DS18B20_GetConvert1 size 14 (13) */
 891               	.LFE21:
 893               	.global	DS18B20_StartConvert1
 895               	DS18B20_StartConvert1:
 896               	.LFB20:
 897               	.LM124:
 898               	/* prologue: frame size=0 */
 899 02f6 1F93      		push r17
 900               	/* prologue end (size=1) */
 901               	.LM125:
 902 02f8 0E94 0000 		call DS18B20_MatchROM
 903               	.LM126:
 904 02fc 84E4      		ldi r24,lo8(68)
 905 02fe 0E94 0000 		call Write_DS18B20
 906 0302 10E0      		ldi r17,lo8(0)
 907               	.LVL43:
 908               	.L118:
 909               	.LM127:
 910 0304 84E1      		ldi r24,lo8(20)
 911 0306 90E0      		ldi r25,hi8(20)
 912 0308 0E94 0000 		call Delayms
 913               	.LM128:
 914 030c 1F5F      		subi r17,lo8(-(1))
 915 030e 1233      		cpi r17,lo8(50)
 916 0310 01F4      		brne .L118
 917               	/* epilogue: frame size=0 */
 918 0312 1F91      		pop r17
 919 0314 0895      		ret
 920               	/* epilogue end (size=2) */
 921               	/* function DS18B20_StartConvert1 size 16 (13) */
 922               	.LFE20:
 924               	.global	DS18B20_AlarmROM
 926               	DS18B20_AlarmROM:
 927               	.LFB30:
 928               	.LM129:
 929               	/* prologue: frame size=0 */
 930               	/* prologue end (size=0) */
 931               	.LM130:
 932 0316 0E94 0000 		call DS18B20_Init
 933               	.LM131:
 934 031a 8CEE      		ldi r24,lo8(-20)
 935 031c 0E94 0000 		call Write_DS18B20
 936               	/* epilogue: frame size=0 */
 937 0320 0895      		ret
 938               	/* epilogue end (size=1) */
 939               	/* function DS18B20_AlarmROM size 6 (5) */
 940               	.LFE30:
 942               	.global	__vector_11
 944               	__vector_11:
 945               	.LFB11:
 946               	.LM132:
 947               	/* prologue: frame size=0 */
 948 0322 1F92      		push __zero_reg__
 949 0324 0F92      		push __tmp_reg__
 950 0326 0FB6      		in __tmp_reg__,__SREG__
 951 0328 0F92      		push __tmp_reg__
 952 032a 1124      		clr __zero_reg__
 953 032c 8F93      		push r24
 954               	/* prologue end (size=6) */
 955               	.LM133:
 956 032e 8CB1      		in r24,44-0x20
 957               	.LVL44:
 958               	.L126:
 959               	.LBB94:
 960               	.LBB95:
 961               	.LM134:
 962 0330 5D9B      		sbis 43-0x20,5
 963 0332 00C0      		rjmp .L126
 964               	.LM135:
 965 0334 8CB9      		out 44-0x20,r24
 966               	.LBE95:
 967               	.LBE94:
 968               	/* epilogue: frame size=0 */
 969 0336 8F91      		pop r24
 970 0338 0F90      		pop __tmp_reg__
 971 033a 0FBE      		out __SREG__,__tmp_reg__
 972 033c 0F90      		pop __tmp_reg__
 973 033e 1F90      		pop __zero_reg__
 974 0340 1895      		reti
 975               	/* epilogue end (size=6) */
 976               	/* function __vector_11 size 16 (4) */
 977               	.LFE11:
 979               		.data
 980               	.LC0:
 981 0000 4453 3138 		.string	"DS18B20 \316\302\266\310\262\342\301\277\312\265\321\351"
 981      4232 3020 
 981      CEC2 B6C8 
 981      B2E2 C1BF 
 981      CAB5 D1E9 
 982               	.LC1:
 983 0015 B5B1 C7B0 		.string	"\265\261\307\260\273\267\276\263\316\302\266\310\316\252\243\272"
 983      BBB7 BEB3 
 983      CEC2 B6C8 
 983      CEAA A3BA 
 983      00
 984               		.text
 985               	.global	main
 987               	main:
 988               	.LFB6:
 989               	.LM136:
 990               	/* prologue: frame size=0 */
 991 0342 AF92      		push r10
 992 0344 BF92      		push r11
 993 0346 CF92      		push r12
 994 0348 DF92      		push r13
 995 034a EF92      		push r14
 996 034c FF92      		push r15
 997 034e 0F93      		push r16
 998 0350 1F93      		push r17
 999 0352 CF93      		push r28
 1000 0354 DF93      		push r29
 1001               	/* prologue end (size=10) */
 1002               	.LM137:
 1003 0356 0E94 0000 		call Port_Init
 1004               	.LM138:
 1005 035a 0E94 0000 		call Usart_Init
 1006               	.LBB140:
 1007               	.LBB141:
 1008               	.LM139:
 1009 035e D298      		cbi 58-0x20,2
 1010               	.LM140:
 1011 0360 DA98      		cbi 59-0x20,2
 1012               	.LBE141:
 1013               	.LBE140:
 1014               	.LM141:
 1015 0362 1092 0000 		sts Temp_H,__zero_reg__
 1016               	.LM142:
 1017 0366 1092 0000 		sts Temp_L,__zero_reg__
 1018               	.LM143:
 1019 036a 1092 0000 		sts OK_Flag,__zero_reg__
 1020               	.LM144:
 1021 036e 80E0      		ldi r24,lo8(.LC0)
 1022 0370 90E0      		ldi r25,hi8(.LC0)
 1023 0372 0E94 0000 		call Usart_PutString
 1024               	.L132:
 1025               	.LBB142:
 1026               	.LBB143:
 1027               	.LM145:
 1028 0376 5D9B      		sbis 43-0x20,5
 1029 0378 00C0      		rjmp .L132
 1030               	.LM146:
 1031 037a 8DE0      		ldi r24,lo8(13)
 1032 037c 8CB9      		out 44-0x20,r24
 1033               	.L134:
 1034               	.LBE143:
 1035               	.LBE142:
 1036               	.LBB144:
 1037               	.LBB145:
 1038               	.LM147:
 1039 037e 5D9B      		sbis 43-0x20,5
 1040 0380 00C0      		rjmp .L134
 1041               	.LM148:
 1042 0382 8AE0      		ldi r24,lo8(10)
 1043 0384 8CB9      		out 44-0x20,r24
 1044               	.LBE145:
 1045               	.LBE144:
 1046               	.LM149:
 1047               	/* #APP */
 1048 0386 7894      		sei
 1049               	.LVL45:
 1050               	/* #NOAPP */
 1051               	.L136:
 1052               	.LM150:
 1053 0388 0E94 0000 		call DS18B20_Init
 1054               	.LM151:
 1055 038c 8CEC      		ldi r24,lo8(-52)
 1056 038e 0E94 0000 		call Write_DS18B20
 1057               	.LM152:
 1058 0392 84E4      		ldi r24,lo8(68)
 1059 0394 0E94 0000 		call Write_DS18B20
 1060 0398 10E0      		ldi r17,lo8(0)
 1061               	.LVL46:
 1062               	.L137:
 1063               	.LM153:
 1064 039a 84E1      		ldi r24,lo8(20)
 1065 039c 90E0      		ldi r25,hi8(20)
 1066 039e 0E94 0000 		call Delayms
 1067               	.LM154:
 1068 03a2 1F5F      		subi r17,lo8(-(1))
 1069 03a4 1233      		cpi r17,lo8(50)
 1070 03a6 01F4      		brne .L137
 1071               	.LM155:
 1072 03a8 0E94 0000 		call DS18B20_Init
 1073               	.LM156:
 1074 03ac 85E5      		ldi r24,lo8(85)
 1075 03ae 0E94 0000 		call Write_DS18B20
 1076 03b2 C0E0      		ldi r28,lo8(ROM_Buff1)
 1077 03b4 D0E0      		ldi r29,hi8(ROM_Buff1)
 1078               	.LVL47:
 1079               	.L139:
 1080               	.LM157:
 1081 03b6 8991      		ld r24,Y+
 1082 03b8 0E94 0000 		call Write_DS18B20
 1083               	.LM158:
 1084 03bc 80E0      		ldi r24,hi8(ROM_Buff1+8)
 1085 03be C030      		cpi r28,lo8(ROM_Buff1+8)
 1086 03c0 D807      		cpc r29,r24
 1087 03c2 01F4      		brne .L139
 1088               	.LM159:
 1089 03c4 8EEB      		ldi r24,lo8(-66)
 1090 03c6 0E94 0000 		call Write_DS18B20
 1091               	.LM160:
 1092 03ca 0E94 0000 		call Read_DS18B20
 1093 03ce 8093 0000 		sts Temp_L,r24
 1094               	.LM161:
 1095 03d2 0E94 0000 		call Read_DS18B20
 1096 03d6 8093 0000 		sts Temp_H,r24
 1097               	.LM162:
 1098 03da 83FF      		sbrs r24,3
 1099 03dc 00C0      		rjmp .L141
 1100               	.LM163:
 1101 03de 982F      		mov r25,r24
 1102 03e0 9095      		com r25
 1103 03e2 9093 0000 		sts Temp_H,r25
 1104               	.LM164:
 1105 03e6 8FB7      		in r24,95-0x20
 1106 03e8 8E6F      		ori r24,lo8(-2)
 1107 03ea 8FBF      		out 95-0x20,r24
 1108               	.LM165:
 1109 03ec 8091 0000 		lds r24,Temp_L
 1110 03f0 8195      		neg r24
 1111 03f2 8093 0000 		sts Temp_L,r24
 1112               	.LM166:
 1113 03f6 0FB6      		in __tmp_reg__,95-0x20
 1114 03f8 00FE      		sbrs __tmp_reg__,0
 1115 03fa 00C0      		rjmp .L141
 1116               	.LM167:
 1117 03fc 9F5F      		subi r25,lo8(-(1))
 1118 03fe 9093 0000 		sts Temp_H,r25
 1119               	.L141:
 1120               	.LM168:
 1121 0402 2091 0000 		lds r18,Temp_L
 1122 0406 8091 0000 		lds r24,Temp_H
 1123 040a C82F      		mov r28,r24
 1124 040c DD27      		clr r29
 1125               	.LVL48:
 1126 040e 84E0      		ldi r24,4
 1127 0410 CC0F      	1:	lsl r28
 1128 0412 DD1F      		rol r29
 1129 0414 8A95      		dec r24
 1130 0416 01F4      		brne 1b
 1131 0418 C077      		andi r28,lo8(112)
 1132 041a D070      		andi r29,hi8(112)
 1133 041c 822F      		mov r24,r18
 1134 041e 8295      		swap r24
 1135 0420 8F70      		andi r24,0x0f
 1136 0422 9927      		clr r25
 1137 0424 C82B      		or r28,r24
 1138 0426 D92B      		or r29,r25
 1139               	.LM169:
 1140 0428 CE01      		movw r24,r28
 1141 042a 68EE      		ldi r22,lo8(1000)
 1142 042c 73E0      		ldi r23,hi8(1000)
 1143 042e 0E94 0000 		call __udivmodhi4
 1144 0432 6B01      		movw r12,r22
 1145               	.LM170:
 1146 0434 CE01      		movw r24,r28
 1147 0436 68EE      		ldi r22,lo8(1000)
 1148 0438 73E0      		ldi r23,hi8(1000)
 1149 043a 0E94 0000 		call __udivmodhi4
 1150 043e 64E6      		ldi r22,lo8(100)
 1151 0440 70E0      		ldi r23,hi8(100)
 1152 0442 0E94 0000 		call __udivmodhi4
 1153 0446 8B01      		movw r16,r22
 1154               	.LM171:
 1155 0448 CE01      		movw r24,r28
 1156 044a 64E6      		ldi r22,lo8(100)
 1157 044c 70E0      		ldi r23,hi8(100)
 1158 044e 0E94 0000 		call __udivmodhi4
 1159 0452 6AE0      		ldi r22,lo8(10)
 1160 0454 70E0      		ldi r23,hi8(10)
 1161 0456 0E94 0000 		call __udivmodhi4
 1162 045a 7B01      		movw r14,r22
 1163               	.LM172:
 1164 045c 3327      		clr r19
 1165 045e 2F70      		andi r18,lo8(15)
 1166 0460 3070      		andi r19,hi8(15)
 1167               	.LM173:
 1168 0462 81E7      		ldi r24,lo8(625)
 1169 0464 92E0      		ldi r25,hi8(625)
 1170 0466 289F      		mul r18,r24
 1171 0468 5001      		movw r10,r0
 1172 046a 299F      		mul r18,r25
 1173 046c B00C      		add r11,r0
 1174 046e 389F      		mul r19,r24
 1175 0470 B00C      		add r11,r0
 1176 0472 1124      		clr r1
 1177               	.LM174:
 1178 0474 80E0      		ldi r24,lo8(.LC1)
 1179 0476 90E0      		ldi r25,hi8(.LC1)
 1180 0478 0E94 0000 		call Usart_PutString
 1181               	.LM175:
 1182 047c C114      		cp r12,__zero_reg__
 1183 047e D104      		cpc r13,__zero_reg__
 1184 0480 01F4      		brne .L144
 1185               	.L189:
 1186               	.LBB146:
 1187               	.LBB147:
 1188               	.LM176:
 1189 0482 5D9B      		sbis 43-0x20,5
 1190 0484 00C0      		rjmp .L189
 1191               	.LM177:
 1192 0486 80E2      		ldi r24,lo8(32)
 1193 0488 8CB9      		out 44-0x20,r24
 1194               	.LBE147:
 1195               	.LBE146:
 1196               	.LM178:
 1197 048a 0115      		cp r16,__zero_reg__
 1198 048c 1105      		cpc r17,__zero_reg__
 1199 048e 01F4      		brne .L147
 1200               	.L190:
 1201               	.LBB148:
 1202               	.LBB149:
 1203               	.LM179:
 1204 0490 5D9B      		sbis 43-0x20,5
 1205 0492 00C0      		rjmp .L190
 1206               	.LM180:

⌨️ 快捷键说明

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