Added the ability to select stdout UART by modyfying STDOUT_UART.
This commit is contained in:
parent
3e7edd43aa
commit
b0fb1049ed
3 changed files with 11 additions and 4 deletions
|
@ -48,6 +48,9 @@ ESPTOOL ?= esptool.py
|
||||||
ESPPORT ?= /dev/ttyUSB0
|
ESPPORT ?= /dev/ttyUSB0
|
||||||
ESPBAUD ?= 115200
|
ESPBAUD ?= 115200
|
||||||
|
|
||||||
|
# Set STDOUT_UART to the UART number that will be used to output using printf/os_printf
|
||||||
|
STDOUT_UART ?= 0
|
||||||
|
|
||||||
# Set OTA to 1 to build an image that supports rBoot OTA bootloader
|
# Set OTA to 1 to build an image that supports rBoot OTA bootloader
|
||||||
#
|
#
|
||||||
# Currently only works with 16mbit or more flash sizes, with 8mbit
|
# Currently only works with 16mbit or more flash sizes, with 8mbit
|
||||||
|
@ -100,7 +103,7 @@ ENTRY_SYMBOL ?= call_user_start
|
||||||
SPLIT_SECTIONS ?= 1
|
SPLIT_SECTIONS ?= 1
|
||||||
|
|
||||||
# Common flags for both C & C++_
|
# Common flags for both C & C++_
|
||||||
C_CXX_FLAGS ?= -Wall -Werror -Wl,-EL -nostdlib $(EXTRA_C_CXX_FLAGS)
|
C_CXX_FLAGS ?= -Wall -Werror -Wl,-EL -nostdlib -DPRINT_UART=$(STDOUT_UART) $(EXTRA_C_CXX_FLAGS)
|
||||||
# Flags for C only
|
# Flags for C only
|
||||||
CFLAGS ?= $(C_CXX_FLAGS) -std=gnu99 $(EXTRA_CFLAGS)
|
CFLAGS ?= $(C_CXX_FLAGS) -std=gnu99 $(EXTRA_CFLAGS)
|
||||||
# Flags for C++ only
|
# Flags for C++ only
|
||||||
|
|
|
@ -165,7 +165,7 @@ void IRAM sdk_user_fatal_exception_handler(void) {
|
||||||
|
|
||||||
|
|
||||||
static void IRAM default_putc(char c) {
|
static void IRAM default_putc(char c) {
|
||||||
uart_putc(0, c);
|
uart_putc(PRINT_UART, c);
|
||||||
}
|
}
|
||||||
|
|
||||||
// .text+0x258
|
// .text+0x258
|
||||||
|
@ -232,6 +232,10 @@ void IRAM sdk_user_start(void) {
|
||||||
sdk_SPIRead(ic_flash_addr, buf32, sizeof(struct sdk_g_ic_saved_st));
|
sdk_SPIRead(ic_flash_addr, buf32, sizeof(struct sdk_g_ic_saved_st));
|
||||||
Cache_Read_Enable(0, 0, 1);
|
Cache_Read_Enable(0, 0, 1);
|
||||||
zero_bss();
|
zero_bss();
|
||||||
|
// If user wants output through UART1, switch GPIO2 to U1TX function
|
||||||
|
#if PRINT_UART == 1
|
||||||
|
PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO2_U, FUNC_U1TXD_BK);
|
||||||
|
#endif
|
||||||
sdk_os_install_putc1(default_putc);
|
sdk_os_install_putc1(default_putc);
|
||||||
if (cksum_magic == 0xffffffff) {
|
if (cksum_magic == 0xffffffff) {
|
||||||
// No checksum required
|
// No checksum required
|
||||||
|
|
|
@ -45,8 +45,8 @@ long _write_r(struct _reent *r, int fd, const char *ptr, int len )
|
||||||
if(ptr[i] == '\r')
|
if(ptr[i] == '\r')
|
||||||
continue;
|
continue;
|
||||||
if(ptr[i] == '\n')
|
if(ptr[i] == '\n')
|
||||||
uart_putc(0, '\r');
|
uart_putc(PRINT_UART, '\r');
|
||||||
uart_putc(0, ptr[i]);
|
uart_putc(PRINT_UART, ptr[i]);
|
||||||
}
|
}
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue