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

📄 adc.lst

📁 avr c 模拟数据采集的程序设计方法 本程序为模数转换的例程
💻 LST
📖 第 1 页 / 共 3 页
字号:
  98:f:/SoftwareXP/WinAVR/bin/../lib/gcc/avr/3.4.3/../../../../avr/include/avr/delay.h **** 
  99:f:/SoftwareXP/WinAVR/bin/../lib/gcc/avr/3.4.3/../../../../avr/include/avr/delay.h ****     Delay loop using a 16-bit counter \c __count, so up to 65536
 100:f:/SoftwareXP/WinAVR/bin/../lib/gcc/avr/3.4.3/../../../../avr/include/avr/delay.h ****     iterations are possible.  (The value 65536 would have to be
 101:f:/SoftwareXP/WinAVR/bin/../lib/gcc/avr/3.4.3/../../../../avr/include/avr/delay.h ****     passed as 0.)  The loop executes four CPU cycles per iteration,
 102:f:/SoftwareXP/WinAVR/bin/../lib/gcc/avr/3.4.3/../../../../avr/include/avr/delay.h ****     not including the overhead the compiler requires to setup the
 103:f:/SoftwareXP/WinAVR/bin/../lib/gcc/avr/3.4.3/../../../../avr/include/avr/delay.h ****     counter register pair.
 104:f:/SoftwareXP/WinAVR/bin/../lib/gcc/avr/3.4.3/../../../../avr/include/avr/delay.h **** 
 105:f:/SoftwareXP/WinAVR/bin/../lib/gcc/avr/3.4.3/../../../../avr/include/avr/delay.h ****     Thus, at a CPU speed of 1 MHz, delays of up to about 262.1
 106:f:/SoftwareXP/WinAVR/bin/../lib/gcc/avr/3.4.3/../../../../avr/include/avr/delay.h ****     milliseconds can be achieved.
 107:f:/SoftwareXP/WinAVR/bin/../lib/gcc/avr/3.4.3/../../../../avr/include/avr/delay.h ****  */
 108:f:/SoftwareXP/WinAVR/bin/../lib/gcc/avr/3.4.3/../../../../avr/include/avr/delay.h **** static __inline__ void
 109:f:/SoftwareXP/WinAVR/bin/../lib/gcc/avr/3.4.3/../../../../avr/include/avr/delay.h **** _delay_loop_2(uint16_t __count)
 110:f:/SoftwareXP/WinAVR/bin/../lib/gcc/avr/3.4.3/../../../../avr/include/avr/delay.h **** {
 279               	.LM25:
 280 00fa 88EE      		ldi r24,lo8(1000)
 281 00fc 93E0      		ldi r25,hi8(1000)
 282               	.LBB3:
 111:f:/SoftwareXP/WinAVR/bin/../lib/gcc/avr/3.4.3/../../../../avr/include/avr/delay.h **** 	__asm__ volatile (
 284               	.LM26:
 285               	/* #APP */
 286 00fe 0197      		1: sbiw r24,1
 287 0100 F1F7      		brne 1b
 288               	/* #NOAPP */
 289               	.LBE3:
 290               	.LBE2:
 292               	.Ltext2:
 114:Adc.c         **** 	while(1)
 115:Adc.c         **** 	{
 116:Adc.c         **** 		for(i=0;i<100;i++)
 294               	.LM27:
 295 0102 2150      		subi r18,lo8(-(-1))
 296 0104 27FF      		sbrs r18,7
 297 0106 F9CF      		rjmp .L16
 117:Adc.c         **** 			_delay_loop_2(4*250*1);//10ms
 118:Adc.c         **** 		cli();		
 299               	.LM28:
 300               	/* #APP */
 301 0108 F894      		cli
 119:Adc.c         **** 		
 120:Adc.c         **** 		
 121:Adc.c         **** 		//TmpVal = (float) ( (float)(Vref/1023) * (ADC&0X3ff) )/1000.00;
 122:Adc.c         **** 		TmpVal = (float)/*CInt(*/  (float)(((float)((Vref/1023)))*( ADC &0X3FF))/1000.00/*)*/;
 303               	.LM29:
 304               	/* #NOAPP */
 305 010a 84B1      		in r24,36-0x20
 306 010c 95B1      		in r25,(36)+1-0x20
 307 010e 9370      		andi r25,hi8(1023)
 308 0110 AA27      		clr r26
 309 0112 97FD      		sbrc r25,7
 310 0114 A095      		com r26
 311 0116 BA2F      		mov r27,r26
 312 0118 BC01      		movw r22,r24
 313 011a CD01      		movw r24,r26
 314 011c 00D0      		rcall __floatsisf
 315 011e DC01      		movw r26,r24
 316 0120 CB01      		movw r24,r22
 317 0122 20E0      		ldi r18,lo8(0x41c80000)
 318 0124 30E0      		ldi r19,hi8(0x41c80000)
 319 0126 48EC      		ldi r20,hlo8(0x41c80000)
 320 0128 51E4      		ldi r21,hhi8(0x41c80000)
 321 012a BC01      		movw r22,r24
 322 012c CD01      		movw r24,r26
 323 012e 00D0      		rcall __mulsf3
 324 0130 DC01      		movw r26,r24
 325 0132 CB01      		movw r24,r22
 326 0134 20E0      		ldi r18,lo8(0x447a0000)
 327 0136 30E0      		ldi r19,hi8(0x447a0000)
 328 0138 4AE7      		ldi r20,hlo8(0x447a0000)
 329 013a 54E4      		ldi r21,hhi8(0x447a0000)
 330 013c BC01      		movw r22,r24
 331 013e CD01      		movw r24,r26
 332 0140 00D0      		rcall __divsf3
 333 0142 DC01      		movw r26,r24
 334 0144 CB01      		movw r24,r22
 123:Adc.c         **** 		TmpPP = fabs(TmpVal * 100);
 336               	.LM30:
 337 0146 20E0      		ldi r18,lo8(0x42c80000)
 338 0148 30E0      		ldi r19,hi8(0x42c80000)
 339 014a 48EC      		ldi r20,hlo8(0x42c80000)
 340 014c 52E4      		ldi r21,hhi8(0x42c80000)
 341 014e BC01      		movw r22,r24
 342 0150 CD01      		movw r24,r26
 343 0152 00D0      		rcall __mulsf3
 344 0154 DC01      		movw r26,r24
 345 0156 CB01      		movw r24,r22
 346 0158 BF77      		andi r27,0x7f
 347 015a BC01      		movw r22,r24
 348 015c CD01      		movw r24,r26
 349 015e 00D0      		rcall __fixunssfsi
 350 0160 8B01      		movw r16,r22
 351 0162 9C01      		movw r18,r24
 124:Adc.c         **** 	
 125:Adc.c         **** 		//TmpPP = TmpVal * 100;
 126:Adc.c         **** 		
 127:Adc.c         **** 		//TmpPP = 0xffff-TmpPP;
 128:Adc.c         **** 		
 129:Adc.c         **** 
 130:Adc.c         **** 		//intf("%X  %x\n",(int)(TmpVal * 100),TmpPP);		
 131:Adc.c         **** 		
 132:Adc.c         **** 		TmpStr[0] =TmpPP/1000 + 0x30;
 353               	.LM31:
 354 0164 CB01      		movw r24,r22
 355 0166 68EE      		ldi r22,lo8(1000)
 356 0168 73E0      		ldi r23,hi8(1000)
 357 016a 00D0      		rcall __udivmodhi4
 358 016c CB01      		movw r24,r22
 359 016e 805D      		subi r24,lo8(-(48))
 360 0170 8093 0000 		sts .LC0,r24
 133:Adc.c         **** 		TmpPP =TmpPP % 1000;	
 362               	.LM32:
 363 0174 C801      		movw r24,r16
 364 0176 68EE      		ldi r22,lo8(1000)
 365 0178 73E0      		ldi r23,hi8(1000)
 366 017a 00D0      		rcall __udivmodhi4
 367 017c 9C01      		movw r18,r24
 134:Adc.c         **** 
 135:Adc.c         **** 		TmpStr[2] = TmpPP/100 + 0x30;
 369               	.LM33:
 370 017e 64E6      		ldi r22,lo8(100)
 371 0180 70E0      		ldi r23,hi8(100)
 372 0182 00D0      		rcall __udivmodhi4
 373 0184 CB01      		movw r24,r22
 374 0186 805D      		subi r24,lo8(-(48))
 375 0188 8A83      		std Y+2,r24
 136:Adc.c         **** 		TmpPP = TmpPP % 100;
 377               	.LM34:
 378 018a C901      		movw r24,r18
 379 018c 64E6      		ldi r22,lo8(100)
 380 018e 70E0      		ldi r23,hi8(100)
 381 0190 00D0      		rcall __udivmodhi4
 382 0192 9C01      		movw r18,r24
 137:Adc.c         **** 		
 138:Adc.c         **** 		TmpStr[3] =TmpPP/10 + 0x30;
 384               	.LM35:
 385 0194 6AE0      		ldi r22,lo8(10)
 386 0196 70E0      		ldi r23,hi8(10)
 387 0198 00D0      		rcall __udivmodhi4
 388 019a CB01      		movw r24,r22
 389 019c 805D      		subi r24,lo8(-(48))
 390 019e 8B83      		std Y+3,r24
 139:Adc.c         **** 		TmpPP= TmpPP% 10;
 392               	.LM36:
 393 01a0 C901      		movw r24,r18
 394 01a2 6AE0      		ldi r22,lo8(10)
 395 01a4 70E0      		ldi r23,hi8(10)
 396 01a6 00D0      		rcall __udivmodhi4
 140:Adc.c         **** 		TmpStr[4] =TmpPP + 0x30;		
 398               	.LM37:
 399 01a8 805D      		subi r24,lo8(-(48))
 400 01aa 8C83      		std Y+4,r24
 141:Adc.c         **** 		Uart_PutStr(TmpStr);
 402               	.LM38:
 403 01ac 80E0      		ldi r24,lo8(.LC0)
 404 01ae 90E0      		ldi r25,hi8(.LC0)
 405 01b0 00D0      		rcall Uart_PutStr
 142:Adc.c         **** 		//printf("%d,%s\n",g_nAdValue,TmpStr );
 143:Adc.c         **** 
 144:Adc.c         **** 		sei();
 407               	.LM39:
 408               	/* #APP */
 409 01b2 7894      		sei
 410               	/* #NOAPP */
 411 01b4 A1CF      		rjmp .L10
 412               	/* epilogue: frame size=0 */
 413               	/* epilogue: noreturn */
 414               	/* epilogue end (size=0) */
 415               	/* function main size 123 (119) */
 424               	.Lscope2:
 426               		.text
 428               	Letext:
 429               	/* File "Adc.c": code  225 = 0x00e1 ( 186), prologues  21, epilogues  18 */
DEFINED SYMBOLS
                            *ABS*:00000000 Adc.c
                            *ABS*:0000003f __SREG__
                            *ABS*:0000003e __SP_H__
                            *ABS*:0000003d __SP_L__
                            *ABS*:00000000 __tmp_reg__
                            *ABS*:00000001 __zero_reg__
                             .bss:00000000 g_nAdValue
D:\DOCUME~1\AI-ROBOT\LOCALS~1\Temp/ccqwaaaa.s:66     .text:00000000 __vector_14
D:\DOCUME~1\AI-ROBOT\LOCALS~1\Temp/ccqwaaaa.s:113    .text:0000003e CInt
D:\DOCUME~1\AI-ROBOT\LOCALS~1\Temp/ccqwaaaa.s:225    .text:000000ca main
D:\DOCUME~1\AI-ROBOT\LOCALS~1\Temp/ccqwaaaa.s:428    .text:000001b6 Letext

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__eqsf2
__mulsf3
__fixsfsi
__divmodhi4
__gtsf2
__stack
Uart_Init
__floatsisf
__divsf3
__fixunssfsi
__udivmodhi4
Uart_PutStr

⌨️ 快捷键说明

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