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

 
 
> twi atmega 128, twi atmega 128
Oleg_DI
сообщение Jan 11 2009, 16:42
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 49
Регистрация: 15-10-07
Из: г.Екатеринбург
Пользователь №: 31 379



помогите разобраться с twi функция работает на 16 меге а на 128 jtag выдаёт ошибку условия старт.Аппаратно на двух разных платах тоже самое.
TWI_BIT_RATE= 1; //Bit Rate 100 kBit/s
TWI_STATUS = 0x00; //Prescaler 1:1
TWI_CONTROL = 0x04; //enable twi
TWAR = 0x0d;
старт TWCR = 0xa4;
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Александр Куличо...
сообщение Jan 11 2009, 18:36
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 256
Регистрация: 6-03-06
Из: Украина, г. Винница
Пользователь №: 15 017



А что находится в TWSR при этом?

P.S. Частая ошибка при работе с TWi - подача СТАРТ сразу после подачи СТОП.
Возникает оттого, что при инициации выдаче на шину условия СТОП бит TWINT в TWCR выставляется сразу, не дожидаясь
завершения формирования данного сигнала на шине. По этой причине перед подачей очередного старта нужно проверять,
завершена ли формировка ни шине условия "стоп", т.е. проверкой бита TWSTO в TWCR

P.P.S.
Пересмотрел даташит - вроде бы контроллер после записи в TWCR условия "старт" дожидается освобождения линии и
подает старт. Т.е. поссле этого контроллер может либо "зависнуть" на строке
while (!(TWCR & 0x80));
либо в TWSR может быть 2 кода - подан старт (0x08) или подан repeated start (0x10).
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Oleg_DI   twi atmega 128   Jan 11 2009, 16:42
- - korobov_michael   Цитата(Oleg_DI @ Jan 11 2009, 18:42) TWI_...   Jan 11 2009, 17:12
- - Oleg_DI   мастер //TWSR=0x00; //TWBR=0x42; //TWAR=0x0d; //T...   Jan 11 2009, 17:32
|- - korobov_michael   1. На всякий случай, фьюзы соответствуют друг друг...   Jan 11 2009, 17:41
- - Oleg_DI   Да фьюзы соответствуют //========================...   Jan 11 2009, 17:51
- - Александр Куличок   Внешние подтяжки присутствуют? SDA, SCL на землю н...   Jan 11 2009, 17:59
- - Oleg_DI   резисторы 4.7к . Две разные платы с мегой 128 не ...   Jan 11 2009, 18:07
- - Александр Куличок   Проверьте на всякий случай, все ли ножки питания/м...   Jan 11 2009, 18:11
- - Oleg_DI   Первый старт Я думаю что он его не формирует, пров...   Jan 11 2009, 18:25
- - Oleg_DI   находится в TWSR=0 TWСR=0x94 ...   Jan 11 2009, 19:09
- - Александр Куличок   А что у Вас в TWAR?? случайно не адрес устройства,...   Jan 11 2009, 19:49
- - Oleg_DI   при первом проходе сразу после инициализации twi   Jan 11 2009, 20:13
- - Александр Куличок   Цитатапри первом проходе сразу после инициализации...   Jan 11 2009, 20:59
- - Oleg_DI   Разобрался по умолчанию в меге 128 стоит запрет вн...   Jan 12 2009, 04:19
- - kanzler   Цитата(Oleg_DI @ Jan 12 2009, 09:19) Разо...   Jan 12 2009, 05:26
- - korobov_michael   Цитата(Oleg_DI @ Jan 12 2009, 06:19) по у...   Jan 12 2009, 06:37
- - kanzler   Цитата(korobov_michael @ Jan 12 2009, 11...   Jan 12 2009, 07:11


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

 


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


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