Easyelectronics.ru

Электроника для всех
Текущее время: 10 апр 2021, 23:24

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/5шт. два слоя. $5/5шт. четыре слоя
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: PSoC 3 I2C
СообщениеДобавлено: 30 июл 2012, 23:56 
Старожил

Зарегистрирован: 25 авг 2011, 14:00
Сообщения: 3300
Пытаюсь запустить I2C на ейном кристалле. Как ведомый подключил ADC ADS1000 - проверил, СТМ8 читает на ура. Схема чтения проста как яйцо: передаем адрес и читаем 2 или 3 байта, в зависимости сколько нужно. Но увы.
Если читаю через I2C_1_MasterReadBuf(ADS1000_ADDR, &error,3, I2C_1_MODE_COMPLETE_XFER ); (3 байта в переменную error), то адрес передается, после чего АЦП отвечает АСК, но PSoC дальше не генерирует SCL!
Если читаю через error=I2C_1_MasterReadByte(1); побайтно, то все прочитанные байты идут равны нулю. И что самое странное, генерируется 16 тактов SCL.

В общем, буду премного благодарен за пример рабочего кода или дельный совет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: PSoC 3 I2C
СообщениеДобавлено: 31 июл 2012, 00:11 
Старожил

Зарегистрирован: 25 авг 2011, 14:00
Сообщения: 3300
Вот это вообще за пределами понимания:

Код:
error=I2C_1_MasterSendStart(ADS1000_ADDR,I2C_1_READ_XFER_MODE); // нормально идет адрес
error=I2C_1_MasterReadByte(I2C_1_ACK_DATA);         // здесь идет 17 ! клоков, первые 8 SDA 0, между 8 и 9 импульс, потом снова 0 и начиная с 13 SDA=1 !!!
   CyDelayUs(1);
      r=I2C_1_MasterReadByte(I2C_1_NAK_DATA); // а здесь вообще ничего

     error=I2C_1_MasterSendStop();


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 


Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB