furi_hal_console.h 843 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #pragma once
  2. #include <stddef.h>
  3. #include <stdint.h>
  4. #include <stdio.h>
  5. #ifdef __cplusplus
  6. extern "C" {
  7. #endif
  8. typedef void (*FuriHalConsoleTxCallback)(const uint8_t* buffer, size_t size, void* context);
  9. void furi_hal_console_init();
  10. void furi_hal_console_enable();
  11. void furi_hal_console_disable();
  12. void furi_hal_console_set_tx_callback(FuriHalConsoleTxCallback callback, void* context);
  13. void furi_hal_console_tx(const uint8_t* buffer, size_t buffer_size);
  14. void furi_hal_console_tx_with_new_line(const uint8_t* buffer, size_t buffer_size);
  15. /**
  16. * Printf-like plain uart interface
  17. * @warning Will not work in ISR context
  18. * @param format
  19. * @param ...
  20. */
  21. void furi_hal_console_printf(const char format[], ...) _ATTRIBUTE((__format__(__printf__, 1, 2)));
  22. void furi_hal_console_puts(const char* data);
  23. #ifdef __cplusplus
  24. }
  25. #endif