بازدیدها: 143
/* LED چرخان */
برنامه به اين صورت مي باشد كه همه LED هاي متصل شده به پورت 1 روشن مي باشند و يك LED خاموش از سمت چپ به سمت راست حركت مي كند.
————————————MGH————————*/
——————- 2 project led right shift———————
*/——–project 2 all led on and shift to the right ————
#include 1
2 Void wait_mgh()
3 {
4 Unsigned int mc;
5 for(mc=0;mc<33000;mc++);
6 }
7 main()
8 {
9 unsigned char led=128;
10 for(;;)
11 {
12 P1=~led;
13 led=led>>1;
14 if(led==0) led=128;
15 wait_mgh();
16 }
17 }
1) دستورات براي ميكرو كنترولر 8051 ترجمه مي شوند.
2) و 3) و 4) و 5) و 6) برنامه است كه با عدد 33000 تاخير 1 ثانيه را ايجاد مي كند.
7) شروع برنامه اصلي
8)
9) مقدار led را برابر با 128 قرار مي دهيم يعني بيت 7 پورت 1 را برابر با 1 قرار مي دهيم.
10) براي ايجاد تاخير 1 ثانيه در حلقه بمان
11)
12) معكوس عددي كه led دارد را روي پورت 1 بريز يعني اينكه همه بيت ها روشن شوند و بيت 7 خاموش شود. اين بخاطر علامت ~ كه به معني NOT مي باشد.
13) بيت 7 را به سمت راست حركت بده
14) اگر led برابر با صفر شد يعني به بيت 0 رسيد دوباره مقدار 128 را به led بده تا اين سيكل ادامه داشته باشد.
15) با هر بار چرخش يك ثانيه تاخير ايجاد كن.