STM32GENERIERIER ARDUINO. Реализация

Даниэфф
Ср. 5 июля 2017 г. 11:38
STM32Generic: реализация Arduino в верхней части STM32 HAL, для всех плат STM32.

Код на GitHub: https: // github.com/danieleff/stm32generic

Документация: https: // danieleff.GitHub.io/stm32generic/

Инструкции по установке: https: // danieleff.GitHub.io/stm32generic/

Для отправки проблем, используйте проблемы GitHub: https: // github.com/danieleff/stm32generic/проблемы

Для некоторых примеров использования проверьте Arduino IDE, Menu File =>Примеры =>Примеры платы STM32 для пользователей

Это альтернатива официальной реализации: https: // github.com/stm32duino/arduino_core_stm32, Он должен быть очень похож в Arduino API и STM32 HAL API.

Даниэфф
Солнце 16 июля 2017 г. 5:23
Учитывая, что основное внимание уделяется Libmaple и официальной реализации, это требует следующего пути.
Основное внимание уделяется экспериментальным, несущественным вещам.

Вы можете создавать библиотеки для периферийных устройств в качестве собственного репо, если вы используете HAL, как официальные, так и это может их использовать. (Если это работает, я могу добавить его в примеры платы (как в, скачать X Library отсюда: ...)) (Я также создам некоторые из них, если никто больше не сделает)

Почти все работы ARDUINO API, я хочу работать над забавными вещами, которые нуждаются в поддержке от ядра:
  • Либмапл-совместимый Hardwaretimer и расширяйте его до большего времени режима таймера
  • Распространение AN2594 на данные переменного размера (1-512 байтов) и несколько страниц, для эмуляции EEPROM, и...
  • ...Используйте предыдущую точку для эмуляции Flash Disk с помощью вспышки на чип и в качестве бэкэнда диска для хранения массового хранения
  • Виртуальная файловая система, как в ESP32.
  • Analogread начинает чтение DMA, и все последующие чтения читаются только из DMA-буфера
  • Добавьте слабый API Mutex в транзакции для SPI/I2C/SDIO, реализуйте во Freertos, для безопасного доступа к тому же периферийному устройству
  • Часы API, общие по умолчанию для большинства используемых часов, обычные LDScripts. Папка варианта будет содержать только вариант.час.
  • DFU для F407?
  • Задержка () усыпает MCU??
  • ...
Так что почти никто не использует, это не должно менять API Arduino.

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

Rogerclark
Солнце 16 июля 2017 г. 6:11
Даниэль

Вы можете использовать систему выпусков GitHub, если хотите отметить конкретный коммит как относительно стабильный ;-)

Chismicro
Солнце 16 июля 2017 г. 6:34
Вы можете создавать библиотеки для периферийных устройств в качестве собственного репо, если вы используете HAL, как официальные, так и это может их использовать. Я не понимаю, как ты это имеешь в виду. Вы можете описать процедуру?

Даниэфф
Солнце 16 июля 2017 г. 13:52
[Rogerclark - Солнце 16 июля 2017 г. 6:11] - Даниэль

Вы можете использовать систему выпусков GitHub, если хотите отметить конкретный коммит как относительно стабильный ;-)
Да, мне придется подумать об этом.
[Chismicro - Солнце 16 июля 2017 г. 6:34] - Вы можете создавать библиотеки для периферийных устройств в качестве собственного репо, если вы используете HAL, как официальные, так и это может их использовать. Я не понимаю, как ты это имеешь в виду. Вы можете описать процедуру?
Просто репозиторий GitHub с библиотека.характеристики Файл в корне и источник в папке SRC.

Chismicro
Пн 17 июля 2017 г. 4:38 утра
Мой страх немного, что вся система становится немного неудобной, если вам придется загрузить «один миллион» библиотек, прежде чем вы сможете использовать любой пример.
Ваш аргумент о том, что библиотеки можно использовать из разных базовых рамок, должен быть принят во внимание.
Но как мы можем сохранить принцип Arduino 3 шага

1. скачать
2. Выберите пример
3. Нажмите компиляция и вспышка

Когда вам сначала нужно искать много библиотек?

ZMEMW16
Пн 17 июля 2017 г. 12:46
1.остановить IDE
2.Загрузите и установите библиотеки или клонировать репо в Sketchbook/Libraries, выпустите с обновлением его, поскольку GIT отказывается перезаписать?
3.Перезапустите IDE, чтобы обновить библиотеки, которые он видит
Стивен

Chismicro
Пн 17 июля 2017 г. 13:03
Да, но проблема e.глин.
У вас есть STM32F746 Discovery, вам нужно много водителей:
- трогать
- Тфу
- Микрофон
- Ethernet
- Звучать
Это означает поиск, поиск ... не работает над первым щелчком

ZMEMW16
Пн 17 июля 2017 г. 13:09
Конечно, это именно текущее состояние, ADAFRIT_XXX требует ADAFRIT_GFX и т. Д.
Я также установил несколько других, и мне пришлось обойти это более одного раза, так как некоторые из «необходимых» библиотек имеют свои собственные «потребности», поэтому чтение источника исходного набора недостаточно, чтобы детализировать торговый центр.
Стивен

Даниэфф
Пн 17 июля 2017 г. 13:28
Я мог бы сделать библиотеки только STM32 в качестве подмодулей GIT и упаковать в пакет менеджера доски.

Chismicro
Вт 18 июля 2017 г., 4:25 утра
Было бы довольно полезно, если бы вы могли сделать его в качестве примера.

Chismicro
Вт 18 июля 2017 г. 4:35 утра
Я только что видел, что вы добавили библиотеку и примеры аппаратного таймера и примеры.
Можно ли использовать эту библиотеку для PWM-звука, как я сделал это с HAL-INTERRRUPT TIMER?:

vitor_boss
Чт 20 июля 2017 г. 20:21
Даниэффа Большое спасибо за библиотеку Hardwaretimer. Ваша репо скалы

Chismicro
Чт 19 октября 2017 г. 5:58 утра
Интересный: Huaweiwx Кажется, поддерживает действительно много досок и интегрирует все либерации в репозиторий.
Коммит теперь на 106 человек впереди Даниэля, и сейчас это кажется вилкой.

Rogerclark
Чт 19 октября 2017 г., 7:42 утра
Жаль, что у нас нет возможности связаться с человеком, который поддерживает это репо

Chismicro
Чт 19 октября 2017 г. 15:02
Это невозможно через GitHub? Я думаю, что если вы создадите проблему там, они должны ответить.

Martinayotte
Чт 19 октября 2017 г. 16:40
Просто используйте его электронное письмо, взятое на его главной странице GitHub:

huaweiwx@sina.компонент

Сжимать
Чт 19 октября 2017 г. 18:54
Кажется, он активен на китайском форуме: http: // bbs.MyDigit.cn/u.PHP?UID = 1023450 информирование о прогрессе проекта.

Rogerclark
Чт 19 октября 2017 г., 19:47
Возможно, мы сможем получить одного из членов форума, который живет в Китае, чтобы связаться с этим парнем (на китайском языке) через этот форум.

Chismicro
Чт 19 октября 2017 г., 8:35 вечера
Но что бы вы ему сказали?

logd32
Ср. 06 декабря 2017 12:14
Теперь я хочу объединить это и USB DFU Bootlader, я связался с Хуа Вэй, чтобы спросить его о том, какой загрузчик он использует

Tftlcdcyg
Сб 22 сентября 2018 г., 3:15 утра
Привет снова, Даниэфф!. Поздравляю с нами, ваш общий ядро ​​для STM32.

Я нашел эту проблему с библиотекой сервоприводов:

Изображение
Opciones de compilación cambiadas, reconstruyendo todo C:\arduino-1.8.0\hardware\STM32GENERIC_danielefF\STM32\libraries\Servo\src\Servo.cpp: In member function 'void Servo::writeMicroseconds(int)': C:\arduino-1.8.0\hardware\STM32GENERIC_danielefF\STM32\libraries\Servo\src\Servo.cpp:45:5: error: 'pwmWrite' was not declared in this scope pwmWrite(this->pin, dutyCycle16Bits, 50, 0); ^~~~~~~~ C:\arduino-1.8.0\hardware\STM32GENERIC_danielefF\STM32\libraries\Servo\src\Servo.cpp:45:5: note: suggested alternative: 'write' pwmWrite(this->pin, dutyCycle16Bits, 50, 0); ^~~~~~~~ write exit status 1 Error compilación en tarjeta Nucleo-144 boards.

Мадиас
Сб 22 сентября 2018 г. 8:20 утра
Даниэль не активен на этом форуме с момента "Последнего активного: 12 декабря 2017 года, 14:58"
Лучше написать проблему на GitHub.

Tftlcdcyg
Пн 24 сентября 2018 г. 15:59
офтопический:

Хорошо!, Спасибо за совет.