We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hello,
I'm working with the AT91RM9200 - the USART is already configurated and works but I don't know how I could use the printf-function for the usart.
Now I'm sending a character with this function - it works, but it's ver uncomfortable if I want to send one sentence or numbers...
char a[11] = "Hallo Welt"; for(int i=0; i<11; i++) { while( !(COM1->US_CSR & AT91C_US_TXRDY) ) continue; COM1->US_THR = (a[i] & 0xFF); }
Is there a possibility to use the printf-function for the first USART / not the DEBUG-Unit at the AT91?
printf("Hello World\n");
best regards Johannes
There are many name linkage conflicts with previous declaration of variable "std::__stdin" (declared in stdio.h)
FILE __stdout; (incomplete type is not allowed)
I take a look into one example from keil - but I don't see the differences between these two projects
my code in the retarget.c is
#include <stdio.h> //#include <time.h> #include <rt_misc.h> #pragma import(__use_no_semihosting_swi) extern int COM1_putchar(int ch); struct __FILE { int handle; /* Add whatever you need here */ }; FILE __stdout; FILE __stdin; int fputc(int ch, FILE *f) { volatile unsigned int i; while (COM1_putchar (ch) != 0) { for (i=0; i<1000; i++) { /*** DO NOTHING ***/ } } return (ch); }
it's the same as in the example from keil - only to test it.