Обзор Black Pill STM32F401CCU6
Добрый день, уважаемые читатели, сегодня я расскажу вам об одной недорогой и потрепавшей мне нервы плате на STM32F401CCU6. Началось все с того, что всеми любимая BluePill на STM32F103 перестала меня устраивать, во первых маловато FLASH всего 128К даже на CB серии, а если с Алика придет С8 или вообще китайский чип (одна такая плата перестала прошиваться уже после 30-50 записей), то 64К для проектов с RTOS, FAT-SD маловато будет и RAM 24K - это прошлый век. Было решено переходить на чип по мощнее.
Просматривая бескрайние просторы Али уже было хотел заказать пилюлю на STM32F303, но взгляд, случайно скользнул на рекомендованные товары и тут я увидел ее - BLACK PILL на STM32F401. FLASH 256K, RAM 64K, 8 таймеров, по три I2C, SPI, USART, нет CAN, DAC и всего один АЦП - для меня не критично, а цена менее 190р за F4 серию меня окончательно добила.
Сделал заказ на несколько штук и стал с нетерпением ожидать, предвкушая счастливые моменты нашего первого бурного общения. И вот, через две недели (доставка Ali Standard творит чудеса) перед Новым Годом, я считал что это был прекрасный подарок за мое хорошее поведение весь 2019 год, наконец, получил ее. Трясущимися руками я вскрыл посылку и с упоением изучал ее, она казалась восхитительна - этот прекрасный матовый черный цвет, скругленные дорожки придавали утонченный шарм, безупречная пайка радовала глаз, ее величество украшала мс STM32F401. Это было божественно - просто венец творения безымянного китайского гения, поглядите на фото :
Как же я был наивен, припаяв гребенки я надеялся, что мои самые смелые фантазии уже в этот вечер будут воплощены. О какое же жестокое разочарование постигло меня, на все мои ухаживания и через ST-LINK и USART1 и USB class C - она оставалась безответна, от слова совсем. С ужасом, представив, что мне прислали три трупа я распаял на остальных только SWD. Следующая плата определялась в ST-LINK Utility через раз. Тут мне поплохело не на шутку, я уже было ринулся писать гневные письма продавцу и опускать рейтинг ниже плинтуса, но третья плата вела себя, на удивление хорошо, поняв что в 2 часа ночи продолжать забавные развлечение в моем возрасте уже чревато, решил взять паузу, под конец полюбовался выводом рабочего экземпляра в виртуальный COM порт :
На второй день, неожиданно, все платы начали определяться, я поблагодарил небеса и в первую залил собственный blink с помощью CubeMX и Atollic. После второго Reset плата перестала моргать, вторая то-же то определялась, то нет. Это стало напрягать, вооружившись тестером стал звонить кнопку boot (по началу я думал что дело в подтяжке сигнала к земле и даже разломал одну). Прозвонив контакты SWD я понял, что похоже дело было в фантомных коротышах питания на землю (менее 30 Ом). Выкусил разъем, припаял другой, на время помогло, потом опять поперла развлекуха, нервы дороже, всё - спать.
На третий день выкусил совсем разъем SWD с платы и аккуратно припаялся двумя проводами, процарапал контакты вокруг отверстий на всех платах :
Cтало получше, но после прошивки в две платы, первая перестала определяться через пару ресетов, опять взял тайм аут. На следующий день слил прошивку с третьей, прошил вторую через ST-Link, как только та увиделась. В первую прошил через USART1 с помощью FlashLoader, подключил так : Tx --> PA10 ; Rx -->PA9, зажав кнопку boot, нажал на reset и увидел долгожданный светофор. После прошивки оригинала стала видится через ST-Link :
В CubeMX настроил резонаторы :
Решил занизить Clock :
Режим DEBUG включить с выводом информации :
Включить режим USB UDF чтоб в случае чего заливать прошивки через USB :
Перед генерацией проекта увеличил в 2 раза стэк и кучу :
Вот уже неделю полет нормальный, попозже начну увеличивать частоту и отключать ненужные фичи. Еще заказал у другого продавца платку на STM32F411CEU6, так что этот обзор будет обновляться.
Выводы : Паять SWD аккуратно, минимум припоя, при глюках - процарапать вокруг отверстий, снизить частоту кристалла и увеличить стеки с кучей, пока как-то так.
Upd: Наверное дело было в некачественных проводах к SWD разъему, после замены на новые, пока глюков не обнаружено.
Адрес для контактов : imax9@narod.ru
Если вам понравились мои работы и вы желаете поддержать сайт - сделайте дотацию.
При копировании статьи – обязательна ссылка на авторство и источник. Без разрешения автора копирование запрещено.
© Максим Ильин 2020г.