Created
June 25, 2014 07:50
-
-
Save ExpandOcean/c1d81f67f568cae781ba to your computer and use it in GitHub Desktop.
Enable printf() with trace
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#define ITM_Port8(n) (*((volatile unsigned char *)(0xE0000000+4*n))) | |
#define ITM_Port16(n) (*((volatile unsigned short*)(0xE0000000+4*n))) | |
#define ITM_Port32(n) (*((volatile unsigned long *)(0xE0000000+4*n))) | |
#define DEMCR (*((volatile unsigned long *)(0xE000EDFC))) | |
#define TRCENA 0x01000000 | |
struct __FILE { int handle; /* Add whatever is needed */ }; | |
FILE __stdout; | |
FILE __stdin; | |
int fputc(int ch, FILE *f) { | |
if (DEMCR & TRCENA) { | |
while (ITM_Port32(0) == 0); | |
ITM_Port8(0) = ch; | |
} | |
return(ch); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment