Форум РадиоКот https://radiokot.ru/forum/ |
|
Схема STM32F103 Minimum System Development Board https://radiokot.ru/forum/viewtopic.php?f=59&t=115275 |
Страница 3 из 5 |
Автор: | PreezRack [ Вт ноя 22, 2016 13:21:06 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
Мурик писал(а): PreezRack писал(а): как это вывести через ST-link com порт в среде Ардуино, я не знаю Заменить среду Ардуино на другую поддерживающую отладку не вариант?Я только месяц с Ардуино ковыряюсь, и ни разу не программист, если wire еще как-то немного понятен, то поставив Coocox и посмотрев кучу окошек, понял, что я это не скоро освою, меня хватило только откомпилить готовый пример |
Автор: | Мурик [ Вт ноя 22, 2016 13:23:12 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
ИМХО EmBitz проще для начала. |
Автор: | PreezRack [ Вт ноя 22, 2016 13:26:37 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
Reflector писал(а): PreezRack писал(а): У GD 120мгц штатка, а разогнать можно вроде и до 200. 108 MHz у него штатка, не 120 и не 128. До скольки разгоняется не знаю, ST-ый работает на 144. Все верно, но плата на GD позволяет штатный разгон до 120 Мгц(в среде ардуино), а плата на STM32F103x не позволяет. |
Автор: | Мурик [ Вт ноя 22, 2016 13:35:47 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
Как выполняется разгон в ардуино? Путем управления умножителем у меня получалось разгонять STM32F103 до 140 МГц, точно не помню. Дальше начиналась нестабильная работа с появлением ошибки HardFault. |
Автор: | Reflector [ Вт ноя 22, 2016 13:49:34 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
Мурик писал(а): Как выполняется разгон в ардуино? Путем управления умножителем у меня получалось разгонять STM32F103 до 140 МГц, точно не помню. Дальше начиналась нестабильная работа с появлением ошибки HardFault. А ты latency флешу повышаешь? Точно не помню сколько ставил чтоб F103 на 144 MHz работал, наверно 3. У F407 при разгоне до 260 приходится его задирать до 6-ти. |
Автор: | Мурик [ Вт ноя 22, 2016 13:54:32 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
Не повышал. |
Автор: | PreezRack [ Вт ноя 22, 2016 14:00:29 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
Мурик писал(а): Как выполняется разгон в ардуино? Путем управления умножителем у меня получалось разгонять STM32F103 до 140 МГц, точно не помню. Дальше начиналась нестабильная работа с появлением ошибки HardFault. А в Ардуино как это сделать? Я бы попробовал максималку для GD найти. Всякие CMSIS для меня слишком сложно. |
Автор: | Мурик [ Вт ноя 22, 2016 14:17:05 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
PreezRack писал(а): Всякие CMSIS для меня слишком сложно. А как насчет HAL и SPL?Если разгонять по простому то необходимо в файле system_stm32f10x.c в функции SetSysClockTo72 найти строку Код: RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLXTPRE_PREDIV1 | RCC_CFGR_PLLSRC_PREDIV1 | И заменить RCC_CFGR_PLLMULL9 на на другой параметр с нужным коэффициентом умножения. Допустим если нужно умножить частоту на 16 (8*16=128МГц) то необходимо использовать RCC_CFGR_PLLMULL16.RCC_CFGR_PLLMULL9); Другой способ разгона (или замедления) "на лету" с применением библиотеки SPL. Код: void Overclocking(void) // Разгон микроконтроллера.
{ RCC_HSICmd(ENABLE); // Включаем внутренний RC генератор. RCC_SYSCLKConfig(RCC_SYSCLKSource_HSI); // Выбираем источником такторования внутренний RC генератор. RCC_PLLCmd(DISABLE); // Выключаем умножитель. RCC_PLLConfig(RCC_PLLSource_HSE, RCC_CFGR_PLLMULL12); // На сколько будем умножать частоту. RCC_PLLCmd(ENABLE); // Включаем умножитель. while ((RCC->CR & RCC_CR_PLLRDY) == 0); // Ждем запуска умножителя. RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); // Выбираем источником тактирования умножитель. SystemCoreClockUpdate(); // Вычисление тактовой частоты ядра. } |
Автор: | PreezRack [ Вт ноя 22, 2016 14:49:08 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
Мурик писал(а): PreezRack писал(а): Всякие CMSIS для меня слишком сложно. А как насчет HAL и SPL?Если разгонять по простому то необходимо в файле system_stm32f10x.c в функции SetSysClockTo72 найти строку Код: RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLXTPRE_PREDIV1 | RCC_CFGR_PLLSRC_PREDIV1 | И заменить RCC_CFGR_PLLMULL9 на на другой параметр с нужным коэффициентом умножения. Допустим если нужно умножить частоту на 16 (8*16=128МГц) то необходимо использовать RCC_CFGR_PLLMULL16.RCC_CFGR_PLLMULL9); Другой способ разгона (или замедления) "на лету" с применением библиотеки SPL. Код: void Overclocking(void) // Разгон микроконтроллера. { RCC_HSICmd(ENABLE); // Включаем внутренний RC генератор. RCC_SYSCLKConfig(RCC_SYSCLKSource_HSI); // Выбираем источником такторования внутренний RC генератор. RCC_PLLCmd(DISABLE); // Выключаем умножитель. RCC_PLLConfig(RCC_PLLSource_HSE, RCC_CFGR_PLLMULL12); // На сколько будем умножать частоту. RCC_PLLCmd(ENABLE); // Включаем умножитель. while ((RCC->CR & RCC_CR_PLLRDY) == 0); // Ждем запуска умножителя. RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); // Выбираем источником тактирования умножитель. SystemCoreClockUpdate(); // Вычисление тактовой частоты ядра. } Благодарствую, попробую поковыряться! |
Автор: | dosikus [ Вт ноя 22, 2016 15:01:54 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
Мурик писал(а): Не повышал. А делать сие обязательно надо... |
Автор: | Z_h_e [ Вт ноя 22, 2016 15:19:36 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
Мурик писал(а): По даташиту 64, но реально 128 КБ. Что это за маркетинг такой.? "Мама,мама! Я кондуктора обманул, за проезд заплатил, а сам не поехал".
|
Автор: | PreezRack [ Чт ноя 24, 2016 11:52:54 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
В общем, открыл board_setup.cpp и обнаружил это - // Generic GD32 boards seem to have a 12Mhz crystal rather than the 8Mhz common on STM32 boards, hence the PLL multiplier settings are different. // Additionally the GD32 has a 4 USB PLL divider settings, rather than the 2 settings in the STM32, which allow it to operate on frequencies of 48,72,96 and 120Mhz and still have USB functioning #ifndef BOARD_RCC_PLLMUL #if F_CPU==120000000 #define BOARD_RCC_PLLMUL RCC_PLLMUL_10 #elif F_CPU==96000000 #define BOARD_RCC_PLLMUL RCC_PLLMUL_8 #elif F_CPU==72000000 #define BOARD_RCC_PLLMUL RCC_PLLMUL_6 То есть надо менять кварц на 12 мегагерц, но что хорошо в GD32 это то, что при разгоне до 120 мегагерц usb полнофункционален, за счет бОльшего набора делителей. Я могу добавить строчку? #ifndef BOARD_RCC_PLLMUL #if F_CPU==144000000 #define BOARD_RCC_PLLMUL RCC_PLLMUL_12 #if F_CPU==120000000 #define BOARD_RCC_PLLMUL RCC_PLLMUL_10 #elif F_CPU==96000000 #define BOARD_RCC_PLLMUL RCC_PLLMUL_8 #elif F_CPU==72000000 #define BOARD_RCC_PLLMUL RCC_PLLMUL_6 и rcc_clk_disable(RCC_USB); #if F_CPU == 144000000 rcc_set_prescaler(RCC_PRESCALER_USB, RCC_USB_SYSCLK_DIV_3); #if F_CPU == 120000000 rcc_set_prescaler(RCC_PRESCALER_USB, RCC_USB_SYSCLK_DIV_2_5); #elif F_CPU == 96000000 rcc_set_prescaler(RCC_PRESCALER_USB, RCC_USB_SYSCLK_DIV_2); |
Автор: | MegaEvil [ Ср дек 21, 2016 23:31:07 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
User_AVR писал(а): При этом подозрительно ведёт себя USB-UART на СР2102(а может сама плата?) Flash demonstrator обнаруживает плату после нескольких десятков ресетов. Спасибо. У меня такое было. После подтяжки 100к резисторами RX и TX на 3.3В стало определяться с первого раза. |
Автор: | NiTr0 [ Пт июн 09, 2017 23:35:58 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
Мурик писал(а): По даташиту 64, но реально 128 КБ. Что это за маркетинг такой.? "Мама,мама! Я кондуктора обманул, за проезд заплатил, а сам не поехал".вас же не удивляет, что в китайских stlink стоят камни, у которых в даташите не заявлена поддержка юсб? режется все с одного кристалла. а то, что подешевле - тестируется только половина памяти, не тестируется незаявленная периферия (типа помянутого юсб) и т.п. к слову, платки вполне себе кошерные, как за свои деньги, блоха-LDO не смотря на свои размеры вполне себе ENC28J60 тянет, RTC - так и должен долго инититься, грабля CMSIS (дуплит пока частота стабилизируется а надо это делать уже в процессе исполнения кода). ну это если RTC надо. единственный минус - pull-up резистор жестко затянут на +3.3, а надо навешать его на какую-то лапу МК (можно через ключ можно напрямую), чтобы при ресете МК не передергивать юсб шнурок. еще бы туда китайцы какую-нить EEPROM припаяли, хоть на 128 байт - вообще цены плате не было бы. а так - приходится из внутренней флэши еепром соображать... |
Автор: | Z_h_e [ Сб июн 10, 2017 07:07:33 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
NiTr0 писал(а): вас же не удивляет, что в китайских stlink стоят камни, у которых в даташите не заявлена поддержка юсб? Свой не разбирал. В инете, схемы которые видел на него, камень stm32f103, в нем есть USB. Опять же можно спросить, а Вас не удивляет что USBASP на Atmegа собран, в которой точно нет USB?Попробую как-нибудь на досуге, что-нибудь записать в "расширенную" область памяти. Откуда у Вас такая информация по поводу тестов? |
Автор: | Мурик [ Сб июн 10, 2017 08:26:13 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
Z_h_e писал(а): В инете, схемы которые видел на него, камень stm32f103, в нем есть USB. Схемы обычно взяты с оригинального ST-Link, а китайцы ставят 101.Z_h_e писал(а): Опять же можно спросить, а Вас не удивляет что USBASP на Atmegа собран, в которой точно нет USB? Сравнение некорректно. Вот если в ATmega8 залить код скомпилированный для ATmega8U2 и на простой меге заработал аппаратный модуль USB, тогда сравнение было бы корректным. В ATmega8 по документации нет USB и его эмулируют программно. В STM32F101 по документации нет USB, но в него заливают код от STM32F103 и все работает в т. ч. USB. |
Автор: | Z_h_e [ Сб июн 10, 2017 11:27:22 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
Мурик писал(а): тогда сравнение было бы корректным Если бы NiTr0 указал, что прошивка ST-LINK одна и таже для разных камней и она использует именно аппаратный USB, то я бы само собой не приводил бы таких сравнений.
|
Автор: | Serj_K [ Сб июн 10, 2017 13:30:55 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
Мурик писал(а): Схемы обычно взяты с оригинального ST-Link, а китайцы ставят 101 И обычно залитая в них штатная прошивка не работает. То есть работа USB в них реализована не как в 103. У меня такой и обновлять прошивку в нём я не рискую.
|
Автор: | Мурик [ Сб июн 10, 2017 13:42:52 ] |
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board |
Serj_K писал(а): И обычно залитая в них штатная прошивка не работает. Во сколько STM32F101 заливали штатную прошивку? Каков процент неработоспособности прошивки?Serj_K писал(а): То есть работа USB в них реализована не как в 103. А как?Serj_K писал(а): У меня такой и обновлять прошивку в нём я не рискую. Ни разу не пробовали обновлять прошивку в ST-Link с STM32F101?Я во многих обновлял и все работают. |
Автор: | Varimon [ Пн мар 05, 2018 15:54:28 ] | |||
Заголовок сообщения: | Re: Схема STM32F103 Minimum System Development Board | |||
У кого нибудь есть схема на такую отладочную плату STM32F103RET6? В сети поискал что-то не нашел. СпойлерНашел все таки сам https://github.com/mcauser/BLUE_BUTTON_F103RET6 STM32F103RET6 board подключение к ST LINK v2 по SWD Спойлер
|
Страница 3 из 5 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |