رقص نور *@*@*@
با سلام
یه برنامه نویس خوب باید برنامه خودشو تا جایی که میتونه ساده بنویسه:)
به مثال زیر توجه کنید

به برنامه زیر هم توجه کنید

این دوتا برنامه با هم فرقی ندارند
برنامه اول چی میگه<<<>چیز خاصی نمیگه:)
توضیح برنامه اول
----------------------------------------
دیگه باید تو خط اول و دوم وسوم اوسا شده باشین بازم میگم (چون وظیفه منه )
1.معرفی آیسی atmega8
2.تنظیم فرکانس کاری میکرو(فعلا مهم نیست که چند مگاهرتز قرار بدین ولی با تنظیم این سرعت خواندن برنامه تغییر میکنه.)
3.تنظیم پورت B به عنوان خروجی
4.جناب حلقه do,loop
5.set؟؟؟؟؟یعنی چی >>همون یک (1) خودمونه >>یعنی خروجی portb.0 یک کن
6.وقفه >تایمی برای یک ماندن خروجی <یعنی میکرو وقتی میرسه به این دستور 100میلی ثانیه صبر میکنه بعد میره خط بعد
7.reset؟؟؟؟؟یعنی چی>>همون صفر کردن(0)>>یعنی خروجی portb.0 که یک بود الان صفرش میکنه و LED میشه
8.همون عمل روشن موندن تا 100میلی ثانیه و خاموش شدن برای پورت های دیگه تکرار میشه
تاااااااااااااااا میرسیم به loop که جناب میکرو وقتی میرسه به این دستور میپره میره به اول حلقه یعنی دستور رو از زیر do اجرا میکنه
»led ها یکی پس از دیگری روشن وخاموش میشود
برنامه دومی چیه؟؟؟
------------------------------
همون عمل بالایی رو انجام میده چه جوری>>>>
خط اول و دوم و سوم دیگه نمیگم:)
4.معرفی یه متغییر از نوع بایت(هر اسمی میتونه باشه من گذاشتم A)
5.به A یه مقدار اولیه دادیم ولی بصورت باینری (پس نوشتن یه عدد باینری هم یاد گرفتی این عدد همون عدد یکه منتها باینری نوشتم)
6.بازم do,loop >>>حلقه باحالیه:)
7.اینم یه دستو باحال >>وقتی میکرو به دستور rotate میرسه متغییری که بهش معرفی کردیم طبق جهتی که بهش گفتیم right(راست) حرکت میده >>یعنی چی؟؟>>>یعنی عدد باینری( 10000000 ) الان میشه (01000000) همونطور که میبینید 1 رو به سمت راست حرکت داد مثال اگر عدد ما (10100000)بود الان میشد (01010000) به همین راحتی
8.وقفه (با تغییر دادن عدد 100 سرعت چشمک زدن روتغییر میدید)
9.خروجی پورت B مساوی عدد A قرار دادیم یعنی عدد (01000000) در خروجی پورت B ظاهر میشه
10.جناب loop <<<میکرو برو سر خط:)میکرو میره دستور رو از زیر do میخونه دوباره میرسه به rotate ایندفعه A=(01000000 بود دوباره حرکت میده به سمت راست ومیشه (00100000) به همین روال برنامه ادامه دارد و یه رقص نور خوب درست میشه
در ضمن به جای right میشود گفت left و با تغییر عدد باینری A میشود رقص نور های متفاوت درست کرد
اجرای برنامه درprotues

یه مثال دیگه برای رقص نور

">