اطلاعیه

Collapse
No announcement yet.

ولتمتر و ماژول سیم 900

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

    ولتمتر و ماژول سیم 900

    باسلام خدمت دوستان
    من میخوام با بسکام یه برنامه ولتمتر بنویسم طوری که ولتاژ رو اندازه گیری کنه و با استفاده از ماژول سیم 900 که به میکرو وصله،مقدار ولتاژ رو برام بفرسته.راستی از میکرو ATMEGA8 استفاده میکنم.
    البته من تازه کار هم هستم.
    من نیاز فوری به این برنامه دارم.خیلی ین در و اون در زدم متاسفانه فایده ای نداشته. :cry:لطفا کمکم کنید
    با تشکر




    #2
    پاسخ : ولتمتر و ماژول سیم 900

    سلام

    ولتاژ چقدر هست ؟
    می تونید با ADC میکرو اندازه بگیرید اگه هم نه با چیپ های اندازه گیری ولتاژ
    اگه به برد کم می خواید بفرسید ZIGBEE بهتر SIM900 هزینه شارژ داره :mrgreen:

    اینم راجبع SIM900 هست

    http://www.up.98ia.com/images/u5kv3bhk77kow98399c.pdf

    دیدگاه


      #3
      پاسخ : ولتمتر و ماژول سیم 900

      ممنونم از شما
      ولتاژ 0 تا 100 دی سی رو میخوام اندازه بگیره.پورتهای adc میکرو باچه ولتاژی کار میکنن؟
      از چه ولتاژی باید روش باشه تا کار کنه؟

      دیدگاه


        #4
        پاسخ : ولتمتر و ماژول سیم 900

        ولتاژ ورودی ADC از 0V تا VCC می تونه باشه
        شما با مقاومت ولتاژ رو کم می کنی اینجوری :



        بعد مقدار ADC رو تقسیم 10.12 می کنی که ولتاژ شما میشه

        دیدگاه


          #5
          پاسخ : ولتمتر و ماژول سیم 900

          ممنونم .
          راستش تقسیم ولتاژ استفاده کردم ،مشکلم توی برنامشه؛یه برنامه ولتمتر میخوام که جواب بده.چندتا برنامه امتحان کردم جواب نگرفتم.
          یه چیز دیگه: وقتی مینویسیم (Get ADC(0باید از همون پورتی که adc0 هست استفاده کرد یا از هر کدوم از پورتهای adc استفاده کنیم مشکلی نداره

          دیدگاه


            #6
            پاسخ : ولتمتر و ماژول سیم 900

            اره اشتباه نوشته بود :mrgreen:

            اینم برنامه :

            $regfile = "m8def.dat"
            $crystal = 8000000
            Config Adc = Single , Prescaler = Auto
            Dim A As Word
            Dim B As Single

            Do
            A = Getadc(0)
            B = A / 10.12

            Loop
            البته زیاد دقیق نیست یه خرده خطا داره بدونه عدد عشاری توی ولتاژ بالا مثلا 80 به بالا 1 ولت اضافه نشون میده توی ولتاژ پایین هم مثلا 1 ولت رو 0.98 نشون میده می تونی رقم های عشاری رو حذف کنی مثلا فقط یه رقم رو نشون بده اگه زیاد نمی خوای دقیق باشه بهتره متغیر b رو هم از یه نوع دیگه انتخاب کنی Byte یا اصلا وقتی تقسیم شد بریزی توی خود A .........

            اینجوری میشه

            $regfile = "m8def.dat"
            $crystal = 8000000
            Config Adc = Single , Prescaler = Auto
            Dim A As Word


            Do
            A = Getadc(0)
            A = A / 10.12

            Loop

            اگه می خوای دقیق بشه چند تا رنج بزار مثل مولتی متر به چند تا کانال ADC وصل کن که مثلا یکیش از 0 تا 5V بود رو اندازه بگیره یکیش از 5 تا 50 اون یکیش هم 50 تا 100 که مقدار مقاومت های هر کانال باید تغییر کنه

            یه چیز دیگه: وقتی مینویسیم (Get ADC(0باید از همون پورتی که adc0 هست استفاده کرد یا از هر کدوم از پورتهای adc استفاده کنیم مشکلی نداره
            مقدار کانال داخل پرانتز رو اندازه میگره ADC میکرو 8 تا کانال داره از هر 8 تاش هم می تونی استفاده کنی

            دیدگاه

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