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

 
 
> i2c в lpc2378, не работает
Ivan_Kov
сообщение Mar 2 2007, 16:14
Сообщение #1


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

Группа: Свой
Сообщений: 174
Регистрация: 30-10-06
Из: г. Курск
Пользователь №: 21 787



lpc работает в режиме master, имеется 1 slave.

Если пытаюсь послать данные, происходит вот что:

1) настраиваю i2c (конфигурация пинов, частота = 200кГц, установка бита i2en)
2) даю старт (бит sta = 1)
3) читаю State. State = 0x8 - ок
4) передаю адрес slave.
5) читаю State. State = 0x18 - ок
6) пишу 1-ый байт данных
7) читаю State. State = 0x8 , а должно быть 0x28

если пытаюсь читать из slave, то возникает аналогичная ситуация - после первой попытки чтения, получаю State = 0x8 , вместо 0x50.

вот осцилограмма SDA и SCL снятая при передачи данных от master к slave Прикрепленный файл  i2c_osc24.zip ( 6.15 килобайт ) Кол-во скачиваний: 154

на ней видно, что сигнал СТАРТ и передача адреса - проходят нормально,
а при передачи первого-же бита данных возникает проблема:
длительность импульса CLK почему-то оказывается увеличенной, и уровень SDA меняется (падает) при высоком уровне CLK. естественно что это не допустимо и, повидимому, расценивается как сигнал старта, от сюда и значение state = 8.
выяснил что такое поведение возникает из-за lpc. Кто-нибудь сталкивался с подобным?
Go to the top of the page
 
+Quote Post



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

 


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


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