[устарело] первое высвобождение ядра STM32F4

fpistm
SAT 01 апреля 2017 г. 7:02
Привет, Роджер и все,

Переименован ViewTopic.PHP?F = 48&t = 2098

Как вы, наверное, видели, я выпустил arduino_core_stm32f4
https: // github.com/stm32duino/arduino_core_stm32f4


Он поддерживает нуклео F429ZI.
Все булавки доступны на основе функции Mbed Pinmap.
Периферипины.C автоматически генерируется из файла STM32Cube MCU XML. Это избегает проблемы в определении булавок.
Скрипт Python для генерации его доступна здесь:
https: // github.com/fpistm/stm32_tools
Это также сохранило память по сравнению со старой реализацией, даже если все булавки определены.
Функция USB доступна, я удалил ее из статической LIB, чтобы сохранить память и отключена по умолчанию.
Чтобы включить, отредактировать доски.Файл TXT затем добавьте '-dusbcon', чтобы включить ядро ​​и '-dusbd_use_hid_composite', чтобы включить HID (поддержка клавиатуры и мыши)
Поддержка CDC должна скоро появиться ;)

Он уважает Arduino Pin Sining благодаря следующим выводам, определенным в Arduino.час:
// преобразовать цифровой пин -номер DXX в PinName PXY
Pinname DigitalTopinName (uint32_t p)
// преобразовать аналоговый номер PIN AXX в PinName PXY
Pinname analogtopinname (uint32_t p)
// преобразовать аналоговый пин -номер в цифровой пин -номер
uint32_t аналогтодигитал (uint32_t p)
// преобразовать PINNAME PXY в номер PIN -кода
uint32_t pinnametopinnumber (pinname p);

Таким образом, в эскизе используйте A0 или 0 с анализами/записи в порядке, так как используйте D0 или 0 с DigitalRead/Write.
Кроме того, Piname (PXY) может быть использован непосредственно в эскизе благодаря: Analogread (Pinnametopinnumber (PC7))

Некоторые функции еще предстоит переработать: таймеры, SPI и I2C. (По, как и в FPRWI6LABS :) )

Если у вас есть какие -либо вопросы/замечания/предложение, не стесняйтесь.
Если вы видите какую -либо проблему, пожалуйста, введите проблему на GitHub. ;)

Я скоро выпустим пакет. Я жду отзывы и немного переделки.
Примечание. Я переработаю другие семьи STM32 с этим новым управлением PIN -код, чтобы управлять всеми булавками и сохраненной памяти. ;)

Бренд

Даниэфф
SAT 01 апреля 2017 г. 9:05
Может быть, официальное ядро ​​должно быть переименовано из STM32DUINO до чего -то другого (STM32HALDUINO...), так как это сбивает с толку иметь 2 проекта с тем же названием для той же цели.

Имена и числа штифтов должны быть взаимозаменяемыми, ядро ​​клена и F1 уже такие же, как это. DigitalRead (0) == DigitalRead (D0) == DigitalRead (PG9) (на 429ZI Nucleo). Популярный Bluepill не имеет цифр, поэтому использование Pinnametopinnumber везде не удобно для пользователя.

Почему USB -код в варианте?

Было бы здорово иметь .TXT описывает, как добавить вариант. (Я имею в виду, я знаю, как это сделать, это просто вытянутый процесс поиска файлов, что поместить, где, что изменить и т. Д... Я могу позже попытаться сделать это для моего 411RE)

(Моя личная любимая мозоль: Есть ли возможность объединить F1/L4/F4 ... Репозитории в один? Как я вижу, они очень похожи с некоторыми изменениями здесь и там. Теперь, когда периферические булавки перенесены (сгенерированы, очень красиво!) Периферипины.С, они будут еще более похожими.)

fpistm
SAT 01 апреля 2017 г. 9:49
Даниэфф написал:Может быть, официальное ядро ​​должно быть переименовано из STM32DUINO до чего -то другого (STM32HALDUINO...), так как это сбивает с толку иметь 2 проекта с тем же названием для той же цели.

victor_pv
SAT 01 апреля 2017 14:52
Как вы думаете, как сложно сделать вариант для STM32F407? Похоже, есть много тех, кто плавает на eBay и AliexPress.

Рик Кимбалл
SAT 01 апреля 2017 г. 15:44
Fpistm написал:...
Все булавки доступны на основе функции Mbed Pinmap.

fpistm
SAT 01 апреля 2017 г. 16:45
victor_pv написал:Как вы думаете, как сложно сделать вариант для STM32F407? Похоже, есть много тех, кто плавает на eBay и AliexPress.

Даниэфф
SAT 01 апреля 2017 г. 16:54
Fpistm написал:Я уже добавил новый вариант для F4 функционала за полдня ;)

fpistm
SAT 01 апреля 2017 г., 19:14
Даниэфф написал:Fpistm написал:Я уже добавил новый вариант для F4 функционала за полдня ;)

Палмерр
Ср. 05, 2017 7:09
Как и несколько других, я скачал новые ядра "куба" F1 и F4 и играю.

Пока что хорошо с Maple Mini и F1 Core.

С F4 я работаю над новым вариантом для моей доски "Black F4Vet6".

Все идет хорошо с вашими инструкциями, но я пойман с шагом 5/.

Я добавил новую цель в Makefile, но не могу заставить его создать новую статическую либера. Нужно ли мне перейти в свою коробку Linux и Cross Compile (я никогда не пробовал строительство стиля, или я пропустил запись в другом месте, чтобы вызвать библиотеку компиляцию?

Ричард

Даниэфф
Ср 05 апреля 2017 г. 7:13
Да, вам нужно будет запустить создание из командной строки в System/libstm32f4/build_gcc/папка для составления шага 5. Это можно сделать в Windows, но более простой в Linux.

Палмерр
Ср. 05 апреля 2017 г., 7:49
Спасибо. Я попробую.

fpistm
Ср. 05, 2017 10:12
Привет,
Я только что толкнул ветвь STM32F407G-DISC1-Example
https: // github.com/stm32duino/arduino_c ... C1-пример
Это будет более легко увидеть, что требуется для добавления варианта.
Как упоминалось в коммите GIT:
Базовый тест на ADC/DAC/PWM/IO функционирует.
USB не тестируется.
Сериал над STLINK Требуется соединение.
См. UM1472 §6.1.3 Конфигурация VCP ST-Link/V2-A


Надеюсь, это поможет ;)

Аркнор
Ср. 05, 2017 10:54 утра
Привет,

Это потрясающе! Я только что обнаружил этот проект, и единственная доска, которую я имею, - это STM32F4Discovery, и только что обнаружил, что полчаса назад вы выпустили филиал с поддержкой, отличным! Я постараюсь выполнить шаги, разбросанные по этому форуму, чтобы заставить его работать (кажется, есть немного устаревшей информации)

Спасибо!

fpistm
Ср 05 апреля 2017 12:19
Арчнор написал:Привет,

Это потрясающе! Я только что обнаружил этот проект, и единственная доска, которую я имею, - это STM32F4Discovery, и только что обнаружил, что полчаса назад вы выпустили филиал с поддержкой, отличным! Я постараюсь выполнить шаги, разбросанные по этому форуму, чтобы заставить его работать (кажется, есть немного устаревшей информации)

Спасибо!

Палмерр
Ср. 05 апреля 2017 12:45
Это сработало, спасибо.

Завтра попробую вариант.

Палмерр
Ср. 05 апреля 2017 13:23
Я провел день, создавая вариант куба F407VET (не диско).

Учитывая, что файлы конфигурации статической библиотеки (build_gcc, в частности Makefile и STM32F4.MK) связаны с вариантом больше, чем платформа F4, имеет ли смысл перемещать некоторые или все, в каталог варианта?

Я сделал немало изменений в STM32F4.MK -файл для добавления/вычтения функций (e.глин. Нет кодека Wolfson) на моем доске.

Может быть, все дискотеки имеют аналогичные аппаратные функции, и общий сборник_GCC имеет смысл для них.

Я собираюсь посмотреть на новый диско -код 407 - и посмотрю, как это делается правильно!

fpistm
Ср. 05, 2017, 14:37
Палмерр написал: Учитывая, что файлы конфигурации статической библиотеки (build_gcc, в частности Makefile и STM32F4.MK) связаны с вариантом больше, чем платформа F4, имеет ли смысл перемещать некоторые или все, в каталог варианта?

Палмерр
Ср. 05, 2017 11:24
Да, точно.

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

Рад пойти с тем, что вы решаете, но теперь есть возможность поправить вещи, прежде чем многие люди (как я) начнут пожертвовать варианты на ваше превосходное ядро.

Ричард

fpistm
Чт, 06 апреля 2017 г. 6:22 утра
Палмерр написал:Да, точно.

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

Рад пойти с тем, что вы решаете, но теперь есть возможность поправить вещи, прежде чем многие люди (как я) начнут пожертвовать варианты на ваше превосходное ядро.

Ричард

Аркнор
Чт, 06 апреля 2017 г., 7:05 утра
Спасибо за это, это сработало отлично!

Тем не менее, у меня есть (очень начинающий) вопрос: как я могу использовать серийную консоль с этим? При подключении платы не существует последовательного порта (я загружаю с помощью STLINK, и это, кажется, работает нормально), поэтому Arduino IDE не удается при попытке использовать последовательный порт.

Я также хотел бы использовать USB для MIDI, но я увидел, что USB говорит «не тестируется» (а также не уверен, что будет включена ли материал arduino usbmidi), так что я предполагаю, что мне нужно быть терпеливым :).

еще раз спасибо!

fpistm
Чт, 06 апреля 2017 г., 7:43 утра
Арчнор написал:Спасибо за это, это сработало отлично!

Тем не менее, у меня есть (очень начинающий) вопрос: как я могу использовать серийную консоль с этим? При подключении платы не существует последовательного порта (я загружаю с помощью STLINK, и это, кажется, работает нормально), поэтому Arduino IDE не удается при попытке использовать последовательный порт.

Я также хотел бы использовать USB для MIDI, но я увидел, что USB говорит «не тестируется» (а также не уверен, что будет включена ли материал arduino usbmidi), так что я предполагаю, что мне нужно быть терпеливым :).

еще раз спасибо!

Эдогальдо
Чт, 06 апреля 2017 г. 8:08 утра
Извините @fpistm, что такое USART3_E?
Картирование Pins кажется не совпадает с USART3 F407, это делает это?

Извините, я дважды проверил картирование PINS и нашел его: USART3_E = USART3..

fpistm
Чт, 06 апреля 2017 г. 8:27 утра
Эдогальдо написал:Извините @fpistm, что такое USART3_E?
Картирование Pins кажется не совпадает с USART3 F407, это делает это?

Аркнор
Чт, 06 апреля 2017 г. 10:16 утра
Fpistm написал:Арчнор написал:Спасибо за это, это сработало отлично!

Тем не менее, у меня есть (очень начинающий) вопрос: как я могу использовать серийную консоль с этим? При подключении платы не существует последовательного порта (я загружаю с помощью STLINK, и это, кажется, работает нормально), поэтому Arduino IDE не удается при попытке использовать последовательный порт.

Я также хотел бы использовать USB для MIDI, но я увидел, что USB говорит «не тестируется» (а также не уверен, что будет включена ли материал arduino usbmidi), так что я предполагаю, что мне нужно быть терпеливым :).

еще раз спасибо!

michael_l
Пт 07 апреля 2017 г. 6:27
Спасибо. Это хорошая новость ! У меня заканчивается оперативная память в моем STM32F103, и скоро мне придется переключиться на STM32F4.

Здесь немного не по теме, но есть ли какие-нибудь платы STM32F4, которые имеют размеры синей таблетки ? Конечно, все MCU F4 еще не поддерживаются этим проектом, но если я найду небольшую плату STM32F4, я могу начать работать над конфигурацией варианта на основе этого проекта.

Sheepdoll
SAT 08 апреля 2017 г., 17:29
Арчнор написал:
...

Мидиусб - одна из библиотек Ардуино (https: // github.com/arduino-libraries/midiusb), и для этого требуется какая -то поддержка USB, не уверен, сколько (это работает только на Arduinos с полной поддержкой USB, такой как Atmega32u4, но эта доска должна быть полностью способна это сделать).

Еще раз спасибо!

Беннебой
Вт 11 апреля 2017 г. 12:52
michael_l написал:Спасибо. Это хорошая новость ! У меня заканчивается оперативная память в моем STM32F103, и скоро мне придется переключиться на STM32F4.

Здесь немного не по теме, но есть ли какие-нибудь платы STM32F4, которые имеют размеры синей таблетки ? Конечно, все MCU F4 еще не поддерживаются этим проектом, но если я найду небольшую плату STM32F4, я могу начать работать над конфигурацией варианта на основе этого проекта.

Палмерр
Ср 12 апреля 2017 г. 12:18
Беннебой,

Я не видел крошечных F4. (Другие не стесняются читать здесь!) Самые мощные, маленькие доски для рук, о которых я знаю, - это Teensys (Пол Стоффреген) с процессорами и скоростями, похожими на F4s. Googling Teensyduino приведет вас туда.

Есть ряд смелых душ, которые ослабили F103 от синих/красных таблеток и поместили на их место F4s. Не для слабонервных!

STM сохранил функции PIN -кода удивительно схожим по всем линиям F1XYZ до F4XYZ, с лишь несколькими различиями. Вам нужно будет посмотреть на обозначения двух чипов перед тем, чтобы обеспечить достаточное количество правильных булавок.

Создать новый вариант не сложно, хотя немного утомительно. Если вы найдете вариант с тем же базовым чипом, который уже доступен, единственное, что нужно сделать, это скопировать вариант в новый каталог, установите штифты на что -то, чем имеет смысл и добавьте новую доску.txt file. Конечно, вам нужно сделать ряд других изменений, но это основы, чтобы получить что -то, что запустит вашу доску.

Оригинальные кленовые ядра очень стабильны и надежны, но несколько функций в коде F4 просто отказываются работать хорошо (например, загрузка USB DFU).

Coduino Core идет хорошо, хотя код F1 гораздо более полный, чем код F4, из -за того, где Avik и друзья сосредоточены на сегодняшний день.

Новый код STM32Duino - на основе куба STM похож на Koduino, хотя даже новее. Альфа -релиз (да, альфа!) F4 Core меньше двух недель, но многие функции работают очень хорошо в своей основной форме - но обычно только один интерфейс каждого типа, и часто нет альтернативных булавок (пока). Журнал «Проблемы» говорит, что существенные улучшения в SPI, I2C и Timers следующие в списке.

Итак, в зависимости от того, что вы выберете, код F4 по -прежнему должен сделать что -то наверстать упущенное - но он попадает туда довольно быстро, из -за усилий нескольких трудолюбивых людей.

Стивестронг
Ср 12 апреля 2017 г. 7:10
Просто хотел вскоре спросить: будет ли это ядро ​​совершенно отличаться от Arduino Star Otto?

Беннебой
Ср 12 апреля 2017 г. 7:47
Палмерр написал: Я не видел крошечных F4. (Другие не стесняются читать здесь!) Самые мощные, маленькие доски для рук, о которых я знаю, - это Teensys (Пол Стоффреген) с процессорами и скоростями, похожими на F4s. Googling Teensyduino приведет вас туда.

ZMEMW16
Ср 12 апреля 2017 г. 8:19
вау, это дорого!

Он получил SD и EEPROM, опыт черных 407 Vet/Zet Poards предполагает, что эти периферийные устройства не могут быть отображены на листу данных по умолчанию.
Я свободно признаю, что предполагал использование по умолчанию ранее, возможно, объясняя, почему, казалось, ничего не сработало, за исключением светодиодов :!:

Стивен

fpistm
Ср 12 апреля 2017 г. 8:37
Стивестронг написал:Просто хотел вскоре спросить: будет ли это ядро ​​совершенно отличаться от Arduino Star Otto?

AG123
Ср 12 апреля 2017 г. 13:03
Я предполагаю, что для «маленького» F4, 1 -й нужно пойти на серию L4, но мне еще предстоит найти какие -либо «крошечные» энтузиасты, плавающие на eBay с этим.
Самое близкое - это, вероятно, ядро, которое на данный момент использует скромное пространство для платы, я думаю, что если оно станет слишком малым, это может стать невозможным, чтобы разбить все булавки на 2.54 -мм заголовки :ржу не могу:
http: // www.ул.com/en/evaluation-tools/n ... 476rg.HTML
ИМХО F4, E.глин. F407 {v, z} et - хорошая плата для подключения множества вещей и имеет приличный SRAM и Flash

Палмерр
Чт 13 апреля 2017 г., 6:07
Фредерик,

Я просматривал ваши варианты файлов для порта MCU для сопоставлений PIN Arduino, работая над вариантом «Black STM32F407VET6» - как мы описали на вики http: // wiki.STM32duino.com/index.PHP?title = STM32F407.

Доска Nucleo довольно проста со своими заголовками в стиле Uno V3.

С диско -доской
- Что было причиной, начавшейся с внутренних булавок с обеих сторон и внешних булавок?
- Насколько усердно вы пытались соответствовать стандартам DXX в стиле Uno для функций (E.глин. Spi, i2c, uart)?

Спасибо за любое руководство, которое вы можете предоставить, как сделать варианты максимально простыми в использовании для программистов.

Ричард

fpistm
Чт 13 апреля 2017 г., 7:16 утра
Палмерр написал:Фредерик,
- Что было причиной, начавшейся с внутренних булавок с обеих сторон и внешних булавок?
- Насколько усердно вы пытались соответствовать стандартам DXX в стиле Uno для функций (E.глин. Spi, i2c, uart)?

Спасибо за любое руководство, которое вы можете предоставить, как сделать варианты максимально простыми в использовании для программистов.

Ричард

Палмерр
Чт 13 апреля 2017 г. 8:43 утра
Фредерик,

Спасибо за совет.

Я пойду и посмотрю свои файлы и разработаю картирование PIN -код, которое имеет смысл для этой платы.

Ричард

fpistm
Чт 13 апреля 2017 г. 9:18 утра
Палмерр написал:Фредерик,

Спасибо за совет.

Я пойду и посмотрю свои файлы и разработаю картирование PIN -код, которое имеет смысл для этой платы.

Ричард

Палмерр
Чт 13 апреля 2017 г. 12:41
Фредерик,

еще раз спасибо.

Глядя на то, как код SPI ищет правильную запись, скажем, массив MOSI в периферических.c, это плохая идея иметь PIN -код, скажем, PB5, активный для SPI1 и SPI3?

Похоже, что код остановится на первой записи, скажем, SPI1, даже если SPI3 предназначен и неверный AF будет применен к PIN.

Ричард

fpistm
Чт 13 апреля 2017 г. 13:15
Палмерр написал:Фредерик,

еще раз спасибо.

Глядя на то, как код SPI ищет правильную запись, скажем, массив MOSI в периферических.c, это плохая идея иметь PIN -код, скажем, PB5, активный для SPI1 и SPI3?

Похоже, что код остановится на первой записи, скажем, SPI1, даже если SPI3 предназначен и неверный AF будет применен к PIN.

Ричард

AG123
Чт 13 апреля 2017 г. 20:31
Привет, Палмерр,
Я думаю, что было бы нормально иметь SPI1 на PB3-PB5, проблема в том, что дизайнер платы поместил встроенную вспышку SPI, заголовок SPI1 и разъем NRF24 на тех же штифтах, это, безусловно, означало бы неизбежные конфликты
Если у нас просто есть SPI1 на PB3-PB5, встроенная вспышка SPI может быть отключена или выбрана с использованием PB0, которая подключена к /cs (помеченный F_CS) на вспышке SPI.
Затем, если «пользователь» хочет подключиться, скажем, с ЖК -дисплеем SPI он/она все еще может использовать SPI1 без проблемы
http: // www.STM32duino.com/viewtopic.PHP ... = 20#p26219
http: // www.STM32duino.com/viewtopic.PHP ... = 10#p26147

На самом деле для i2c кажется, что его можно использовать без конфликта с SPI1 как pb6 i2c1_clk & Pb7 i2c1_sda помечены как маршрутизация в nrf_ce & Nrf_cs

В противном случае вы можете просто выбрать еще один набор контактов для i2c (это может быть предпочтительным, это оставило бы nrf_ce и nrf_cs в качестве выводов GPIO) и все же установит другой для UART, поскольку {v, Z} ET6 имеет много разбитых пинов

Если мы хотим обслуживать различные сценарии, я бы подумал, что у нас могут быть разные «варианты», в которых «пользователь» должен был бы выбрать между вариантом для SPI+I2C или, возможно, специфического варианта разъема NRF24 как 2 разных вариантов ' Использование тех же булавок PB3-PB7

Sheepdoll
Чт 13 апреля 2017 г. 9:50 вечера
Палмерр написал:Фредерик,

Я просматривал ваши варианты файлов для порта MCU для сопоставлений PIN Arduino, работая над вариантом «Black STM32F407VET6» - как мы описали на вики http: // wiki.STM32duino.com/index.PHP?title = STM32F407.

Доска Nucleo довольно проста со своими заголовками в стиле Uno V3.

С диско -доской
- Что было причиной, начавшейся с внутренних булавок с обеих сторон и внешних булавок?
- Насколько усердно вы пытались соответствовать стандартам DXX в стиле Uno для функций (E.глин. Spi, i2c, uart)?

Спасибо за любое руководство, которое вы можете предоставить, как сделать варианты максимально простыми в использовании для программистов.

Ричард

Палмерр
Пт 14 апреля 2017 г. 1:28
Спасибо Sheepdoll,

Приятно слышать, откуда начались люди STM, что освещает то, как они прибыли там, где они.

Я думаю, что мы приходим к какому -то консенсусу, который для более продвинутых досок нумерация стиля DX в коде контрпродуктивна.

Это означает отказ от некоторых дефолтов Uno DX (SPI, LED, TXN, SDA/SCK и т. Д.) Для интерфейсов по умолчанию. Он сломает некоторые библиотеки, но они, вероятно, нуждаются в переписывании, если у них есть жесткие значения по умолчанию на уровне библиотеки для сопоставления функций/выводов, а не получение с платформы/платы определяет.

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

Почему я сталкиваюсь со всем этим на форумах, заключается в том, что если мы придем к новому консенсусу и документируем, как приблизиться к компромиссам в создании вариантов, мы можем избежать небольшого хаоса вниз по течению!

Например, в настоящее время Стивен (ZMEMW16) и я сотрудничаем на вариантах Black_f4vet6. Даниэль поместил один в GenericStm32, а Мишель (MSKMichel) добавил в вики -документацию (и, возможно, работа над вариантом) также). Мы могли бы получить три или четыре районы той же доски! Может быть, мы все внесем свой вклад в ценность наших двух центов и позволим рынку решить, что лучше (лучше) лучше.

Ричард

Палмерр
Пт 14 апреля 2017 г. 1:43
AG123,

Я согласен с вашей логикой в ​​том, чтобы не слишком тесно связать вещи, чтобы разработчик мог выбрать, какой набор функций для включения, и, таким образом, иметь некоторую гибкость на булавках.

Тем не менее, я думаю, что мы сможем обойтись с одним вариантом практически для всех целей.

1. Оставьте как можно больше вариантов AF открытыми для каждого периферийного устройства - обеспечивая практически всю гибкость, которую вы упоминаете.
2. Только ограничить булавки, которые могут вызвать функциональные проблемы:
- эн.глин. PIN CS для вспышки, которая должна отключить чип для другого оборудования (включая модули SPI), используя PB4/5 для работы.
- SWDIO/SWCLK?

На черном F4VET6 выбор SPI1/SPI3, кажется, единственный, кто вообще значит. NRF, USB (?) & SDIO - это варианты, которые могут (могут? должен?) отключиться на уровне кода вместе с сопоставлением AF.

Даниэль Эфф выбрал SPI3 для сопоставления с NRF/Flash, и это, кажется, хороший выбор, подумал, что есть некоторые компромиссы NSS. Я не уверен, будет ли DMA/SPI.

Ричард

Chismicro
Пт 14 апреля 2017 г., 7:40
Привет вместе,

Большое спасибо за всю вашу работу. Я успешно установил STM32F4 из каталога Rogers, и он работал нормально.
Моя цель состояла в том, чтобы написать несколько примеров для STM32F4 Discovery. Потому что STM32F4 Core более новее и имеет большую поддержку периферийных устройств, которые я пытался установить его, касающиеся этого описания: Привет, Аркнор,
Я еще не выпускаю пакет для F4. Некоторые функции нуждаются в некоторой переработке, чтобы быть более общим.
Но если вы хотите попробовать это быстро, затем следуйте вики:
https: // github.com/stm32duino/wiki/wiki/
Например, установить ядро ​​L4. Это позволит установить инструменты ARM и инструменты STM32 (включая STLINK).
Затем просто клонируйте репо F4 в установку Arduino Dir:
диск <arduino_install_dir>/аппаратное обеспечение/
Создать DIR STM
Mkdir Stm
Затем клонируйте репо:
git клон https: // github.com/fpistm/arduino-core-stm32f4.git STM32F4
Не забудьте проверить филиал STM32F407 ;)
Начните Arduino, вы должны увидеть платы STM32F4
Я попробовал это на Windows10 с Arduino IDE 1.6.9 и Arduino 1.8.0
Я попробовал это на Linux Ubuntu 16.04 LTS с Arduino IDE 1.8.1

У меня не было успеха. Ни в одном из этого в The Ides открытие STM32F4 не появилось в правлении-менеджере. Я пробовал это уже два дня во всех отношениях. Нет успеха.

У вас есть какие -либо подсказки? Это, вероятно, проблема Текущий коммит.

Аркнор
Пт 14 апреля 2017 г., 7:45 утра
Привет, Chrismicro,

Помните, что скопированные вами инструкции были неправильный репозиторий. Правый - "https: // github.com/stm32duino/arduino_core_stm32f4.git". Вам также не нужно больше менять филиал (она была объединена для хозяина).

Надеюсь, это поможет.

fpistm
Пт 14 апреля 2017 г. 8:23
Оупс, да, я ошибся... Это репо не хорошее... : oops:
Я обновлю свой пост, чтобы указать на правильный.
И теперь F407 объединен в мастере.

Палмерр
Пт 14 апреля 2017 г. 8:30
Спасибо Фредерик,

Я скачиваю изменения завтра и проведу игру.

Кстати: функции с плавающей запятой внедряются еще, я получаю медленную арифметику?

Единая точность float = 8 x фиксированная точка, для добавления и умножения.

Это должно быть ближе к 1: 1 для FPU?

Ричард

Chismicro
Пт 14 апреля 2017 г., 19:06
Помните, что скопированные вами инструкции были неправильный репозиторий. Правый - "https: // github.com/stm32duino/arduino_core_stm32f4.git". Вам также не нужно больше менять филиал (она была объединена для хозяина). Э -э -э -э .. .Наконец это работает ... После этого много попыток.
Большое спасибо ;-)

Моя рабочая процедура установки (я надеюсь, что это может помочь некоторым другим людям):

Мой каталог Arduino IDE
C: \ Tools \ arduino \ arduino1_8
Я делаю каталог в папке Arduino IDE и изменяюсь в этот каталог:
C: \ Tools \ arduino \ arduino1_8 \ harpware \ stm \
затем:
git клон https: // github.com/stm32duino/arduino_core_stm32f4.git STM32F4

Chismicro
Сб 15 апреля 2017 г. 5:13
Discovery STM32F4 имеет очень интересные периферийные устройства для генерации звука и обработки:

- MP45DT02 ST-MEMS-Микрофон
- Audio-DAC CS43L22 с усилителем класса D
- 3-осея-ST-MEMS-ECCELEROTER

Планируется ли они поддержать их водителями? Правление очень хорошо подходит для создания синтезаторов, если есть возможность Drive The Codec.

Здесь Я нашел пример, используя акселерометр, который использует репозиторий Роджерса.
Но это не работает с этим ядром.

Есть также пример, который я сделал Использование микрофона для измерителя VU в том числе otg Led с репозиторием Rogers. Как это можно сделать с этим ядром?

Палмерр
Сб 15 апреля 2017 г. 5:43 утра
Пинковые карты для черной платы F4 Vet6 теперь находятся на вики и в моем репо https: // github.com/palmerr23/black-f407 ... /Документы

Исправления с благодарностью приняты.

Ричард

Палмерр
Солнце 16 апреля 2017 г. 8:34
Упс!

Я исключил PB4 из распиновки и кода для Black F4VET6.

Он связан только с гнездам NRF и Winbond Flash, поэтому я поднял его при создании диаграмм распины для JTAG, TFT и NRF Sockets.

Исправлена ​​в вики и в моем репо.

Ричард

fpistm
Вт 18 апреля 2017 г. 8:42 утра
Привет, Ричард,

Я отправил вопрос с некоторыми советами о вашем github Repo.
Бренд

Zouk199
Вт 25 апреля 2017 г. 9:27
Привет, мастера

Спасибо за релиз D F4 Core.Я пробую F103RB с ENC28J60, он отлично работает.

Но мне нужна библиотека Modbus TCP для плат F103 и F411 для работы в качестве Modbus Master/Slave Application.

Можете ли вы помочь преобразовать эту библиотеку Arduino Modbus для работы на STM32???

https: // github.com/andresarmento/modbus-arduino

Было бы здорово подключить STM32 от Net и получить некоторые аналоговые значения в реальном времени

с наилучшими пожеланиями

Мио
Подготовительный

fpistm
Чт, 04 мая 2017 г., 7:19
Привет, Zook199,

звучит отлично.
К сожалению, у меня нет времени, чтобы изучить это. Если бы я мог получить несколько раз, я проверю это.
Но, может быть, какой -то другой пользователь также может проверить :)

Chismicro
Чт, 04 мая 2017 г. 9:01
@fpistm
Вы видели, я сделал это демо для STM32F4 Discovery STM32GENERIER.
Поскольку не существует DMA-I2, а также DAMI2 для микрофона, мне пришлось сделать все это «блокировка» и «бить».

Когда вы планируете свой следующий релиз, который поддерживает эту периферийность?

Палмерр
Пт, 5 мая 2017 г., 3:29
Код теперь обновлен для варианта Black F4 Vet6 с использованием нового синтаксиса определения аналогового вывода в моем репо https: // github.com/palmerr23/black-f407vet6-cube.

Он работает непосредственно с новым ядром "cubemx" f4 в https: // github.com/stm32duino/arduino_core_stm32f4 Управляется @fpistm

Ричард

Палмерр
Вт 09 мая 2017 г. 7:06 утра
Я добавил достаточно обширный набор рабочих примеров HAL ADC для нового набора кодов F4 в https: // github.com/palmerr23/black-f407 ... R/Примеры

* Обычный опрос конверсии - ADC1 и ADC3
* Регулярное прерывание конверсии
* Регулярное преобразование DMA
* Внутренняя режима - непрерывные и разрывные преобразования с использованием DMA с 8 -битными и 12 -битными образцами


Если люди найдут их полезными, я создам еще немного. Возможный список может включать:
* Vbat, vtemp
* Многоканальная работа и режим сканирования
* Тройной режим, чередованный
* Аналоговый сторож
* Режимы впрыска
* LL и примеры смешанного режима

fpistm
Ср 10 мая 2017 г. 14:32
Chismicro написал: Когда вы планируете свой следующий релиз, который поддерживает эту периферийность?

Палмерр
Чт 11 мая 2017 г. 1:36
Фредерик,

Я продолжу с дополнительными режимами. Вероятно, сначала VBAT, VTEMP, каналы и тройной чередование.

Было бы полезно включить как драйверы HAL, так и LL для всего, чувствительного к времени в новый общий код.

Я обнаружил, что столкнулся с временными ограничениями в подпрограмме прерывания режима HAL. Для применений в режиме сканирования и других использования, которые требуют очень быстрых ответов, предпочтительны драйверы LL. В демонстрационном коде есть несколько отличных примеров смешанных режимов, которые я работаю с некоторыми дополнительными файлами драйверов LL.

Кроме ADC/DAC, я не уверен, что еще может понадобиться доступ LL. Файлы DMA, GPIO и т. Д.

Ричард

fpistm
Вторник 16 мая 2017 г. 6:33
На новом репо arduino_core_stm32,
LL включены. Больше нет библиотеки HAL Static.
STM32F4XX_LL_ADC.C STM32F4XX_LL_CRC.C STM32F4XX_LL_DAC.C STM32F4XX_LL_DMA.C STM32F4XX_LL_DMA2D.C STM32F4XX_LL_EXTI.в
STM32F4XX_LL_FMC.C STM32F4XX_LL_FSMC.C STM32F4XX_LL_GPIO.C STM32F4XX_LL_I2C.C STM32F4XX_LL_LPTIM.C STM32F4XX_LL_PWR.в
STM32F4XX_LL_RCC.C STM32F4XX_LL_RNG.C STM32F4XX_LL_RTC.c STM32F4XX_LL_SDMMC.C STM32F4XX_LL_SPI.C STM32F4XX_LL_TIM.в
STM32F4XX_LL_USART.C STM32F4XX_LL_USB.C STM32F4XX_LL_UTILS.в

Итак, это можно легко использовать.

Палмерр
Вторник 16 мая 2017 г. 7:20 утра
Фредерик,

Отличный.

Ричард

I2C примеры