اطلاعیه

Collapse
No announcement yet.

مشکل دماسنج

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    مشکل دماسنج

    سلام. من هم مثل خیلیهای دیگه از پروژه ساخت دماسنج LM35 با ATMega8 و سون سگمنت شروع کردم اما مشکل دارم، پروژه رو تو پروتیوس امتحان کردم و درست بود اما در عمل پس از سرهم کردن روی بردبورد مشکل دارم و مشکلمم اینه که روی ولتاژ 5V عدد 88 نشون داده میشه و با پایین تر اوردن ولتاژ هم عدد پایینتر میاد، فکر کنم مشکل از AREF و AVCC باشه. این هم فایل پروتیوس که از روش ساختم و فایل C که با AVR Studio کامپایل شده:
    http://www.mediafire.com/?qdnh1ey3xiuu690
    http://www.mediafire.com/?ikgka5riz5v20nf
    (البته میدونم تو فایل پروتیوس جای سگمنت هارو اشتباه گذاشتم. منظورم یکان دهگانه، مهم نیست.)
    فیوزهام هم فکر نکنم تاثیری داشته باشه اما پیشفرض اتمل هست با فرکانس 8مگاهرتز.
    عاشق الکترونیک

    #2
    پاسخ : مشکل دماسنج

    به پایه AREF یه پتانسیومتر وصل کن

    دیدگاه


      #3
      پاسخ : مشکل دماسنج

      :nerd:

      آموزش کامل نرم افزاری و سخت افزاری
      تصویری و 100 درصد عملی
      به لینک زیر بروید!
      http://www.eca.ir/forum2/index.php?topic=80472.msg489565#msg489565
      آنچه که باعث موفقیت انسان ها می شود سخت کوشی است و نه نخبه بودن! Porsche 911 Turbo S 181.000 $ USD
      جناب سعدی فرموده بودند: "بر احوال ان مرد باید گریست _ که دخلش بود نوزده، خرجش بیست!"
      که اگه الان بود باید میگفت: "بود حال و احوال آن مرد زار _ که دخلش ریال است ، خرجش دلار :|"
      http://www.eca.ir/forum2/index.php?topic=80472.msg489565#msg489565
      http://www.eca.ir/forum2/index.php?topic=82242.msg501926#msg501926

      دیدگاه


        #4
        پاسخ : مشکل دماسنج

        ممنون، آره انگار مقدار رجیستری رو درست میگیرم، ولی توی تقسیم و ایناش مشکل دارم. ولی پتانسیومتر هم زدم کار نکرد. حالا باید ببینم این فرمولی که شما تو اون لینک دادید رو استفاده کنم درست میشه یا نه. ممنون.
        عاشق الکترونیک

        دیدگاه


          #5
          پاسخ : مشکل دماسنج

          دوباره امتحان کردم این دفعه با aref داخلی 2.56 ولت. برای همین مقدار رجیستر رو تقسیم بر 4 کردم. اما این دفعه هم نشد. فرقش با دفعه قبل این بود که با ولتاژ هم مقدارش روی 0 میمونه. به
          عاشق الکترونیک

          دیدگاه


            #6
            پاسخ : مشکل دماسنج

            نوشته اصلی توسط mmahdim
            دوباره امتحان کردم این دفعه با aref داخلی 2.56 ولت. برای همین مقدار رجیستر رو تقسیم بر 4 کردم. اما این دفعه هم نشد. فرقش با دفعه قبل این بود که با ولتاژ هم مقدارش روی 0 میمونه. به
            هر 2 تا رو بزن به 5. بعد ببین تو دمای 25 درجه اتاق چن نشون میده. اونو تقسیم بر یه عددی کن میشه دمات.بعد تو برنامه اون تقسیمو اعمال کن
            hi miami

            دیدگاه


              #7
              پاسخ : مشکل دماسنج

              وقتی شما با سون سگمت مدار میبندی اگر کاتد مشترک باشه جریانشو میخواد ار میکرو بگیره که این نمیزاره میکرو عملیاتی انجام بده پس بهترین کار اینه که از گیت های بافر استفاده کنی یا مدارو با سون سگمنت اند مشترک طراحی کنی :job:

              دیدگاه


                #8
                پاسخ : مشکل دماسنج

                خب من کدوم رو امتحان کنم؟ راه حل sinaa2251 به نظر بیشتر منطقی میاد اما خیلی سخته الان پین خروجی با مولتی متر گرفتم دیدم حدود 1 ولته! مگه دما 100 درجست؟! oo: از مدار خارجش کردم دوباره امتحان کردم دیدم درسته، مثلا همین 283 یعنی 28.3 میلی ولت نشون میده. در ضمن این دفعه با 7805 زدم دیدم با این روشن نمیشه اما وقتی با lm317 میزنمش و تنظیم می کنم روی 4 ولت هم کار می کنه! :O فکر کنم باید همین راه حل شما رو برم. ممنون. از چه جور بافری استفاده کنم؟ با چنتا ترانزیستور میشه، نه؟ ممنون.
                =======================
                ویرایش: الان یادم افتاد یه برنامه ساده نوشتم از 1 تا 100 بره، کار کرد، پس احتمالا واسه این نمیتونه باشه. چون محاسباتش رو درست انجام داد.
                عاشق الکترونیک

                دیدگاه


                  #9
                  پاسخ : مشکل دماسنج

                  احتمالا شما با بسکام کار میکنی :agree: فیوز بیت فابریک اتمل 1مگ هست
                  برای جواب گیری صحیح از ترانزیستور c945 استفاده کن

                  ولتاز رفرنستو بزار 2.56 داخلی

                  از این فیلترم استفاده کن


                  ایشالا که جواب میگیری بی نقص :read:
                  .The best question deserves a better answer
                  =-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=
                  «پناه»می برم «به خدا»
                  از عـیبی که ، «امروز» در خود می بینم، و «دیروز» «دیگران را» به خاطر، «هـمان عیـب» ملامت کرده ام.
                  محتاط باشیم، در «سرزنش» و «قضاوت کردن دیگران». وقتی نه از «دیروز او» خبر داریم و نه از "فردای خودمان" .

                  دیدگاه


                    #10
                    پاسخ : مشکل دماسنج

                    نه، اتمل استودیو، بازم هم نه، 8 مگ :دی
                    ولتاژ رفرنس هم همینه الان. یه خازن 104 هم به پایه رفرنس وصل کردم به گراند. یه ورودی میگیرم از یه 7805 که فقط واسه سنسور دما استفاده می کنم، چون روی برد بورد کار می کنم مقاومتش زیاده واسه همین دوتا رگولاتور رو موازی کردم. اون یکی هم 317 هست.روی 5 ولت تنظیمش می کنم میزنمش تو مدار حدود 4 ولت نشون میده ولی بازم کار می کنه. به هر دو رگولاتور البته فشار میاد ولی بیخیال مشکل اینجاست که اصلا پایه ی ADC0 یا همون 23 خودش حدود 3 ولت اختلاف پتانسیل داره! :O باید چیکارش کنم؟ همین باعث میشه بخوره به سنسور فقط 00 نشون میده که احتمالا منظورش اروره. به گراند هم میخوره همین طور. میکرو کنترلر هم یکم داغ شده، احتمالا واسه همینه که بخش ADC ش بهم ریخته و به جاش به عنوان Output کار می کنه. نظری ندارید؟ تنها راهش همین درایو کردن سون سگمنت به صورت غیر مستقیمه؟
                    عاشق الکترونیک

                    دیدگاه


                      #11
                      پاسخ : مشکل دماسنج

                      نوشته اصلی توسط mmahdim
                      نه، اتمل استودیو، بازم هم نه، 8 مگ :دی
                      ولتاژ رفرنس هم همینه الان. یه خازن 104 هم به پایه رفرنس وصل کردم به گراند. یه ورودی میگیرم از یه 7805 که فقط واسه سنسور دما استفاده می کنم، چون روی برد بورد کار می کنم مقاومتش زیاده واسه همین دوتا رگولاتور رو موازی کردم. اون یکی هم 317 هست.روی 5 ولت تنظیمش می کنم میزنمش تو مدار حدود 4 ولت نشون میده ولی بازم کار می کنه. به هر دو رگولاتور البته فشار میاد ولی بیخیال مشکل اینجاست که اصلا پایه ی ADC0 یا همون 23 خودش حدود 3 ولت اختلاف پتانسیل داره! :O باید چیکارش کنم؟ همین باعث میشه بخوره به سنسور فقط 00 نشون میده که احتمالا منظورش اروره. به گراند هم میخوره همین طور. میکرو کنترلر هم یکم داغ شده، احتمالا واسه همینه که بخش ADC ش بهم ریخته و به جاش به عنوان Output کار می کنه. نظری ندارید؟ تنها راهش همین درایو کردن سون سگمنت به صورت غیر مستقیمه؟
                      kole atmelo bordi zire soal ba pishfarze 8 mG
                      .The best question deserves a better answer
                      =-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=
                      «پناه»می برم «به خدا»
                      از عـیبی که ، «امروز» در خود می بینم، و «دیروز» «دیگران را» به خاطر، «هـمان عیـب» ملامت کرده ام.
                      محتاط باشیم، در «سرزنش» و «قضاوت کردن دیگران». وقتی نه از «دیروز او» خبر داریم و نه از "فردای خودمان" .

                      دیدگاه


                        #12
                        پاسخ : مشکل دماسنج

                        نه منظورم اینه که من از 8 مگ استفاده می کنم، دیگه پیشفرض نیست.
                        عاشق الکترونیک

                        دیدگاه


                          #13
                          پاسخ : مشکل دماسنج

                          این دفعه کلا سون سگمنت رو از مدار خارج کردم، دیدم باز هم پین ADC0 حدود 800 میلی ولته! مگه نباید 0 باشه؟ oo:
                          عاشق الکترونیک

                          دیدگاه


                            #14
                            پاسخ : مشکل دماسنج

                            up... این هم کد:
                            کد:
                            /*
                             * GccApplication1.c
                             *
                             * Created: 4/7/2013 11:34:57 PM
                             * Author: Mahdi
                             */ 
                            
                            
                            #include <avr/io.h>
                            #include <avr/interrupt.h>
                            void InitADC()
                            {
                            	ADMUX=(1<<REFS0)|(1<<REFS1);// AREF=internal 2.56v
                            	ADCSRA=(1<<ADEN)|(7<<ADPS0);
                            }
                            
                            uint16_t ReadADC(uint8_t ch)
                            {
                            	//Select ADC Channel ch must be 0-5
                            	ADMUX|=ch;
                            
                            	//Start Single conversion
                            	ADCSRA|=(1<<ADSC);
                            
                            	//Wait for conversion to complete
                            	while(!(ADCSRA & (1<<ADIF)));
                            
                            	//Clear ADIF by writing one to it
                            	ADCSRA|=(1<<ADIF);
                            
                            	return(ADC);
                            }
                            
                            int main(void)
                            {
                            	char segment[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
                            	DDRB=0xFF;//output
                            	DDRD=0xFF;//output
                            	sei();
                            	InitADC();
                              while(1)
                            	{
                            		int temp=ReadADC(0)*0.25;
                            		PORTD=segment[temp%10];//last digit
                            		PORTB=segment[(temp-(temp%10))/10];//first digit
                            	}
                            }
                            عاشق الکترونیک

                            دیدگاه


                              #15
                              پاسخ : مشکل دماسنج

                              سلام
                              ببین روی پین AREF چند ولت نشون میده؟
                              با یه میکروی دیگه هم امتحان کردی؟

                              دیدگاه

                              لطفا صبر کنید...
                              X