ابتدای کار یه توضیحی در خصوص مبدل آنالوگ به دیجیتال یا همون ADC براتون بدیم.
میدونیم که میکرو کنترلر ها بصورت دیجیتال کار میکنند یعنی اعداد صفر و یک رو میشناسند،ما از طرفی اکثر سنسور های موجود در بازار بصورت آنالوگ هستند برای مثال سنسور LM35 که یک سنسور دما هست به ازای هر یک درجه تغییر دما در خروجی خود 10 میلی ولت تغییر اعمال میکنه یعنی اگر دما 100 درجه سانتی گراد باشه ما انتظار داریم خروجی 10mv*100 یا همان یک ولت رو ببینیم .
با ساخت میکروپروسسور ها شرایط ایجاب میکرد که کمیت های فیزیکی و… آنالوگ را به دیجیتال تبدیل کنیم برای همین آی سی هایی ساخته شد که بصورت مستقل سیگنال های آنالوگ رو به دیجیتال تبدیل میکردند آیسی هایی مثل ADC0804 ولی به مرور میکروکنترلر ها مجهز به این ماژول شدند .در میکرو کنترلر PIC18f452 نیز یک مبدل آنالوگ به دیجیتال تعبیه شده که توسط عملیات مالتی پلکس به هشت کانال تقسیم میشه.
در مثال زیر خواهید دید که چطور ولتاژ ورودی روی LCD کارکتری نمایش بدیم.
ابتدا مطابق فیلم آموزشی تنظیمات LCD رو انجام میدیم.سپس مطابق خط 15 و 16 پورت A را روی حالت آنالوگ و کلاک مبدل را روی کلاک ورودی تنظیم میکنیم ، داخل حلقه while کانال صفر را تنظیم میکنیم(خط21) نکته حائز اهمیت اینه که نباید بلافاصله بعد از سِت کردن کانال اطلاعات آن را خواند ؛ بهتره با کمی تاخیر اینکار انجام بشه در غیر اینصورت ممکنه عدد صحیحی دریافت نشه.
عدد خوانده شده را در یک متغیر به اسم value از نوع float (اعشاری) که 16 بیتی هست قرار دادیم.خب!با توجه به اینکه مبدل ما 10 بیتی هست بازه ولتاژ صفر تا تغذیه میکرو کنترلر رو به 1023 قسمت تبدیل میکنه یعنی اگر تغذیه آیسی 5 ولت باشه و ورودی ADC هم 5 ولت بدیم عدد 1023 روی lcd نمایش داده میشه ولی ما میخوایم که اگر 5 ولت بود همون 5 ولت رو نمایش بده ینی دقیقا خود ولتاژ پس باید 1023 رو تقسیم بر 5 کنیم که حاصلش میشه 204.6 پس اگر عدد داخل متغیر رو تقسیم بر 204.6 کنیم ، ولتاژ واقعی رو روی LCD میبینیم.
سلام خسته نباشید میخواستم بدونم اگه ۴ تا سنسور انالوگ داشته باشم و بخوام که از هر ۴تا بطور همزمان نمونه برداری کنم و در حافظه میکرو ذخیره کنم چطوری میتونم این کارو انجام بدم ؟(یعنی بصورت موازی نمونه برداری بکنم).
سلام دوست عزیز اکثر میکروکنترلر ها دارای یک ماژول ADC هستند که توسط مالتی پلکسر داخلی به کانال های متعددی تقسیم میشوند. به این خاطر امکان استفاده بصورت موازی نیست.برای اینکار میتونید از چیپ های ADC مثل ADC0804 استفاده کنید.
با سلام و خسته نباشید خدمت جناب مهندس رضایی عزیز. از اینکه اطلاعات گرانبهاتون رو بدون هیچ چشم داشتی در اختیارمون میگذارید کمال تشکر و قدردانی رو داریم. کار بسیار زیبا و خدا پسندانه ای رو شروع کردین. امیدوارم که ادامه دار بوده و در سایر امورات زندگیتون موفق و پاینده و سربلند باشید.
با عرض سلام خدمت شما دوست عزیز رضایت شما باعث خوشحالی ما است , ممنون از لطف و آرزو زیبا شما برای ما
با سلام و ارض ادب ریزکنترلگر PIC من خیلی نویز میگیرد، برای اینکه دقیق نمونه برداری کند باید چکار کرد
با سلام و ارض ادب ریزکنترلگر من خیلی نویز میگیرد، برای اینکه دقیق نمونه برداری کند باید چکار کرد؟
نشانی ایمیل شما منتشر نخواهد شد. بخشهای موردنیاز علامتگذاری شدهاند *
کليه حقوق اين سايت متعلق به سام نیک میباشد