NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 3881 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
نمایش نتایج: از 1 به 5 از 5

موضوع: خواندن سطح ولتاژ با مبدل آنالوگ به دیجیتال میکرو

  1. #1
    کاربر علاقه مند wiki آواتار ها
    تاریخ عضویت
    Feb 2010
    نوشته ها
    54
    تشکر
    74
    تشکر شده 32 بار در 15 پست

    پیش فرض خواندن سطح ولتاژ با مبدل آنالوگ به دیجیتال میکرو

    سلام

    دوستان من میخوام با برنامه بسکام و میکرو اتمگا 8 سطح ولتاژ رو سنس کنم و روی السیدی کلمه ای رو بنویسم يعني ميخواهم اگر سطح ولتاژ من كمتر از 2 ولت بود كلمه low واگر بيشتر از 4 ولت بود كلمه high را نمايش دهم.
    در واقع قصد دارم توسط AD خود میکرو این مقادیر رو بخونم . من تا بحال با مبدل آنالوگ به دیجیتال میکرو کار نکردم .
    الان 3تاسئوال برام پيش اومده اينكه :
    1) ولتاژ من داره دائم توسط adc خوانده ميشود من هر دفعه كه ميخوام اين ولتاژ را چك كنم آيا بايد adc متوقف كنم؟اينجوري از دادههايي كه به پينم مياد عقب ميفتم؟پس چه كار بايد كرد؟
    2)من مقدار Adc را ميخوانم ودرون يك متغير از نوع word‌قرار ميدهم حالا چجوري بايد بفهمم آن عدد برابر سطح ولتاژ 2 ولت ويا 4 ولت است ؟ منظورم اين است كه مبدل اين اعدادي كه ميخواند را بر چه اساسي نشون ميده كه من بتونم با يكسري عمليات رياضي بفهمم دقيقا الان در چه سطح ولتاژي هستم؟
    3) اگر من از Adc‌ميكروم فقط از يك كانال آن استفاده كنم يعني تنها از يك پين portc دارم استفاده ميكنم آيا از بقيه پورت ميتونم به عنوان i/o استفاده كنم چون من براي السيدي نيازش دارم .

    پيشاپيش از همه دوستان كه كمك ميكنند ممنونم

  2. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

  3. #2
    مدير بخش STM32 sadmonew آواتار ها
    تاریخ عضویت
    Jun 2011
    نام
    صادق محمدي
    نوشته ها
    2,002
    تشکر
    6,283
    تشکر شده 3,115 بار در 1,408 پست

    پیش فرض

    با سلام
    اين برنامه كه اينجا قرار دادم خيلي سادس.
    [HTML]$regfile = "m8def.dat"
    $crystal = 8000000


    Config Adc = Single , Prescaler = Auto
    Start Adc

    Dim adc0 As Word

    Do
    adc0 = Getadc(0)
    Print "ADC(0)= " ; adc0
    Wait 1
    Loop

    End[/HTML]
    توضيح اينكه اگه ولتاژ ورودي به ADC ميكرو 5 ولت باشه مقداري كه توسط تابع (Getadc(0 خونده ميشه 1023 هستش و به همين ترتيب مثلا اگه ولتاژ ورودي به ADC ميكرو 2.5 ولت باشه مقداري كه توسط تابع (Getadc(0 خونده ميشه 511 هستش و اگه ولتاژ ورودي به ADC ميكرو 0 ولت باشه مقداري كه توسط تابع (Getadc(0 خونده ميشه 0 هستش. خوب با توجه به اين توضيحات خيلي راحت ميتونيد با توجه به نيازتون برنامه رو تغيير بدين. يه عكس هم گذاشتم كه حالت تست شده رو كه خودم انجام دادم نشون ميده.

    ________________________
    برنامه نويسي، الكترونيك(PE)
    ________________________
    تصاوير کوچک فايل پيوست تصاوير کوچک فايل پيوست برای دیدن سایز بزرگ روی عکس کلیک کنید

نام: ADC.JPG
مشاهده: 68
حجم: 138.3 کیلو بایت  
    ویرایش توسط morteza_rk : 25-09-2013 در ساعت 22:40

  4. تشکرها از این نوشته :


  5. #3
    عضو جدید
    تاریخ عضویت
    Jul 2013
    نوشته ها
    11
    تشکر
    2
    تشکر شده 4 بار در 3 پست

    پیش فرض

    سلام
    اگه ولتاژ input مستقیم نبود چی؟

  6. #4
    مدیر کل انجمن ها morteza_rk آواتار ها
    تاریخ عضویت
    Apr 2009
    نام
    مرتضی رحیمی کردمحله
    نوشته ها
    2,071
    تشکر
    2,376
    تشکر شده 2,899 بار در 1,263 پست

    پیش فرض

    با تشکر از صادق عزیز

    1) ولتاژ من داره دائم توسط adc خوانده ميشود من هر دفعه كه ميخوام اين ولتاژ را چك كنم آيا بايد adc متوقف كنم؟اينجوري از دادههايي كه به پينم مياد عقب ميفتم؟پس چه كار بايد كرد؟
    از کد زیر استفاده کن.

    کد:
    start adc
    adc0=getadc(0)
    stop adc
    سرعت اجرای برنامه انقدر بالاست که از چیزی عقب نمی مونید.

    2)من مقدار Adc را ميخوانم ودرون يك متغير از نوع word‌قرار ميدهم حالا چجوري بايد بفهمم آن عدد برابر سطح ولتاژ 2 ولت ويا 4 ولت است ؟ منظورم اين است كه مبدل اين اعدادي كه ميخواند را بر چه اساسي نشون ميده كه من بتونم با يكسري عمليات رياضي بفهمم دقيقا الان در چه سطح ولتاژي هستم؟
    عدد خونده شده رو در 0.0048828125 ضرب کن. یا اینکه مقدار خونده شده رو در 5 ضرب کن و بعد تقسیم بر 1024 کن.

    3) اگر من از Adc‌ميكروم فقط از يك كانال آن استفاده كنم يعني تنها از يك پين portc دارم استفاده ميكنم آيا از بقيه پورت ميتونم به عنوان i/o استفاده كنم چون من براي السيدي نيازش دارم .
    بله میشه.
    ویرایش توسط morteza_rk : 25-09-2013 در ساعت 22:46
    .
    اَللّهُمَ صَلّ عَلی مُحَمَّد وَ آلِ مُحَمَّد وَ عَجّل الفَرَجَهُم


    وبلاگ شخصی من

  7. #5
    عضو جدید
    تاریخ عضویت
    Jul 2013
    نوشته ها
    11
    تشکر
    2
    تشکر شده 4 بار در 3 پست

    پیش فرض

    دوست خوبم morteza_rk
    حرفتون درسته ولی برای ولتاژ dc کار میکنه
    اگه ولتاژ تناوب داشت با 5 ولت دامنه؛ باید چکار کرد؟
    میدونی که میکرو دائما اعداد مختلفی نشون میده!

موضوعات مشابه

  1. مشکل در آنالوگ به دیجیتال (adc)
    توسط mzarkoob در انجمن LPC series (NXP)
    پاسخ: 16
    آخرين نوشته: 22-01-2014, 00:52
  2. کمک در مورد تبدیل آنالوگ به دیجیتال
    توسط vackiom در انجمن الکترونیک
    پاسخ: 5
    آخرين نوشته: 23-05-2013, 20:19
  3. انتقال دیتا ازمیکرو بهpcبا اترنت
    توسط ali asghar در انجمن مخابرات
    پاسخ: 3
    آخرين نوشته: 22-04-2013, 12:22
  4. پاسخ: 14
    آخرين نوشته: 20-02-2011, 01:44
  5. قفل رمز دیجیتالی
    توسط sam166 در انجمن AVR
    پاسخ: 14
    آخرين نوشته: 21-08-2010, 11:26

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •