我正在使用da1458x_dsps 5.150.2版
我想通过UART发送收到的数据。在SPS_DEVICE代码中,UART_RX_CALLBACK()用于从UART接收数据。
如果从Commix通过UART接收数据,则UART_RX_CALLBACK函数将调用将数据撰写到缓冲区的USER_PERIPH_PUSH()。在user_periph_push函数中,我使用user_ble_push在UART中显示它,但我没有得到收到的值。
静态void user_periph_push(uint8_t ** wrdata,uint16_t write_amount)
{
bool send_flow_off = false;
//将项目写入缓冲区
user_buffer_cfm_write(&periph_to_ble_buffer,write_amount);
if(user_buffer_write_check(&periph_to_ble_buffer,wrdata,rx_callback_size)!= rx_callback_size)
{
assert_warning(0);
}
user_ble_push((uint8_t *)wrdata,10);
send_flow_off = user_check_buffer_almost_full(&periph_to_ble_buffer);
if(send_flow_off)
{
uart_sps_flow_off(true);
}
}
设备:
嗨prasanth,
我想你想有一些你打字到终端的东西的回声,我无法理解你粘贴意图的代码(参数中值10的目的是什么?user_ble_push()),但是为了有一些回声,您可以在user_ble_push()下面的代码:
uint8_t * test_p;
在条件Assert_warning(0)以下;
test_p = * wrdata;
user_ble_push( - test_p,write_amount);
谢谢mt_dialog.
嗨对话框
感谢你的回复。