Отговори на тема  [ 9 мнения ] 
Въпрос за практически опит с I2C 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Яну 30, 2006 2:48 am
Мнения: 1248
Местоположение: София
Мнение Въпрос за практически опит с I2C
Налага ми се да свържа датчик, с I2C интерфейс, но с опция за отдалечена връзка - мин 2м, макс 4м.
Не ми се ще да слагам втори процесор, само заради дължината на жицата.
Някой има ли практически опит с удължаване на I2C жиците.
Очевидно е, че трябва да се намали максималната честота, въпроса е с колко, и което е по-съществено, в кой момент настъпват фатални отражения по клока.


Сря Авг 01, 2007 12:55 pm
Профил WWW
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Чет Дек 02, 2004 7:22 pm
Мнения: 140
Мнение 
дръж клока и данните по-разделени и честотата на 100кхз, няма да има никакви проблеми. Да и пулъпа може да го понамалиш на 3-4 кома


Сря Авг 01, 2007 1:17 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 6:52 pm
Мнения: 11266
Местоположение: Добрич
Мнение 
Проблемът е общ и важи за всяка шина в която се ползва отворен колектор, т.е. не само I2C.
Всичко зависи от паразитните капацитети. Примерно bga модул на телит на 5см писта иска <5к пулъп за да поддържа 100кбит, ама тва е щото тъпанарите са сложели кондензатори за ESD. Иначе може и на няколко метра да опънеш мегабити.
Отражения на клока чак не съм виждал, проблемът обикновено е положителния фронт при който паразитните кондензатори трябва да се нахранят през пулъпа. Примерно 10pF през 10К имаш 100нС константа което е супер, ама ако искаш малък ток и сложиш 47К и го натовариш с 100пФ - времеконстантата ти скача на 4.7uS, което като честота е почти 100кХц, ама реално заради семплирането и 9600 трудно ще тръгне...

Ако не държиш да гониш точно I2C стандарта и го емулираш софтуерно през МЦУ може да си го пачнеш леко. Примерно ако няма паузиране от страна на датчика, клока спокойно може да го пуснеш пуш-пул и нямаш грижи с капацитетите. А за данновия, когато ти предаваш може пак да е пуш-пул на висока скорост, когато приемаш може да ползваш асиметричен клок.
Или пък да изкарваш една бърза 1-ца преди четене (стига изхода ти да е ограничен по ток) - тогава ако слейва държи нула ще имаш един пик консумация но нивото няма мръдне. Ако слейва иска да предаде 1 и преди това е било 0, с пикчето помагаш на пулъпа да смени фронта по-бързо...


Сря Авг 01, 2007 2:55 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 12, 2004 3:38 pm
Мнения: 9103
Местоположение: Chicago, IL
Мнение 
Правил съм такова нещо с датчик и процесор и максимума, който постигнах беше около 15 метра с 1к пъл-ъп резистори. Джаджата работи стабилно около 2 г., после просто вече нямах нужда от нея. Така, че - става 8) .


Сря Авг 01, 2007 3:13 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Яну 30, 2006 2:48 am
Мнения: 1248
Местоположение: София
Мнение 
Благодаря
I2C-то ми трябва за 3-4 метра, и от към процесора се емулира, така че ще мога да приложа при нужда и софтуерни номера.
Пък и датчика си има вградено CRC.


Сря Авг 01, 2007 9:10 pm
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 20, 2005 12:02 pm
Мнения: 9119
Местоположение: Разград
Мнение 
Sirius-B, за SHT11 ли говориш, щото ако е за него, ти препоръчвам обезателно да му ползваш CRC-то. Иначе съм закачал на 20 метра TCN75 (microchip) без никакви проблеми на 100 kHz, а SHT-то на 3-4 метра и почна да дава грешки и то на по ниски честоти. Горе долу на 30 обмена един се дъни.


Чет Авг 02, 2007 10:06 am
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Сеп 26, 2004 4:11 pm
Мнения: 3750
Местоположение: София
Мнение 
Нещата стават доста по-розови, ако можеш да добавиш един тригер на Шмид на клока, непосредствено до отдалечения чип. За съжаление този номер не минава с данните. Освен това, колкото по-нискоомни са pull-up - инте, толкова по-добре. Провери какъв изходен ток могат да дават чиповете и оттам си подбери резисторите. Препоръчвам ти да ги разделиш на 2 места : 2 резистора до процесора и два до далечния чип. Не забравяй кондензаторите паралелно на захранването.
Не се обръща много внимание на кабела, а той е важен. UTP не е добър вариант, защото има ниско вълново съпротивление ( 110 ома ) и голям капацитет, обикновено е около 15pF/m. Ако имаш избор, премери капацитета на кабела и вземи най-ниския.


Чет Авг 02, 2007 12:03 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 6:52 pm
Мнения: 11266
Местоположение: Добрич
Мнение 
ето нещо съвсем прясно (от вчера):

Application Note - AT91-AN01: Using the Two-wire interface (TWI) in
Master Mode on AT91SAM Microcontrollers - Rev. A - 2007-07-31 -
http://www.atmel.com/dyn/general/tech_d ... c_id=11269

Има точните формули за смятане на съпротивления и разни други полезни нещица...


Чет Авг 02, 2007 12:39 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 20, 2005 12:02 pm
Мнения: 9119
Местоположение: Разград
Мнение 
Бате, ползвах кабел дето го ползват СОТаджиите (6 жилен с ширмовка около 5 м.). Датчика SHT75 е също като SHT11 само, че запоен на платчица, с крачета и с кондензатор между захранванията. На съшия кабел има сложен и TCN75 за калибриращо измерване на температурата (при включено отопление на SHT-то). SHT-то ръси грешки постоянно - минимум по 1 на минута. TCN-a - никакви грешки на 100 kHz. Двете са на отделни шини поради софтуерни съображения. И освен това SHT е на софт а другия на хардуерния I2C модул. Софт. е с 3.3К пулъп а хард. с 5К. Само дето не ми дойде на акъла да сложа пулъп и при датчика, но поне си признавам, че съм все още начинаещ и се уча. Още едно доказателство че форума е много полезно място да се научи това онова, стига да знаеш как :)


Чет Авг 02, 2007 1:09 pm
Профил ICQ
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 9 мнения ] 

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 0 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни