是通過增加事件還是判斷通過接收數據?要修改藍牙協(xié)議棧嗎?
我看事件和GAP都有對數據的處理,他們是什么關系?用哪一種?
標題中提到了通過主機發(fā)送數據進行控制IO。首先需要判斷的從機有沒有接收到主機發(fā)送的數據。收到數據之后再,進行IO的控制不論是對收到的數據進行判斷或者是加事件都按照客戶的邏輯。
主機發(fā)數據接口:
從機收數據接口:
現在的想法是開啟藍牙主機的串口1,串口接收數據,主機根據數據發(fā)送相應指令到從機,從機接收數據判斷格式執(zhí)行相應操作,能否實現?我看在BLE_uart資料說串口是透傳模式,那數據從串口到藍牙的哪里去了?能不能把串口數據再發(fā)給從機,主機起中轉作用?
主機能否解析從串口接收的數據?
有沒有主機使用串口的例程,我移植從機串口例程把文件復制過來但是顯示ble_uart_service.h不存在
主機可以通過串口接收的數據發(fā)到從機。串口接收到對應的數據之后根據上述提供的截圖的位置進行數據的發(fā)送,串口部分可以參考我們的串口例程。目前暫時沒有central+uart的例程,有需要可以自行移植。
主循環(huán)里的app_uart_process()一直在查詢uart_rx_flag,uart_rx_flag為1時會調用tmos_start_task(Peripheral_TaskID, UART_TO_BLE_SEND_EVT, 2);任務將串口接收到的數據通過藍牙發(fā)送出去,uart_rx_flag在串口中斷中置1。
串口接收的數據會放到app_uart_rx_fifo,