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

 
 
> Проблема с интерфейсом I2C, Не могу считать байт
Via4eslav
сообщение Apr 1 2007, 13:26
Сообщение #1





Группа: Новичок
Сообщений: 2
Регистрация: 1-04-07
Пользователь №: 26 671



Привет всем заглянувшим)
Пытаюсь организовать интерфейс I2C между lpc2106 и eeprom 24LC16B(не по прерываниям). Запись байта вроде бы проходит. Только не знаю, как проверить?? Чтение воплощаю через random read. По статусным кодам весь процесс протекает хорошо. Но вместо нужного мне байта в регистре I2DAT находится предыдущая информация (0xA1). Как достать нужный мне байт??? Кстати, среда программирования CrossWorks 1.3.
Контрольные вопросы:
1.Как проверить пишутся данные в ПЗУ, если чтение не удается??
2.Разумно ли пользоваться отладчиком в таких задачах??
3.Как прочитать байт из внешнего ПЗУ??
Вот кусок проги :

I2CONSET=(1<<I2C_STA); // повторное состояние старт
I2CONCLR=(1<<I2C_SI); // сброс бита прерывания
I2CONCLR=(1<<I2C_STA); // чистим бит старта
I2DAT=0xa1; // операция на чтение
I2CONCLR=(1<<I2C_SI); // сброс бита прерывания
data=I2DAT; // тут вся проблема: data =0xa1, вместо нужного мне записанного байта
Go to the top of the page
 
+Quote Post



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

 


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


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