Вассилис
Пн июня 08, 2015, 11:45
Я увидел, что если вы используете простые числа (0, 1, 2 и т. Д.) Вместо синтаксиса PXXX (PA0, PA1, PB2 и т. Д.) Компилятор не назначает вывод в соответствии с схема схемы клена доска.
Итак, я сделал изменение в файлах:
Arduino_stm32 \ stm32f1 \ variants \ generic_stm32f103c \доска.CPP
и
Arduino_stm32 \ stm32f1 \ variants \ generic_stm32f103c \ poard \доска.час
Эти файлы предназначены только для плат на основе STM32F103C. Различные платы STM32 могут иметь более или менее номера контактов, чем номер контакта, назначаются в этих двух файлах.
Этот эскиз выключает отключение, светодиод подключен к контакту 33 (PB1 PIN) каждые 0.5 секунд.
Итак, я сделал изменение в файлах:
Arduino_stm32 \ stm32f1 \ variants \ generic_stm32f103c \доска.CPP
и
Arduino_stm32 \ stm32f1 \ variants \ generic_stm32f103c \ poard \доска.час
Эти файлы предназначены только для плат на основе STM32F103C. Различные платы STM32 могут иметь более или менее номера контактов, чем номер контакта, назначаются в этих двух файлах.
Этот эскиз выключает отключение, светодиод подключен к контакту 33 (PB1 PIN) каждые 0.5 секунд.
/*
Blink LED
*/
#define LED 33 //The LED is connected to PB1 pin.
void setup() {
pinMode(LED, OUTPUT); // initialize digital pin 33 as an output.
}
void loop() {
digitalWrite(LED, HIGH); // turn the LED on (HIGH is the voltage level)
delay(500); // wait for a second
digitalWrite(LED, LOW); // turn the LED off by making the voltage LOW
delay(500); // wait for a second
}
Mrburnette
Пн, 08 июня 2015 13:09
Вассилис написал:Я увидел, что если вы используете простые числа (0, 1, 2 и т. Д.) Вместо синтаксиса PXXX (PA0, PA1, PB2 и т. Д.) Компилятор не назначает вывод в соответствии с схема схемы клена доска.
Вассилис
Пн июня 08, 2015, 14:20
Привет, Рэй,
Я использую такую доску Maple-Mini
Если вы подключите светодиод, например, на выводе 22 этой платы и попытаетесь включить его,
Я использую такую доску Maple-Mini
Если вы подключите светодиод, например, на выводе 22 этой платы и попытаетесь включить его,
/*
Blink LED
*/
#define LED 22
void setup() {
pinMode(LED, OUTPUT);
}
void loop() {
digitalWrite(LED, HIGH); // turn the LED on (HIGH is the voltage level)
delay(500); // wait for a second
digitalWrite(LED, LOW); // turn the LED off by making the voltage LOW
delay(500); // wait for a second
}
Рик Кимбалл
Пн июня 08, 2015, 14:24
Вассилис написал:Итак, я сделал изменение в файлах:
Arduino_stm32 \ stm32f1 \ variants \ generic_stm32f103c \доска.CPP
и
Arduino_stm32 \ stm32f1 \ variants \ generic_stm32f103c \ poard \доска.час
Arduino_stm32 \ stm32f1 \ variants \ generic_stm32f103c \доска.CPP
и
Arduino_stm32 \ stm32f1 \ variants \ generic_stm32f103c \ poard \доска.час
Вассилис
Пн июня 08, 2015, 14:33
Рик Кимбалл написал:Вассилис написал:Итак, я сделал изменение в файлах:
Arduino_stm32 \ stm32f1 \ variants \ generic_stm32f103c \доска.CPP
и
Arduino_stm32 \ stm32f1 \ variants \ generic_stm32f103c \ poard \доска.час
Arduino_stm32 \ stm32f1 \ variants \ generic_stm32f103c \доска.CPP
и
Arduino_stm32 \ stm32f1 \ variants \ generic_stm32f103c \ poard \доска.час
Рик Кимбалл
Пн июня 08, 2015, 14:38
Хорошо, тогда понятно.
@RogerClark, я тоже столкнулся с этим. Тем не менее, я не модифицировал доску. Я добавил методы загрузки ST-Link и BMP в платы.TXT для Maple Mini вход.
-рик
@RogerClark, я тоже столкнулся с этим. Тем не менее, я не модифицировал доску. Я добавил методы загрузки ST-Link и BMP в платы.TXT для Maple Mini вход.
-рик
Вассилис
Пн июня 08, 2015, 14:44
Я думаю, что лучший способ - изменить доску.Компания CPP.H Файлы общей платы, потому что «Mini Mini Board Selection» использует 8 КБ флэш -памяти для загрузчика.
Адрес начала компилятора: 0x8002000 вместо 0x8000000
Не очень хорошо в случае использования ST-Link.
Адрес начала компилятора: 0x8002000 вместо 0x8000000
Не очень хорошо в случае использования ST-Link.
Рик Кимбалл
Пн июня 08, 2015, 14:46
Да, я изменил доски.txt, поэтому он использовал всю память, используя другую .LD -файл и изменение вектора. Честно говоря, у меня больше нет загрузчика на моем клене-минини.
victor_pv
Пн июня 08, 2015, 14:48
Я думаю, что решение Рика проще и удобнее. Все, что вам нужно сделать, это изменить доски.TXT, чтобы добавить другой метод загрузки и скопировать сценарий линкера с общей платы в Maple Mini Polder, который устанавливает адреса Flash и RAM в полное пространство, доступное в MCU.
Таким образом, не только номера PIN -код, но и USB -перечисление, зарезервированные булавки и т. Д. Все будут работать, как и ожидалось в Maple Mini.
Рик, возможно, вы можете отправить Roger с этими изменениями? Я предполагаю, что больше людей могут быть заинтересованы в использовании целых 128 КБ, как Вашилис.
Таким образом, не только номера PIN -код, но и USB -перечисление, зарезервированные булавки и т. Д. Все будут работать, как и ожидалось в Maple Mini.
Рик, возможно, вы можете отправить Roger с этими изменениями? Я предполагаю, что больше людей могут быть заинтересованы в использовании целых 128 КБ, как Вашилис.
victor_pv
Пн июня 08, 2015, 14:54
Vassilis, это как пример, является скриптом линкера с настройкой для адреса памяти:
https: // github.com/rogerclarkmelbourne/ ... Ader_20.лд
Сделайте копию этого файла с каким -либо именем, которое вы хотите. Затем отредактируйте эту строку:
https: // github.com/rogerclarkmelbourne/ ... Ader_20.лд
Сделайте копию этого файла с каким -либо именем, которое вы хотите. Затем отредактируйте эту строку:
rom (rx) : ORIGIN = 0x08002000, LENGTH = 120K
Вассилис
Пн июня 08, 2015, 15:04
Со второй мыслью я согласен с тем, что лучше добавить поддержку ST-Link в Maple Mini, а не изменять все общие файлы платы ...
Виктор, я попробую предложенные вами изменения.
Виктор, я попробую предложенные вами изменения.
Рик Кимбалл
Пн июня 08, 2015, 15:05
victor_pv написал:Рик, возможно, вы можете отправить Roger с этими изменениями? Я предполагаю, что больше людей могут быть заинтересованы в использовании целых 128 КБ, как Вашилис.
Вассилис
Пн июня 08, 2015, 15:30
Рик Кимбалл написал:victor_pv написал:Рик, возможно, вы можете отправить Roger с этими изменениями? Я предполагаю, что больше людей могут быть заинтересованы в использовании целых 128 КБ, как Вашилис.
Mrburnette
Пн июня 08, 2015, 16:14
Вассилис написал:
<...>
Я думаю, что все платы (Maple Mini или Generic) должны иметь одинаковую карту штифта для совместимости вывода.
Очень важно, если мы хотим, чтобы все наброски и библиотеки работали на всех досках без каких -либо изменений.
Я думаю, что все платы (Maple Mini или Generic) должны иметь одинаковую карту штифта для совместимости вывода.
Очень важно, если мы хотим, чтобы все наброски и библиотеки работали на всех досках без каких -либо изменений.
Rogerclark
Вт. 09 июня 2015 10:21 утра
Ребята,
Василлис только что связался со мной об этом.
(1): макет карты штифров для общих против кленовых плат
Первоначально мы использовали вариант Maple Mini для общих досок STM32F103C8 и F103CB, но люди жаловались на то, что макет карты PIN не имеет никакого смысла.
Что было правильно, это вообще не имеет смысла для плат с именами портов / выводов на шелкостном экране.
Поэтому я взял вариант Maple Mini и сделал универсальный вариант STM32F103C и переупорядочил карту штифта и изменил перечисление, которое определяет номера портов / контакт E.глин. PA0 - PC14 и т. Д
Я не вижу никаких проблем с этим.
2. Методы загрузки и сценарии линкеров
Это было проблемой некоторое время. Я помню, что смотрел на это несколько месяцев назад.
Проблема в том, что меню Arduino не каскад. я.E они не взаимосвязаны.
Работа должна была использовать сценарий линкера для платы Top Spec, с любыми методами загрузки, которые необходимо переопределить сценарий линкера для условия по умолчанию.
Я вспоминаю сценарий линкера для F103Z -> STM32duino Bootloader должен был основываться на сценарии линкера F103Zet
Я исследовал, возможно ли динамически переопределить информацию о блоке памяти в сценарии линкера, в команде Link Line.
Однако в основном линкер GCC не поддерживает это (ну, это серая область, но, похоже, не работает, и из того, что я читал, это известная проблема, которую GCC, кажется, не спешит исправить)
Похоже, это на самом деле только проблема для загрузки загрузчика. На общих платах я по умолчанию использует сценарий линкера, который дает все ОЗУ и все вспыхивает на эскиз
Но загрузка загрузчика должна иметь на 8 тысяч меньше вспышки
Вещи начинают становиться довольно запутанными, но, возможно, можно будет выполнять имя файла, конкатенация сценариев линкеров на платформе.TXT, но мне нужно сделать это для всех сценариев линкера
я.E имеет первую часть имени сценария в качестве варианта e, g. F103ZE и вторая часть в качестве загрузчика / не загрузчика
так
Linker_f103ze_full.лд
Linker_f103ze_bootloader.лд
В любом случае, это может быть возможно, но не 5 -минутная работа, чтобы изменить все это
Василлис только что связался со мной об этом.
(1): макет карты штифров для общих против кленовых плат
Первоначально мы использовали вариант Maple Mini для общих досок STM32F103C8 и F103CB, но люди жаловались на то, что макет карты PIN не имеет никакого смысла.
Что было правильно, это вообще не имеет смысла для плат с именами портов / выводов на шелкостном экране.
Поэтому я взял вариант Maple Mini и сделал универсальный вариант STM32F103C и переупорядочил карту штифта и изменил перечисление, которое определяет номера портов / контакт E.глин. PA0 - PC14 и т. Д
Я не вижу никаких проблем с этим.
2. Методы загрузки и сценарии линкеров
Это было проблемой некоторое время. Я помню, что смотрел на это несколько месяцев назад.
Проблема в том, что меню Arduino не каскад. я.E они не взаимосвязаны.
Работа должна была использовать сценарий линкера для платы Top Spec, с любыми методами загрузки, которые необходимо переопределить сценарий линкера для условия по умолчанию.
Я вспоминаю сценарий линкера для F103Z -> STM32duino Bootloader должен был основываться на сценарии линкера F103Zet
Я исследовал, возможно ли динамически переопределить информацию о блоке памяти в сценарии линкера, в команде Link Line.
Однако в основном линкер GCC не поддерживает это (ну, это серая область, но, похоже, не работает, и из того, что я читал, это известная проблема, которую GCC, кажется, не спешит исправить)
Похоже, это на самом деле только проблема для загрузки загрузчика. На общих платах я по умолчанию использует сценарий линкера, который дает все ОЗУ и все вспыхивает на эскиз
Но загрузка загрузчика должна иметь на 8 тысяч меньше вспышки
Вещи начинают становиться довольно запутанными, но, возможно, можно будет выполнять имя файла, конкатенация сценариев линкеров на платформе.TXT, но мне нужно сделать это для всех сценариев линкера
я.E имеет первую часть имени сценария в качестве варианта e, g. F103ZE и вторая часть в качестве загрузчика / не загрузчика
так
Linker_f103ze_full.лд
Linker_f103ze_bootloader.лд
В любом случае, это может быть возможно, но не 5 -минутная работа, чтобы изменить все это
Вассилис
Вт, 09 июня 2015 г., 10:54 утра
Rogerclark написал:Первоначально мы использовали вариант Maple Mini для общих досок STM32F103C8 и F103CB, но люди жаловались на то, что макет карты PIN не имеет никакого смысла.
Что было правильно, это вообще не имеет смысла для плат с именами портов / выводов на шелкостном экране.
Поэтому я взял вариант Maple Mini и сделал универсальный вариант STM32F103C и переупорядочил карту штифта и изменил перечисление, которое определяет номера портов / контакт E.глин. PA0 - PC14 и т. Д
Что было правильно, это вообще не имеет смысла для плат с именами портов / выводов на шелкостном экране.
Поэтому я взял вариант Maple Mini и сделал универсальный вариант STM32F103C и переупорядочил карту штифта и изменил перечисление, которое определяет номера портов / контакт E.глин. PA0 - PC14 и т. Д