تمرین برنامه نویسی میکروکنترلر:
یک کلید push button به عنوان ورودی و یک led با واسطه یک مقاومت به عنوان خروجی به میکروکنترلری متصل شده اند. هدف کم و زیاد کردن نور led به روش pwm از طریق همین یک کلید است. بعد از ریست، کلید بصورت پیش فرض وظیفه افزایش نور را به عهده دارد. روش کار به این ترتیب است که اگر کلید به مدت 800 میلی ثانیه نگه داشته شود، بعد از سپری شدن این زمان یک پله به نور led اضافه می شود و با فرض نگه داشتن کلید، این افزایش در هر 100 میلی ثانیه تا رسیدن به حداکثر نور led ادامه می یابد. اما برای تغییر وظیفه کلید از افزایش نور به کاهش آن و برعکس باید ضربه سریعی روی کلید زد و چنانچه زمان فشار دادن کلید از 500 میلی ثانیه کمتر باشد، وظیفه کلید تغییر می کند. بعد از تغییر وظیفه کلید از افزایشی به کاهشی و رها کردن آن، نگه داشتن مجدد کلید به همان روالی که توضیح داده شد، این بار باعث کاهش نور led می شود. پس به این ترتیب تنها با یک کلید می توان عملیات افزایش یا کاهش نور led را انجام داد. این تمرین نمونه ای از صورت مسئله ای است که سخت افزار آن بسیار ساده و ابتدایی است. اما پیاده سازی آن به لحاظ کدنویسی چندان هم ساده نیست.
@KnowledgePlus
Post #502
5.06K