Bascom AVR Serial Port
کسی میتونه بگه در یک ارتباط سریال چجوری میشه برای هر تراشه Slave یک آدرس قرار داد
یا اینکه تمام Slave ها مجبورند اطلاعات را دریافت کنن و اگه اطلاعات مربوط به اونا بو جواب بدن
من با I2C که کار می کردم یه دستور بود که کمک می کرد هر Slave فقط اطلاعات مربوط به خودشو
بخونه می خواستم ببینم برای UART سخت افزاری هم چنین کاری میشه کرد؟
تو بسکام کسی با RS485
Modbus RTU کار کرده ؟
می خوام چندتا AVR به صورت یک Master و چند تا Slave با هم تبادل دیتا کنن
مخصوصا آدرس تعیین کردن برا هر slaveی برام سواله
سلام مهندس !
چی همه سوال !
مهندس تو ارتباط SPI دیتا به همه ارسال می شه ولی دیگه ادرس نداره بلکه با با پایه فعال ساز اون قطعه ای که می خوایم دیتا رو بگیره میگیم دیتا بگیره و بقیه که رو اون خط هستن نگیرن !!!
نمی دونم مفهومو گفتم یا نه !!
واسه پورت سریال هم چنین چیزی نیست مگر اینکه خودت تو برنامه یه همچین کاری رو بکنی !
مثلا پورت سریال 5 بایت بگیره ! 3 بایت اول آدرس باشه و در صورت برابری آدرس دو بایت بعدی رو بگیره !!!!!
خیلی ممنون از راهنماییتون
یه سوال دیگه
تو بسکام با استفاده از RS485 و به روش مدباسModbus ارتباط برقرار کردید
help بسکام را کامل خوندم یه دستور MakeModbus داره که فقط برای Master استفاده می شده و برا Slave چیزی ندیدم
رو نت هم دنبال نمونه برنامه گشتم همه به اتفاق از دستور CONFIG PRINT برا Rs485 استفده کرده بودند که روند برنامه نویسی برا ارتباطHalfDublex را راحتتر می کنه اما برا مدباس حتی به اندازه ی help بسکام هم چیزی پیدا نکردم
http://www.modbus.org/default.htm
http://www.mcselec.com/index2.php?option...d=28&Itemi
هم مراجع من بودن
در ضمن نمی فهمم در فیلد های ارسالی در این پروتکل منظور Function (03,06,16) چیه
اخه اینا با دستور Print کار می کنه و دریافت دیتا چطور با دستور Print و کد 03 میسر میشه
در ضمن آدرس های رجیستر که کلا نا مفهوم بود
اگه نمونه کدی (مستر و اسلیو ) دارید ممنون میشم
بازم پیشاپش از
RS485 کار نکردم !
این پست به زودی پاک می شود !
نه مشکلم RS485 نیست
RS485 تنها تفاوتی که با 232 داره اینه که HalfDublex و اول برنامه نویسی با دستور Config Print0 = Portd.6 , Mode = Set و در سخت افزار اختصاص دادن portd.6(میتونه هر پایه دیگه ای هم باشه) مشکل را حل کرد و در ادامه کاملا مانند 232 میشه
من مشکلم با پروتکل مدباس هست نمی فهمم منظور از functionوregisteraddreess چیه و برا هر slavi چطوری میشه آدرس تعیین کرد