سلام
از تمامی علما وفضلا و بزرگان این سایت و سایت ir-micro.com میخواهم هر تجربه ای در مورد i2c دارن بیارن بزاران تا این مطلب کامل بشه تا بشه اون به کار برد مگه من چقدمیتونم سوال کنم وفقط آقا سیعد جواب بده:s
متشکر
سلام
از تمامی علما وفضلا و بزرگان این سایت و سایت ir-micro.com میخواهم هر تجربه ای در مورد i2c دارن بیارن بزاران تا این مطلب کامل بشه تا بشه اون به کار برد مگه من چقدمیتونم سوال کنم وفقط آقا سیعد جواب بده:s
متشکر
سلام
خب بازم من و مدير سايت
در مورد اينكه چه دستگاهاي رو ميشه i2c كه و چه قابليت هاي دارند و چه مشكلاتي دارند و آيا كامپيوترها رو ميتوان i2c كرد ؟
محدوديت هاي i2cچيست؟
فكر كنم هر دستگاهي كه قابليت كلاك دادن باشه ميشه i2c كرد. اما دقيق نمي دونم اما محدوديت i2c تا دو متر جواب ميده ولي تو عمل فكر نكنم تا يه متر برسه
دوستان حرف منو تكميل كنند و اگر اشكالي داشت بگن
سلام
شما هر چیزی رو میتونی با i2c ارتباط بدی ، برای کلیه دستگاه ها ماژول تبدیل وجود داره (usb to i2c , spi to i2c ....)در مورد اينكه چه دستگاهاي رو ميشه i2c كه و چه قابليت هاي دارند و چه مشكلاتي دارند و آيا كامپيوترها رو ميتوان i2c كرد ؟
سرعت ، فاصله ، وابستگی زیاد به کلاک نوسان سازمحدوديت هاي i2cچيست؟
نمیشه گفت که هر دستگاهی که خروجی کلاک داشته باشه رو میشه به i2c تبدیل کرد ، مثلا ارتباط سریال spi هم دارای کلاک هست (انواع مموری ها و...) .فكر كنم هر دستگاهي كه قابليت كلاك دادن باشه ميشه i2c كرد. اما دقيق نمي دونم اما محدوديت i2c تا دو متر جواب ميده ولي تو عمل فكر نكنم تا يه متر برسه
دوستان حرف منو تكميل كنند و اگر اشكالي داشت بگن
نرخ انتقال داده ، مکان بیت های داده ، خطا و... از جمله موانع موجود برای اینکار هستند ، در صورتی که دستگاه فاقد پورت i2c باشد ، تنها راه استفاده از مازول تبدیل است
سلام
با عرض پوزش به خاطر چند روز وقفه
سعي ميكنم اين اطلاعاتي رو كه چمع شده رو جمع كنم و به شكل pdf بفرستم
البته من زياد راضي نيستم و احساس ميكنم مطالب كامل نيست
سلام
من هم دارم یه کتاب اماده میکنم به نام "طرز کار قطعات مختلف " ، توی این کتاب طرز کار پروتکل ها ارتباطی ، قطعاتی مثل lcd ، میکرو ، cpu گیت ها و... گفته شده ، مطالب رو بزار ، تا به کتاب اضافش کنم .
سلام
چشم
فقط چند روز فرصت بدین تا جمع و جورش کنم
با سلام.
میرم سر اصل مطلب امیدوارم با اینکه این تاپیک و از اعماق فروم اوردم بالا به جوابم برسم :D
برنامه مستر ( با زدن کلید A0 یک پالس به ادرس H30 و حاوی عدد 122 برای سلیو فرستاده میشه )
Config Sda = Portb.1
Config Scl = Portb.0
Config I2cdelay = 10
I2cinit
Do
If Pina.0 = 1 Then
i2cstart
I2csend &H30 , 122
end if
Loop
برنامه سلیو ( با اینکه ادرسش با ادرس مستر نمی خونه H20 بازم جواب رو به من میده )
Config Sda = Portb.1
Config Scl = Portb.0
Config I2cdelay = 10
I2cinit
dim A as byte
Do
Bitwait Pinb.0 , Reset
i2cstart
I2creceive &H20 , A
Locate 1 , 1
Lcd A
Loop
+++++++++++++++++++++++++++++++
توضیحات بیشتر:
مدار رو بدون کلید بدون bitwait با ادرس های مختلف،با یا بدونه i2cstart و i2cstop به صورت چند سلیوی در مدار و و و تست کردم بازم جواب درست رو به من میده! به عبارتی وقتی دو تا میکرو سلیو با ادرس متفاوت هم میزارم تو مدار برای هر دو فرستاده میشه!
سوال دوم!
آیا برنامه سلیو خودش بر روی خط i2creceive متوقف میشه تا دیتا رو بگیره بعد بره خط بعد؟ (مثل دستور Input که تا دریافت انجام نشه به خط بعد نمیره ). ایا مجبوریم همیشه از bitwait استفاده کنیم؟ اینتراپتی هم وجود نداره؟
یه تصوری داشتم از پست دوستان که قبل تر پست زدن اینه که اطلاعات بر روی باس با زدن i2cstart و i2csend توسط مستر اینقدر می چرخه که یا یک سلیو از اون استفاده کنه یا اینکه خود مستر i2cstop رو بفرسته. ایا این تصور اشتباه است؟
اگر اشتباهه پس به محض ارسال دیتا توسط مستر فورا و بلافاصله سلیو باید بگیره اونو که از دست نره دیگه؟ حتی اجازه 5 میلی ثانیه wait هم نباید داشته باشه ها؟
سوال بعد.
i2csend , i2creceive چه فرقیایی با i2crbyte , i2cwbyte دارن.؟
همچنین دستور i2csend , i2creceive نیاز به i2cstart , stop ندارن درسته؟ چون توی دیباگر پروتوس اگه بازم استارت بزنیم Sr فرستاده میشه (repated start)
سوال بعد.
هر کاری میکنم در دیباگر پروتوس دو تا علامت سوال اول هر خطی میاد! ولی ارسال اطلاعات انجام میشه ایا این مرسومه؟
من ادمی نیستم که زیاد تو فروم پست بزنم، معمولا اینقدر بالا پایین میکنم تو فروم که یکی مثل من مشکل داشته باشه، نشد تو کل نت سرچ میکنم نشد خودم سعی میکنم! ولی واقعا ندیدم این سوالارو
اگر کسی نمونه مثال با بسکام در رابطه با i2c داره ممنون میشم بزاره!
اقای 1nafar گفته بودید تو پستای اول این تاپیک که یه مثال گذاشتید از شبکه بندی ده تا میکرو ! من پیداش نکردم ممکنه راهنمایی کنید یا مثال رو ضمیمه کنید؟
پس این پی دی اف گه گفتید دارین آماده می کنید درباره این پروتکل کو؟در ضمن ماژول آلتراسنیک SRF08 با همین پروتکل کار می کنه اما پایه های a0,a1,2 یا b0.... اینها رو برای آدرس دهی نداره.اینو باید چه جوری آدرس بدیم؟