Перейти к содержанию
    

STM32 I2C логика работы на регистрах в режиме передачи слейва

мастер шлёт в STM32 в режиме слейва запрос на чтение. Дальше вижу 4 пачки тактов. Прочитать мастер хочет 4 байта.

Какие регистры при этом в МК активируются?

Я вижу, что приходит флаг

I2C_ISR_TXIS

начинаю передавать элемент массива

дальше мне что делать надо? Проверить какой- то флаг, что мастер принял? И еще 3 элемента передать или как? Или при запросе на след. I2C_ISR_TXIS след. элемент массива передавать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

уточню вопрос-

я слейв, какая последовательность бит приходит мне и что мне надо выставить, чтобы ответить мастеру?

Вот пришел адрес мой, I2C_ISR_ADDR

что я должен выставить в инициализации, чтобы по получении

I2C_ISR_TXIS

передавать по одному байту до стопа? Я просто не захожу в прерывания I2C_ISR_TXIS

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...