проблема может быть в программном отключении SWDIO и SWCLK прошивкой. Попробуйте загрузить в режим BOOT, и оттуда прошитьподключил SWDIO и SWCLK, питание 3,3в. NRST не подключен никуда, на boot0 подавал и 1 и 0. не шьется. в чем еще может быть проблема?
STM32 новичку в ARM что к чему
- Сообщения: 502
- Зарегистрирован: Чт фев 16, 2012 19:00:11
- Реклама
подключил питание аналоговой и цифровой части, сигналы SWDIO и SWCLK, но шиться не хочет. кварц не ставил. в ST-link нужно менять какие то настройки?
Всем спасибо. проблема была в том, что МК питал от 3,3В, а программатор питается от 3в. когда мк запитал от 3В, все сразу заработало.
спаял устройство, которое на борту имеет стабилизатор на 3,3в и запитал от внешнего источника питания. потом подключил к STM32VLDISCOVERY ( SWDIO, SWCLK, GND). прошиваться не хотело. потом я подключил вывод DISCOVERY 3.3В (на котором реально 3В, вся DISCOVERY питается от 3В) и все определилось. потом попробовал уменьшить напряжение внешнего источника питания так, чтобы на мк было 3В, при этом тоже все прошивается.
- Реклама
Привет всем .
В общем проблема такая сделал плату на STM32f405RGT6,перед припаиванием микроконтроллера посмотрел все без косяков. поставил чип подключил питание юарт адаптер чтоб занести прошивку через бутлоадер. но программа его даже не находит ,в чем может быть проблема ,всю плату ещё раз досконально изучил все чисто без замыканий
В общем проблема такая сделал плату на STM32f405RGT6,перед припаиванием микроконтроллера посмотрел все без косяков. поставил чип подключил питание юарт адаптер чтоб занести прошивку через бутлоадер. но программа его даже не находит ,в чем может быть проблема ,всю плату ещё раз досконально изучил все чисто без замыканий
USHIN
boot 0/1 в правильной позиции ?
типовые косяки с питанием аналоговой части не повторял ? -))
типовые косяки с питанием аналоговой части не повторял ? -))
Satyr писал(а):boot 0/1 в правильной позиции ?
типовые косяки с питанием аналоговой части не повторял ? -))
Бут правельно поставил аналоговая часть меня что то напрягает опорное наряжение подключаю микроконтроллер нагревается потихоньку
USHIN
Всем привет! кто может создать проект в uvision для МК STM32F051R8T6? пробовал уже несколько раз, не получается. пишет что не находит SystemInit, где его взять?
В CMSIS находится. Или в стартапе руками отключить можно.drakon писал(а):пишет что не находит SystemInit, где его взять?
- Сообщения: 1163
- Зарегистрирован: Ср янв 05, 2011 16:25:15
...можно и без CMSIS и не отключатьВ CMSIS находится. Или в стартапе руками отключить можно.
просто пишем
Код: Выделить всё
void SystemInit(){
// можно вставить инициализацию портов например....
....
}спасибо. вставил процедуру и все скомпилировалось. есть ли у кого-то прошивка ST-link который стоит на STM32VLDISCOVERY?
На сайте st.com не смотрели? Там она точно есть, с исходниками.drakon писал(а): есть ли у кого-то прошивка ST-link который стоит на STM32VLDISCOVERY?
Все будет только лучше, в крайнем случае - хуже.
http://www.st.com прошивку не дают, знаю что люди стягивают ее с прошитого мк через jtag какими то хитрыми способами, есть прошивка на ST-link/V2, тот что на STM32F3DISCOVERY стоит.
Пардон, я невнимательно почитал. Значит, ежели Вы хотите склонировать (или восстановить) ST-Link, то Вам сюда http://forum.easyelectronics.ru/viewtop ... k&start=50
Все будет только лучше, в крайнем случае - хуже.
- Сообщения: 303
- Зарегистрирован: Сб янв 08, 2011 13:48:41
Подскажите.Купил stlink2 ,до этого пользовался дисковери.
Как подключить к STM32L.какие порта? ну собственно шлейф stlink2.
Хочу запрограммировать незнаю как,желательно также с отладкой.
И такой вопрос если я обвязку сделаю,карту памяти ,микрофон светодиоды,он программироваться будет?
И такй вопрос,если использовать аппаратный USB,можно использовать внутренний кварц,или только внешний на 25?
Как подключить к STM32L.какие порта? ну собственно шлейф stlink2.
Хочу запрограммировать незнаю как,желательно также с отладкой.
И такой вопрос если я обвязку сделаю,карту памяти ,микрофон светодиоды,он программироваться будет?
И такй вопрос,если использовать аппаратный USB,можно использовать внутренний кварц,или только внешний на 25?
- Сообщения: 303
- Зарегистрирован: Сб янв 08, 2011 13:48:41
Подскажите STM32l152 там как обзначены вывода SWDIO, SWCLK это не MOSI и clk?И питание VDD1 VDD2 все между сособой соединять VSS1 и VSS2 или они внутри между собой уже подсоединины?
Питание на примере референс-дизайна.
SWD - отладка, MOSI-MISO-CLK - это SPI.
SWD - отладка, MOSI-MISO-CLK - это SPI.
- Вложения
-
- AN3216.PNG
- (41.71 КБ) 399 скачиваний
Здравствуйте!
Борюсь с прерываниями на плате STM32VL Discovery, имеются некоторые непонятки в следующих моментах
что делает этот код?
и второе
я так понимаю первой строчкой мы обнуляем комбинации четырёх битов EXTI, второй строкой устанавливаем бит, но тогда получается 0001 (это порт В) ?
Борюсь с прерываниями на плате STM32VL Discovery, имеются некоторые непонятки в следующих моментах
Код: Выделить всё
void InitGPIOTim ()
{
/** Включаем тактирование порта C и А
* Выход порта С, вывода PC8,9 с максимальной скоростью – 10МГц (MODEy[1:0] = 01)
* Вывод PC8,9 порта C, Двухтактный выход общего назначения Push-Pull CNFy[1:0] = 00:
*/
RCC->APB2ENR |= RCC_APB2ENR_IOPCEN | RCC_APB2ENR_IOPAEN;
GPIOC->CRH |= (GPIO_CRH_MODE8_0 | GPIO_CRH_MODE9_0);
GPIOC->CRH &= ~(GPIO_CRH_CNF8 | GPIO_CRH_CNF9);
GPIOA->CRL&=~GPIO_CRL_MODE0; // Кнопка "USER" PA0 - на вход.
EXTI->IMR &= ~EXTI_IMR_MR0;
EXTI->EMR &= ~EXTI_EMR_MR0;
RCC->APB2ENR |= RCC_APB2ENR_AFIOEN; /*разрешить тактирование AFIO */
/*далее выбираем необходимый нам вход:*/
AFIO->EXTICR[0] &= ~AFIO_EXTICR1_EXTI0_PA;
AFIO->EXTICR[0] |= AFIO_EXTICR1_EXTI0_PA; // Прерывание INT0 на PORTA.
/*Выберем для детектирование оба фронта:*/
EXTI->RTSR |= EXTI_RTSR_TR0; // прерывание по нарастающему фронту "Rising Edge”
EXTI->FTSR |= EXTI_FTSR_TR0; // прерывание от EXTI0 по срезу "Falling Edge”
/*Разрешаем генерацию прерывания от выбранной линии:*/
EXTI->IMR |= EXTI_IMR_MR0; // Разрешить запрос от EXTI0. Прерывания от нулевой ноги разрешены
}Код: Выделить всё
EXTI->IMR &= ~EXTI_IMR_MR0;
EXTI->EMR &= ~EXTI_EMR_MR0;Код: Выделить всё
/*далее выбираем необходимый нам вход:*/
AFIO->EXTICR[0] &= ~AFIO_EXTICR1_EXTI0_PA;
AFIO->EXTICR[0] |= AFIO_EXTICR1_EXTI0_PA; // Прерывание INT0 на PORTA.Перечитав ещё раз кажется пришло прозрение, это мы сбрасываем все прерывания и события.
а здесь вероятно сначала обнуляем регистр EXTI дабы неизвестно, что там может быть, затем устанавливаем нужное прерывание
P.S. (для PA0) работает по умолчанию, без установки, ибо изначально там нули.
Код: Выделить всё
EXTI->IMR &= ~EXTI_IMR_MR0;
EXTI->EMR &= ~EXTI_EMR_MR0;P.S. (для PA0) работает по умолчанию, без установки, ибо изначально там нули.
Код: Выделить всё
/*далее выбираем необходимый нам вход:*/
AFIO->EXTICR[0] &= ~AFIO_EXTICR1_EXTI0_PA;
AFIO->EXTICR[0] |= AFIO_EXTICR1_EXTI0_PA; // Прерывание INT0 на PORTA.


