02166766927 -02166703652
info@atrinelec.com تهران پاساژ امجد طبقه1 واحد 16
دوره آموزشی میکرو کنترلرهای STM32 _ راه اندازی واحد ADC(بخش اول)

دوره آموزشی میکرو کنترلرهای STM32 _ راه اندازی واحد ADC(بخش اول)

2018-11-20 13:31:33

جلسه دهم _ نحوه راه اندازی واحد ADC ونحوه انجام تنظیمات در محیط STM32CubeMX

در این جلسه قصد داریم تا به معرفی واحد ADC بپردازیم و نحوه راه اندازی و تنظیمات آن در نرم افزار STM32CubeMX  را بیاموزیم و پس از تولید پروژه در نرم افزار keil برنامه را بنویسیم تا به کمک آن بتوانیم تغییرات ولتاژ یک پتانسیومتر را مشاهده نماییم و مقدار آن را بر روی LCD کاراکتری که قبلا نحوه راه اندازی آن را شرح داده ایم نمایش دهیم.

همانطور که می دانید مبدل های آنالوگ به دیجیتال یا همان ADC یکی از ابزارهای پرکاربرد در طراحی مدارات می باشند و با کمک آن می توانیم سیگنال های آنالوگ را بررسی نماییم.

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

برای مبدل های آنالوگ به دیجیتال سه مشخصه وجود دارد:

  • ولتاژ مرجع: با استفاده از این ولتاژ مشخص می شود که واحد ADC قادر است تا چه مقدار ولتاژ ورودی را به یک ولتاژ دیجیتال معادل تبدیل کند. برای مثال اگر ولتاژ مرجع برابر با 3.3 ولت باشد این واحد حداکثر قادر به تبدیل ولتاژی معادل 3.3 ولت می باشد و اگر ولتاژ ورودی بیش از این باشد علاوه بر اینکه امکان آسیب رسیدن به این واحد وجود دارد، در تبدیل آن سیگنال آنالوگ دچار خطا می شود و ولتاژ های بیش از 3.3 برای آن تفاوتی با ولتاژ 3.3 ندارند پس برای جلوگیری از این مورد باید با تقسیم مقاومتی ماکزیمم ولتاژ آنالوگ را به 3.3 ولت رساند. در صورتیکه بخواهید تبدیل شما حداکثر دقت را داشته باشد بهتر است از یک ولتاژ مرجع بسیار ثابت استفاده کنید که استفاده از آی سی هایی که برای تامین ولتاژ مرجع طراحی شده اند پیشنهاد می شود.
  • تفکیک پذیری یا رزولوشن: این ویژگی مشخص می کند که بازه حداقل تا حداکثر تبدیل به چند قسمت تقسیم شود برای مثال اگر واحد ADC  شما 8 بیتی باشد و بازه اندازه گیری آن بین 0 تا 3.3 ولت باشد به این معناست که ولتاژ این بازه را تبدیل به عددی بین 0 تا 255 می کند یا اگر 12 بیتی باشد این تبدیل به اعدادی بین 0 تا 4095 تبدیل می شود هرچقدر تفکیک پذیری واحد بیشتر باشد دقت اندازه گیری بیشتر و پله های تبدیل کوچک تر می شود.
  • زمان نمونه برداری: این ویژگی مشخص می کند که واحد ADC نمونه برداری را با چه سرعتی انجام دهد. هرچقدر که زمان نمونه برداری کمتر باشد سیگنال آنالوگ ما با دقت و مشابهت بیشتری به سیگنال دیجیتال تبدیل می شود.

 

در ادامه به نحوه فعال سازی و تنظیم پارامترهای مربوط به واحد ADC در نرم افزار STM32CubeMX می پردازیم. مطابق جلسات قبل نرم افزار STM32CubeMX را اجرا می کنیم و پروژه ای را ایجاد و میکرو مورد نظر را انتخاب می کنیم و تنظیمات مربوط به LCD کاراکتری را انجام می دهیم و فرکانس کاری مدار را تنظیم می کنیم حال با انجام تنظیمات اولیه به سراغ تنظیمات مربوط به واحد ADC می رویم.

در ابتدا همانطور که مشخص است میکرو مورد نظر را دارای 3 واحد آنالوگ به دیجیتال می باشد و دقت آنها 12 بیتی هستند.

 

آیکون های زرد رنگ کنار این واحد ها خبر از وجود مشکلی در این واحد ها می دهد که مشکل بوجود آمده مشترک شدن برخی ورودی های این واحد ها با پایه های مربوط به ال سی دی است . هر کدام از این واحدها دارای 16 پایه ورودی ADC هستند که برخی از پایه های یک واحد ADC با واحد دیگری مشترک می باشد. برای تنظیم پایه مورد نظر به عنوان ورودی آنالوگ کافیست علامت مثبت کنار واحد مورد نظر را انتخاب نمایید تا بتوانید به تک تک ورودی های آن واحد دسترسی داشته باشید.

پایه های قرمز رنگ مشخص می کنند که این پایه ها دیگر قابل استفاده به عنوان وردی ADC نمی باشند زیرا قبلا توسط ال سی دی یا واحد دیگری اشغال شده اند. در بین پایه های مجاز پایه مورد نظر خود را انتخاب می کنیم و تیک مربوط به آن را فعال می کنیم.

با انتخاب ورودی مورد نظر پایه مربوط به آن نیز فعال می شود.

پس از فعال سازی واحد ADC و انتخاب ورودی مورد نظر امکان این وجود دارد تا در بخش Clock Configuration خطایی ایجاد شود.

با وارد شدن در بخش Clock Configuration می توانیم خطای مورد نظر را مشاهده کنیم با ورود به این سربرگ پیغامی نمایش داده می شود مبنی بر اینکه اگر مایل باشید می توانید خطای مربوط به تنظیمات کلاک را نرم افزار بصورت اتوماتیک برطرف کند در غیر اینصورت گزینه No را انتخاب می کنیم.

با انتخاب گزینه No مشاهده می شود که بخش کلاک مربوط به واحد ADC قرمز رنگ است.

با توجه به اینکه حداکثر فرکانس کاری واحد ADC  برابر 14 مگاهرتز می باشد میزان کلاک این واحد از حد مجاز بیشتر شده و شما می توانید با تغییر ADC Prescaler آنرا اصلاح کنید یا می توانید Prescaler های قبل از آن یا PLLMul را تغییر دهید تا فرکانس کاری این واحد ماکزیمم از 14 مگاهرتز تجاوز نکند، یا می توانید اصلاح این خطا را توسط خود نرم افزار بصورت اتوماتیک انجام دهید.

حال به سربرگ Configuration می رویم و گزینه ADC1 را از بخش Analog انتخاب می کنیم.

با انتخاب گزینه ADC1 به بخش ADC1 Configuration می رویم.

 

در این بخش وارد سربرگ Parameter Setting می شویم که برای راه اندازی اولیه واحد ADC نیاز به تغییرات خاصی نداریم و در آموزش های بعد اگر نیاز به تغییر پارامتری از این بخش بود حتما بصورت کامل پارامترهای مربوطه را توضیح می دهیم. تنها پارامتری که می توانید در این بخش تنظیم کنیم Sampling Time  در بخش Rank است که مشخص می کند که هر چند سیکل نمونه برداری انجام شود. با انجام تنظیمات دیگر پروژه قابل اجرا و تولید کد می باشد.

در جلسه بعد به نحوه برنامه نویسی در محیط Keil می پردازیم.

                                                                                                                                                                    دلتون شاد و لبتون پرخنده

                                                                                                                                                                             محمد هادی دشتی

دیگر آموزش ها مرتبط با STM32:

برای مشاهده آموزش جلسه اول(معرفی هسته آرم و میکروکنترلرهای 32 بیتی شرکت ST  ) کلیک کنید.

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

برای مشاهده آموزش جلسه سوم( نحوه دانلود آخرین نسخه از نرم افزار STM32CubeMX   ) کلیک کنید.

برای مشاهده آموزش جلسه چهارم(نحوه انجام تنظیمات در نرم افزار STM32CubeMX  ) کلیک کنید.

برای مشاهده آموزش جلسه پنجم(نحوه برنامه نویسی پروژه چشمک زن با نرم افزار Keil ) کلیک کنید.

برای مشاهده آموزش جلسه ششم(نحوه تولید کد و تنظیمات در محیط STM32CubeMX و برنامه نویسی در محیط Keil برای راه اندازی کلید) کلیک کنید.

برای مشاهده آموزش جلسه هفتم(معرفی نرم افزار STM32 Flash Loader Demonstrator و نحوه دانلود برنامه و پروگرام کردن میکرو) کلیک کنید.

برای مشاهده آموزش جلسه هشتم( نحوه راه اندازی ال سی دی کاراکتری-قسمت اول) کلیک کنید.

برای مشاهده آموزش جلسه نهم( نحوه راه اندازی ال سی دی کاراکتری و آشنایی با دستورات کاربردی کتابخانه ال سی دی کاراکتری ) کلیک کنید.

به سبد خرید اضافه شد.
سبد خرید
Item removed. بازگرداندن