реклама на сайте
подробности

 
 
> I2C анализатор
Woodoo
сообщение Aug 4 2006, 06:06
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 31
Регистрация: 26-05-05
Из: Севастополь
Пользователь №: 5 391



Доброго времени суток.
Есть необходимость собрать анализатор шини I2C.

Анализатор должен собирать всю информацию о шине, т.е. все возможные временные параметры, такие как длительность единиц, длительность нолей, частота следования клока, качество старт и стоп условий, нарастание-спад уровней, время удержания акнолоджеса ведомым, возникновения коллизий на шине (хотя едвали получится, из-за специфики работы мультимастера). Так же вся собранная информация + сами данные должны передаваться в компьютер по рс-232.

Ничего сложного нет, как говорится: бери да пиши... НО
Аппаратный I2C AVR не обладает всеми нужными ф-циями, им можно только данные собирать. Следовательно нужен програмный I2C. Но сильно сомниваюсь, что програмный и2ц сможет отслеживать шину, работающую на полной скорости (до МГц или хотя бы до 400 кГц клока).

Вопрос: что посаветуйте, может стоит воспользоваться более скоростным камнем? Или может собрать часть анализатора на жесткой логике?
Может у кого был подобный проект?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
bodja74
сообщение Aug 5 2006, 14:05
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 543
Регистрация: 22-10-05
Пользователь №: 9 984



Согласен с Whale
Тоже была мысля сделать монитор И2Ц,кинулся на меги там только фиксированный адресс и общий,
а на тини2313 адресации нет и сам USI попроще чем TWI у мег.
По пинам можно в цикле читать длительность,а по прерыванию паковать байты,жаль только
что нет флажка или прерывания СТОП и протокол шины не привязан к частоте,можно управлять хоть тумблерами ,поэтому расчет длительности может быть только в определенных пределах.
В любом случае ,если что получится пишите мне на личку,мне тоже эта тема интересна.
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Dec 22 2006, 01:30
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(SasaVitebsk @ Aug 5 2006, 14:05) *
Аппаратный не подойдёт. Там же надо адрес забивать. А если он не известен?

Посмотри мой проект PULT I2C. В исходниках. Там 2313 работает в качестве SLAVE програмным способом. Вам только прерывание надо разобрать. На 12М по-моему до 100кГц работала. Конечно переделать предётся, но посмотреть можно.


Цитата(bodja74 @ Aug 5 2006, 14:05) *
Согласен с Whale
Тоже была мысля сделать монитор И2Ц,кинулся на меги там только фиксированный адресс и общий,
а на тини2313 адресации нет и сам USI попроще чем TWI у мег.
По пинам можно в цикле читать длительность,а по прерыванию паковать байты,жаль только
что нет флажка или прерывания СТОП и протокол шины не привязан к частоте,можно управлять хоть тумблерами ,поэтому расчет длительности может быть только в определенных пределах.
В любом случае ,если что получится пишите мне на личку,мне тоже эта тема интересна.


Да господа. Но времена меняются.

Обратите внимание на регистр маски (TWAMR) для МК Atmega88. И мой проект красиво ложится на аппаратные возможности данной микрухи. Жаль что на момент написания её ещё не было. smile.gif Таким образом можно (уже можно) отвечать на любой адрес и делать програмный монитор I2C. (Конечно без тайминга зато на достаточно высокой скорости).

Это конечно прекрасно, что разработчики AVR учитывают пожелания разработчиков (уж не знаю как они до них доходят), но это возвращает нас к уже состоявшемуся разговору о серьёзной непродуманности многих решений и внесении заплаток "на ходу". Что плодит множество решений при ощущении отсутствия общего подхода. А с точки зрения программиста, серьёзно усложняет написание и заимствование библиотек.
Надо непрерывно следить за новыми кристаллами. Трудно предугадать что ещё они там подкинут.

Давайте же выпьем за ATMEGA888!
Go to the top of the page
 
+Quote Post
bodja74
сообщение Dec 23 2006, 22:06
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 543
Регистрация: 22-10-05
Пользователь №: 9 984



Цитата(SasaVitebsk @ Dec 22 2006, 01:30) *
Да господа. Но времена меняются.

Обратите внимание на регистр маски (TWAMR) для МК Atmega88.

Давайте же выпьем за ATMEGA888!


Я уже давно хлопаю глазами на эту линейку,в дополнение скажу есть куча ШИМ и возможность внешнего прерывания практически от каждой ноги,что решает очень много проблем по перехвату внешних событий .Жаль инфы на русском по ним мало,на досуге сделаю себе компьютерный перевод.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Woodoo   I2C анализатор   Aug 4 2006, 06:06
- - beer_warrior   Сильно зависит от точности, если хватит 10-20 сэмп...   Aug 4 2006, 07:17
- - vanner   Пробовал сделать более простой анализатор, отлов с...   Aug 4 2006, 13:58
- - Tiro   Уважаемый Woodoo! Цитата(Woodoo @ Aug 4 ...   Aug 4 2006, 15:19
- - SasaVitebsk   Цитата(Woodoo @ Aug 4 2006, 09:06) Доброг...   Aug 4 2006, 19:17
|- - defunct   Цитата(SasaVitebsk @ Aug 4 2006, 22:17) Т...   Aug 4 2006, 21:35
- - WHALE   Цитата(defunct @ Aug 5 2006, 01:35) Цитат...   Aug 5 2006, 03:38
|- - SasaVitebsk   Цитата(bodja74 @ Dec 23 2006, 22:06) Я уж...   Dec 25 2006, 01:18
- - ValeraK   Цитата(Woodoo @ Aug 4 2006, 12:06) Или мо...   Aug 8 2006, 04:35
- - yarunt   Есть готовый вариант   Dec 21 2006, 14:30
- - andr_doy   Собрал вот такой работает - очень помог (покруче б...   Dec 22 2006, 15:43
- - SasaVitebsk   Цитата(andr_doy @ Dec 22 2006, 15:43) Тем...   Dec 22 2006, 22:58
- - khach   Проще всего конечно анализировать двухканальным ци...   Dec 23 2006, 15:51


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 15:48
Рейтинг@Mail.ru


Страница сгенерированна за 0.01378 секунд с 7
ELECTRONIX ©2004-2016