|
1 / 1 / 2
Регистрация: 06.07.2009
Сообщений: 96
|
|
stm32 и I2C Slave21.09.2020, 22:54. Показов 9383. Ответов 25
Метки нет (Все метки)
Добрый день, не работает I2C slave использую STM32CubeMX и STM32CubeIDE.
Пробовал через прерывания затем через DMA, ни в какую не хочет принимать данные, да использую HAL библиотеку. Скорее всего я что-то делаю не так. Дайте ссылку на рабочий пример или подскажите, мучаюсь уже 2 недели.
0
|
|
| 21.09.2020, 22:54 | |
|
Ответы с готовыми решениями:
25
I2C slave I2C slave: прием и передача I2C Slave STOP Event |
|
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
|
|
| 21.09.2020, 23:17 | |
|
Начните с мастера - так вы хотя бы узнаете, что правильно настраиваете ноги, и физический интерфейс правильно расключен (то бишь, подключены подтяжки). Потом переходите к слейву, предварительно проверив входной сигнал, правильность настройки адреса (попробуйте подвигать его вправо-влево на 1бит, часто в библиотеках R/W бит вставляют прямо в адрес).
0
|
|
|
1 / 1 / 2
Регистрация: 06.07.2009
Сообщений: 96
|
||||||||||||||||
| 22.09.2020, 22:41 [ТС] | ||||||||||||||||
|
Всем привет, в режиме мастер работает, передает адрес и не получает ответ т.к. нет slave устройства.
передаю так:
Как слей не получается, в роли мастера выступает PIC (пакет точно правильный т.к. работает с экраном 1602, а также с памятью). в main.c
Адрес пробовал сдвигать на 1 бит вправо и влево.
0
|
||||||||||||||||
|
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
|
|
| 22.09.2020, 23:03 | |
|
Покажите сгенеренную функцию инициализации I2C, клоков и пинов. I2C у вас 3.3В, надеюсь?
0
|
|
|
1 / 1 / 2
Регистрация: 06.07.2009
Сообщений: 96
|
||||||
| 23.09.2020, 20:40 [ТС] | ||||||
|
Да I2C через делитель подключил т.к. у PIC 5В.
Функция инициализации I2C.
0
|
||||||
|
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
|
||
| 24.09.2020, 22:22 | ||
|
0
|
||
|
Почетный модератор
11551 / 4346 / 452
Регистрация: 12.06.2008
Сообщений: 12,452
|
||
| 24.09.2020, 22:37 | ||
|
0
|
||
|
Модератор
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,852
|
||
| 24.09.2020, 23:39 | ||
|
сопротивления нужно смотреть, я когда баловался ставил рекомендованные на 10 КОм, но устойчивой работы добился на 2.2 КОм
1
|
||
|
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
|
||
| 25.09.2020, 15:51 | ||
. На шинах с разными резисторами будет некая "неразбериха" на клоке, т.к. устройства на 3.3В будут ловить его несколько раньше, чем устройства на 5,0В (из-за разницы в компараторах).ЗЫ: я точно непомню где, но вынужден был использовать эти level-shifter'ы, и именно на шине I2C, т.к. они двунаправленные. Я тут даже ноты от NXP нашел https://www.nxp.com/docs/en/ap... N10441.pdf.
1
|
||
|
1 / 1 / 2
Регистрация: 06.07.2009
Сообщений: 96
|
|
| 26.09.2020, 20:27 [ТС] | |
|
Контролер STM32F373CC, в даташите написано что 20 ног из 36 толерантны к 5В. но что I2C этого не нашел!
Сделал на резисторах для проверки приема и только, для полной проверки еще не думал сделаю как написал Voland на n10441 или что-то подобное на полевиках, а если входы поддерживают 5 В подключать тупо напрямую??? Ну а по коду, кто ни будь подскажет, как правильно настроить i2C Slave на HAL "ПРИМЕР" лучше всего. Добавлено через 8 минут Забыл PA15 - SCL PB7 - SDA Добавлено через 10 минут 38 PA15 I/O FTf - I2C1_SCL, ... 43 PB7 I/O FTf - I2C1_SDA, ... GPIOs Normal I/Os (TC, TTa) 5 volts Tolerant I/Os (FT, Ftf) Я правильно понимаю, что структура входов PA15 и PB7 (Ftf) - I/O толерантные к 5В? и я могу их на прямую подключить к PIC&
0
|
|
|
Модератор
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,852
|
|
| 26.09.2020, 21:38 | |
|
0
|
|
|
Почетный модератор
11551 / 4346 / 452
Регистрация: 12.06.2008
Сообщений: 12,452
|
|
| 26.09.2020, 22:08 | |
|
0
|
|
|
Модератор
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,852
|
|
| 26.09.2020, 23:07 | |
|
0
|
|
|
Модератор
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,852
|
|
| 27.09.2020, 08:56 | |
|
вот нашел сайтик, про логические уровни
https://themagicsmoke.ru/cours... evels.html
0
|
|
|
1 / 1 / 2
Регистрация: 06.07.2009
Сообщений: 96
|
|
| 27.09.2020, 16:24 [ТС] | |
|
С железом разобрались, подключил через резистор 1к, напрямую что-то боязно.
Давайте попробуем разобраться с кодом, что надо сделать для правильной работы I2C Slave, почему он не принимает и не попадает в прерывания, в отладчике видно что буфер пуст. Кто ни будь поможет?????
0
|
|
|
Модератор
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,852
|
||
| 27.09.2020, 19:23 | ||
будут завалы фронтов и ничего работать не будетесли между шиной и плюсом питания то нормально, больше ток круче фронты
0
|
||
|
1 / 1 / 2
Регистрация: 06.07.2009
Сообщений: 96
|
|
| 27.09.2020, 19:42 [ТС] | |
|
Между контролерами.
0
|
|
|
Почетный модератор
11551 / 4346 / 452
Регистрация: 12.06.2008
Сообщений: 12,452
|
||
| 27.09.2020, 21:24 | ||
|
0
|
||
|
1 / 1 / 2
Регистрация: 06.07.2009
Сообщений: 96
|
||||||
| 27.09.2020, 22:11 [ТС] | ||||||
|
Заработало!!!
принимает и отвечает НО после ответа линии SDA и SLC притянуты к нулю, определил что притягивает SLAVE. Мастер из-за этого тупит и зацикливается, ждет окончания операции. С резисторами и без них работает одинаково, а линии подтянуты к 5В через сопротивление 4к7. Т.к. контроллер не сгорел, сейчас подключено напрямую без сопротивлений. Добавлено через 1 минуту Вот мой код:
Как заставить его закончить правильно операцию???
0
|
||||||
|
1 / 1 / 2
Регистрация: 06.07.2009
Сообщений: 96
|
|
| 28.09.2020, 23:01 [ТС] | |
|
Всем доброго вечера, я так понимаю здесь сидят железячники? А где сидят программеры?
Здесь вообще кто ни будь может помочь по программированию??????
0
|
|
| 28.09.2020, 23:01 | |
|
Помогаю со студенческими работами здесь
20
I2C в режиме slave и библиотека CPAL. Master/Slave I2C для ARM на LUFA STM32 F103 и i2c STM32 I2C + HP03M STM32 -> I2C -> LCD2004 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|
Фото: Daniel Greenwood
kumehtar 13.11.2025
|