رفتن به مطلب
بیسیک فور ایکس

Recommended Posts

شما با استفاده از این مثال می توانید یک استپر موتور رو کنترل کنید


 


وقتی بتونید کار بالا رو انجام بدید قطعا می تونید ریموت ایجاد کنید برای کنترل دوربین های مدار بسته



Sub Process_Globals
'These global variables will be declared once when the application starts.
'Public variables can be accessed from all modules.
Public Serial1 As Serial
Private direction As Boolean = True
End Sub

Private Sub AppStart
Serial1.Initialize(115200)
Log("AppStart")
'define the 4 pin numbers and the time delay for the stepper
Stepper.Initialize(10,11,12,13,10)
Stepper.turn(True,90)
End Sub


public Sub turndone(Text As String)
'change turn direction
direction = Not(direction)
Stepper.turn(direction,90)
End Sub

کد کلاس Stepper



Sub Process_Globals
'These global variables will be declared once when the application starts.
'Public variables can be accessed from all modules.

Private tmr As Timer
Private stopcount, endcount As Int
Private direction As Boolean
Private state As Int

Private p1,p2,p3,p4 As Pin
End Sub

Public Sub Initialize(dpin1 As Byte _
,dpin2 As Byte _
,dpin3 As Byte _
,dpin4 As Byte _
,TimeDelay As ULong )

tmr.Initialize("tmr_Tick",TimeDelay)
p1.Initialize(dpin1,p1.MODE_OUTPUT)
p2.Initialize(dpin2,p2.MODE_OUTPUT)
p3.Initialize(dpin3,p3.MODE_OUTPUT)
p4.Initialize(dpin4,p4.MODE_OUTPUT)

End Sub

public Sub turn(forward As Boolean, angle As Float)
stopcount = 0
endcount = angle * 2048 /360
direction = forward
state = 0
tmr.Enabled = True
End Sub

Private Sub tmr_Tick
If direction Then
rotateRight
Else
rotateLeft
End If
state = (state + 1) mod 4
If stopcount >= endcount Then
tmr.Enabled = False
zeroall
Main.turndone("done")
End If
stopcount = stopcount + 1
End Sub

Private Sub rotateLeft
Select state
Case 0
p1.DigitalWrite(True)
p4.DigitalWrite(False)
Case 1
p2.DigitalWrite(True)
p1.DigitalWrite(False)
Case 2
p3.DigitalWrite(True)
p2.DigitalWrite(False)
Case 3
p4.DigitalWrite(True)
p3.DigitalWrite(False)
End Select
End Sub

Private Sub rotateRight
Select state
Case 0
p1.DigitalWrite(True)
p2.DigitalWrite(False)
Case 1
p4.DigitalWrite(True)
p1.DigitalWrite(False)
Case 2
p3.DigitalWrite(True)
p4.DigitalWrite(False)
Case 3
p2.DigitalWrite(True)
p3.DigitalWrite(False)
End Select
End Sub

Private Sub zeroall
p1.DigitalWrite(False)
p2.DigitalWrite(False)
p3.DigitalWrite(False)
p4.DigitalWrite(False)
End Sub

در پناه حق


به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال دیدگاه یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید دیدگاهی ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در سایت ما ثبت نام کنید. عضویت خیلی ساده است !

ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید

ورود به حساب کاربری

  • مطالب مشابه

    • توسط amir386
      سلام خدمت اساتید عزیز ! همونطور که میدونین مدتیه که تلگرام هیتلر شده و من بسیاری از برنامه هام شاید بیشتر از 15 تاش ارتباط مستثیم و غیر مستقیم با تلگرام و api هاش دارن ! که خیلی وقته از کار افتادن و کاربر حتما باید به قندشکن وصل باشه! اما سوال اصلی من اینه بهترین راه برای دور زدن هیتلر داخل برنامه چیه! چند نقری گفتن که به سرور وصل کنم و از اونجا بهتلگرام . ولی من میخوام مثل برنامه هایی مثل تلگرام طلایی و هاتگرام و... از تونل پراکسی داخل برنامه استفاده کنم ! کسی بلده و یا راهکاری واسم داره!؟ خیلی ممنون❤️
    • توسط amir386
      سلام دوستان حدود چند ماهه سر درگمم تو یه موضوعی. چند بارم منصرف شم ازش ولی گفتم بپرسم کسی شاید تونست کمکم کنه...
      تو این پروژه میخوام . از این دیوایس برای اونیکی دیوایس از طریق سرور . هاست یا هر چی که بشه... از این دیوایس برای اونیکی دیوایس دستور ارسال کنم بعدش پاسخ تاییدم دریافت بشه یه چیزی شبیه به team viewer
      البته مشکل من دستوراتش نیست . مشکل اصلیم برقراری ارتباط بین این دو تا دیوایس هستش. دو روش هم پیش گرفتم ولی نتیجه خوبی نداده یکی از طریق ftp  یکی از طریق ارسال ایمیل و دریافتش... و.. 
      اگه کسی میتونه خواهشا کمکم کنه هزینه هم میکنم...
      یا یه نمونه سورسی ساخته بشع هم بقیشو خودم ادامه میدم.
      راه حل هاتونم پیشنهاد کنید مرسی 
    • توسط H@mid.RS
      Basic4Arduino
      مشاهده فایل
      درود


      با برنامه توسعه دهنده برد های آردوینو در خدمت شما هستیم


      این برنامه همانند برنامه های دیگر برنامه نویسی مرجع بیسیک زبان برنامه نویسی بیسیک بوده و به راحتی می توانید با اموزش های که در انجمن ما قرار داده می شود برای برد خود برنامه بنویسید

       
       



       
       

      چگونه نصب کنید :


      اول از همه ما به پیش نیاز برنامه برای اجرا روی برد نیاز داریم


      از لینک زیر برنامه اخرین نسخه برنامه آردینو IDE (1.6.7+) رو در لینک زیر می تونید دانلود و برای ویندوز یا هر سیستم عاملی که دارید دانلود کنید :


      https://www.arduino....n/Main/Software


      ما تنها مدل های Uno, Mega و Due رو تست کردیم و کاملا جواب داده است.

       


      در پناه حق




      ارسال کننده H@mid.RS ارسال ۱۶/۰۸/۰۵ دسته Basic4Arduino  
×