embeddedartistry / libc

libc targeted for embedded systems usage. Reduced set of functionality (due to embedded nature). Chosen for portability and quick bringup.
MIT License
511 stars 67 forks source link

Add an ITM putchar implementation #89

Closed phillipjohnston closed 5 years ago

phillipjohnston commented 5 years ago

Inspiration:

Screen Shot 2019-04-03 at 12 13 37

salkinium commented 5 years ago

See also https://blog.japaric.io/itm/ for more implementation details (in Rust, but applies to any language).

phillipjohnston commented 5 years ago

Thanks!

phillipjohnston commented 5 years ago

Closing after @salkinium's feedback:

It's pretty disappointing tbh. No DMA, no interrupts, no stand-alone functionality, the SWO pin isn't even connected on all Nucleo/Discovery boards, annoying to use via OpenOCD/GDB. Meh.

We'll do this if someone really wants it.