十月 14, 2019
06:46 AM
如题,我在使用CYW20706的SPI 作为Master的时候,发现使用wiced_hal_pspi_tx_data 此API的时候,会出现操作延时的情况。
使用方法,txLen:长度;txBuf 数据地址;
参看Datasheet P16 “Each interface has a 64-byte transmit buffer and a 64-byte receive buffer”,有64 byte的buffer。
但是未看到中断系统
参看 WICED中的API,也未介绍是阻塞式还是非阻塞。
但是在实际使用,比如发送5k的数据会出现耗时明显的情况
已解决! 转到解答。
1 解答
十月 20, 2019
11:21 PM
3 回复数
十月 14, 2019
07:08 PM
当BT/BLE Stack有task要处理的时候,CPU会等到高优先级的处理完之后才会执行发送/接收SPI的指令。
如果要提高SPI速率,在测试的时候可以将所有的trace都关掉。使用API wiced_bt_dev_register_hci_trace( NULL);关掉HCI的tace,并且调用wiced_set_debug_uart(WICED_ROUTE_DEBUG_NONE)。
十月 14, 2019
08:04 PM
HCI UART的优先级会比SPI的高吗??请问BT、BLE、HCI UART、SPI、IIC的优先级是如何排布的?手册中都未标明
十月 20, 2019
11:21 PM
抱歉,没有相关优先级的文档,stack相关事件的优先级高于外设的优先级。HCI UART有很多调试相关的log,关掉之后会减少CPU资源占用。有助于提高传输速度。