Dberenguer
Солнце 06 августа 2017 18:00
Дорогие друзья,
Во -первых, я хочу поздравить команду STM32Duino с тем, что он так долго сохранял эту инициативу. Я лично посещал эти форумы снова и снова, прежде чем начать множество различных проектов, просто пытаясь обнаружить современное ядро STM32, наконец, полностью поддерживаемое Arduino IDE. Меня особенно интересует низкомосная семья STM32 Micros, которые, кажется, еще не поддерживаются из Arduino IDE. Тем не менее, все еще существует ядро STM32F407, которое кажется очень удобным для некоторых других проектов, которые я имею в виду, и последние новости, похоже, указывают на то, что это ядро теперь поддерживается Arduino IDE.
Большинство моих досок должны быть вспыльными fvia uart или usb. Доска Discovery, сделанные STM, включают в себя программист JTAG, но это не вариант в моем случае. Вместо этого я хотел бы использовать функцию DFU, доступную на MCU STM32 по умолчанию. Я прочитал пост Роджера Кларка о том, как первое обновление прошивки действительно заменяет DFU новым серийным бот -загрузчиком для плат STM32F103.
http: // www.Rogerclark.net/arduino-stm32 ... l-and-dfu/
Это все еще верно для платформ STM32F4?
Допустим, я строю свою собственную плату STM32F407 и выбираю «STM32 Discovery F407» из инструментов->Доски. Я ожидаю, что JTAG станет механизмом обновления по умолчанию для этой платы. Есть ли другая доступная доска, которую я мог бы взять в качестве отправной точки вместо Discovery One? Пожалуйста, примите во внимание, что я хочу обновить через Native USB.
Какие функции все еще отсутствуют для плат STM32F4 по запросу из Arduino?
Спасибо за ваше время и руководство.
Во -первых, я хочу поздравить команду STM32Duino с тем, что он так долго сохранял эту инициативу. Я лично посещал эти форумы снова и снова, прежде чем начать множество различных проектов, просто пытаясь обнаружить современное ядро STM32, наконец, полностью поддерживаемое Arduino IDE. Меня особенно интересует низкомосная семья STM32 Micros, которые, кажется, еще не поддерживаются из Arduino IDE. Тем не менее, все еще существует ядро STM32F407, которое кажется очень удобным для некоторых других проектов, которые я имею в виду, и последние новости, похоже, указывают на то, что это ядро теперь поддерживается Arduino IDE.
Большинство моих досок должны быть вспыльными fvia uart или usb. Доска Discovery, сделанные STM, включают в себя программист JTAG, но это не вариант в моем случае. Вместо этого я хотел бы использовать функцию DFU, доступную на MCU STM32 по умолчанию. Я прочитал пост Роджера Кларка о том, как первое обновление прошивки действительно заменяет DFU новым серийным бот -загрузчиком для плат STM32F103.
http: // www.Rogerclark.net/arduino-stm32 ... l-and-dfu/
Это все еще верно для платформ STM32F4?
Допустим, я строю свою собственную плату STM32F407 и выбираю «STM32 Discovery F407» из инструментов->Доски. Я ожидаю, что JTAG станет механизмом обновления по умолчанию для этой платы. Есть ли другая доступная доска, которую я мог бы взять в качестве отправной точки вместо Discovery One? Пожалуйста, примите во внимание, что я хочу обновить через Native USB.
Какие функции все еще отсутствуют для плат STM32F4 по запросу из Arduino?
Спасибо за ваше время и руководство.
Martinayotte
Солнце 06 августа 2017 8:47 вечера
Основная причина загрузчика состоит в том, что F1XX не имеет DFU в кремниевом уровне первого этапа, в то время как F4XX обеспечивает DFU даже с пустой вспышкой.
Вы все еще можете захотеть иметь загрузчик в F4XX, если вы не хотите нажимать кнопку Boot0 и иметь автоматический DFU.
Вы все еще можете захотеть иметь загрузчик в F4XX, если вы не хотите нажимать кнопку Boot0 и иметь автоматический DFU.
Rogerclark
Солнце 06 августа 2017 22:22
Сейчас есть лучшие ядра Arduino для F4.
У STM есть свое собственное ядро, и @danieleff имеет свое собственное ядро STM32_Generic.
Я бы посоветовал, чтобы вы использовали один из них в предпочтении моего ядра, для новых разработок
У STM есть свое собственное ядро, и @danieleff имеет свое собственное ядро STM32_Generic.
Я бы посоветовал, чтобы вы использовали один из них в предпочтении моего ядра, для новых разработок
Dberenguer
Пн, 07 августа 2017 г. 7:17 утра
Спасибо, ребята, за ваши ответы,
Я устанавливаю против https: // github.com/stm32duino/boardmana ... индекс.json. Я думал, что это репо уже включало ядер STM. Я прав?
Выбор из инструментов->Доски->Открытие, а затем из инструментов->Номер детали доски->STM32F407G DISC1 предлагает два различных метода загрузки: ST-Link и Mass Storage. Оба, кажется, поддерживаются только бортовым чипом JTAG, поэтому мне все еще интересно, как я могу загрузить новый код через DFU по нативному USB. В противном случае я мог бы легко позвонить в DFU-UTIL из Arduino для моего варианта, но мне интересно, уже поддерживается ли это любым другим вариантом прямо сейчас. Пост Роджера о ограничении драйверов DFU при смешивании со стандартной серийной функциональностью заставляет меня думать, что это, вероятно, не лучший подход.
Извините, ребята за эти основные сомнения.
Я устанавливаю против https: // github.com/stm32duino/boardmana ... индекс.json. Я думал, что это репо уже включало ядер STM. Я прав?
Выбор из инструментов->Доски->Открытие, а затем из инструментов->Номер детали доски->STM32F407G DISC1 предлагает два различных метода загрузки: ST-Link и Mass Storage. Оба, кажется, поддерживаются только бортовым чипом JTAG, поэтому мне все еще интересно, как я могу загрузить новый код через DFU по нативному USB. В противном случае я мог бы легко позвонить в DFU-UTIL из Arduino для моего варианта, но мне интересно, уже поддерживается ли это любым другим вариантом прямо сейчас. Пост Роджера о ограничении драйверов DFU при смешивании со стандартной серийной функциональностью заставляет меня думать, что это, вероятно, не лучший подход.
Извините, ребята за эти основные сомнения.
Rogerclark
Пн, 07 августа 2017 г. 7:34
Я думаю, что любой метод загрузки должен работать на этой плате, поскольку у него есть выделенный чип STM32F103 для обработки загрузок, независимый от основного F4 MCU
Dberenguer
Пн, 07 августа 2017 г. 8:06 утра
Хорошо, но что, если я использую одну из этих простых досок?
http: // www.eBay.com/itm/stm32f4-discove ... SWL1HZDWGE
У них нет отдельного чипа эмулятора JTAG или DFU, поэтому я хотел знать, сможет ли Arduino обрабатывать DFU через родной USB -порт на STM32F407 MCU.
еще раз спасибо,
http: // www.eBay.com/itm/stm32f4-discove ... SWL1HZDWGE
У них нет отдельного чипа эмулятора JTAG или DFU, поэтому я хотел знать, сможет ли Arduino обрабатывать DFU через родной USB -порт на STM32F407 MCU.
еще раз спасибо,
Стивестронг
Пн, 07 августа 2017 г. 8:22 утра
Если я установите Boot0 на 3.3V на моей черной плате F4, это устройство распознается Win10 64Bit:
- STM32F4 DFU Устройство.JPG (38.81 киб) просмотрено 850 раз
Rogerclark
Пн, 07 августа 2017 г. 8:34
Я не знаю, работает ли F4 в DFU с обычным DFU-UTIL
Я думаю, что вам нужна утилита DFUSE для загрузки
Я думаю, что вам нужна утилита DFUSE для загрузки
Dberenguer
Пн, 07 августа 2017 г. 9:25 утра
Большое спасибо за всю информацию.
Пито
Пн, 07 августа 2017 г. 10:25
Rogerclark
Пн, 07 августа 2017 г. 10:46 утра
@pito
Вы уверены, что используете EXE DFU -UTIL, который в моем репо, потому что, насколько я могу судить, мой не поддерживает опцию -s, которую вы используете в примере командной линии в другом потоке
Вы уверены, что используете EXE DFU -UTIL, который в моем репо, потому что, насколько я могу судить, мой не поддерживает опцию -s, которую вы используете в примере командной линии в другом потоке
Пито
Пн, 07 августа 2017 г. 10:50
@Roger, я использую 64 -битную версию, загруженную где -то.
Отсюда
https: // sourceforge.net/projects/dfu-util/
Отсюда
https: // sourceforge.net/projects/dfu-util/
Rogerclark
Пн, 07 августа 2017 г. 10:52
Вы можете отправить мне это по электронной почте ?
Роджер в Рогеркаларке.сеть ?
Роджер в Рогеркаларке.сеть ?
Пито
Пн, 07 августа 2017 г. 10:59
https: // sourceforge.net/projects/dfu-ut ... t/скачать
Readme:
Readme:
uint32_t flags = (DMA_MINC_MODE | DMA_FROM_MEM);
if (!transmitBuf) {
transmitBuf = &ff;
flags &= ~DMA_MINC_MODE;
}
dma_setup_transfer(_currentSetting->spiDmaDev, _currentSetting->spiTxDmaChannel, &_currentSetting->spi_d->regs->DR, dma_bit_size,
transmitBuf, dma_bit_size, flags);
Rogerclark
Пн, 07 августа 2017 11:08
Спасибо
Rogerclark
Пн, 07 августа 2017 г. 11:15 утра
Ммм
Это все еще не работает для меня
Это все еще не работает для меня
Note: Before setting an Enable control bit to ‘1’, the corresponding event flag should be cleared,
otherwise an interrupt is immediately generated.
Пито
Пн, 07 августа 2017 г. 11:23
Обновление: я попробовал с моим черным F407ZE в первый раз над USB DFU, в основном та же доска, что и у вас. Win7 64 -бит.
1. Я установил Boot0 на 3.3V (был GND)
2. Unplug/Plug USB (Power Off/on the Poard)
3. Он распознал USB -устройство и установил загрузчик STM32 (драйвер Libusbk, 1/1/2014, V 3.0.7.0, Dig Signer USB \ vid_0483&PID_DF11 (LIBWDI Autogenerated))
4. Я управлял dfu-util и загрузил "D.bin "ОК Примечание: 3. - Это было сделано автоматически Win7 64 -битным в моем случае, информация о Libusbk от Devman
Afaik я установил Libusbk через последний инструмент Zadig - http: // zadig.Акео.т.е./ [Пока ваша плата подключена, вы открываете инструмент Zadig, опции->Перечислите все устройства, а затем выберите свое устройство - вы увидите раскрывающий список со всеми подключенными USB -устройствами, затем выберите драйвер для этого устройства и установите]
Я думаю, что все проблемы с DFU связаны с драйвером на стороне ПК..
1. Я установил Boot0 на 3.3V (был GND)
2. Unplug/Plug USB (Power Off/on the Poard)
3. Он распознал USB -устройство и установил загрузчик STM32 (драйвер Libusbk, 1/1/2014, V 3.0.7.0, Dig Signer USB \ vid_0483&PID_DF11 (LIBWDI Autogenerated))
4. Я управлял dfu-util и загрузил "D.bin "ОК Примечание: 3. - Это было сделано автоматически Win7 64 -битным в моем случае, информация о Libusbk от Devman
Afaik я установил Libusbk через последний инструмент Zadig - http: // zadig.Акео.т.е./ [Пока ваша плата подключена, вы открываете инструмент Zadig, опции->Перечислите все устройства, а затем выберите свое устройство - вы увидите раскрывающий список со всеми подключенными USB -устройствами, затем выберите драйвер для этого устройства и установите]
Я думаю, что все проблемы с DFU связаны с драйвером на стороне ПК..
Rogerclark
Пн, 07 августа 2017 12:03
@pito
Спасибо
Использование Zadig (которое у меня уже было на машине) для установки драйвера Libusb, исправил это для меня.
Мне нужно выяснить, какая версия Libusb устанавливается установщиком Libwdi, так как она не совместима с внутренним DFU в F4
Спасибо
Использование Zadig (которое у меня уже было на машине) для установки драйвера Libusb, исправил это для меня.
Мне нужно выяснить, какая версия Libusb устанавливается установщиком Libwdi, так как она не совместима с внутренним DFU в F4
Пито
Пн, 07 августа 2017 12:08
DFU-UTIL Readme выше указывает на исправление из-за кремниевой ошибки в STM32F2..
AG123
Ср. 09 августа 2017 г., 17:46
Я использовал что -то похожее на эту сеть
https: // acassis.WordPress.com/2015/12/1 ... STM32F407/
dfu -util -d 0483: df11 -a 0 -s 0x08000000 -d эскиз.бин
Я часто ухожу с
dfu -util -a 0 -s 0x08000000 -d эскиз.бин
Если есть только одно устройство DFU
Это в Linux, хотя
-S 0x08000000 является необходимым параметром для DFUSE (DFU STM)
Я предполагаю, что, как вы можете сделать dfu -util -l, он, вероятно, будет работать с установкой эскиза с параметрами -s 0x08000000
https: // acassis.WordPress.com/2015/12/1 ... STM32F407/
dfu -util -d 0483: df11 -a 0 -s 0x08000000 -d эскиз.бин
Я часто ухожу с
dfu -util -a 0 -s 0x08000000 -d эскиз.бин
Если есть только одно устройство DFU
Это в Linux, хотя
-S 0x08000000 является необходимым параметром для DFUSE (DFU STM)
Я предполагаю, что, как вы можете сделать dfu -util -l, он, вероятно, будет работать с установкой эскиза с параметрами -s 0x08000000
Rogerclark
Ср. 09 августа 2017 г., 21:05
В окнах ... Причина, по которой я не мог DFU до F4, была в два раза.
1. Драйвер Libusb, который мы используем для F1 DFU, не работает правильно с F4
2. Версия DFU-UTIL, которую мы используем с F1, не совместима с DFUSE, необходимым для F4
Я думаю, что, возможно, и драйвер, и версия DFU-UTIL, которые включены в ядро, должны быть обновлены.
Тем не менее, мне нужно подтвердить, что обе эти работают с F1
1. Драйвер Libusb, который мы используем для F1 DFU, не работает правильно с F4
2. Версия DFU-UTIL, которую мы используем с F1, не совместима с DFUSE, необходимым для F4
Я думаю, что, возможно, и драйвер, и версия DFU-UTIL, которые включены в ядро, должны быть обновлены.
Тем не менее, мне нужно подтвердить, что обе эти работают с F1