Ich versuche schon den ganzen Tag ein neues Projekt im AVR Studio
anzulegen. Target ist ein SAM4E-EK welchges ich bei dem neuen Projekt
auch auswähle. Somit sind alle notwendigen Initialisierungsschritte
"fertig".
Jetzt füge ich ein serielles Interface über das ASF hinzu.
Ich füge nur den Aufruf der Initialisierung hinzu und eine Testausgabe
(alles andere ist unangetastet).
1 | #include <asf.h>
|
2 |
|
3 | /** Baudrate setting */
|
4 | #define CONF_UART_BAUDRATE 115200
|
5 | /**
|
6 | Parity setting */
|
7 | #define CONF_UART_PARITY UART_MR_PAR_NO
|
8 |
|
9 | int main (void)
|
10 | {
|
11 | board_init();
|
12 |
|
13 |
|
14 | const usart_serial_options_t optionen = {
|
15 | .baudrate = CONF_UART_BAUDRATE,
|
16 | .paritytype = CONF_UART_PARITY
|
17 | };
|
18 |
|
19 | stdio_serial_init(UART0,&optionen);
|
20 |
|
21 | puts("Hallo");
|
22 | // Insert application code here, after the board has been initialized.
|
23 | }
|
Alles was bei mir in HTerm ankommt sind 8 Bytes mit jeweils 0x00.
Woran kann das liegen?
Ich habe schon etliche Male das Gettin Started Beispiel durchgekaut
(welches auch einwandfrei läuft). Das ASF hört sich sooo einfach an nur
irgendwie ist es das nicht?!
verfolge ich die ganzen Funktionen über "goto implementation" werden
sysclk enable, uart init etc aufgerufen. Die API Dokumentation von
Stdio_serial sagt auch nur initialisieren und benutzen.