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

 
 
3 страниц V  < 1 2 3  
Reply to this topicStart new topic
> TWI в sam7s
DmitryM
сообщение Sep 4 2008, 06:06
Сообщение #31


Знающий
****

Группа: Свой
Сообщений: 583
Регистрация: 7-06-06
Из: Таганрог
Пользователь №: 17 840



Цитата(ЕшТ @ Sep 4 2008, 03:09) *
товарищи, у кого нибудь вообще тви аппаратный работает в сам7с? скиньте кусочки кода с функциями плиз. Родные с примера что-то не работают. компилятор ИАР 5.10


У меня работает. Периферия Texas TLV320, EEProm, ForteMedia.
CrossWorks 1.5
Работа по прерываниям, обработчик на асме.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jan 12 2010, 23:10
Сообщение #32


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(aaarrr @ Jun 17 2008, 02:01) *
Плохо давили, значит. Не верю smile.gif
С 24-ми и у меня работал, но отвертка, воткнутая между SDA и SCL, с какой-то попытки модуль все равно завешивала.
А все таки TWI победить можно... даже при связи с слейвами на МК...

во-первых нужно ставить обязательно PIO_MDER на SCL и SDA
ну а дальше просто при подвисании шины(таймауйт например) выключаем TWI
и через PIO щелкаем 9 тактов на SCL на макс скорости(400КГц)
включаем снова TWI и все ОК.

и никакая отвертка между SDA и SCL ничто не завесит... smile.gif
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jan 12 2010, 23:50
Сообщение #33


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Не вижу смысла программно реанимировать откровенно корявое железо. Ерраты и раздела Troubleshooting AT91-AN01 должно быть достаточно для принятия единственно верного решения - отказаться от TWI.
В противном случае придется подтачивать напильником драйвер под некоторые слейвы. А в какой-то момент даже для самого супер-пупер круто написанного драйвера такая необходимость все равно возникнет, и не факт, что потраченные на разборки часы приведут к положительному результату. Поверьте моему опыту.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jan 13 2010, 10:08
Сообщение #34


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(aaarrr @ Jan 13 2010, 02:50) *
Не вижу смысла программно реанимировать откровенно корявое железо. Ерраты и раздела Troubleshooting AT91-AN01 должно быть достаточно для принятия единственно верного решения - отказаться от TWI.
В противном случае придется подтачивать напильником драйвер под некоторые слейвы. А в какой-то момент даже для самого супер-пупер круто написанного драйвера такая необходимость все равно возникнет, и не факт, что потраченные на разборки часы приведут к положительному результату. Поверьте моему опыту.
Вся эта возня с TWI от безысходности, нужно поддерживать старые разработки.
Тут на объекте поймали эфект(видимо помехи) сходный с закороткой отверткой SDA и SCL,
модуль TWI просто подвисал после длительной работы.
Использовать софтовый I2C там невозможно из-за довольно приличного трансферта который
должен идти в фоне.
Пришлось искать решение по реанимированию TWI.

В новых разработках TWI на SAM7 просто не используем, и никому не посоветую использовать.
Go to the top of the page
 
+Quote Post
EugenB2
сообщение Jan 16 2010, 08:10
Сообщение #35





Группа: Участник
Сообщений: 13
Регистрация: 14-01-10
Пользователь №: 54 820



Цитата(singlskv @ Jan 13 2010, 01:10) *
А все таки TWI победить можно... даже при связи с слейвами на МК...

во-первых нужно ставить обязательно PIO_MDER на SCL и SDA
ну а дальше просто при подвисании шины(таймауйт например) выключаем TWI
и через PIO щелкаем 9 тактов на SCL на макс скорости(400КГц)
включаем снова TWI и все ОК.

и никакая отвертка между SDA и SCL ничто не завесит... smile.gif

Такого метода по реанимации TWI я еще не пробывал )), кстати, у меня была дурная идея переписать весь SAM7S TWI под прерывания, чтобы избавиться от глюков. В итоге сделал софтовый и все работает без проблем. Аппаратный же... после зависания никаким образом, даже ресетом всего усройства, не выводился из этого состояния, тока выключение питания ((.
Go to the top of the page
 
+Quote Post
Terrabyte
сообщение Jan 6 2014, 11:07
Сообщение #36


Частый гость
**

Группа: Свой
Сообщений: 124
Регистрация: 2-01-07
Из: Russia
Пользователь №: 24 042



Цитата(singlskv @ Jan 13 2010, 13:08) *
Вся эта возня с TWI от безысходности, нужно поддерживать старые разработки.
Тут на объекте поймали эфект(видимо помехи) сходный с закороткой отверткой SDA и SCL,
модуль TWI просто подвисал после длительной работы.
Использовать софтовый I2C там невозможно из-за довольно приличного трансферта который
должен идти в фоне.
Пришлось искать решение по реанимированию TWI.

В новых разработках TWI на SAM7 просто не используем, и никому не посоветую использовать.


С микросхемой часов PCF__ TWI заработал, извиняюсь за стиль.
Благодаря документации находящейся по ссылке "Описание модулей SAM", в теме NACK_in_TWI_SR
но программно только как Slave.
В последних версиях at91 с I2C не должно быть проблем.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 11:02
Рейтинг@Mail.ru


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