189 похожих чатов

Добрый день уважаемые ! Кто-нибудь сталкивался с подключением MPU6050 к

stm32f103c8t6 (bluepill) ? Проблема из разряда приколов - если на линии SDA висит щуп осциллографа, то все четко запускается, если рукой держать SDA- тоже. Иначе - висит при старте, SDA SDL в высоком уровне, HAL выдает BUSY (0x02) . Длина проводника 1 см, скорость 100кГц. если увеличить длину до 5-6 см - запускается. опрашиваю этим :
Ay = HAL_I2C_Mem_Read (&hi2c1, MPU6050_ADDR, WHO_AM_I_REG, 1, &check, 1, 1000);

15 ответов

10 просмотров

С подтягивающими резисторами на линиях I2C все хорошо?

читайте эрату I2C на f103 мусор сломанный

Temur-S Автор вопроса
Евгений
читайте эрату I2C на f103 мусор сломанный

Написал софт и2с уже. Нуиво вникать тем более чип левый

Тоже проблемы с i2c, оказывается я не один. И тоже квантовые эффекты были: смотрю анализатором - работает. Отпаиваюсь - не работает. STM32F103RCT6

Евгений
читайте эрату I2C на f103 мусор сломанный

А на F40X все культурнее в этом плане?

Dmytro Salko
А на F40X все культурнее в этом плане?

Да, мультиплексор AF, плавучка, менее глючные блоки периферии. Шарман.

Dmytro Salko
А на F40X все культурнее в этом плане?

F1 - I2C отстой F4 лучше F3 F7 L4 топ постепенно про серию F1 нужно забывать

Dmytro Salko
Тоже проблемы с i2c, оказывается я не один. И тоже...

Было такое, припаял дополнительную емкость на SDA SCL

Радик Тимербаев
а у L0 ?

а в чем именно отстойность заключается?

Гоша
а в чем именно отстойность заключается?

Неполный автомат работы с DMA, не все события могут вызывать прерывание-приходится тупить в цикле ожидания. Зависает.

Гоша
а в чем именно отстойность заключается?

У STM32 I2C вообще специфический. Достаточно сказать, что надо реализовывать отдельно: - прием одного байта - прием двух байт - прием трех и более байт. При этом для второго случая есть даже специальный бит-костыль, который изменяет соответствие флагов и состояний на шине. А конкретно, если его поставить, то ACK, выставленный вместе с ним, будет передан для СЛЕДУЮЩЕГО байта, а не текущего.

Похожие вопросы

Обсуждают сегодня

Вопрос по диагностике ошибок (я знаю в чем, в данном конкретном примере, я знаю, как исправить, пример модельный, понятно, что в реальности бывает намного запутаннее). module...
ⰄⰎⰋⰐⰐⰑⰛⰤⰧⰧⰩⰄ ⰊⰑⰁⰓⰡⰛⰦⰕⰫ
10
А дальше что?.. Записать в файл, потом в Код?.. И потом разбирать как-то?..
Хаскель Моисеевич Гопник
14
А чем вам питонисты не угодили?😂
.
79
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
48
type TObj = object procedure Init; virtual; end; TObj1 = object(TObj) procedure Init; override; end; procedure TObj1.Init; begin inherited; end; procedur...
Alexander 👋
29
@y0zhig @shizzard А можно я опишу цель и может вообще ерланг мне не подходит. На текущий момент как я понимаю у ерланга есть легковесные потоки и задача выполняется в каком т...
Дмитрий Спиридонов
5
Есть предложения, как подобное можно упростить?
Hemul GM
12
У меня вопросик назрел. Почему, создав класс без наследования и реализации деструктора Destroy, деструктор не вызывался при free. Потом указал наследование от tobject и overri...
Сергей Бычков
9
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
86
Такой вопросец - есть функция function MySuperDuperConcat(const a: array of AnsiString): AnsiString; Как мне в её теле сделать вот так? Result:=Concat(a); А не грустный вариан...
notme
15
Карта сайта