PDA

توجه ! این یک نسخه آرشیو شده می باشد و در این حالت شما عکسی را مشاهده نمی کنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : آموزش ساخت ربات مسیریاب (برنامه نویسی )



TAHA
11-07-2009, 06:43 PM
امروز می خواهیم برنامه ای بنویسیم که بوسیله اون بشه استپر موتورهامون رو راه اندازی کنیم (عین همین روش رو باید در برنامه اصلی ربات استفاده کنیم) :



کد:


$crystal = 1000000
$regfile = "m32def.dat"

Config Portb = Output
Config Portc = Output

Dim A As Byte
Dim B As Byte

B = &B10001000
A = &B10001000

Do
Rotate A , Left
Portb = A

Rotate B , Right
Portc = B

Waitms 15
Loop

End


خوب حالا خط به خط تحلیل می کنیم. البته خوب یادمه توضیحات کاملی رو در مورد کدهای استفاده شده در چهار خط اول در پست های "آموزش ساخت ربات (میکرو کنترلر 1 (http://mypersianforum.com/showthread.php?t=66431) - 2 (http://mypersianforum.com/showthread.php?t=66458) - 3 (http://mypersianforum.com/showthread.php?t=66459) - 4 (http://mypersianforum.com/showthread.php?t=66460)) دادم. پس اگه یادتون رفته بهشون دوباره سر بزنید.



کد:

Dim A As Byte
Dim B As Byte


کلا در زبان های خانواده بیسیک که کامپایلر BASCOM هم از اون استفاده می کنه، از کلمات Dim و as به صورت Dim varname as type برای تعریف متغیر استفاده می شه، که varname نام متغیر و type نوع متغیر هستش. در اینجا دو متغیر به نامهای A و B با نوع Byte معرفی شدن (هر بایت از ۸ بیت تشکیل شده)




کد:

B = &B10001000
A = &B10001000


استفاده از " مقدار = نام متغیر " که برای همه قابل درکه (یعنی یک مقدار رو داخل متغیر بریزیم) اما در اینجا بجای مقدار از &B10001000 استفاده شده. برای قرار دادن مقادیر به صورت باینری در یک متغیر (در این زبان) باید مقدار باینری رو بعد از B& بنویسم. در اینجا، هم در A و هم در B مقدار باینری ۱۰۰۰۱۰۰۰ معادل دهدهی ۱۳۶ رو قرار دادیم. که دلیلش رو توضیح خواهم داد.