Рик Кимбалл
Вт 28 апреля 2015 г., 17:55
У меня один из этих 4 долларов.66 Generic STMF103 Micro Boards, которые я использовал со старой платой Discovery STM32F0, которая имеет встроенное устройство STLINK-V2. Сначала казалось, что я мог забрать его, чтобы загрузить эскиз Arduino один раз, а затем отладчик перестанет отвечать. Вы должны настроить свою доску немного по -разному, если вы хотите программировать и отлаживать с помощью устройства Stlink. Общая конфигурация STM32F103C отключает выводы SWD и делает их выводами GPIO. Это потребовалось «несколько минут», чтобы найти. Симптом заключается в том, что вы можете запрограммировать его один раз после того, как вы стерте его с помощью приложения Stlink от STMICRO, но тогда вы не можете прикрепить к нему снова, если не связываетесь с PIN -код Boot0.
Ключ состоит в том, чтобы не позволять коду с основным кодом отключить ваши штифты SWD. Если вы определите config_maple_mini_no_disable_debug = 1 Компилятор покинет выводы SWD в покое и позвольте вам использовать Stlink снова и снова.
Это мои пользовательские доски.запись TXT:
Ключ состоит в том, чтобы не позволять коду с основным кодом отключить ваши штифты SWD. Если вы определите config_maple_mini_no_disable_debug = 1 Компилятор покинет выводы SWD в покое и позвольте вам использовать Stlink снова и снова.
Это мои пользовательские доски.запись TXT:
#####################################################################
# ebay stm32f103c8t6 minimal development board
ebay_f103c8_micro.name=ebay stm32f103c8t6 micro (stlink)
ebay_f103c8_micro.build.common_flags=-mthumb -march=armv7-m -D__STM32F1__ -DCONFIG_MAPLE_MINI_NO_DISABLE_DEBUG=1
ebay_f103c8_micro.build.core=maple
ebay_f103c8_micro.build.cpu_flags=-DMCU_STM32F103C8
ebay_f103c8_micro.build.error_led_pin=1
ebay_f103c8_micro.build.error_led_port=GPIOB
ebay_f103c8_micro.build.f_cpu=72000000L
ebay_f103c8_micro.build.ldscript=ld/jtag_c8.ld
ebay_f103c8_micro.build.mcu=cortex-m3
ebay_f103c8_micro.build.variant=generic_stm32f103c
ebay_f103c8_micro.build.variant_system_lib=libmaple.a
ebay_f103c8_micro.build.vect=VECT_TAB_ADDR=0x8000000
ebay_f103c8_micro.upload.file_type=hex
ebay_f103c8_micro.upload.flash.maximum_size=65536
ebay_f103c8_micro.upload.maximum_size=65536
ebay_f103c8_micro.upload.protocol=stlinkv2_upload
ebay_f103c8_micro.upload.ram.maximum_size=20480
ebay_f103c8_micro.upload.tool=stlinkv2_upload
Rogerclark
Ср 29 апреля 2015 г., 6:07
Рик
Спасибо.
Мне нужно будет дважды проверить, что происходит, потому что я думал, что проверил, и мой клон Stlink, казалось, работал нормально с моей маленькой общей платой F103C8.
Однако в Windows проблема, казалось, заключалась в том, что мне пришлось поставить на высокий уровень Boot0 (так же, как и для серийных загрузок).
Я думаю, что @ahull также тестировал Stlink на Linux, и он не сообщил о каких -либо проблемах.
Я буду PM @ahull, и, возможно, он сможет прокомментировать, что он сделал, чтобы заставить его работать на него
Спасибо.
Мне нужно будет дважды проверить, что происходит, потому что я думал, что проверил, и мой клон Stlink, казалось, работал нормально с моей маленькой общей платой F103C8.
Однако в Windows проблема, казалось, заключалась в том, что мне пришлось поставить на высокий уровень Boot0 (так же, как и для серийных загрузок).
Я думаю, что @ahull также тестировал Stlink на Linux, и он не сообщил о каких -либо проблемах.
Я буду PM @ahull, и, возможно, он сможет прокомментировать, что он сделал, чтобы заставить его работать на него
Rogerclark
Ср 29 апреля 2015 г. 11:25
Рик,
Большое спасибо за ваше объяснение.
Я обновил доски.TXT так, что то, что была плата «STM32, чтобы Flash (без загрузки)» теперь называется «STM32F103C8 для Flash - без загрузки» и изменил настройки для этой платы, когда вы выбираете STLINK в качестве метода загрузки
Если вы посмотрите на доску.Файл TXT, подразлушка может управлять всеми настройками, которые управляют основными настройками платы, поэтому можно иметь одну конфигурацию для Stlink, а другой для последовательной загрузки
Я проверил его с моей дешевой платой STM32F103C8, которая, как я подозреваю, такой же, как у вас, и это работает как очарование !
Большое спасибо за ваше объяснение.
Я обновил доски.TXT так, что то, что была плата «STM32, чтобы Flash (без загрузки)» теперь называется «STM32F103C8 для Flash - без загрузки» и изменил настройки для этой платы, когда вы выбираете STLINK в качестве метода загрузки
Если вы посмотрите на доску.Файл TXT, подразлушка может управлять всеми настройками, которые управляют основными настройками платы, поэтому можно иметь одну конфигурацию для Stlink, а другой для последовательной загрузки
Я проверил его с моей дешевой платой STM32F103C8, которая, как я подозреваю, такой же, как у вас, и это работает как очарование !
Рик Кимбалл
Ср 29 апреля 2015 12:15
Если @ ahull использует Stlink на Linux, он должен делать это вручную, как я. В каталоге Linux отсутствует многие из необходимых сценариев и двоичных файлов
https: // github.com/rogerclarkmelbourne/ ... ools/linux
В версии Linux отсутствует serial_upload и stlink_upload. Двоирные файлы Stlink и STM32Flash также отсутствуют.
Для двоичных файлов можно было бы иметь 2 папки для двоичных файлов (32 и 64)
https: // github.com/rogerclarkmelbourne/ ... ools/linux
В версии Linux отсутствует serial_upload и stlink_upload. Двоирные файлы Stlink и STM32Flash также отсутствуют.
Для двоичных файлов можно было бы иметь 2 папки для двоичных файлов (32 и 64)
Rogerclark
Ср 29 апреля 2015 12:27
Рик
Извините за Linux
Я хотел поместить скрипт OSX в папку Linux
Я согласен, что нам нужно иметь Linux 32 и 64, если вы можете опубликовать мне любого из техасцев Stlink, дайте мне знать.
PS -источник для техасцев Stlink находится в репо в качестве подмодуля под инструментами SRC из того, что я помню
Извините за Linux
Я хотел поместить скрипт OSX в папку Linux
Я согласен, что нам нужно иметь Linux 32 и 64, если вы можете опубликовать мне любого из техасцев Stlink, дайте мне знать.
PS -источник для техасцев Stlink находится в репо в качестве подмодуля под инструментами SRC из того, что я помню
Рик Кимбалл
Ср 29 апреля 2015 г. 13:00
Причина, по которой я создал конкретную запись доски и запустил информацию о инструменте загрузки, была в основном потому, что в процессоре и меню загрузки не было опции stlink_upload. Однако, даже если это было, все это кажется сломанным. Он всегда пытается использовать скрипт upload_router. Что выглядит так, как будто это DFU (не уверен, где входит часть маршрутизатора).
Я добавил такую запись в ваши последние доски.текст:
Я добавил такую запись в ваши последние доски.текст:
##############################################################
## F103C8 flash via stlink (overwrites bootloader)
## -------------------------
GenericSTM32F103C.menu.cpu_upload_menu.c8stlink=F103C8(64k) via stlink (overwrite bootloader)
GenericSTM32F103C.menu.cpu_upload_menu.c8stlink.build.ldscript=ld/jtag_c8.ld
GenericSTM32F103C.menu.cpu_upload_menu.c8stlink.build.cpu_flags=-DMCU_STM32F103C8
GenericSTM32F103C.menu.cpu_upload_menu.c8stlink.build.vect=VECT_TAB_ADDR=0x8000000
GenericSTM32F103C.menu.cpu_upload_menu.c8stlink.build.extra_flags=-DMCU_STM32F103C8 -mthumb -march=armv7-m -D__STM32F1__ -DCONFIG_MAPLE_MINI_NO_DISABLE_DEBUG=1
GenericSTM32F103C.menu.cpu_upload_menu.c8stlink.upload.maximum_size=65536
GenericSTM32F103C.menu.cpu_upload_menu.c8stlink.upload.ram.maximum_size=20480
GenericSTM32F103C.menu.cpu_upload_menu.c8stlink.upload.flash.maximum_size=65536
GenericSTM32F103C.menu.cpu_upload_menu.c8stlink.upload.altID=1
GenericSTM32F103C.menu.cpu_upload_menu.c8stlink.upload.protocol=stlink_upload
GenericSTM32F103C.menu.cpu_upload_menu.c8stlink.upload.tool=stlink_upload
Rogerclark
Ср 29 апреля 2015 г., 8:15 вечера
Рик
Имхо, маршрутизатор загрузчика должен быть удален. Я не думаю, что это требуется, так как тот же результат может быть достигнут с помощью подгруппа -загрузчика.
Длинная история.... Но маршрутизатор загрузки был вкладом. Я не написал это. Но я согласен, что это не оправдание.
Я постараюсь добавить отдельное меню загрузки на общую плату STM32F103C, или, возможно, вы можете попробовать и дать мне знать.
Скопируйте тот, который я упоминал, и изменить имя идентификатора платы на передней части, чтобы соответствовать общему идентификатору платы STM32F103C
Имхо, маршрутизатор загрузчика должен быть удален. Я не думаю, что это требуется, так как тот же результат может быть достигнут с помощью подгруппа -загрузчика.
Длинная история.... Но маршрутизатор загрузки был вкладом. Я не написал это. Но я согласен, что это не оправдание.
Я постараюсь добавить отдельное меню загрузки на общую плату STM32F103C, или, возможно, вы можете попробовать и дать мне знать.
Скопируйте тот, который я упоминал, и изменить имя идентификатора платы на передней части, чтобы соответствовать общему идентификатору платы STM32F103C
Рик Кимбалл
Ср 29 апреля 2015 г. 20:36
То, что я опубликовал, работает... хм
Я просто спрашивал о доске, которую вы добавили. Я был в порядке с тем, как это было с общим STM32F103C, а затем выбирал C8 или CB и метод загрузки. Ему просто не хватает опции Stlink на процессоре & загрузить.
Похоже, что все меню досок должно стать последовательным для обработки общих досок. STM32F103Z делает это в одну сторону .. и STM32F103C делает это по -разному.
Я просто спрашивал о доске, которую вы добавили. Я был в порядке с тем, как это было с общим STM32F103C, а затем выбирал C8 или CB и метод загрузки. Ему просто не хватает опции Stlink на процессоре & загрузить.
Похоже, что все меню досок должно стать последовательным для обработки общих досок. STM32F103Z делает это в одну сторону .. и STM32F103C делает это по -разному.
Rogerclark
Ср 29 апреля 2015 г., 21:49
Согласованный
Ахулл
Ср 29 апреля 2015 11:12
Рик Кимбалл написал:Если @ ahull использует Stlink на Linux, он должен делать это вручную, как я. В каталоге Linux отсутствует многие из необходимых сценариев и двоичных файлов
https: // github.com/rogerclarkmelbourne/ ... ools/linux
В версии Linux отсутствует serial_upload и stlink_upload. Двоирные файлы Stlink и STM32Flash также отсутствуют.
Для двоичных файлов можно было бы иметь 2 папки для двоичных файлов (32 и 64)
https: // github.com/rogerclarkmelbourne/ ... ools/linux
В версии Linux отсутствует serial_upload и stlink_upload. Двоирные файлы Stlink и STM32Flash также отсутствуют.
Для двоичных файлов можно было бы иметь 2 папки для двоичных файлов (32 и 64)
Rogerclark
Чт 30 апреля 2015 г., 2:27
Ребята
ХОРОШО.
Я постараюсь разобраться с этим беспорядком
Проблема в том, что я обычно не использую Linux. Не потому, что мне это не нравится, а только потому, что все другие мои машины связаны с помощью Windows или Mac OS и т. Д
Я не думаю, что маршрутизатор загрузки вообще необходим, я должен снять его, чтобы удалить его и выполнить ту же работу в меню, теперь, когда некоторые вещи были упрощены с точки зрения количества вариантов меню для общих досок
Пса. Я согласен с тем, что все общие доски должны иметь одинаковые меню, но у меня есть только конечное количество времени, чтобы потратить на это
ХОРОШО.
Я постараюсь разобраться с этим беспорядком
Проблема в том, что я обычно не использую Linux. Не потому, что мне это не нравится, а только потому, что все другие мои машины связаны с помощью Windows или Mac OS и т. Д
Я не думаю, что маршрутизатор загрузки вообще необходим, я должен снять его, чтобы удалить его и выполнить ту же работу в меню, теперь, когда некоторые вещи были упрощены с точки зрения количества вариантов меню для общих досок
Пса. Я согласен с тем, что все общие доски должны иметь одинаковые меню, но у меня есть только конечное количество времени, чтобы потратить на это
Рик Кимбалл
Чт 30 апреля 2015 г., 3:07
Я создал вилку вашего репозитория в: https: // github.com/rickkimball/arduino_stm32
Я сделал первый удар по уборке. Все еще нужно много работы
Я сделал первый удар по уборке. Все еще нужно много работы
Rogerclark
Пт, 1 мая 2015 г., 21:58
Рик
Спасибо
Я постараюсь разобраться с некоторыми проблемами в эти выходные, и я постараюсь достать Linux на выделенную машину, а не обменять диски или двойной загрузки или запустить через виртуальную машину и т. Д
Я также хочу закончить загрузчик 2.0 . Консенсус с загрузчиком заключается в том, что загрузка ОЗУ бессмысленна и ненадежна и должна быть удалена.
Спасибо
Я постараюсь разобраться с некоторыми проблемами в эти выходные, и я постараюсь достать Linux на выделенную машину, а не обменять диски или двойной загрузки или запустить через виртуальную машину и т. Д
Я также хочу закончить загрузчик 2.0 . Консенсус с загрузчиком заключается в том, что загрузка ОЗУ бессмысленна и ненадежна и должна быть удалена.