|
|
 |
Ответов
|
Feb 18 2009, 06:54
|
Участник

Группа: Участник
Сообщений: 42
Регистрация: 4-12-05
Из: Екатеринбург
Пользователь №: 11 773

|
Цитата(ARV @ Feb 18 2009, 11:19)  а разве по стандарту i2c подтяжки делаются 10-килоомными? и что вы подразумеваете под "большими" и "низкими" скоростями? стандартом i2c определено 2 скорости - 100 кбит/с и 400 кбит/с Согласно мануалу... в модуле TWI имеется Bit Rate Generator задающий период следования импульсов по линии SCL. В mege16, к примеру, частота этого генератора задается значениями регистра TWBR и битами TWPS1:TWPS0. Соответственно меняя значение этого регистра, я так понимаю, можно регулировать скорость передачи. В моем случае, при тактовой частоте обоих контроллеров 4МГц, стабильно данные начинают передаваться при TWBR>0x3f, а на меньших значениях происходит потеря некоторых байт. Мне в моем проекте необходимо передавать информацию с максимально возможной для этого интерфейса скоростью, поэтому этот вопрос весьма интересен :-)
|
|
|
|
|
Feb 18 2009, 10:18
|
Местный
  
Группа: Участник
Сообщений: 246
Регистрация: 4-12-06
Пользователь №: 23 101

|
Цитата(zoddy @ Feb 18 2009, 09:54)  ... В моем случае, при тактовой частоте обоих контроллеров 4МГц, стабильно данные начинают передаваться при TWBR>0x3f, а на меньших значениях происходит потеря некоторых байт. Напомнило советский плакат: "В прошлом году собрали 29 центнеров с гектара, в этом - 13000 пудов по краю, в следующем - на 15% больше!" Какая частота при значении 3F? Частота клока меньшается или увеличивается "при TWBR>0x3f"? Там ещё есть ограничение по частоте контроллера от частоты SCL. Дальше. Если "потеря некоторых байт" то надо смотреть программу выдёргивания байт из потока, может пока идёт операция с байтом на АСК уже опоздали... Клок стретчинг предусмотрен?
Сообщение отредактировал Maik-vs - Feb 18 2009, 10:21
|
|
|
|
|
Feb 18 2009, 11:29
|
Участник

Группа: Участник
Сообщений: 42
Регистрация: 4-12-05
Из: Екатеринбург
Пользователь №: 11 773

|
Цитата(Maik-vs @ Feb 18 2009, 15:18)  Напомнило советский плакат: "В прошлом году собрали 29 центнеров с гектара, в этом - 13000 пудов по краю, в следующем - на 15% больше!" Какая частота при значении 3F? Частота клока меньшается или увеличивается "при TWBR>0x3f"? Там ещё есть ограничение по частоте контроллера от частоты SCL. Дальше. Если "потеря некоторых байт" то надо смотреть программу выдёргивания байт из потока, может пока идёт операция с байтом на АСК уже опоздали... Клок стретчинг предусмотрен? Гм... Если Вы, многоуважаемый, хоть раз читали мануал по контроллерам AVR, то вполне бы наткнулись там на формулу Fscl=Fclk/(16*TWBR*4^TWPS)...как вы думаете, что происходит с частотой?....:-) А вообще ситуация обстоит в следующем... сперва ведущий отправляет SLA+R и читает несколько байт, затем после задержки в несколько тактов процессора отправляет SLA+W и скидывает на ведомый несколько байт, затем опять повторяем операцию чтения(читаем те же байты которые до этого отправляли)... и тут самое интересное... эти байты считываются неправильно!!! Если же частоту понижаем, выставив значение TWBR>0x3F то обмен происходит без потерь. З.Ы. Для программы ведущего используется атмеловский драйвер(описан в AVR315), для ведомого написана небольшая программка на асме.
|
|
|
|
Сообщений в этой теме
zoddy вопрос по работе TWI Feb 18 2009, 04:53    Maik-vs Цитата(zoddy @ Feb 18 2009, 14:29) Гм... ... Feb 19 2009, 10:20     zoddy Цитата(Maik-vs @ Feb 19 2009, 15:20)... Feb 19 2009, 11:04      haker_fox Цитата(zoddy @ Feb 19 2009, 19:04) Все ко... Feb 19 2009, 12:41       defunct Цитата(haker_fox @ Feb 19 2009, 14:41) По... Feb 19 2009, 23:18        VladimirYU Цитата(defunct @ Feb 20 2009, 02:18) ....... Feb 20 2009, 06:27         zoddy Цитата(VladimirYU @ Feb 20 2009, 11:27) М... Feb 20 2009, 07:43          haker_fox Цитата(zoddy @ Feb 20 2009, 15:43) Огромн... Feb 20 2009, 09:38           Maik-vs Рад, что мой пост так оживил тему!
Собственно,... Feb 20 2009, 13:38            VladimirYU Цитата(Maik-vs @ Feb 20 2009, 16:38)... Feb 21 2009, 07:05        ReAl Цитата(defunct @ Feb 20 2009, 01:18) Авто... Feb 26 2009, 21:07         defunct Цитата(ReAl @ Feb 26 2009, 23:07) Я, как ... Feb 27 2009, 00:34          ReAl Цитата(defunct @ Feb 27 2009, 02:34) Рези... Feb 27 2009, 10:26           defunct Цитата(ReAl @ Feb 27 2009, 12:26) Что тож... Feb 27 2009, 12:02            ReAl Цитата(defunct @ Feb 27 2009, 14:02) Согл... Feb 27 2009, 13:43 demiurg_spb Чем выше скорость тем резче должны быть фронты. На... Feb 18 2009, 09:06 IgorKossak zoddy, Вам уже напоминали о резисторах подтяжки. 1... Feb 18 2009, 17:44 zoddy Цитата(IgorKossak @ Feb 18 2009, 22:44) z... Feb 19 2009, 08:01 DS Господа знатоки ATMeg !
Есть ли способ вывест... Feb 28 2009, 16:19 defunct Цитата(DS @ Feb 28 2009, 18:19) Есть ли с... Feb 28 2009, 17:16  DS Цитата(defunct @ Feb 28 2009, 20:16) Сбро... Feb 28 2009, 17:26   defunct Цитата(DS @ Feb 28 2009, 19:26) Таймаут н... Feb 28 2009, 17:30    DS Цитата(defunct @ Feb 28 2009, 20:30) Тайм... Feb 28 2009, 17:32     defunct Цитата(DS @ Feb 28 2009, 19:32) А как узн... Feb 28 2009, 17:45      DS Цитата(defunct @ Feb 28 2009, 20:45) В сл... Feb 28 2009, 18:01 singlskv Цитата(DS @ Feb 28 2009, 19:19) Господа з... Feb 28 2009, 18:08  DS Цитата(singlskv @ Feb 28 2009, 21:08) Пок... Feb 28 2009, 19:02   singlskv Цитата(DS @ Feb 28 2009, 22:02) Вот так п... Feb 28 2009, 19:59    DS Цитата(singlskv @ Feb 28 2009, 22:59) Кар... Feb 28 2009, 20:07     singlskv Цитата(DS @ Feb 28 2009, 23:07) Слэйв дер... Feb 28 2009, 20:35 DS А не может ли вызывать завис изменение режима SPI ... Mar 1 2009, 00:13 defunct ЦитатаА не может ли вызывать завис изменение режим... Mar 1 2009, 01:06 DS Цитата(defunct @ Mar 1 2009, 04:06) Не до... Mar 1 2009, 09:43 DS Вот код, который вызывает неадекватное поведение 4... Mar 1 2009, 11:46 DS Блин, классическое "сам дурак" - Наводки... Mar 1 2009, 13:00 SasaVitebsk Цитата(DS @ Mar 1 2009, 17:00) Так и рожд... Mar 1 2009, 16:34
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|