ايران ويج

نسخه‌ی کامل: مشکل در ارتباط دو میکرو
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2
ممنون از راهنماییت
ببین من الان داخل پروتئوس دوباره تستش کردم این دفعه خودم یک کلید مستقیم به یکی از پایه های میکرو وصل کردم و با زدن کلید پین میکرو مبدا رو 1 کردم ولی باز هم نشد.
بعد با اسیلوسکوپ پروتئوس یک نمونه از سیگنال پایه SS میکرو مقصد گرفتم یک موج مربعی ثابت ظاهر شد من که زیاد سر در نمیارم شاید شما بتونی اون سیگنال رو کشف کنی.
مهندس اونجوری کلید وصل نمی کنن ! از ابزار LOGIC استفاده کن !!
در ضمن باید قطع و وصل بشه !!

واسه من که الان درسته و میکرو سمت راست اعداد فرد و سمت چپ اعداد زوج رو دریافت می کنه !
SS ها به PORTA وصله !!

بعد به نظر میاد پروتئوست خیلی قدیمه !
از 7.5 به بالا ( پیشنهاد 7.7 ) استفاده کن تا در حین تست بتونی برنامه میکرو و مقدار متغیرها رو هم بخونی !!!
سلام دوست عزیزم مشکلم حل شد البته با برنامه شما
حالا چطور می شه یک عدد بین 1000 تا 1000000 رو به میکرو مقصد انتقال داد خودم یه برنامه
نوشتم می خوام یه نگاهی بندازی از عدد 0 تا 1000 مشکلی نداره و درست دریافت می کنه ولی وقتی عدد 9999 رو می فرستم یک عدد دیگه می ده مشکل کار از کجاست. یه سوال دیگه اون وقفه interrupts که توی برنامه فعال کردی چه فعالیتی انجام میده من کلا از این وقفه ها سر در نمیارم نمیدونم وظیفه اصلی شون چیه؟ (خوب مبتدیم دیگه) .من توی برنامه خودم به جای اینکه پین هارو اول صفر کنم بعد یک برعکس عمل کردم فکر می کنم مشکل کار همینجا بود.باز هم از راهنمایی های شما ممنونم ازین که وقتتونو برای من گذاشتید .(یک سوال دیگه این دکمه تشکر رو چطوری فشار بدم یه صدتا تشکری برای شما بفرسته؟؟؟!!!)
این فایلها هستش
مهندس من یه حرکاتی انجام دادم که شاید یه خورده کدها رو زیاد کرده ولی عملکرد و نویزپزیریش خوبه !!

خودت ببین :

[attachment=5305]


برنامه مستر :

کد php:
$regfile "m16def.dat"
$crystal 1000000

Config Lcdpin 
Pin Db4 Pind.4 Db5 Pind.5 Db6 Pind.6 Db7 Pind.7 Rs Pind.2 Pind.3
Config Lcd 
16 Cursor Off Cls

Config Spi 
Hard Interrupt Off Data Order Msb Master Yes Polarity Low Phase Clockrate 128 Noss 0
Config Porta 
Output
Spiinit 
Enable Interrupts

Dim A 
As Byte As Byte As String 20 Ss As String 1
Dim L 
As Long As Byte

999999

Do

   
"ANT=" Str(l) : Len(s)

   For 
1 To T

      Ss 
Mid(1) : Ss
      Spiout A 
1

   Next

   A 
13 Spiout A 1

   Wait 1

   Incr L

Loop
End 

برنامه اسلیو :

کد php:
$regfile "m8def.dat"
$crystal 1000000

Config Lcdpin 
Pin Db4 Pind.4 Db5 Pind.5 Db6 Pind.6 Db7 Pind.7 Rs Pind.2 Pind.3
Config Lcd 
16 Cursor Off Cls

Config Spi 
Hard Interrupt Off Data Order Msb Master No Polarity Low Phase Clockrate 128
Spiinit 
Enable Interrupts

Dim A 
As Byte As String 20 Ss As String 20 As Long

Do

   
Spiin A 1

   
If 13 Then :

      
Ss Mid()

      If 
Ss "ANT=" Then :

         
Ss Mid(15)

         
Val(ss)

         
Cls Lcd L
         Home L 
Lcd S

      End 
If

      
Chr(0)

   Else :

      
Chr(a)

   
End If

Loop 
صفحه‌ها: 1 2