امتیاز موضوع:
  • 1 رأی - میانگین امتیازات: 2
  • 1
  • 2
  • 3
  • 4
  • 5
اجرای همزمان دو دستور تو بسکام
نویسنده پیام
رسول21 آفلاین
كاربر تک ستاره
*

ارسال‌ها: 25
موضوع‌ها: 11
تاریخ عضویت: اسفند ۱۳۸۸

تشکرها : 19
( 13 تشکر در 8 ارسال )
ارسال: #1
اجرای همزمان دو دستور تو بسکام
با سلام دوستان من دو برنامه فلاشر چشمک زن دارم برنمه1 و2 میخام برنامه یک همزمان با برنامه دو اجرا بشن کداشو گزاشتم چکار میشه کرد؟
برنامه یک:
کد:
$regfile = "m8def.dat"
$crystal = 1000000
Config Portc = Output
Config Portd = Output
Config Portb = Output


Do
Reset Portd.2
Set Portd.0
Waitms 100
Reset Portd.0
Set Portd.1

Waitms 100
Reset Portd.1
Set Portd.2

Waitms 100
Loop

برنامه دو:

کد:
$regfile = "m8def.dat"
$crystal = 1000000
Config Portc = Output
Config Portd = Output
Config Portb = Output
Dim F1 As Byte
Dim F2 As Byte
Dim F3 As Byte
Dim F4 As Byte
Dim F5 As Byte
Dim F6 As Byte
Dim F7 As Byte
Dim F8 As Byte
Dim F9 As Byte
Dim F10 As Byte
Dim F11 As Byte

Do

For F1 = 1 To 25

Toggle Portd.3
Toggle Portd.4
Toggle Portd.5
Toggle Portd.6
Toggle Portd.7
Toggle Portb.0
Toggle Portc.0
Toggle Portc.1
Toggle Portc.2
Toggle Portc.3
Toggle Portc.4
Toggle Portc.5
Waitms 250
Next F1

For F2 = 1 To 25
Reset Portd.3
Reset Portd.4
Reset Portd.5
Reset Portd.6
Reset Portd.7
Reset Portb.0
Reset Portc.0
Reset Portc.1
Reset Portc.2
Reset Portc.3
Reset Portc.4
Reset Portc.5

Waitms 150
Set Portd.3
Set Portd.4
Waitms 200
Set Portd.5
Set Portd.6
Waitms 200
Set Portb.0
Set Portd.7
Waitms 200
Set Portc.0
Set Portc.1
Waitms 200
Set Portc.2
Set Portc.3
Waitms 200
Set Portc.4
Set Portc.5
Waitms 200
Reset Portd.3
Reset Portd.4
Waitms 100

Reset Portd.5
Reset Portd.6
Waitms 100
Reset Portd.7
Reset Portb.0
Waitms 100
Reset Portc.0
Reset Portc.1
Waitms 100
Reset Portc.2
Reset Portc.3
Waitms 100
Reset Portc.4
Reset Portc.5
Waitms 100

Next F2
Set Portd.3
Set Portd.4
Set Portd.5
Set Portd.6
Set Portd.7
Set Portb.0
Set Portc.0
Set Portc.1
Set Portc.2
Set Portc.3
Set Portc.4
Set Portc.5

For F3 = 1 To 3
For F4 = 1 To 50

Toggle Portd.3
Toggle Portd.4
Waitms 60
Next F4
For F5 = 1 To 50
Toggle Portd.5
Toggle Portd.6
Waitms 60
Next F5

For F6 = 1 To 50
Toggle Portd.7
Toggle Portb.0
Waitms 60
Next F6

For F7 = 1 To 50
Toggle Portc.0
Toggle Portc.1
Waitms 60
Next F7

For F8 = 1 To 50
Toggle Portc.2
Toggle Portc.3
Waitms 60
Next F8

For F9 = 1 To 50
Toggle Portc.4
Toggle Portc.5
Waitms 60
Next F9
Next F3

Loop


فایل‌(های) پیوست شده
.rar   New Folder.rar (اندازه: 14.5 KB / تعداد دفعات دریافت: 37)
۱۹-اسفند-۱۳۹۲, ۱۹:۲۴:۲۲
ارسال‌ها
پاسخ
behzady آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 1,169
موضوع‌ها: 57
تاریخ عضویت: آبان ۱۳۹۰

تشکرها : 4094
( 6339 تشکر در 2085 ارسال )
ارسال: #2
RE: اجرای همزمان دو دستور تو بسکام
منظورتون اینه که یه میکرو این کارو بکنه؟ یا روی دو میکرو؟ روی یک میکرو نمیشه دو برنامه رو هم زمان اجرا کرد
---
اما روی دو میکرو چه چیزیش باید هم زمان باشه؟!! یعنی کدوم قسمت های برنامه 1 باید همزمان با کدوم قسمت 2 هم زمان باشه؟

به همه عشق بورز، به معدودی اعتماد کن و در حق کسی بدی نکن.
ویلیام شکسپیر

نباید ایمان به انسانیت را از دست دهید. انسانیت یک اقیانوس است؛ اگر قطرات اندکی از اقیانوس کثیف است، اقیانوس کثیف نمی‌شود.
مهاتما گاندی

يَا أَيُّهَا الَّذِينَ آمَنُواْ اسْتَعِينُواْ بِالصَّبْرِ وَالصَّلاَةِ إِنَّ اللّهَ مَعَ الصَّابِرِينَ
۱۹-اسفند-۱۳۹۲, ۲۰:۲۸:۲۵
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : رسول21, Ambassador, babyy
رسول21 آفلاین
كاربر تک ستاره
*

ارسال‌ها: 25
موضوع‌ها: 11
تاریخ عضویت: اسفند ۱۳۸۸

تشکرها : 19
( 13 تشکر در 8 ارسال )
ارسال: #3
RE: اجرای همزمان دو دستور تو بسکام
(۱۹-اسفند-۱۳۹۲, ۲۰:۲۸:۲۵)behzady نوشته است: منظورتون اینه که یه میکرو این کارو بکنه؟ یا روی دو میکرو؟ روی یک میکرو نمیشه دو برنامه رو هم زمان اجرا کرد
---
اما روی دو میکرو چه چیزیش باید هم زمان باشه؟!! یعنی کدوم قسمت های برنامه 1 باید همزمان با کدوم قسمت 2 هم زمان باشه؟
میخام روی یه میکرو همزمان اجرا بشه؟Clap
۱۹-اسفند-۱۳۹۲, ۲۰:۴۳:۲۵
ارسال‌ها
پاسخ
robojalal آفلاین
كاربر دو ستاره
**

ارسال‌ها: 162
موضوع‌ها: 11
تاریخ عضویت: شهریور ۱۳۸۹

تشکرها : 125
( 463 تشکر در 142 ارسال )
ارسال: #4
RE: اجرای همزمان دو دستور تو بسکام
سلام
برای این کار باید از تایمر استفاده کنی

کد:
$regfile = "m8def.dat"
$crystal = 8000000

Config Portc = Output
Config Portd = Output
Config Portb = Output


Dim F1 As Byte
Dim F2 As Byte
Dim F3 As Byte
Dim F4 As Byte
Dim F5 As Byte
Dim F6 As Byte
Dim F7 As Byte
Dim F8 As Byte
Dim F9 As Byte
Dim F10 As Byte
Dim F11 As Byte

'*********************************************
Config Timer1 = Timer , Prescale = 8
Enable Timer1
On Ovf1 Jalal
Start Timer1
Dim Count As Byte
Enable Interrupts
'********************************************

Do

For F1 = 1 To 25

Toggle Portd.3
Toggle Portd.4
Toggle Portd.5
Toggle Portd.6
Toggle Portd.7
Toggle Portb.0
Toggle Portc.0
Toggle Portc.1
Toggle Portc.2
Toggle Portc.3
Toggle Portc.4
Toggle Portc.5
Waitms 250
Next F1

For F2 = 1 To 25
Reset Portd.3
Reset Portd.4
Reset Portd.5
Reset Portd.6
Reset Portd.7
Reset Portb.0
Reset Portc.0
Reset Portc.1
Reset Portc.2
Reset Portc.3
Reset Portc.4
Reset Portc.5

Waitms 150
Set Portd.3
Set Portd.4
Waitms 200
Set Portd.5
Set Portd.6
Waitms 200
Set Portb.0
Set Portd.7
Waitms 200
Set Portc.0
Set Portc.1
Waitms 200
Set Portc.2
Set Portc.3
Waitms 200
Set Portc.4
Set Portc.5
Waitms 200
Reset Portd.3
Reset Portd.4
Waitms 100

Reset Portd.5
Reset Portd.6
Waitms 100
Reset Portd.7
Reset Portb.0
Waitms 100
Reset Portc.0
Reset Portc.1
Waitms 100
Reset Portc.2
Reset Portc.3
Waitms 100
Reset Portc.4
Reset Portc.5
Waitms 100

Next F2
Set Portd.3
Set Portd.4
Set Portd.5
Set Portd.6
Set Portd.7
Set Portb.0
Set Portc.0
Set Portc.1
Set Portc.2
Set Portc.3
Set Portc.4
Set Portc.5

For F3 = 1 To 3
For F4 = 1 To 50

Toggle Portd.3
Toggle Portd.4
Waitms 60
Next F4
For F5 = 1 To 50
Toggle Portd.5
Toggle Portd.6
Waitms 60
Next F5

For F6 = 1 To 50
Toggle Portd.7
Toggle Portb.0
Waitms 60
Next F6

For F7 = 1 To 50
Toggle Portc.0
Toggle Portc.1
Waitms 60
Next F7

For F8 = 1 To 50
Toggle Portc.2
Toggle Portc.3
Waitms 60
Next F8

For F9 = 1 To 50
Toggle Portc.4
Toggle Portc.5
Waitms 60
Next F9
Next F3

Loop

End
'-----------------------------------
Jalal:
Incr Count
If Count > 5 Then Count = 0
If Count = 1 Then
   Reset Portd.2
   Set Portd.0
Elseif Count = 3 Then
   Reset Portd.0
   Set Portd.1
Elseif Count = 5 Then
   Reset Portd.1
   Set Portd.2
End If
Return
'-----------------------------------

موفق باشی ....



در راه علم هیچ وقت نگید نمی تونیم ، همه چیز تونستنی هست و فقط کمی اراده میخواد ، که شما دارین .Cool


http://robo-elec.blogfa.com

(آخرین ویرایش در این ارسال: ۱۹-اسفند-۱۳۹۲, ۲۳:۱۲:۵۹، توسط robojalal.)
۱۹-اسفند-۱۳۹۲, ۲۳:۱۲:۱۶
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : babyy, behzady, hadikh73, رسول, alfaalarm


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  [سوال] خواندن داده های یک فایل روی هارد در برنامه بسکام Ambassador 1 739 ۲۸-تير-۱۳۹۹, ۱۶:۱۴:۱۴
آخرین ارسال: Ambassador
  مشکل با eeprom بسکام کمک sky_man847 2 4,380 ۱۲-مهر-۱۳۹۷, ۰۰:۴۷:۰۸
آخرین ارسال: lrn1380
  [سوال] کانتر در بسکام questnet 7 3,486 ۱۲-مرداد-۱۳۹۷, ۰۱:۵۵:۵۴
آخرین ارسال: questnet
  شمارش تعداد پالس های یک دستور؟ Ambassador 2 2,996 ۲۷-اردیبهشت-۱۳۹۶, ۱۶:۲۰:۵۶
آخرین ارسال: Ambassador
  مشکل در کار با تایمر 1 در بسکام klick 3 4,535 ۳۰-بهمن-۱۳۹۵, ۰۴:۰۴:۴۲
آخرین ارسال: omid_phoenix
  افکت کم نور و پر نور شدن تدریجی با بسکام؟ رسول21 19 18,305 ۲۱-بهمن-۱۳۹۵, ۱۴:۲۹:۴۲
آخرین ارسال: hadikh73
  راهنمایی برای حل مشکل برنامه در بسکام fedagh 2 3,420 ۱۲-دى-۱۳۹۵, ۱۸:۳۰:۵۹
آخرین ارسال: fedagh
Question [فوری] اتصال lcd گرافیکی به پایه های دلخواه میکرو در بسکام behzadsen 4 4,337 ۰۵-دى-۱۳۹۵, ۱۵:۲۵:۳۰
آخرین ارسال: behzadsen
  دستور delay_ms واقعی کار نمیکنه 67Sama 3 3,180 ۱۱-آبان-۱۳۹۵, ۰۰:۲۱:۳۷
آخرین ارسال: behzady
  ولتمتر با AVR و بسکام electroavr 163 141,219 ۰۹-شهریور-۱۳۹۵, ۰۹:۱۹:۲۴
آخرین ارسال: alimogmov

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 2 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS