ايران ويج

نسخه‌ی کامل: ارتباط چند دستگاه با یکدیگر به وسیله میکرو.
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
سلام دوسان گل گلاب.

من میخام بین سه تا میکرو ارتباط برقرار کنم میکروی اول باید یک دستگاه در میکرو دوم و یک دستگاه در میکروی سوم روشن خاموش کنه.
میکرو دوم یک دستگاه در میکروی اول خاموش روشن میکنه.
میکرو سوم یک دستگاه دیگر در میکروی اول خاموش روشن میکنه.

ارتباط سه تا میکرو Usart.
من میکروی اول و دوم وصل کردم خوب کار کرد اما میکروی سوم رو وقتی وصل میکنم قاطی میکنه.
میشه راهنمایی کنین.نکته ایی چیزی داره؟؟
سه تا میکرو میشه هم نقش فرستنده و هم نقش گیرنده رو بازی کنن؟؟
سلام.
مشکلی که نداره ، شما 256 تا باهم ببند ، ولی باید هر دستگاه رو کد بندی کنی ، مثلا وقتی میخوای یک دستوری رو به میکرو 2 بدی ، مثلاً اول ( به عنوان مثال میگما ) عدد 251 رو بفرستی برای همه ی میکرو ها ، اون میکرویی که کد 251 رو داره که در اینجا فرض شده میکرو شماره 2 کد 251 رو داره ، خودش دیگه آماده دریافت اطلاعات میشه و شما میتونی اطلاعات رو بفرستی ، در اینجا همه ی میکرو ها اون دستوراتو دریافت میکنن ، اما چون کد 251 اول فرستادی بقیه کاری به اون داده ها ندارند و میکرو شماره 2 فقط با اون داده ها کار داره.
شما میتونی یک کاره دیگه هم بکنی که ساده تره ، اونم اینه که بین میکرو 1و2 از uart استفاده کنی و بین 1و3 از i2c استفاده کنی.
موفق باشی.
نه دیگه اگه هر سه تا هم نقش فرستنده داشته باشن هم گیرنده اون موقع مشکل پیش میاد چون نمیشه RXTX هر سه رو به هم وصل کردBiggrin
برای این کار باید Uart رو در حالت Half Duplex راه اندازی کنید یعنی RXTX روی یک خط داده باشن و هی سوئیچ کنند + روشی که گفته شد یعنی ادرس دهی به هر میکرو
تا مشکلی پیش نیاد البته باید به هر سه میکرو پایه ای اختصاص بدید که فعال بودن RXTX رو مشخص کنه و هنگام دریافت یا ارسال داده دو میکرو دیگه پا برهنه نیاد وسطBiggrin
سلام
میتونی یک میکرو مستر در نظر بگیری و دو تای دیگه اسلیو در نظر بگیر به این شرط که ارتباط دو طرفه باشه
شما در دوتا میکرو اسلیو سریال رو به صورت اینتراپتی بخون
و در میکرو اسلیو هم یکی رو اینتراپتی بخون و یکی دیگه رو با دستور INPUT بخون
جواب میده ، چون خودم قبلا درست کردم