diff --git a/bsp/beaglebone/applications/application.c b/bsp/beaglebone/applications/application.c index 99c2991df722e947803261226778b7b249491339..f34821e748694fd1f751af4cec188a0cd5dfff1a 100644 --- a/bsp/beaglebone/applications/application.c +++ b/bsp/beaglebone/applications/application.c @@ -16,6 +16,10 @@ #include #include +#ifdef RT_USING_GDB +#include +#endif + int rt_application_init() { /* do component initialization */ @@ -23,6 +27,10 @@ int rt_application_init() #ifdef RT_USING_NEWLIB libc_system_init(RT_CONSOLE_DEVICE_NAME); #endif +#ifdef RT_USING_GDB + gdb_set_device("uart4"); + gdb_start(); +#endif return 0; } diff --git a/bsp/beaglebone/drivers/serial.c b/bsp/beaglebone/drivers/serial.c index 8dcd3891238a3ca8f1f98d51dcf80337d1c29597..ee657a0d8f84857306f80dd60bbe2fbd0db059f4 100644 --- a/bsp/beaglebone/drivers/serial.c +++ b/bsp/beaglebone/drivers/serial.c @@ -80,6 +80,11 @@ static rt_err_t am33xx_configure(struct rt_serial_device *serial, struct serial_ UART_DLL_REG(base) = 26; UART_DLH_REG(base) = 0; } + else if (cfg->baud_rate == BAUD_RATE_9600) + { + UART_DLL_REG(base) = 0x38; + UART_DLH_REG(base) = 1; + } else { NOT_IMPLEMENTED(); @@ -439,7 +444,7 @@ int rt_hw_serial_init(void) #endif #ifdef RT_USING_UART4 - config.baud_rate = BAUD_RATE_115200; + config.baud_rate = BAUD_RATE_9600; config.bit_order = BIT_ORDER_LSB; config.data_bits = DATA_BITS_8; config.parity = PARITY_NONE; @@ -450,14 +455,14 @@ int rt_hw_serial_init(void) serial4.ops = &am33xx_uart_ops; serial4.config = config; /* enable RX interrupt */ - UART_IER_REG(uart4.base) = 0x01; + UART_IER_REG(uart4.base) = 0x00; /* install ISR */ rt_hw_interrupt_install(uart4.irq, am33xx_uart_isr, &serial4, "uart4"); rt_hw_interrupt_control(uart4.irq, 0, 0); rt_hw_interrupt_mask(uart4.irq); /* register UART4 device */ rt_hw_serial_register(&serial4, "uart4", - RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX, + RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_STREAM, &uart4); #endif diff --git a/bsp/beaglebone/rtconfig.h b/bsp/beaglebone/rtconfig.h index 15326d74cffd58ab02ff2a54cb6f583fc8b86fa9..018b2862f1feb4e8e316ae9a343ebe0a362ec817 100644 --- a/bsp/beaglebone/rtconfig.h +++ b/bsp/beaglebone/rtconfig.h @@ -2,6 +2,12 @@ #ifndef __RTTHREAD_CFG_H__ #define __RTTHREAD_CFG_H__ +//
+//#define RT_USING_GDB +//#define RT_GDB_DEBUG +#define RT_GDB_ICACHE +//
+ // // diff --git a/bsp/beaglebone/rtconfig.py b/bsp/beaglebone/rtconfig.py index 3c7f228d86e61995d059f24f52dfbf2575e8da72..a5561f54d30f7588c5c4692c3ae21981a04be52b 100644 --- a/bsp/beaglebone/rtconfig.py +++ b/bsp/beaglebone/rtconfig.py @@ -23,7 +23,7 @@ elif CROSS_TOOL == 'iar': if os.getenv('RTT_EXEC_PATH'): EXEC_PATH = os.getenv('RTT_EXEC_PATH') -BUILD = 'release' +BUILD = 'debug' if PLATFORM == 'gcc': # toolchains