Jump to content

Search the Community

Showing results for tags 'STM32CubeMX'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Вопрос-Ответ. Для начинающих
    • Песочница (Q&A)
    • Дайте схему!
    • Школьникам и студентам
    • Начинающим
    • Паяльник TV
    • Обсуждение материалов с сайта
  • Радиоэлектроника для профессионалов
    • Световые эффекты и LED
    • Роботы и модели на ДУ-управлении
    • Автоматика
    • Самодельные устройства к компьютеру
    • Программное обеспечение
    • Автомобильная электроника
    • Системы охраны и наблюдения. Личная безопасность
    • Питание
    • Электрика
    • Промышленная электроника
    • Ремонт
    • Металлоискатели
    • Измерительная техника
    • Мастерская радиолюбителя
    • Сотовая связь
    • Спутниковое ТВ
    • КВ и УКВ радиосвязь
    • Жучки
    • Телефония и фрикинг
    • Высокое напряжение
    • Идеи и технологии будущего
    • Справочная радиоэлементов
    • Литература
    • Разное
  • Аудио
    • FAQ, Технологии и компоненты
    • Для начинающих
    • Источники звука
    • Предусилители, темброблоки, фильтры
    • Питание аудио аппаратуры
    • Усилители мощности
    • Акустические системы
    • Авто-аудио
    • Ламповая техника
    • Гитарное оборудование
    • Прочее
  • Микроконтроллеры
  • Товары и услуги
  • Разное
  • Переделки's ATX->ЛБП
  • Переделки's разные темы
  • Киловольты юмора's Юмор в youtube

Blogs

There are no results to display.

There are no results to display.

Marker Groups

  • Пользователи форума

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


ICQ


Skype


Интересы


Город


Сфера радиоэлектроники


Оборудование

Found 3 results

  1. Добрый день. Может быть,кто-нибудь уже сталкивался с таким. Занимаюсь доработкой чужого проекта в среде STM32CubeMX, первый раз работаю с библиотекой HAL. В этом проекте осуществлялся прием байт по USART1 из ComMon. Проект был открыт в STM32CubeMX, где мной дополнительно были активированы новые модули - RTC, SD, USART2. Настройки USART1 не менялись. Часы реального времени RTC: питание от батарейки, тактирование – от LSE. При приеме байт по USART1 в новом проекте (активны USART1, RTC, SD, USART2) было выявлено, что после приема 2 байт по USART1 перестает инкрементироваться значение переменной uwTick, отвечающей за прерывания Systick, в результате чего дальнейшая отладка невозможна. Не удается выяснить, в каком месте и почему перестает увеличиваться значение uwTick. При работе со старым проектом (где активен только USART1) uwTick инкрементируется после приема 2 байт. Смены приоритета прерываний не происходит, в функцию HAL_Delay() отладчик не попадает. При вызове функции HAL_ResumeTick(), возобновляющей прерывания Systick, ничего не меняется, значение uwTick остается неизменным. Остановка прерываний была обнаружена при попадании в функцию: static HAL_StatusTypeDef UART_WaitOnFlagUntilTimeout(UART_HandleTypeDef *huart, uint32_t Flag, FlagStatus Status, uint32_t Tickstart, uint32_t Timeout) { /* Wait until flag is set */ while((__HAL_UART_GET_FLAG(huart, Flag) ? SET : RESET) == Status) { /* Check for the Timeout */ if(Timeout != HAL_MAX_DELAY) { if((Timeout == 0U)||((HAL_GetTick() - Tickstart ) > Timeout)) { /* Disable TXE, RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts for the interrupt process */ CLEAR_BIT(huart->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE | USART_CR1_TXEIE)); CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE); huart->gState = HAL_UART_STATE_READY; huart->RxState = HAL_UART_STATE_READY; /* Process Unlocked */ __HAL_UNLOCK(huart); return HAL_TIMEOUT; } } } return HAL_OK; } В новом проекте текущее значение uwTick, возвращаемое функцией HAL_GetTick(), всегда равно значению Tickstart. В старом проекте сначала также, но затем uwTick начинает увеличиваться. Выяснить, в каком именно месте кода значение uwTick должно начать увеличиваться, не удается. Может быть, у кого-нибудь есть хоть какие-то идеи, с чем может быть связана остановка увеличения значений uwTick, помогите пожалуйста) Распиновка и конфигурация обоих проектов: верхняя часть рисунков - первоначальный, работающий вариант, нижняя - сбой прерываний Systick.
  2. Здравствуйте, недавно начал заниматься stm32, до этого занимался только Arduino/AVR. Купил себе плату с чипом STM32F103C8T6, и программатор ST-Link v2. Сразу же начал искать себе подходящую IDE, остановил свой выбор на CoIDE. И когда начал, проблем с загрузкой, и компиляцией программы не было, управлял всем через регистры, и радостно мигал светодиодом, но когда решил проверить как работает отладка, столкнулся с проблемой. При запуске отладки проект компилировался и загружался, но сама отладка выдавала ошибку: Cannot execute this command without a live selected thread. Перерыл весь интернет, ничего не помогло. Взял уже пример с миганием светодиода из библиотеки GPIO, поменял название функции на int main, поставил return, и дописал строку которая включает SWD. Вот сам код: #include "stm32f10x.h" #include "stm32f10x_gpio.h" #include "stm32f10x_rcc.h" int main(void) { int i; /* Initialize Leds mounted on STM32 board */ GPIO_InitTypeDef GPIO_InitStructure; /* Initialize LED which connected to PC6,9, Enable the Clock*/ RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); /* Configure the GPIO_LED pin */ GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOC, &GPIO_InitStructure); GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable , ENABLE); while (1) { /* Toggle LEDs which connected to PC6*/ GPIOC->ODR ^= GPIO_Pin_13; /* delay */ for(i=0;i<0x100000;i++); } return 0; } Запускаю, и ничего та же ошибка. После решил сам все не делать, а создать проект в STM32CubeMX. Делал по многим примерам(код кидать не буду он стандартный). Правильно настраивал порты, в пинах sys выставил значение Serial Debug, выставил тактирование. Кидаю проект, все правильно выставляю(папки Drivers, Src, Inc), потом в конфигурации во вкладке компилятор, выставляю переменные. Компилирую, выдает такую строку: Program Size: text data bss dec hex filename 0 0 0 0 0 NewMain.elf тоесть программы по сути нет, это в настройках линкера во вкладке options стоит галочка на: Use memory layout from memory window. Окей знаю что линкер просто не подключает нужные библиотеки и файлы, поэтому программа ничего не весит. Снимаю галочку, ставлю Scatter file, который сделала STM32CubeMX, запускаю. Дальше выдает ошибку, но не компиляции, вылазит окно Problem Occurred, нажимаю details, там такое: An internal error occurred during: "Building". String index out of range: -1 И все, компиляция прервана. НО если очистить проект, и потом сбилдить(либо ребилд), то работает, но заветный светодиод не моргает. Дальше касательно отладки, в нее не могу зайти, потому что при отладке проект компилируется, но я его не могу скомпилировать, могу перебилдить, и поэтому отладка тупо не включается, но есть я очищу проект, то отладка просто не работает. P.S перемычки на плате менял, как угодно, и с одной прошивкой и другой, не работает. Пытался освоить uVision, не пошло, куча проблем с ней, хотя уже и по гайдам делал(по нескольким), и сам все пытался. Но в итоге как не работало, так и не работает. Поэтому прошу помощи.
  3. Здравствуйте. В stm32cubemx создал проект, выбрал камень, настроил одну ножку на вывод и сгенерировал проект для Keil5. В Keil-e добавил только мигание светодиодом. Контроллер прошился и заработал как и планировалось (начал мигать светодиодом). Вот только второй раз я его прошить не могу, пишет "no target connected". Как можно его реанимировать? И не допускать подобных ситуаций? Как мне кажется, я что-то не доделал в stm32cubemx.
×
×
  • Create New...