بسم الله الرحمن الرحیم : چراغ چشمک زن ۸ کاناله به صورت دو حالته – تو این جلسه میخوام یه پروژه رو توضیح بدم که به صورت ۲ حالته هستش ؛ اگه رو دکمه GO کلیک شود چراغ ها از بالا به صورت یکی در میان روشن و خاموش میشوند و تا LED آخر این کار ادامه دارد و دوباره از اولین LED ….و اگه رو کلید GO & BACK کلیک شود مثل حالت قبل خواهد بود فقط با این تفاوت که وتی به آخرین LED رسید به جای این که دوباره بره از اولین LED شروع به کار کنه وقتی به آخرین LED رسید ، از همان آخرین LED شروع به کار میکند تا اولین LED وبعد از اولین LED تا آخرین و بعد…
چراغ چشمک زن ۸ کاناله به صورت دو حالته
اون قطعه ای که اسمش RESPACK هست یه جعبه مقاومت هست ؛ یه ۸ تا مقاومت رو گزاشتن کنار هم شده یه جعبه مقاومت.برا این گزاشتیمش که LED ها نسوزه.
(البته تو شبیه سازی اتفاقی نمیوفته ولی تو واقعیت LED ها میرن هوا)
اون دو تا مقاومت سمت چپی هم برا محدود کردن جریان و جلو گیری از سوختن میکروکنترلر.
(البته این مقاومت رو اگه بردارین برنامه به مشکل میخوره ، یه بار تست کنید ظرر نمیکنید.)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
#include <mega16.h> #include <delay.h> int i; int LED[]={0X01,0X02,0X04,0X08,0X10,0X20,0X40,0X80}; void main(void) { DDRA=0X00; DDRC=0XFF; while (1) { //GO if(PINA.0) { for(i=0;i<=7;i++) { PORTC=LED[i]; delay_ms(10); } } //GO & BACK if(PINA.1) { //GO for(i=0;i<=7;i++) { PORTC=LED[i]; delay_ms(10); } //BACK for(i=7;i>=0;i--) { PORTC=LED[i]; delay_ms(10); } } }; } |
اینم از کد های برنامه ، همون طور که مشاهده میکنید دو تا حلقه براش نوشتم که یکی برا حالتی هست که رو دکمه GO کلیک شود و دیگری برا حالتی که روی دکمه GO & BACK کلیک میشود.
این برنامه رو من دو جا دیدم ؛ یه جا تو کتاب !!! یجا هم تو یکی از سایت ها که اگه اشتباه نکم برا فروش گزاشته بود.
در کل هدف از این جور پروژه ها اینه که هم یه شروعی باشه برا تازه کارا و هم این که کم کم کار قطعات رو تو مدار ها یاد بگیریم و بدونیم که چرا این قطعه رو تو مدار گزاشتن.
و نه مثل خیلی از دانش آموزان و دانشجویان که فقط بلدند ضرب و تقسیم کنند (مسائل رو حل کنند) و این که چرا این قطعه رو تو این قسمت از مدار گزاشتن و از این جور چیزا اطلاعی ندارند.
مهمان
سلام مرسی از آموزشای خوبتون
یه سوال چرا وقتی میخوای تو ای تی مگا 8 این عملیاتو انجام بدیم مثلا پورت B خروجی , D ورودی بشه یا برعکس فقط یک بار برنامه اجرا میشه و بعد چراغها خاموش میشن اما با ATMEGA16 اینجوری نیستش و خود به خود متوقف نمیشه؟
نویسنده این مطلب
سلام-نمیدونم کجا سوتی دادی ولی احتمال میدم همین پروژه رو برداشتی هدرشو عوض کردی و پروگرام کردی.
برو یه پروژه جدید ایجاد کن.
مهمان
سلام
کمک میخواستم
دوتا برنامه میخوام
یکیش اینکه ۴ تا کلید ۴ تا ال ای دی متانظر داره و با زدن هر کلید ال ای دی متناظر روشن و با رها کردنش خاموش بشه
دیگری اینکه ۸ ال ای دی داریم اولیش روشنه و با زدن کلید ال ای دی بعدی روشن میشه
راه ارتباطی بدین ممنون میشم
مهمان
سلام.
پروزه در عمل کار می کند ایا؟
نویسنده سایت
همین الان مطلب مقاوت ها تون رو تو سایت خوندم.
این مدل موازی رو تا حالا ندیده بودم .
تمام تلاش ما اینه که جریان کمتری بکشیم . تو این حالت براش فرعی درست کردین بیشتر کشیده بشه ؟؟
یه مثال :
ولتاژ خروجی میکرو 5 ولت و افت ولتاژ روی led دو ولته .
5-2=3
این 3 ولت باید روی یه المان دیگه افت کنه .
شاید روش موازی تو منابعی که خروجی محدود دارن جواب بده . ولی یه منبع جریان بالا بزارید قطعا led مرخص میشه .
اینو گفتم که بگم این روش شدیدا دانشجوییه و به هیچ وجه صنعتی نیست .
مقاومت موازی در ورودی به عنوان pullup – pull down و در خروجی برای حالت open collector به کار میره .
یه مثال برا خروجی twi میکرو هست که حتما باید پول اپ بشه .
نویسنده این مطلب
بله باید مقوامت ها با led ها سری بشن….اشتب از منه…
ممنون از شما
نویسنده سایت
“اون قطعه ای که اسمش RESPACK هست یه جعبه مقاومت هست ؛ یه ۸ تا مقاومت رو گزاشتن کنار هم شده یه جعبه مقاومت.برا این گزاشتیمش که LED ها نسوزه.”

” اون دو تا مقاومت سمت چپی هم برا محدود کردن جریان و جلو گیری از سوختن میکروکنترلر. ”
فکرنکنم !
شما با اون مقاومتها خروجی میکرو رو پول دان کردی !!!!
اونها برای ورودی کاربرد دارن . برای محدود کردن باید مقاومت سری باشه .
اون دو تا سمت چپی هم پول دانه .
یعنی وقتی ولتاژ نداری پایه میکرو نویز نمیگیره و زمین رو میخونه . وقتی هم ولتاژداری که داری دیگه !
مهمان
داداش ی دست خوشی بگم برم بخوابم ، قربونت کارت عالیه
نویسنده این مطلب