小熊派ws63 uart1无法接收数据

Viewed 21

一、描述你遇到的问题

uart1可以正常发送数据但是无法接收数据。将 GPIO16(uart1 rx)初始化为 PIN_MODE1(UART1_RX_MODE)后,将逻辑分析仪接到 usb 转串口模块的 tx 引脚,同时将 usb 转串口模块的 TX 引脚接到 GPIO16 并对其发送数据,从逻辑分析仪看 GPIO16 引脚始终为高电平,但是断开 usb转串口模块与 ws63 gpio16 引脚的连接,确认串口模块是可以正常发送数据的。使用官方的 uart数据传输例程,将 uart bus id 设置为2可以正常接收 Hello BearPi 数据,但是使用 uart1 则无法正常接收数据。

二、你具体做的所有步骤结果截图

代码:

逻辑分析仪抓取波形:

三、当前开发板状态全景照片

四、开发板串口所有日志

以下为使用串口模块对 ws63 uart1 rx 测试的串口日志:
« boot.
Flash Init Fail! ret = 0x80001341
verify_public_rootkey secure verify disable!
verify_params_key_area secure verify disable!
verify_params_area_info secure verify disable!
verify_image_key_area secure verify disable!
verify_image_code_info secure verify disable!
SSB Uart Init Succ!
SSB Flash Init Succ!
verify_image_key_area secure verify disable!
verify_image_code_info secure verify disable!
Flashboot Uart Init Succ!
Flashboot Malloc Init Succ!
Flash Init Succ!
No need to fix SR!
io level work in hw mode, level[chip]:0x33
flashboot version : 1.10.102
[UPG] upgrade init OK!
No need to upgrade...
flash_encrypt disable.
verify_image_key_area secure verify disable!
verify_image_code_info secure verify disable!
APP|dbg uart init ok.
[UPG] upgrade init OK!
APP|init_sle_mac failed!!!
APP|init_dev_addr, mac_addr:0xc8,0x 0,0x73,0xf1,0x**,0x**,
xo_trim_temp_comp val:0 0
los_at_plt_cmd_register EXCUTE
APP|thread[11] func null
cpu 0 entering scheduler
APP|btc open
app_init_task:75: in
task:58: uart1 rx set mode, ret = 0x00000000
[RADAR_LOG] alg ctrl read from nv [1][2][0][0][1][1][20]
device_main_init: 0!
===hal_initialize_phy===226===
device_module_init:: succ!
cali_set_cali_mask:old[0x0] -> new[0x1fa2]

fe_rf_initialize
cali_offline_cali_entry enter
cali_set_cali_done_flag:old[0x0] -> new[0x1]

rf cali OK. time cost:23, ret:0
xo update temp:3,diff:0,xo:0x3083c

以下为使用官方例程 uart数据传输测试的 uart1 测试,官方例程中加入了一行打印 CONFIG_UART_BUS_ID 值的日志,其它没有更改,实测无法接收数据。
« boot.
Flash Init Fail! ret = 0x80001341
verify_public_rootkey secure verify disable!
verify_params_key_area secure verify disable!
verify_params_area_info secure verify disable!
verify_image_key_area secure verify disable!
verify_image_code_info secure verify disable!
SSB Uart Init Succ!
SSB Flash Init Succ!
verify_image_key_area secure verify disable!
verify_image_code_info secure verify disable!
Flashboot Uart Init Succ!
Flashboot Malloc Init Succ!
Flash Init Succ!
No need to fix SR!
io level work in hw mode, level[chip]:0x33
flashboot version : 1.10.102
[UPG] upgrade init OK!
No need to upgrade...
flash_encrypt disable.
verify_image_key_area secure verify disable!
verify_image_code_info secure verify disable!
APP|dbg uart init ok.
[UPG] upgrade init OK!
APP|init_sle_mac failed!!!
APP|init_dev_addr, mac_addr:0x59,0x 0,0x73,0xc8,0x**,0x**,
xo_trim_temp_comp val:0 0
los_at_plt_cmd_register EXCUTE
APP|thread[11] func null
cpu 0 entering scheduler
APP|btc open
uart_task:103: CONFIG_UART_BUS_ID = 1
[RADAR_LOG] alg ctrl read from nv [1][2][0][0][1][1][20]
device_main_init: 0!
===hal_initialize_phy===226===
device_module_init:: succ!
cali_set_cali_mask:old[0x0] -> new[0x1fa2]

fe_rf_initialize
cali_offline_cali_entry enter
cali_set_cali_done_flag:old[0x0] -> new[0x1]

rf cali OK. time cost:23, ret:0
uart1 poll mode send start!, len = 512
uart1 poll mode send back succ!
uart1 poll mode receive succ!, g_app_uart_rx_buff =
uart1 poll mode send start!, len = 512
uart1 poll mode send back succ!
uart1 poll mode receive succ!, g_app_uart_rx_buff =

以下为使用官方例程 uart数据传输测试的 uart2 测试,官方例程中加入了一行打印 CONFIG_UART_BUS_ID 值的日志,其它没有更改,实测可以接收数据。
boot.
Flash Init Fail! ret = 0x80001341
verify_public_rootkey secure verify disable!
verify_params_key_area secure verify disable!
verify_params_area_info secure verify disable!
verify_image_key_area secure verify disable!
verify_image_code_info secure verify disable!
SSB Uart Init Succ!
SSB Flash Init Succ!
verify_image_key_area secure verify disable!
verify_image_code_info secure verify disable!
Flashboot Uart Init Succ!
Flashboot Malloc Init Succ!
Flash Init Succ!
No need to fix SR!
io level work in hw mode, level[chip]:0x33
flashboot version : 1.10.102
[UPG] upgrade init OK!
No need to upgrade...
flash_encrypt disable.
verify_image_key_area secure verify disable!
verify_image_code_info secure verify disable!
APP|dbg uart init ok.
[UPG] upgrade init OK!
APP|init_sle_mac failed!!!
APP|init_dev_addr, mac_addr:0x a,0x 0,0x73,0xbc,0x**,0x**,
xo_trim_temp_comp val:0 0
los_at_plt_cmd_register EXCUTE
APP|thread[11] func null
cpu 0 entering scheduler
APP|btc open
uart_task:103: CONFIG_UART_BUS_ID = 2
[RADAR_LOG] alg ctrl read from nv [1][2][0][0][1][1][20]
device_main_init: 0!
===hal_initialize_phy===226===
device_module_init:: succ!
cali_set_cali_mask:old[0x0] -> new[0x1fa2]

fe_rf_initialize
cali_offline_cali_entry enter
cali_set_cali_done_flag:old[0x0] -> new[0x1]

rf cali OK. time cost:22, ret:0
uart2 poll mode send start!, len = 512
uart2 poll mode send back succ!
uart2 poll mode receive succ!, g_app_uart_rx_buff = Hello BearPi
uart2 poll mode send start!, len = 512
uart2 poll mode send back succ!
uart2 poll mode receive succ!, g_app_uart_rx_buff = Hello BearPi

1 Answers

上面的图片我的标注好像标反了,前面应该是断开串口模块和ws63 uart1 rx的之后抓取的串口模块tx的波形,后面是连接串口模块和ws63 uart1 rx之后串口模块tx的波形