میخام با استفاده از تایمر صفر در بیسکام در اجرای برنامه تاخیر ایجاد کنم دقیقا مثل دستور wait لطفا منو در این مورد راهنمایی کنید
اطلاعیه
Collapse
No announcement yet.
ایجاد تاخیر با تایمر صفر
Collapse
X
-
پاسخ : ایجاد تاخیر با تایمر صفر
سلام
اگه از تایمر 2 استفاده کنی به نظرت بهتر نیست . تازه اینطوری می تونی rtc بهش وصل کنی تا زمان wait ها دقیقتر بدست بیاد
موفق باشیدانجمن LABVIEW
http://www.eca.ir/forum2/index.php?board=279.0
اموزش میکروکنترلرهای AVR به زبان ساده
http://www.eca.ir/forum2/index.php/topic,7070.0.html
دیدگاه
-
پاسخ : ایجاد تاخیر با تایمر صفر
همونطور که بار دوم فرمودین این دستور رو به کار بردم و به خوبی جواب داد .البته به جای عددصفر عدد 255 رو قرار دادم .یعنی موقعی که تایمر پر شد بقیه دستورات رو انجام بده
چون از تایمر 2 یجای دیگه از برنامه به طور همزمان استفاده کردم .امکان استفاده از تایمر 2 وجود ندارهروزی که درک کردیم همه چیز به خدا تعلق دارد . آن روز .روز طلوع دانش است
دیدگاه
-
پاسخ : ایجاد تاخیر با تایمر صفر
برنامه ای رو مه نوشتم میزارم ببینید ایرادش از کجاس با سیمولاتور بیسکام و پروتیوس تست کردم مشکلی نداشت ولی به صورت عملی کار نمیکنه
$regfile = "m16def.dat"
Config Porta = Output
Config Portb = Output
Config Portc = Output
Dim A As Byte
Dim B As Byte
Dim C As Byte
Dim D As Byte
Dim T As Byte
Dim X As Byte
Config Timer0 = Timer , Prescale = 1024
Stop Timer0
A = 0
B = 0
C = 0
X = 20
T = 0
D = 0
Do
For D = 1 To 255
Incr A
Porta = A
Gosub Wait_rot
Next D
D = 0
Gosub Main_wait
For D = 1 To 255
Incr B
Portb = B
Gosub Wait_rot
Next D
D = 0
Gosub Main_wait
For D = 1 To 255
Incr C
Portc = C
Gosub Wait_rot
Next D
D = 0
Gosub Main_wait
For D = 1 To 255
Decr A
Porta = A
Gosub Wait_rot
Next D
D = 0
For D = 1 To 255
Decr B
Portb = B
Gosub Wait_rot
Next D
D = 0
Gosub Main_wait
For D = 1 To 255
Decr C
Portc = C
Gosub Wait_rot
Next D
D = 0
Gosub Main_wait
Loop
End 'end program
Wait_rot:
Timer0 = 220
Start Timer0
Do
Loop Until Timer0 = 255
Stop Timer0
Return
Main_wait:
Timer0 = 155
Start Timer0
Do
Loop Until Timer0 = 255
Timer0 = 155
Stop Timer0
Incr T
Select Case T
Case Is = 20 : Stop Timer0
T = 0
Return
Case Else : Gosub Dor
End Select
Dor:
Gosub Main_wait
Return
روزی که درک کردیم همه چیز به خدا تعلق دارد . آن روز .روز طلوع دانش است
دیدگاه
-
پاسخ : ایجاد تاخیر با تایمر صفر
تاخیری که با این دستور ایجاد میشه بسته به عددی داره که داخل رجیستر تایمر میریزید حالا اگه مثلا 255 رو بریزین با اولین کلاک فلگ یک میشه و میکرو روی این دستور توقف نمی کنه تاخیر مورد نیاز رو از 256 باید کم کنید مثلا عدد 150 رو توی تایمر لود کنید . حالا اگه بازم نیاز به استفاده از این رو تین دارین بازم باید عدد رو تو تایمر بریزین. شاید یادتون میره تایمر رو پر کنین یا به موقع استارت و استپ کنین
دیدگاه
دیدگاه