|
|
 |
Ответов
|
Dec 15 2016, 13:01
|

Познающий...
     
Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125

|
QUOTE (dimon_rub @ Dec 15 2016, 20:21)  Здравствуйте. Вопрос наверно стар но конкретного ответа так я и не нашел. КАКОЙ метод (прерывание или DMA)нужно использовать при работе с STM32F103 по шине I2C с несколькими устройствами. Примеры попадающиеся на просторах в основном проверка в цикле с тайм-аутом (как по мне не очень красиво). Устройства всегда слейв. При этом: одно память чтение/запись не постоянная, второе датчик опрос постоянный. Кроме этого используется АЦП(где тоже соответственно опрос постоянный, сдесь DMA), USART(DMA) и SPI Ethernet(планируется DMA).
СПАСИБО ЗА СОВЕТ!!! Да по-бубену  Как вам удобно: поллинг, прерывания, ПДП. Можно даже программную шину сделать... НО! Таймауты должны быть, и полноценная обработка состояний шины (конечный автомат) дабы не повесить всю программу из-за отвалившихся часов. Я не использую ПДП, т.к. не гоняю через I2C большие потоки данных, но использую прерывания.
--------------------
Выбор.
|
|
|
|
Сообщений в этой теме
dimon_rub Вопрос по I2C Dec 15 2016, 12:21 Obam По бубну Dec 15 2016, 13:11 pitt Цитата(dimon_rub @ Dec 15 2016, 07:21) Зд... Dec 15 2016, 13:25 dimon_rub Спасибо. Хотелось услышать людей непосредственно р... Dec 15 2016, 14:04 KnightIgor Цитата(dimon_rub @ Dec 15 2016, 16:04) Сп... Dec 15 2016, 20:11  dimon_rub Цитата(KnightIgor @ Dec 15 2016, 20:11) М... Dec 16 2016, 07:36   Pridnya Цитата(KnightIgor @ Dec 15 2016, 23:11) М... Dec 16 2016, 09:35    Сергей Борщ QUOTE (Pridnya @ Dec 16 2016, 11:35) А во... Dec 16 2016, 11:15     Kabdim Цитата(Сергей Борщ @ Dec 16 2016, 14:15) ... Dec 16 2016, 12:05      Сергей Борщ QUOTE (Kabdim @ Dec 16 2016, 14:05) Если ... Dec 16 2016, 12:11    zltigo Цитата(Pridnya @ Dec 16 2016, 11:35) Но в... Dec 16 2016, 11:18     Pridnya Цитата(Сергей Борщ @ Dec 16 2016, 14:15) ... Dec 16 2016, 12:05    jcxz Цитата(Pridnya @ Dec 16 2016, 12:35) Но в... Dec 17 2016, 11:42     zltigo Цитата(jcxz @ Dec 17 2016, 13:42) Бывают ... Dec 17 2016, 11:49 arhiv6 KnightIgor, а почему катастрофа? Dec 16 2016, 06:07 Сергей Борщ QUOTE (arhiv6 @ Dec 16 2016, 08:07) Knigh... Dec 16 2016, 06:48  KnightIgor Цитата(Сергей Борщ @ Dec 16 2016, 08:48) ... Dec 17 2016, 16:47   alexf Бывают ситуации когда CPU нечего делать пока идет ... Dec 17 2016, 20:48    zltigo Цитата(alexf @ Dec 17 2016, 22:48) Бывают... Dec 18 2016, 08:09   dimon_rub Цитата(KnightIgor @ Dec 17 2016, 16:47) В... Dec 20 2016, 06:52    KnightIgor Цитата(dimon_rub @ Dec 20 2016, 08:52) А ... Dec 20 2016, 20:52     dimon_rub Цитата(KnightIgor @ Dec 20 2016, 20:52) Я... Dec 21 2016, 08:26 Aleksandr Baranov Я бы еще вспомнил процедуру "I2C bus recovery... Dec 20 2016, 22:22 alexf Если я раз в секунду читаю пару датчиков за 1 мсек... Dec 21 2016, 00:37 KnightIgor Цитата(Aleksandr Baranov @ Dec 21 2016, 00... Dec 22 2016, 12:14  jcxz Просто "безудержное дёргание" и не должн... Dec 22 2016, 12:53   KnightIgor Цитата(jcxz @ Dec 22 2016, 14:53) Просто ... Dec 22 2016, 12:59    jcxz Цитата(KnightIgor @ Dec 22 2016, 15:59) Э... Dec 22 2016, 13:05  zltigo Цитата(KnightIgor @ Dec 22 2016, 14:14) О... Dec 22 2016, 14:51 Aleksandr Baranov В "AN10216-01 I2C Manual" не сказано: ... Dec 22 2016, 15:37 KnightIgor Цитата(Aleksandr Baranov @ Dec 22 2016, 17... Dec 22 2016, 16:32  zltigo Цитата(KnightIgor @ Dec 22 2016, 18:32) Е... Dec 22 2016, 17:22   jcxz Цитата(zltigo @ Dec 22 2016, 20:22) Такое... Dec 22 2016, 22:44    zltigo Цитата(jcxz @ Dec 23 2016, 00:44) Да, дол... Dec 23 2016, 06:35     jcxz Цитата(zltigo @ Dec 23 2016, 09:35) Я пис... Dec 23 2016, 16:20      zltigo Цитата(jcxz @ Dec 23 2016, 18:20) Это у В... Dec 24 2016, 07:09 AVR Мои 5: когда я работал с I2C на AVR то на коротком... Dec 23 2016, 07:07
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|