Leave a comment

Comments 65

lj_frank_bot April 30 2020, 23:51:29 UTC
Hello!
LiveJournal categorization system detected that your entry belongs to the category: Техника.
If you think that this choice was wrong please reply this comment. Your feedback will help us improve system.
Frank,
LJ Team

Reply


livejournal May 1 2020, 00:35:02 UTC
Hello! Your entry got to top-25 of the most popular entries of Belarus in LiveJournal! Learn more about LiveJournal Ratings in FAQ.

Reply


kch777 May 1 2020, 02:03:44 UTC
А на какой частоте SPI проблема пропадает?
И для какой максимальной частоты сконфигурирована нога SPI clock? 2, 10 или 50 MHz?
14 штук 74HC595 на одном выводе STM32 это приблизительно 140pF только емкостей входов, плюс распределенная емкость и индуктивность дорожек. Задержка распространения сигнала и длительность фронтов на последнем регистре вполне может превысить значение при котором регистр еще нормально работает.
Плюс еще TI рекомендует разделять сигналы clock и защелку дорожкой подключенной к потенциалу земли, если эти сигналы разведены параллельно друг другу (в каком-то AppNote). Именно для исключения взаимонаводок. Понятно, что разводка уже готова и это проблематично поправить, но хоть за направление, в котором копать сойдет.
Финальный щелчок на LOAD вполне может перескакивать на Clock и вызывать дополнительный сдвиг.

Reply

leoniv May 1 2020, 06:49:53 UTC
Сбой возникает только в том случае, если сразу переключается много выходов. В других ситуациях все работает нормально. Можно было предположить, что частота SPI на пределе, но не похоже на это. Работаю на частоте SPI 12 МГц. Если ее начинаю снижать, лучше не становится, граница появления сбоя остается та же самая. И только когда частоту снижаю в 16 раз, сбой пропадает. Нога SPI Clock сконфигурирована 50 MHz, пробовал другие значения, не меняется вообще ничего. Для всех задействованных ног менял скорость - никакого эффекта вообще. Эффект есть от подключения емкости на дальнем конце линии. На ближнем конце линии эта же емкость не влияет. Провода от Discovery до платы ставил в 3 раза более короткие - никаких изменений. Пробовал нагружать линию CLK резистором на дальнем конце. Когда ПОдтыкал его на весу - помогало. Когда запаял - нет эффекта. Похоже, помогает только емкость. Между CLK и LOAD хорошо бы развести землю, я это знаю, но тут на плате очень тесно. К тому же, дело не только в этой емкости. Когда переключается меньше выходов, эта ( ... )

Reply

kch777 May 1 2020, 20:53:13 UTC
Тогда наиболее вероятная причина в скачках по земле/питанию на последнем регистре. Вполне вероятно, что емкость на клоке подавляет бросок на земле до приемлемого уровня. Что если попробовать пробросить землю и питание на последний регистр проводом?

Reply

leoniv May 1 2020, 21:05:04 UTC
Так уже проблема решена, в конце поста написано как.

Reply


ex0_planet May 1 2020, 05:56:41 UTC
ниже корпус расширяется. Похоже, что компаунд внутри немного распирает корпус. Буквально на 0.2 мм.

Это не компаунд распирает, иначе в поперечном направлении его б распирало еще больше. Это специально сделанный уклон для облегчения выталкивания из формы. К тому же эпоксидный компаунд обычно стягивает, потому что адгезия хорошая, и усадка большая. У меня даже есть где-то в ящике пара деталек, где это прям заметно.

Reply

leoniv May 1 2020, 06:50:40 UTC
Да, Вы правы.

Reply


simsun May 1 2020, 06:24:32 UTC
ещё можно скорость пинов поднять, для stm32f030p4
GPIOA->OSPEEDR |= (GPIO_OSPEEDR_OSPEEDR5|GPIO_OSPEEDR_OSPEEDR7|GPIO_OSPEEDR_OSPEEDR10);
ps знаю,знаю - крутые кирпичи вам не нравятся:)

Reply

leoniv May 1 2020, 07:04:45 UTC
Тут тоже скорость пинов настраивается - 2 МГц, 10 МГц, 50 МГц. Но толку от этого ноль.

Reply

simsun May 1 2020, 07:50:22 UTC
Еще запаса нет почти, т.к. hc595 от 5V питается, а stm32 3.3V

Reply

leoniv May 1 2020, 07:56:18 UTC
Знаю, это не совсем хорошо. Сюда нужны 74HCT, а не 74HC. Но в продаже не было.

Reply


Leave a comment

Up