Skocz do zawartości

Nucleo STM32F303K8T6 konfiguracja UART (+nucleo się grzeje)


Pomocna odpowiedź

Napisano

Witam,
zauważyłem ostatnio, że moje nucleo grzeje się niesamowicie nawet przy wgraniu pustego programu. Ktoś może powiedzieć czy ma podobnie ? Czy to jest norma przy tych zestawach ?

Procek, ale tak strasznie, że aż palce parzy. Oddaję płytkę na reklamację, zobaczymy czy producent to uzna. Ale pojawił się w tym momencie inny problem. Na innej płytce, I aby nie zakładać nowego tematu napiszę to tutaj. Mianowicie mam problem z ustanowieniem komunikacji po UARTcie. Płytka to Nucleo STM32F303K8. Niby wydaje się, że wszystko dobrze poustawiane no ale współpracować nie chce. Nic nie wysyła. Parametry w terminalu takie same jak w programie (Baud 115200), port COM taki jak ma płytka. Jakby ktoś zerknął to byłbym wdzięczny. Mi kończą się pomysły co może być nie tak.

Kod:

#include "stm32f30x.h"
#include "delay.h"

void send_char(char c){
   while (USART_GetFlagStatus(USART2, USART_FLAG_TXE) == RESET);
   USART_SendData(USART2, c);
}

void send_string(const char* s){
   while (*s)
       send_char(*s++);
}

int main(void)
{
GPIO_InitTypeDef gpio;
USART_InitTypeDef usart;

RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB,ENABLE);
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA,ENABLE);
RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2,ENABLE);

GPIO_StructInit(&gpio);
USART_StructInit(&usart);

//LED
gpio.GPIO_Pin = GPIO_Pin_3;
gpio.GPIO_Mode = GPIO_Mode_OUT;
GPIO_Init(GPIOB, &gpio);
//USART
//Tx
gpio.GPIO_Pin=GPIO_Pin_2;
gpio.GPIO_Mode=GPIO_Mode_AF;
GPIO_Init(GPIOA,&gpio);
//Rx
gpio.GPIO_Pin=GPIO_Pin_15;
gpio.GPIO_Mode=GPIO_Mode_IN;
GPIO_Init(GPIOA,&gpio);

//USART Config
usart.USART_BaudRate = 115200;
USART_Init(USART2,&usart);
USART_Cmd(USART2,ENABLE);


SysTick_Config(SystemCoreClock / 1000);

while(1){
	GPIO_SetBits(GPIOB, GPIO_Pin_3);
	delay_ms(100);
	GPIO_ResetBits(GPIOB, GPIO_Pin_3);
	delay_ms(100);

	send_string("Hello");
}
}

[ Dodano: 15-03-2016, 22:10 ]

Jest ktoś w stanie pomóc ?

[ Dodano: 15-03-2016, 22:26 ]

Problem rozwiązany. Jakby ktoś potrzebował to trzeba zadeklarować funkcje alternatywne dla pinów (GPIO_PinAFConfig).

  • Lubię! 1

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...