یک سنسور دما و چندتا ولوم به adc وصل کردم و برنامه رو نوشتم و برنامه درست کار میکرد و هیچ مشکلی نداشت اما بعضی قطعه هاشو لحیم کاریشو مرتب کردم کلا پورت adc از کار افتاد بقیه مدارم درست داره کار میکنه lcd و قسمت های دیگه فقط مشکل ام اینه پورت adc همش عدد 1023 رو نشون میده با اینکه رو پایه های adc ولتاژ ها حدود یک ولت هست.4 تا adc همزمان هر4 تاش از کار افتاده میکرو رو عوض کردم هیچ فرقی نکرد
اطلاعیه
Collapse
No announcement yet.
adc مدار
Collapse
X
-
پاسخ : adc مدار
نوشته اصلی توسط masror_dیک خازن 100 نانو با تغذیه موازی کردم تغذیه امم از سویچینگه
میتونه مشکل از این باشه؟
1000 میکرو بزار!
========
درضمن شما گفتی که بعد از مرتب کردن لحیم ها اینجور شده!
پس با یه مسواک که ازش استفاده ای ندارید بین لحیم کاری ها بمالید .
اگه بازم درست نشد از تینر فوری هم استفاده کنید.1 در دنیا 100 در آخرت(درس و مشق فعالیتمو تو انجمن کم کرده)
من آنچه شرط بلاغست با تو میآگویم. تو خواه از سخنم پند گیر و خواه ملال. سعدی
!Electronic On! Programming On
هوشمندانه سوال بپرسیم!
http://ir02x6.persiangig.com/logo/eca/tanks_01.png
دیدگاه
-
پاسخ : adc مدار
سلام
خیالت رو راحت کنم
نویز فقط کاهش دقت داری. مثلا تعداد پرش عدد ADC میکرو ات رو زیاد می کنه
مشکل شما از نویز نیست و یه مشکل ریشه ای هست
برنامه و شماتیک و PCB ات رو بذار.برای کاری در حوزه اربعین نیاز به نیروی داوطلب هستیم.
http://hosseinwalkingday.com
دیدگاه
-
پاسخ : adc مدار
نوشته اصلی توسط مرتضی م.سلام
خیالت رو راحت کنم
نویز فقط کاهش دقت داری. مثلا تعداد پرش عدد ADC میکرو ات رو زیاد می کنه
مشکل شما از نویز نیست و یه مشکل ریشه ای هست
برنامه و شماتیک و PCB ات رو بذار.
پس نگو شماتیک و pcb بزار..........
اضافه شده در تاریخ :
نوشته اصلی توسط masror_dچرا 1000 میکرو؟1 در دنیا 100 در آخرت(درس و مشق فعالیتمو تو انجمن کم کرده)
من آنچه شرط بلاغست با تو میآگویم. تو خواه از سخنم پند گیر و خواه ملال. سعدی
!Electronic On! Programming On
هوشمندانه سوال بپرسیم!
http://ir02x6.persiangig.com/logo/eca/tanks_01.png
دیدگاه
-
پاسخ : adc مدار
تقریبا همه مدار و به حالت قبل برگردوندم
روی پایه های adc ولتاژ مختلف رو دارم اما پایه ای که به سنسور دما وصله عدد 511 و ولوم هام عدد 1023 رو نشون میده و اصلا براش مهم نیست سنسور باشه یا نه
میکروی دیگه رو امتحان میکنم همه رو صفر نشون میده یعنی عددی که سنسور دما داره میده و همچنین ولوم هام صفره!!!!! یکی میکرو همه رو 1023 و سنسور دما رو 511 و میکروی دیگه همه رو 0!!!!!
دیدگاه
-
پاسخ : adc مدار
کد:/***************************************************** This program was produced by the CodeWizardAVR V2.05.0 Professional Automatic Program Generator © Copyright 1998-2010 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com Project : Version : Date : 3/2/2015 Author : Company : Comments: Chip type : ATmega32 Program type : Application AVR Core Clock frequency: 8.000000 MHz Memory model : Small External RAM size : 0 Data Stack size : 512 *****************************************************/ #include <mega32.h> #include <stdio.h> #include <delay.h> // Alphanumeric LCD Module functions #include <alcd.h> #define ADC_VREF_TYPE 0x40 // Read the AD conversion result unsigned int read_adc(unsigned char adc_input) { ADMUX=adc_input | (ADC_VREF_TYPE & 0xff); // Delay needed for the stabilization of the ADC input voltage delay_us(10); // Start the AD conversion ADCSRA|=0x40; // Wait for the AD conversion to complete while ((ADCSRA & 0x10)==0); ADCSRA|=0x10; return ADCW; } int a; char lcd[9]; // Declare your global variables here void main(void) { // Declare your local variables here // Input/Output Ports initialization // Port A initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTA=0x00; DDRA=0x00; // Port B initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTB=0x00; DDRB=0x00; // Port C initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00; DDRC=0x00; // Port D initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTD=0x00; DDRD=0x00; // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=0xFF // OC0 output: Disconnected TCCR0=0x00; TCNT0=0x00; OCR0=0x00; // Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer1 Stopped // Mode: Normal top=0xFFFF // OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off // Input Capture on Falling Edge // Timer1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; // Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer2 Stopped // Mode: Normal top=0xFF // OC2 output: Disconnected ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00; // External Interrupt(s) initialization // INT0: Off // INT1: Off // INT2: Off MCUCR=0x00; MCUCSR=0x00; // Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00; // USART initialization // USART disabled UCSRB=0x00; // Analog Comparator initialization // Analog Comparator: Off // Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80; SFIOR=0x00; // ADC initialization // ADC Clock frequency: 1000.000 kHz // ADC Voltage Reference: AREF pin ADMUX=ADC_VREF_TYPE & 0xff; ADCSRA=0x83; // SPI initialization // SPI disabled SPCR=0x00; // TWI initialization // TWI disabled TWCR=0x00; // Alphanumeric LCD initialization // Connections specified in the // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu: // RS - PORTB Bit 0 // RD - PORTB Bit 2 // EN - PORTB Bit 3 // D4 - PORTB Bit 4 // D5 - PORTB Bit 5 // D6 - PORTB Bit 6 // D7 - PORTB Bit 7 // Characters/line: 8 lcd_init(8); while (1) { a=read_adc(0); lcd_gotoxy(0,0); sprintf(lcd,"%u",a); lcd_puts(lcd); delay_ms(100); } }
دیدگاه
دیدگاه