Gast
#2627700
Hallo an alle! Ich steige gerade weider ins µC Programmieren ein, ich hab das mal vor ein paar Jahren in der HTL gemacht, aber da hat sich anscheinend einiges verändert... Nach schon langem Herumprobieren mit ADC&co will ich jetzt die Ergebnisse mithilfe einer USART-Schnittstelle auf meinen PC bringen. die entsprechende Hilfe ist von dieser Seite gekommen: http://www.micromouseonline.com/2009/12/31/stm32-usart-basics/#axzz1rSw8wahp nur tut sich auf dem Pin PA9(auf dem eigentlich der USART1 TX geschaltet ist) nichts (ich hab ein analoges Oszi druafhängen) meine einzigen konfigurationen am Code war, dass ich die Konstanten durch Zahlen ersetzt habe. das ganze sieht jetzt so aus: void init_RS485 (void){ RCC->APB2ENR |= (1<<2); // enable clock for GPIOA GPIOA->CRH |= (0x0BUL << 4); // Tx (PA9) alt. out push-pull GPIOA->CRH |= (0x04UL << 8); // Rx (PA10) in floating RCC->APB2ENR |= (1<<14); // enable clock for USART1 USART1->BRR = 64000000L/115200L; // set baudrate USART1->CR1 |= (1<<3); // TX enable USART1->CR1 |= (1<<13); // USART enable } int SendChar (int ch) { while ((USART1->SR & (1<<7)!=(1<<7))); //das 7. Bit ist TXE USART1->DR = (ch & 0xFF); return (ch); } Wenn ich jetzt in einer Endlosschleife ein Zeichen senden lasse tut sich auf PA9 absolut GAR NICHTS. Hab auch schon gesucht ob jemand anderes dieses Problem hat, finde aber (fast) nur Beiträge, bei denen falsche Daten ankommen. Danke für eure Hilfe, Dominik