واضح آرشیو وب فارسی:سایت ریسک: mehdi_RM11-06-2006, 01:27 PMبرنامه ربات مسیر یاب با میکرو 8051 در c بی زحمت اول بگید محیط برنامه نویسیش اسمش چیه؟ keil یا چیزی دیگه ای ؟؟؟؟؟؟ [code] #include d:mc518051io.h #include d:mc518051reg.h بعد این دو خط پایینی چرا اینطوری تعریف شدن؟؟؟ // extern register unsigned char speedleft,speedright; register unsigned char high,low,flag,time; main() { P1=0x40; P3=0xff; high = 80; low = 30; flag = 0; time = 50; Start(); while(1) { P3|= 0x0f; Run(); } } //*********************************************** این تابه استارت برا چی هست و چی کار می کنه؟// نا مفهوم بود برا من // حلقش چی کار می کنه؟// Start() { char exit,key; exit =1; while(exit) { key = P1; if((key & 0x40)==0) exit=0; } } //*********************************************** تو این تابه چرا سنسور ها رو and می کنه به مقایسه ؟؟؟؟؟؟// Run() { char sensors; sensors = (P3 &=0x0f); if((sensors & 0x01)==0) { TurnRight(); flag = 1; } else if((sensors & 0x08)==0) { TurnLeft(); flag = 2; } else if(sensors == 0x09) { Forward(high); flag = 0; } else if(((sensors==0x0b)||(sensors==0x0d))&&(flag==0)) Forward(low); } تو این تاب های زیر اسپید رایت و اسپید لفت برا چی هستن// اگه برا سرعتن چجوری به l298 می فهمونید اینا که فقط مقدارشون عوض می شه// با چه دستوری به موتور می رسن // Forward(char speed) { P1=0x64; speedright = speed+10; speedleft = speed; delay(time); } TurnRight() { P1=0x68; speedright = low+5; speedleft = low; delay(time); } TurnLeft() { P1=0x54; speedright = low+5; speedleft = low; delay(time); } //این تابع فکر کنم الکی باشه چون تو برنامه اصلی اصلا فراخوانی نشده تابع زیرو می گم: رورس // Reverse(char speed) { P1=0x58; speedright = speed; speedleft = speed+5; delay(time); } [/cdoe[ در مورد توضیح دستوراتش هم از کجا می تونم مطلب گیر بیارم تو helpesh که نبود؟/////// mehdi_RM11-06-2006, 01:29 PMبرنامه ربات مسیر یاب با میکرو 8051 در c بی زحمت اول بگید محیط برنامه نویسیش اسمش چیه؟ keil یا چیزی دیگه ای ؟؟؟؟؟؟ [code] #include d:mc518051io.h #include d:mc518051reg.h بعد این دو خط پایینی چرا اینطوری تعریف شدن؟؟؟ // extern register unsigned char speedleft,speedright; register unsigned char high,low,flag,time; main() { P1=0x40; P3=0xff; high = 80; low = 30; flag = 0; time = 50; Start(); while(1) { P3|= 0x0f; Run(); } } //*********************************************** این تابه استارت برا چی هست و چی کار می کنه؟// نا مفهوم بود برا من // حلقش چی کار می کنه؟// Start() { char exit,key; exit =1; while(exit) { key = P1; if((key & 0x40)==0) exit=0; } } //*********************************************** تو این تابه چرا سنسور ها رو and می کنه به مقایسه ؟؟؟؟؟؟// Run() { char sensors; sensors = (P3 &=0x0f); if((sensors & 0x01)==0) { TurnRight(); flag = 1; } else if((sensors & 0x08)==0) { TurnLeft(); flag = 2; } else if(sensors == 0x09) { Forward(high); flag = 0; } else if(((sensors==0x0b)||(sensors==0x0d))&&(flag==0)) Forward(low); } تو این تاب های زیر اسپید رایت و اسپید لفت برا چی هستن// اگه برا سرعتن چجوری به l298 می فهمونید اینا که فقط مقدارشون عوض می شه// با چه دستوری به موتور می رسن // Forward(char speed) { P1=0x64; speedright = speed+10; speedleft = speed; delay(time); } TurnRight() { P1=0x68; speedright = low+5; speedleft = low; delay(time); } TurnLeft() { P1=0x54; speedright = low+5; speedleft = low; delay(time); } //این تابع فکر کنم الکی باشه چون تو برنامه اصلی اصلا فراخوانی نشده تابع زیرو می گم: رورس // Reverse(char speed) { P1=0x58; speedright = speed; speedleft = speed+5; delay(time); } [/cdoe[ در مورد توضیح دستوراتش هم از کجا می تونم مطلب گیر بیارم تو helpesh که نبود؟/////// __ سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 287]