اطلاعیه

Collapse
No announcement yet.

اتصال پتانسیومتر به ADC میکرو و نمایش تغییرات ولتاژ(0-5v) روی Lcd

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

    اتصال پتانسیومتر به ADC میکرو و نمایش تغییرات ولتاژ(0-5v) روی Lcd

    با سلام به تمامی دوستان
    قبل از هر چیز بگم که بالاخره تونستم از پروگرامر STK200/300 که ساخته بودم جواب بگیرم و یه مدار فلشر ساده رو پروگرام کنم.جا داره از تمامی دوستان مخصوصا مهندسین عزیز:وحید نصیری،محمد نجفیان،پژمان اکبری،sina_08 و سایر دوستان که راهنمایی ام کردند،تشکر کنم.(ببخشید،بریم سر اصل مطلب)

    من میخوام یه پتانسومتر رو به ADC میکرو وصل کنم و با تغییر مقدار مقاومت،مقدار تغییرات ولتاژ(از 0-5v) را که توسط ADC خوانده شده است را روی Lcd نشان بدم.(مثلا اگر پتانسیومتر در وسط بود،ولتاژ 2.5 ولت روی Lcd نشان داده شود)
    آیا باید مقدار خوانده شده از (0)read_adc را تبدیل به آنالوگ کرده(طبق روش زیر)
    Voltage=read_adc(0);

    Voltage=Voltage*5/1024;
    و مقدار آنالوگ را بر روی Lcd نشان بدم؟
    اگر آنچه گفتم اشتباه است،پس چگونه ولتاژ را روی Lcd نشون بدم؟
    دقیق نمیدونم باید چکار کنم.
    ممنون میشم راهنمایی ام کنید :smile:

    زیبا باش و بخند بر هرآنچه زشتی است،چرا که تنهاترین شان تو ،زیبایی است.

    #2
    پاسخ : اتصال پتانسیومتر به ADC میکرو و نمایش تغییرات ولتاژ(0-5v) روی Lcd

    با سلام
    برای این کار شما بعد از گرفتن عدد از ADC اون رو به رشته برای نمایش روی lcd تبدیل می کنید. در فایل زیر یه نمونه برنامه به همراه شماتیک رو براتون گذاشتم.
    موفق باشید
    چرا ناراحتی پاتریک!
    + امروز ی بچه دیدم سرچهارراه گل میفروخت
    - از دیدنش ناراحت شدی؟
    + نه
    پس چی ناراحتت کرده
    + اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
    ------------------------------------------------------------------------------------------------------
    تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
    ------------------------------------------------------------------------------------------------------
    محصولات

    دیدگاه


      #3
      پاسخ : اتصال پتانسیومتر به ADC میکرو و نمایش تغییرات ولتاژ(0-5v) روی Lcd

      با سلام و ممنون از راهنمایی تان
      من که نشد فایلی رو که گذاشتید،بگیرم(پیغام عدم وجود فایل رو میده)
      اما من به همان روشی که در بالا گفتم برنامه میکرو نوشتم و روی Lcd نشون دادم.اما مشکلم اونجاست که با تغییر پتانسومتر ولتاژ نشان داده شده روی Lcd تغییر نمیکنه و دائم 5 ولت رو نشون میده.
      Voltage=read_adc(0);
      Voltage=Voltage*5/1024;
      delay_ms(50);
      lcd_clear();
      lcd_gotoxy(0,0);
      ftoa(Voltage,2,str1);
      sprintf(str2,"Voltage=%sVolt",str1);
      lcd_puts(str2);
      نمیدونم اشکال کجاست :angry: :angry:
      ممنون میشم راهنمایی ام کنید.
      با سپاس :smile:
      زیبا باش و بخند بر هرآنچه زشتی است،چرا که تنهاترین شان تو ،زیبایی است.

      دیدگاه


        #4
        پاسخ : اتصال پتانسیومتر به ADC میکرو و نمایش تغییرات ولتاژ(0-5v) روی Lcd

        سلام
        ابتدا باید بررسی کنی که آیا تنظیمات اولیه رجیسترهای adc رو در میکرو درست انجام دادی یا نه؟
        مثل ولتاژ مرجع و رزولوشن و نوع تحریک adc
        در ضمن متغیر voltage رو از چه نوعی تعریف کردی؟

        دیدگاه


          #5
          پاسخ : اتصال پتانسیومتر به ADC میکرو و نمایش تغییرات ولتاژ(0-5v) روی Lcd

          نوشته اصلی توسط amir-ak
          با سلام و ممنون از راهنمایی تان
          من که نشد فایلی رو که گذاشتید،بگیرم(پیغام عدم وجود فایل رو میده)
          اما من به همان روشی که در بالا گفتم برنامه میکرو نوشتم و روی Lcd نشون دادم.اما مشکلم اونجاست که با تغییر پتانسومتر ولتاژ نشان داده شده روی Lcd تغییر نمیکنه و دائم 5 ولت رو نشون میده.
          Voltage=read_adc(0);
          Voltage=Voltage*5/1024;
          delay_ms(50);
          lcd_clear();
          lcd_gotoxy(0,0);
          ftoa(Voltage,2,str1);
          sprintf(str2,"Voltage=%sVolt",str1);
          lcd_puts(str2);
          نمیدونم اشکال کجاست :angry: :angry:
          ممنون میشم راهنمایی ام کنید.
          با سپاس :smile:
          آقا امیر از http://mmoallemi.com/avr/ فایل rar مربوط به ADC رو دانلود کن هم شماتیکش با پروتئوس هس هم کدش با کدویژن.فک کنم دقیقا چیزی باشه که می خوای.
          موفق باشی.
          -

          دیدگاه


            #6
            پاسخ : اتصال پتانسیومتر به ADC میکرو و نمایش تغییرات ولتاژ(0-5v) روی Lcd

            با سلام مجدد.
            فایل دوباره پلود شد امیدوارم مفید باشه.
            با تشکر
            چرا ناراحتی پاتریک!
            + امروز ی بچه دیدم سرچهارراه گل میفروخت
            - از دیدنش ناراحت شدی؟
            + نه
            پس چی ناراحتت کرده
            + اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
            ------------------------------------------------------------------------------------------------------
            تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
            ------------------------------------------------------------------------------------------------------
            محصولات

            دیدگاه


              #7
              پاسخ : اتصال پتانسیومتر به ADC میکرو و نمایش تغییرات ولتاژ(0-5v) روی Lcd

              سلام دوست عزیز :biggrin:
              همونطور که خودت گفتی عدد خونده شده رو باید در 1024/5 ضرب کنی فقط یادت باشه که بیتهای کم ارزش خونده شده معمولا معتبر نیستند.توی دیتا شیت atmega هست این موضوع.اول مدار سخت افزازرتو چک کن با ولتمتر ببین با تغییر پتانسومتر . ولتاژ تغییر میکنه یا نه؟
              بعد برو سراغ اینکه ولتاژ مرجع adc رو چی تعریف کردی؟و adc رو کلا فعال کرده باشی.
              می تونی avcc .ref و مرجع داخلی 2.56 انتخاب کنی
              هميشه به ياد خدا باش !

              دیدگاه


                #8
                پاسخ : اتصال پتانسیومتر به ADC میکرو و نمایش تغییرات ولتاژ(0-5v) روی Lcd

                با سلام به تمامی دوستان گلم و تشکر از وقتی که برای من گذاشتید
                مشکل برطرف شد :wow:
                با توجه به اینکه ولتاژ مرجع را AREF تعریف کرده بودم،اما اشتباها تغذیه Vcc را به پایه AVCC داده بودم.با اتصال Vcc به پایه AREF مشکل برطرف شد و ولتاژ را با 2 رقم اعشار روی Lcd دارم.


                زیبا باش و بخند بر هرآنچه زشتی است،چرا که تنهاترین شان تو ،زیبایی است.

                دیدگاه


                  #9
                  پاسخ : اتصال پتانسیومتر به ADC میکرو و نمایش تغییرات ولتاژ(0-5v) روی Lcd

                  با سلام به تمامی دوستان
                  مشغول امتحانات بودم نشد بیام انجمن :redface:
                  همان طور که قبلا بیان کردم من از مدار جواب کرفتم اون هم تو Proteus.اتفاقا خیلی هم خوب و با دقت 2 رقم اعشار ولتاز خوانده شده را نمایش می داد. اما وقتی مدار را روی برد بستم مدام ولتاز روی LCD تغییر میکنه و اصلا تطابقی بین ولتاز واقعی با مقدار نمایش داده شده روی LCD وجود نداره. :angry:
                  دقیقا همون مداری رو که تو Proteus جواب داد را بستم اما نمیدونم اشکال کارم کجاست و درست جواب نمیده.
                  این هم یه عکس از مدار

                  ممنون میشم راهنمایی ام کنید.
                  زیبا باش و بخند بر هرآنچه زشتی است،چرا که تنهاترین شان تو ،زیبایی است.

                  دیدگاه


                    #10
                    پاسخ : اتصال پتانسیومتر به ADC میکرو و نمایش تغییرات ولتاژ(0-5v) روی Lcd

                    سلام دوست عزیز.
                    اگر طبق اون شماتیک مدار رو بسته باشین پس تغذیه خود adc رو هنوز وصل نکردین.
                    شما پایه AVCC رو به ولتاژ 5 ولت بزن مشکل حل میشه.اون موقع هم باز احتمال پرش عدد هست که برای رفع اون باید از مدارات نویزگیر و یه تغذیه رگوله شده مناسب برای تغذیه استفاده کنید.
                    موفق باشید.
                    چرا ناراحتی پاتریک!
                    + امروز ی بچه دیدم سرچهارراه گل میفروخت
                    - از دیدنش ناراحت شدی؟
                    + نه
                    پس چی ناراحتت کرده
                    + اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
                    ------------------------------------------------------------------------------------------------------
                    تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
                    ------------------------------------------------------------------------------------------------------
                    محصولات

                    دیدگاه


                      #11
                      پاسخ : اتصال پتانسیومتر به ADC میکرو و نمایش تغییرات ولتاژ(0-5v) روی Lcd

                      نوشته اصلی توسط amir-ak
                      اما وقتی مدار را روی برد بستم مدام ولتاز روی LCD تغییر میکنه و اصلا تطابقی بین ولتاز واقعی با مقدار نمایش داده شده روی LCD وجود نداره. :angry:
                      سلام دوست عزیز
                      اگه مدار رو درست و کامل سوار کرده باشی ،
                      نوشته اصلی توسط سوران آراسته
                      اگر طبق اون شماتیک مدار رو بسته باشین پس تغذیه خود adc رو هنوز وصل نکردین.
                      شما پایه AVCC رو به ولتاژ 5 ولت بزن مشکل حل میشه.اون موقع هم باز احتمال پرش عدد هست که برای رفع اون باید از مدارات نویزگیر و یه تغذیه رگوله شده مناسب برای تغذیه استفاده کنید.
                      برای اینکه مشکل پرش اعداد رو حل کنی میتونی مثلا 50 نمونه برداری و میانگینش رو روی ال سی دی نمایش بدی یا حتی بهتره میانه رو نمایش بدی!

                      البته اینو هم داشته باش که اگه مدارت رو روی فیبر مدار چاپی مونتاژ کنی، نتیجه بهتر از برد بورد خواهد بود.

                      دیدگاه


                        #12
                        پاسخ : اتصال پتانسیومتر به ADC میکرو و نمایش تغییرات ولتاژ(0-5v) روی Lcd

                        اگر طبق اون شماتیک مدار رو بسته باشین پس تغذیه خود adc رو هنوز وصل نکردین.شما پایه AVCC رو به ولتاژ 5 ولت بزن مشکل حل میشه
                        من تغذیه Adc را در کد برنامه روی پایه AREF قرار دادم،فکر کنم فقط نیاز باشه که پایه AREF را بهVcc وصل کنم.آیا نیازه که AVCC را نیزبه تغذیه وصل کنم
                        اون موقع هم باز احتمال پرش عدد هست که برای رفع اون باید از مدارات نویزگیر و یه تغذیه رگوله شده مناسب برای تغذیه استفاده کنید.
                        موفق باشید
                        میشه راهنمایی ام کنید چگونه مدار نویزگیر را طراحی کنم؟
                        با سپاس ودرودبیکران

                        زیبا باش و بخند بر هرآنچه زشتی است،چرا که تنهاترین شان تو ،زیبایی است.

                        دیدگاه


                          #13
                          پاسخ : اتصال پتانسیومتر به ADC میکرو و نمایش تغییرات ولتاژ(0-5v) روی Lcd

                          نوشته اصلی توسط hosein1122

                          برای اینکه مشکل پرش اعداد رو حل کنی میتونی مثلا 50 نمونه برداری و میانگینش رو روی ال سی دی نمایش بدی یا حتی بهتره میانه رو نمایش بدی!
                          دوست عزیز منونم از راهنمایی ات
                          اما من نمی دونم چگونه باید این نمونه برداری را انجام بدم؟ ~x(
                          تو کد برنامه(Codevision) باید چیکار کنم؟ :-??
                          ممنون میشم راهنمایی ام کنید
                          با سپاس و درود فراوان
                          زیبا باش و بخند بر هرآنچه زشتی است،چرا که تنهاترین شان تو ،زیبایی است.

                          دیدگاه


                            #14
                            پاسخ : اتصال پتانسیومتر به ADC میکرو و نمایش تغییرات ولتاژ(0-5v) روی Lcd

                            یعنی توی یه حلقه که 50 بار تکرار میشه هر بار ولتاژ رو بخون و با ولتاژ خونده شده قبلی میانگین بگیر

                            دیدگاه


                              #15
                              پاسخ : اتصال پتانسیومتر به ADC میکرو و نمایش تغییرات ولتاژ(0-5v) روی Lcd

                              ممنون علی آقا
                              بنظرت اینکه ولتاژ نمایش داده شده روی LCD مدام تغییر میکنه و با ولتاژ واقعی تطابقی نداره برای چیه؟
                              به نظرت اشکال از کجاست؟
                              ممنون میشم راهنمایی ام کنی
                              با سپاس
                              زیبا باش و بخند بر هرآنچه زشتی است،چرا که تنهاترین شان تو ،زیبایی است.

                              دیدگاه

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