HDLENG
Пн 25 сентября 2017 г., 4:18 утра
Я встроенный в отставтный разработчик, который работал в промышленных управлениях и системах обороны. Я продолжил эту работу в качестве хобби, и я работаю над дизайнами для режимов цифровых коммуникаций в любительском радио.
Я разработал программное обеспечение STM32 на Eclipse IDE, и я использовал Arduino IDE для некоторой 8-битной работы Atmel. Но я новичок в STM32Duino.
Я использую плату Discovery STM32F100RB. Я успешно протестировал цепочку и плату инструментов с помощью Arduino \ arpware \ arduino_stm32-master \ stm32f1 \ libraries \ a_stm32_examples \ example \ digital \ blink \ blink.Ино.
Я попытался сделать Arduino \ arpware \ arduino_stm32-master \ stm32f1 \ librarion.Ино.
Я разработал программное обеспечение STM32 на Eclipse IDE, и я использовал Arduino IDE для некоторой 8-битной работы Atmel. Но я новичок в STM32Duino.
Я использую плату Discovery STM32F100RB. Я успешно протестировал цепочку и плату инструментов с помощью Arduino \ arpware \ arduino_stm32-master \ stm32f1 \ libraries \ a_stm32_examples \ example \ digital \ blink \ blink.Ино.
Я попытался сделать Arduino \ arpware \ arduino_stm32-master \ stm32f1 \ librarion.Ино.
/*
Timer Interrupts Example
Demonstrates usage of the HardwareTimer classes by blinking the LED
Created 22 April 2010, last updated 8 June 2010
By Bryan Newbold for LeafLabs
This code is released with no strings attached.
*/
#define LED_PIN 13
#define BUTTON_PIN 38
#define LED_RATE 500000 // in microseconds; should give 0.5Hz toggles
void handler_led(void);
void handler_count1(void);
void handler_count2(void);
int toggle = 0;
int count1 = 0;
int count2 = 0;
void setup()
{
Serial.begin(115200); // Ignored by Maple. But needed by boards using hardware serial via a USB to Serial adaptor
// Set up the LED to blink
pinMode(LED_PIN, OUTPUT);
// Set up BUT for input
pinMode(BUTTON_PIN, INPUT_PULLUP);
// Setup LED Timer
Timer2.setChannel1Mode(TIMER_OUTPUTCOMPARE);
Timer2.setPeriod(LED_RATE); // in microseconds
Timer2.setCompare1(1); // overflow might be small
Timer2.attachCompare1Interrupt(handler_led);
// Setup Counting Timers
Timer3.setChannel1Mode(TIMER_OUTPUTCOMPARE);
Timer4.setChannel1Mode(TIMER_OUTPUTCOMPARE);
Timer3.pause();
Timer4.pause();
Timer3.setCount(0);
Timer4.setCount(0);
Timer3.setOverflow(30000);
Timer4.setOverflow(30000);
Timer3.setCompare1(1000); // somewhere in the middle
Timer4.setCompare1(1000);
Timer3.attachCompare1Interrupt(handler1);
Timer4.attachCompare1Interrupt(handler2);
Timer3.resume();
Timer4.resume();
}
void loop() {
// Display the running counts
Serial.print("Count 1: ");
Serial.print(count1);
Serial.print("\t\tCount 2: ");
Serial.println(count2);
// Run... while BUT is held, pause Count2
for(int i = 0; i<1000; i++) {
if(digitalRead(BUTTON_PIN)) {
Timer4.pause();
} else {
Timer4.resume();
}
delay(1);
}
}
void handler_led(void) {
toggle ^= 1;
digitalWrite(LED_PIN, toggle);
}
void handler1(void) {
count1++;
}
void handler2(void) {
count2++;
}
Rogerclark
Пн 25 сентября 2017 г. 5:33 утра
Добро пожаловать, Фрэнк
Я только что попытался собрать этот пример, и у меня нет ошибок
Я попробовал 2 разных доска Generic STM32F103C, а также Nucleo F103RB
Единственная разница, которую я могу видеть, если вы используете довольно старую версию Arduino IDE (1.6.9) Где, как я использую 1.8.3
(Похоже, 1.8.4 - последний и, вероятно, в порядке)
Хотя я не вижу, как может вызвать эту проблему версию IDE.
Я предполагаю, что вы недавно скачали молнию или клонировали мое репо ?
В любом случае.
Вам не нужно отлаживать это, так как он, кажется, компилируется в порядке.
Можете ли вы подтвердить, какую доску вы выбрали ?
Я только что попытался собрать этот пример, и у меня нет ошибок
Я попробовал 2 разных доска Generic STM32F103C, а также Nucleo F103RB
Единственная разница, которую я могу видеть, если вы используете довольно старую версию Arduino IDE (1.6.9) Где, как я использую 1.8.3
(Похоже, 1.8.4 - последний и, вероятно, в порядке)
Хотя я не вижу, как может вызвать эту проблему версию IDE.
Я предполагаю, что вы недавно скачали молнию или клонировали мое репо ?
В любом случае.
Вам не нужно отлаживать это, так как он, кажется, компилируется в порядке.
Можете ли вы подтвердить, какую доску вы выбрали ?
HDLENG
Пн 25 сентября 2017 г., 7:55 утра
Роджер,
Спасибо за быстрый ответ.
Выбор платы был инструментами: Номер детали платы: «STM32F100RB-Discvl».
Когда я выбрал Generic STM32F103C, компиляция была успешной.
Я скачал репо в течение прошлой недели.
Я собираюсь начать все сначала с обновления до самого последнего Arduino IDE, а затем добавив материал STM32.
еще раз спасибо,
Откровенный
Спасибо за быстрый ответ.
Выбор платы был инструментами: Номер детали платы: «STM32F100RB-Discvl».
Когда я выбрал Generic STM32F103C, компиляция была успешной.
Я скачал репо в течение прошлой недели.
Я собираюсь начать все сначала с обновления до самого последнего Arduino IDE, а затем добавив материал STM32.
еще раз спасибо,
Откровенный
Стивестронг
Пн 25 сентября 2017 г., 7:58 утра
Я думаю, что это среда:
Arduino: 1.6.9 (Windows XP), Board: "Discovery, STM32F100RB-DISCVL, STLink, None, None"
Rogerclark
Пн 25 сентября 2017 г. 8:11
[Стивестронг - Пн, 25 сентября 2017 г. 7:58] -
Я думаю, что это среда:
Arduino: 1.6.9 (Windows XP), Board: "Discovery, STM32F100RB-DISCVL, STLink, None, None"
HDLENG
Пн, 25 сентября 2017 г. 8:52 утра
В файле: предпочтения: URL -адреса дополнительных плат менеджера :, я добавил https: // github.com/stm32duino/boardmana ... индекс.json.
Тогда под инструментами: доски: менеджер совета директоров..., Я выбрал тип: внес свой. Затем я нашел и установил «ядер STM32 от ST-Microelectronics версии 2017.8.17 ". Доски включены в этот пакет ..., STM32F100RB-DISCVL, ...
Это проливает какой -либо свет на то, есть ли у меня подходящее ядро?
Я только что скачал arduino_stm32-master.молния. Это 37.7 МБ. Файл, который я загрузил 17.09.2017, был 39, был 39.0 МБ. Это имеет значение?
Спасибо за помощь и терпение,
Откровенный
Тогда под инструментами: доски: менеджер совета директоров..., Я выбрал тип: внес свой. Затем я нашел и установил «ядер STM32 от ST-Microelectronics версии 2017.8.17 ". Доски включены в этот пакет ..., STM32F100RB-DISCVL, ...
Это проливает какой -либо свет на то, есть ли у меня подходящее ядро?
Я только что скачал arduino_stm32-master.молния. Это 37.7 МБ. Файл, который я загрузил 17.09.2017, был 39, был 39.0 МБ. Это имеет значение?
Спасибо за помощь и терпение,
Откровенный
Стивестронг
Пн 25 сентября 2017 г. 9:03
Ну, действительно, ты смешал STM32DUINO CORE от ST (доступно через менеджер библиотеки в Arduino IDE) с Arduino_stm32 (libmaple) Core Управляется Роджером, доступным только как загружаемый пакет ZIP.
Вы должны использовать только один из них, удалить другой.
Вы должны использовать только один из них, удалить другой.
HDLENG
Пн 25 сентября 2017 г. 9:30 утра
Стив,
Спасибо за предложение. Может быть, я приближаюсь к тому, чтобы это работать. Я пошел на инструменты: Правление: Менеджер правления... и отобранный и удаляемый STM32Duino Core из ST. Я перезапустил Ардуино. Теперь я не вижу досок STM32 под инструментами: Правление.
Я поместил репо Роджер в документы/arduino/harpware; Есть ли что -то еще, что мне нужно сделать, чтобы IDE осознал об этом?
Спасибо,
Откровенный
Спасибо за предложение. Может быть, я приближаюсь к тому, чтобы это работать. Я пошел на инструменты: Правление: Менеджер правления... и отобранный и удаляемый STM32Duino Core из ST. Я перезапустил Ардуино. Теперь я не вижу досок STM32 под инструментами: Правление.
Я поместил репо Роджер в документы/arduino/harpware; Есть ли что -то еще, что мне нужно сделать, чтобы IDE осознал об этом?
Спасибо,
Откровенный
ZMEMW16
Пн 25 сентября 2017 г. 9:41
@hdleng
Извлеките основные файлы ZIP в каталог «Аппаратный» и переименуйте их, добавив префикс
Для Стива я добавляю SS-, для STM32Generic я добавлю CM- или DAN-
Так что, если бы у меня был установлен Роджерс и Стив
Извлеките основные файлы ZIP в каталог «Аппаратный» и переименуйте их, добавив префикс
Для Стива я добавляю SS-, для STM32Generic я добавлю CM- или DAN-
Так что, если бы у меня был установлен Роджерс и Стив
Arduino_STM32
ss-Arduino_STM32
HDLENG
Пн 25 сентября 2017 г. 10:05 утра
@zmemw16,
Спасибо за помощь. Я думаю, что я следую указаниям, но я, очевидно, что -то не понимаю. Итак, я постараюсь объяснить шаги, которые я предпринял подробно.
Я скачал arduino_stm32-master.Zip от GitHub Роджера. Я извлек (все) в документы/arduino/hardware. Я ничего не помещал в программные файлы/arduino/hardware.
В моих документах \ arduino \ hardware \ arduino_stm32-master \ stm32f1 \ Есть платформа файла '.текст'. В этом файле есть строка: "name = stm32 платы (STM32duino.com) ".
Но нет листинга в соответствии с инструментами: доска показывает «Доски STM32».
Вы можете увидеть, что я могу делать не так?
Спасибо,
Откровенный
Спасибо за помощь. Я думаю, что я следую указаниям, но я, очевидно, что -то не понимаю. Итак, я постараюсь объяснить шаги, которые я предпринял подробно.
Я скачал arduino_stm32-master.Zip от GitHub Роджера. Я извлек (все) в документы/arduino/hardware. Я ничего не помещал в программные файлы/arduino/hardware.
В моих документах \ arduino \ hardware \ arduino_stm32-master \ stm32f1 \ Есть платформа файла '.текст'. В этом файле есть строка: "name = stm32 платы (STM32duino.com) ".
Но нет листинга в соответствии с инструментами: доска показывает «Доски STM32».
Вы можете увидеть, что я могу делать не так?
Спасибо,
Откровенный
Rogerclark
Пн, 25 сентября 2017 г. 10:18
Откровенный
Я думаю, что вы правильно устанавливаете.
Вы перезапустили IDE после копирования файлов в аппаратную папку
Также. Вам нужно установить компилятор ARM, поэтому, если у вас удалил сердечник STM, вам нужно установить Arduino Due или Zero, как либо установите компилятор ARM, который использует мой репо.
Я думаю, что вы правильно устанавливаете.
Вы перезапустили IDE после копирования файлов в аппаратную папку
Также. Вам нужно установить компилятор ARM, поэтому, если у вас удалил сердечник STM, вам нужно установить Arduino Due или Zero, как либо установите компилятор ARM, который использует мой репо.
ZMEMW16
Пн 25 сентября 2017 г. 10:41
Это мой способ справиться с несколькими ядрами Libmaple или STM32GERIERIERIER в резиденции, применяются стандартные отказы от ответственности.
@hdleng
Хорошо, мой аппаратный каталог находится под '/Home/Stephen/Sketchbook', который установлен в предпочтениях
Я только что отредактировал платформу.TXT в каталоге STM32F1 и добавлено «SRP-» в начало строки имени.
выпущен Arduino, затем через инструменты->Правление-менеджер и пришлось много прокручивать вниз.
У моего выпадения черный треугольник, направленный вниз, внизу.
@hdleng
Хорошо, мой аппаратный каталог находится под '/Home/Stephen/Sketchbook', который установлен в предпочтениях
Я только что отредактировал платформу.TXT в каталоге STM32F1 и добавлено «SRP-» в начало строки имени.
выпущен Arduino, затем через инструменты->Правление-менеджер и пришлось много прокручивать вниз.
У моего выпадения черный треугольник, направленный вниз, внизу.
~/sketchbook/hardware/Arduino_STM32/STM32F1/platform.txt
Rogerclark
Пн 25 сентября 2017 г. 11:11
Не должно быть необходимости редактировать файлы.
Все ядра STM32 должны сосуществовать OK без переименования и т. Д
У меня есть мой «Libmaple» Core и Daniel's STM32Generic в моей аппаратной папке, и они оба работают нормально.
Все ядра STM32 должны сосуществовать OK без переименования и т. Д
У меня есть мой «Libmaple» Core и Daniel's STM32Generic в моей аппаратной папке, и они оба работают нормально.
ZMEMW16
Пн 25 сентября 2017 г. 14:49
есть преобладание «я» в посте. Я редактирую в предупреждении.
Ядра проживают вместе очень хорошо, если у вас есть только один из каждого я.эн. Один либмапл и один STM32Generic, однако я обнаружил, что в качестве досок существуют в нескольких ядрах, текст «Описание ядра» в выпадении идентично.
Я не знаю, как читается аппаратный каталог, какое ядро обрабатывается первым и т. Д.
Итак, какое ядро я на самом деле выбираю доску из ?
Если я хочу попробовать что -то в Стивном Корне, мне нужно будет переименовать его в верхний каталог или удалить свой, то же самое верно для STM32Generic.
Также кажется, что я установил ядер ST.
Этот пост описывает, как я с этим справлялся.
Стивен
Ядра проживают вместе очень хорошо, если у вас есть только один из каждого я.эн. Один либмапл и один STM32Generic, однако я обнаружил, что в качестве досок существуют в нескольких ядрах, текст «Описание ядра» в выпадении идентично.
Я не знаю, как читается аппаратный каталог, какое ядро обрабатывается первым и т. Д.
Итак, какое ядро я на самом деле выбираю доску из ?
Если я хочу попробовать что -то в Стивном Корне, мне нужно будет переименовать его в верхний каталог или удалить свой, то же самое верно для STM32Generic.
Также кажется, что я установил ядер ST.
Этот пост описывает, как я с этим справлялся.
Стивен
HDLENG
Пн 25 сентября 2017 г., 19:56
@zmemw16 и @roger,
Спасибо за постоянную помощь. Я лег спать; Я тебя не игнорировал. Я вижу, что мы находимся в трех широко разделенных часовых поясах.
Кажется, у меня есть Arduino IDE, работающий на STM32. Я просто удалил все, а затем переустановил в соответствии с вашими инструкциями. Я не знаю, что на этот раз я сделал что -то по -другому, но результаты успешны. Итак, я, должно быть, что -то изуродовал по предыдущей попытке.
Я ценю ваше терпение.
Я могу успешно скомпилировать TimerErrupts.INO для общего STM32F103C. MCU на моей плате Discovery IS Microcontroller STM32F100RBT6B, 128 КБ Flash, 8 КБ оперативной памяти в 64-контактной LQFP. Я могу, конечно, отредактировать исходные файлы для решения различных карт ввода -вывода/вывода. Но это различия в размерах памяти (и, возможно, на периферийных устройствах). Это хороший способ приспособиться к этому?
Еще раз спасибо за то, что придерживались меня,
Откровенный
Спасибо за постоянную помощь. Я лег спать; Я тебя не игнорировал. Я вижу, что мы находимся в трех широко разделенных часовых поясах.
Кажется, у меня есть Arduino IDE, работающий на STM32. Я просто удалил все, а затем переустановил в соответствии с вашими инструкциями. Я не знаю, что на этот раз я сделал что -то по -другому, но результаты успешны. Итак, я, должно быть, что -то изуродовал по предыдущей попытке.
Я ценю ваше терпение.
Я могу успешно скомпилировать TimerErrupts.INO для общего STM32F103C. MCU на моей плате Discovery IS Microcontroller STM32F100RBT6B, 128 КБ Flash, 8 КБ оперативной памяти в 64-контактной LQFP. Я могу, конечно, отредактировать исходные файлы для решения различных карт ввода -вывода/вывода. Но это различия в размерах памяти (и, возможно, на периферийных устройствах). Это хороший способ приспособиться к этому?
Еще раз спасибо за то, что придерживались меня,
Откровенный
ZMEMW16
Пн 25 сентября 2017 г., 22:18
Я не думаю, что вам нужно сделать что -нибудь в качестве подходящего файла линкера, предоставленного в ядре.
Я не знаю, где и как это генерируется.
Файл линкера действительно изменяется с выбранным вариантом конкретного платы, не является хорошей идеей, чтобы попробовать больший чип
Я думаю, если вы пройдете через доски.текст & платформа.TXT как «упражнение», вы, вероятно, найдете что -то.
Стивен
Я не знаю, где и как это генерируется.
Файл линкера действительно изменяется с выбранным вариантом конкретного платы, не является хорошей идеей, чтобы попробовать больший чип
Я думаю, если вы пройдете через доски.текст & платформа.TXT как «упражнение», вы, вероятно, найдете что -то.
Стивен
Rogerclark
Пн 25 сентября 2017 г., 22:31
Вам нужно будет сделать новый «вариант», если вы хотите внести обширные изменения
Существует вариантная папка для каждого основного типа F103 MCU.
Но изначально я бы порекомендовал вам отредактировать один из существующих вариантов, так как он сэкономит, что он сэкономит, добавив новый раздел в досках.TXT, чтобы использовать новый «вариант»
Существует вариантная папка для каждого основного типа F103 MCU.
Но изначально я бы порекомендовал вам отредактировать один из существующих вариантов, так как он сэкономит, что он сэкономит, добавив новый раздел в досках.TXT, чтобы использовать новый «вариант»
HDLENG
Пн 25 сентября 2017 г., 11:30 вечера
@zmemw16, @roger,
Примером несовместимости платы Discovery STM32F100 с универсальным STM32F103C является ошибка «PC8» не была объявлена в этой области ». Я определил, что доска.H файл не имеет перечисленного PC8. Редактирование перечисления исправляет ошибку компилятора (но, конечно, это создаст плохой двоичный файл). Правление.Файл CPP содержит сопоставление PIN, и мне придется отредактировать его, чтобы соответствовать моей плате. Тогда есть доска.TXT и платформа.TXT, который необходимо скорректировать. Я думаю, что я буду следить за советом Роджера, просто отредактирую существующий вариант и заработаю его. Я могу после этого добавить доску обнаружения правильно.
Вы были полезны в моем изучении структуры Arduino, что касается STM32.
С уважением,
Откровенный
Примером несовместимости платы Discovery STM32F100 с универсальным STM32F103C является ошибка «PC8» не была объявлена в этой области ». Я определил, что доска.H файл не имеет перечисленного PC8. Редактирование перечисления исправляет ошибку компилятора (но, конечно, это создаст плохой двоичный файл). Правление.Файл CPP содержит сопоставление PIN, и мне придется отредактировать его, чтобы соответствовать моей плате. Тогда есть доска.TXT и платформа.TXT, который необходимо скорректировать. Я думаю, что я буду следить за советом Роджера, просто отредактирую существующий вариант и заработаю его. Я могу после этого добавить доску обнаружения правильно.
Вы были полезны в моем изучении структуры Arduino, что касается STM32.
С уважением,
Откровенный
Rogerclark
Пн, 25 сентября 2017 г. 11:56
Откровенный
Вам не нужно редактировать платформу.TXT для таких изменений.
Вам нужно только редактировать платформу.TXT, если у вас есть другой вид загрузки E E.глин. какой -то другой тип аппаратного программиста и т. Д. Или вы хотите что -то сделать с опциями компилятора и т. Д
Изменения, которые вам необходимы, могут быть внесены путем редактирования файлов в папке варианта и в конечном итоге, также изменяя платы.текст
КСТАТИ. Настройки линкера в *.LD -файлы, легко изменить ОЗУ и размер вспышки
Однако 8K - это не так много оперативной памяти, чтобы играть с... Пустой набросок с поддержкой USB использует почти.
Вы часто можете уменьшить использование оперативной памяти, выбрав другую настройку оптимизации. По умолчанию предназначен для самого маленького двоичного файла, но я заметил, что это может привести к большему использованию оперативной памяти.
Afik 99% вещей работает над настройкой оптимизации по умолчанию, но некоторые вещи могут не сработать, если вы выберете более высокие оптимизации (хотя у меня лично не было никаких проблем даже на -o3)
Вам не нужно редактировать платформу.TXT для таких изменений.
Вам нужно только редактировать платформу.TXT, если у вас есть другой вид загрузки E E.глин. какой -то другой тип аппаратного программиста и т. Д. Или вы хотите что -то сделать с опциями компилятора и т. Д
Изменения, которые вам необходимы, могут быть внесены путем редактирования файлов в папке варианта и в конечном итоге, также изменяя платы.текст
КСТАТИ. Настройки линкера в *.LD -файлы, легко изменить ОЗУ и размер вспышки
Однако 8K - это не так много оперативной памяти, чтобы играть с... Пустой набросок с поддержкой USB использует почти.
Вы часто можете уменьшить использование оперативной памяти, выбрав другую настройку оптимизации. По умолчанию предназначен для самого маленького двоичного файла, но я заметил, что это может привести к большему использованию оперативной памяти.
Afik 99% вещей работает над настройкой оптимизации по умолчанию, но некоторые вещи могут не сработать, если вы выберете более высокие оптимизации (хотя у меня лично не было никаких проблем даже на -o3)
HDLENG
Вторник 26 сентября 2017 г. 12:06
Роджер,
Я работаю над этим сейчас, следуя вашим инструкциям как можно лучше. Это займет день или около того вместе с остальной частью моей рабочей нагрузки. Я опубликую еще раз, когда добьюсь успеха (или на безнадежной стойке).
Стало очевидно, поскольку я исследую внутреннюю работу STM32Duino, что вы проделали большую работу. Ты очень щедрый, и ты благодаришься.
Откровенный
Я работаю над этим сейчас, следуя вашим инструкциям как можно лучше. Это займет день или около того вместе с остальной частью моей рабочей нагрузки. Я опубликую еще раз, когда добьюсь успеха (или на безнадежной стойке).
Стало очевидно, поскольку я исследую внутреннюю работу STM32Duino, что вы проделали большую работу. Ты очень щедрый, и ты благодаришься.
Откровенный
HDLENG
Вторник 26 сентября 2017 г. 12:32 утра
Роджер,
Еще одна вещь. У платы Discovery STM32F100 есть два процессора. STM32F103C8T6 обрабатывает USB. На самом деле его можно использовать в качестве автономного ST-Link, подключенного к другим доскам. STM32F100R8T6B предназначен для кода пользователя, но ему не нужно выполнять свои функции USB. Итак, 8 тыс. ОЗУ не так ограничивает.
Откровенный
Еще одна вещь. У платы Discovery STM32F100 есть два процессора. STM32F103C8T6 обрабатывает USB. На самом деле его можно использовать в качестве автономного ST-Link, подключенного к другим доскам. STM32F100R8T6B предназначен для кода пользователя, но ему не нужно выполнять свои функции USB. Итак, 8 тыс. ОЗУ не так ограничивает.
Откровенный
Rogerclark
Вторник 26 сентября 2017 г. 2:53 утра
Привет, Фрэнк
Я хотел бы получить все кредиты, но около 90% ядра исходит от исходного кода, который Leaflabs написал для своих продуктов Maple в 2012 году.
Leaflabs отказался от этого примерно в 2015 году, и я поднял его после того, как @bobc сделал какую -то работу, чтобы сделать его совместимым с Arduino 1.5
С тех пор я изменил / улучшил много вещей, но внесли большой вклад различных других людей, так что теперь это очень основанная на сообществе.
КСТАТИ. Я также поддерживаю загрузчик... Но поскольку у вашей доски, вероятно, есть Stlink на ней, вы не будете использовать это
Я хотел бы получить все кредиты, но около 90% ядра исходит от исходного кода, который Leaflabs написал для своих продуктов Maple в 2012 году.
Leaflabs отказался от этого примерно в 2015 году, и я поднял его после того, как @bobc сделал какую -то работу, чтобы сделать его совместимым с Arduino 1.5
С тех пор я изменил / улучшил много вещей, но внесли большой вклад различных других людей, так что теперь это очень основанная на сообществе.
КСТАТИ. Я также поддерживаю загрузчик... Но поскольку у вашей доски, вероятно, есть Stlink на ней, вы не будете использовать это
ZMEMW16
Вторник 26 сентября 2017 г. 4:50 утра
это обнаружение ?
Если да, две мысли
1. Поддерживают ли ядра ST напрямую ?
2. Сделайте поиск "Джефф Браун, обнаружив микроконтроллер STM32"
Полезная ссылка на PDF
https: // www.Google.сопутствующий.Великобритания/URL?SA = T&rct = j ... ncpliib-dq
По общему признанию, он использует классический подход «C», но он дает большое количество информации.
Добавление окончательного 3.
3. http: // stm32duino.com/viewtopic.PHP?T = 1741#P22876
Стивен
Если да, две мысли
1. Поддерживают ли ядра ST напрямую ?
2. Сделайте поиск "Джефф Браун, обнаружив микроконтроллер STM32"
Полезная ссылка на PDF
https: // www.Google.сопутствующий.Великобритания/URL?SA = T&rct = j ... ncpliib-dq
По общему признанию, он использует классический подход «C», но он дает большое количество информации.
Добавление окончательного 3.
3. http: // stm32duino.com/viewtopic.PHP?T = 1741#P22876
Стивен
Rogerclark
Вторник 26 сентября 2017 г. 5:45 утра
Мне пришло в голову, что Фрэнк мог взглянуть на собственное ядро STM.
https: // github.com/stm32duino/arduino_core_stm32
Тем не менее, у STM нет варианта для его доски, поэтому ему нужно сделать то же самое.
Кроме того, у Afik STM нет никаких примеров того, как использовать аппаратные таймеры, поэтому ему нужно было научиться использовать API программирования HAL STM, прежде чем он сможет что -либо сделать.
Я посмотрел в формате PDF этой онлайн -книги, но это дни
На протяжении всей этой книги мы используем стандартную периферийную библиотеку ST Не HAL, поэтому это не обязательно так полезно с точки зрения обучения, как программировать, используя ядро STM
https: // github.com/stm32duino/arduino_core_stm32
Тем не менее, у STM нет варианта для его доски, поэтому ему нужно сделать то же самое.
Кроме того, у Afik STM нет никаких примеров того, как использовать аппаратные таймеры, поэтому ему нужно было научиться использовать API программирования HAL STM, прежде чем он сможет что -либо сделать.
Я посмотрел в формате PDF этой онлайн -книги, но это дни
На протяжении всей этой книги мы используем стандартную периферийную библиотеку ST Не HAL, поэтому это не обязательно так полезно с точки зрения обучения, как программировать, используя ядро STM
ZMEMW16
Вторник 26 сентября 2017 г. 6:48 утра
@hdleng
Что -то подсказывает мне, что я не должен, но у STM32F100RB есть таймер2 ?
Если да, то в файлах вариантов что -то не так, опечатка ? Может быть, это что-то неверное, timner2 ? ? ?
Если нет, то решен
Я предполагаю, что вы можете повторно применять идеи от учебников на основе Linux в настройку Windows, если это необходимо
Это очень тяжелое предложение для меня
Есть книга, я получил ее от Amazon; Не рекомендация-на случайном порядке он использует Cubemx и Eclipse с подключаемостью GNU Arm Eclipse, за £ 2, почему бы и нет ?
Начало работы с Development STM32 Nucleo (Kindle Edition) Agus Kurniawan
Нашел пару сайтов/блогов/тут, это немного
http: // elastic-notes.блог.сопутствующий.Великобритания/
другой с битами
http: // www.ScienceProg.com/rivel-rac ... 2f103zet6/
А потом есть Святое Сообщество
https: // Сообщество.ул.com/thread/15404
и это
http: // scaluza.com/stm32f4/intro-in-stm32f4cubemx/
Просто просмотрите их, они лишь некоторые из моих открытых вкладок из нескольких окон Firefox
На самом деле я должен просто застегнуть свой файл истории или закладки от Firefox или моего мега-книги.HTML -файл
И тогда, конечно, есть YouTube
Я считаю, что смотрю видеоурок в видео более отталкивает, никогда не могу попасть в паузу достаточно быстро и итерация взад-вперед к кадре ... ... А потом есть музыка, а тогда это звук на русском, немецком или французском
Стивен
Что -то подсказывает мне, что я не должен, но у STM32F100RB есть таймер2 ?
Если да, то в файлах вариантов что -то не так, опечатка ? Может быть, это что-то неверное, timner2 ? ? ?
Если нет, то решен
Я предполагаю, что вы можете повторно применять идеи от учебников на основе Linux в настройку Windows, если это необходимо
Это очень тяжелое предложение для меня
Есть книга, я получил ее от Amazon; Не рекомендация-на случайном порядке он использует Cubemx и Eclipse с подключаемостью GNU Arm Eclipse, за £ 2, почему бы и нет ?
Начало работы с Development STM32 Nucleo (Kindle Edition) Agus Kurniawan
Нашел пару сайтов/блогов/тут, это немного
http: // elastic-notes.блог.сопутствующий.Великобритания/
другой с битами
http: // www.ScienceProg.com/rivel-rac ... 2f103zet6/
А потом есть Святое Сообщество
https: // Сообщество.ул.com/thread/15404
и это
http: // scaluza.com/stm32f4/intro-in-stm32f4cubemx/
Просто просмотрите их, они лишь некоторые из моих открытых вкладок из нескольких окон Firefox
На самом деле я должен просто застегнуть свой файл истории или закладки от Firefox или моего мега-книги.HTML -файл
И тогда, конечно, есть YouTube
Я считаю, что смотрю видеоурок в видео более отталкивает, никогда не могу попасть в паузу достаточно быстро и итерация взад-вперед к кадре ... ... А потом есть музыка, а тогда это звук на русском, немецком или французском
Стивен
HDLENG
Вторник 26 сентября 2017 г. 8:14
Роджер и Стивен,
Ваш совет был полезным, и теперь я в пути. Я обновлю свой прогресс.
До моего набега в Arduino я использовал командную строку Linux и сценарии для развития с GCC для ARM. Я использую периферийные библиотеки ST. Книга Джеффа Брауна хорошая, и я в значительной степени следил за его методологией. Я использовал эту среду разработки для большей части моей работы STM32F1.
Отдельно я использую Eclipse, работающий в Windows для работы STM32F4. Это делает работу немного более автоматизированной. И я все равно хотел изучить затмение. Книга Carmine Noviello, Mastering STM32, является очень хорошей ссылкой на создание инструментов и для выполнения специфической работы STM32F4.
Я изменил один из вариантов STM32F103 для работы с моей платой STM32F100. Я мог бы скомпилировать и загрузить Timerintrupt.Ино, но он не выполнился должным образом. Как ожидал Стивен, Timer2 не реализуется, как требуется в программе. Timer1 - это расширенный таймер на процессоре, и, изменяя код на его использование, мне удалось заставить его работать.
Работа, которую я проделал, используя код голого металла и библиотеки ST, дала мне низкое знакомство с таймерами; Итак, было не очень сложно устранить проблемы.
Теперь я прошел большую часть кривой обучения для STM32Duino, я смогу быстро работать проектами, которые могут переносить накладные расходы программного обеспечения, которые сопровождают Arduino. Иногда моя работа включает в себя прототипирование дизайна, запустив его один раз, затем разрывает его на части. Arduino имеет смысл в этих случаях. С другой стороны, я сразу же спускаюсь рядом с аппаратным обеспечением, используя C или даже сборку, когда это требует производительности, и объем оправдывает его.
Даже использование этой доски ST Discovery не имеет особого смысла, кроме как инструмент обучения. Я уже заказал несколько досок на базе STM32F103; Итак, я могу воспользоваться конфигурациями STM32Duino, которые уже на месте.
Спасибо вам обоим, господа, за вашу помощь. Я уверен, что когда -нибудь мы переписать снова по другим вопросам.
С наилучшими пожеланиями,
Откровенный
Ваш совет был полезным, и теперь я в пути. Я обновлю свой прогресс.
До моего набега в Arduino я использовал командную строку Linux и сценарии для развития с GCC для ARM. Я использую периферийные библиотеки ST. Книга Джеффа Брауна хорошая, и я в значительной степени следил за его методологией. Я использовал эту среду разработки для большей части моей работы STM32F1.
Отдельно я использую Eclipse, работающий в Windows для работы STM32F4. Это делает работу немного более автоматизированной. И я все равно хотел изучить затмение. Книга Carmine Noviello, Mastering STM32, является очень хорошей ссылкой на создание инструментов и для выполнения специфической работы STM32F4.
Я изменил один из вариантов STM32F103 для работы с моей платой STM32F100. Я мог бы скомпилировать и загрузить Timerintrupt.Ино, но он не выполнился должным образом. Как ожидал Стивен, Timer2 не реализуется, как требуется в программе. Timer1 - это расширенный таймер на процессоре, и, изменяя код на его использование, мне удалось заставить его работать.
Работа, которую я проделал, используя код голого металла и библиотеки ST, дала мне низкое знакомство с таймерами; Итак, было не очень сложно устранить проблемы.
Теперь я прошел большую часть кривой обучения для STM32Duino, я смогу быстро работать проектами, которые могут переносить накладные расходы программного обеспечения, которые сопровождают Arduino. Иногда моя работа включает в себя прототипирование дизайна, запустив его один раз, затем разрывает его на части. Arduino имеет смысл в этих случаях. С другой стороны, я сразу же спускаюсь рядом с аппаратным обеспечением, используя C или даже сборку, когда это требует производительности, и объем оправдывает его.
Даже использование этой доски ST Discovery не имеет особого смысла, кроме как инструмент обучения. Я уже заказал несколько досок на базе STM32F103; Итак, я могу воспользоваться конфигурациями STM32Duino, которые уже на месте.
Спасибо вам обоим, господа, за вашу помощь. Я уверен, что когда -нибудь мы переписать снова по другим вопросам.
С наилучшими пожеланиями,
Откровенный
Rogerclark
Вторник 26 сентября 2017 г. 10:24
Привет, Фрэнк
Я рад, что ты справляешься с вещами..
Я пометил ветку как решенную и немного изменил заголовок, чтобы помочь любому другому, кто может использовать ту же доску.
Я перенесю эту ветку в соответствующий раздел (снова, чтобы помочь кому -либо еще с той же доской - так как большинство проблем были связаны с тем, что это тип доски, которую никто не пытался запустить Arduino раньше)
Я рад, что ты справляешься с вещами..
Я пометил ветку как решенную и немного изменил заголовок, чтобы помочь любому другому, кто может использовать ту же доску.
Я перенесю эту ветку в соответствующий раздел (снова, чтобы помочь кому -либо еще с той же доской - так как большинство проблем были связаны с тем, что это тип доски, которую никто не пытался запустить Arduino раньше)