ZHCUCF6 October 2024 AFE4960 , CC2674R10 , TMP119
圖 2-10 展示了 CC2674R10 生物傳感演示的流程圖。該程序基于 TI 實(shí)時(shí)操作系統(tǒng) (TIRTOS7)。因此,微控制器維護(hù)多個(gè)任務(wù)并根據(jù)優(yōu)先級(jí)執(zhí)行任務(wù)。
生物傳感演示程序中設(shè)置了三項(xiàng)任務(wù)。BLE_stack_task 是低功耗藍(lán)牙設(shè)置、連接、發(fā)送和接收數(shù)據(jù)的基本函數(shù)。
Project_zero_task
是通用訪問配置文件 (GAP)、通用屬性配置文件 (GATT) 和 GATT 規(guī)范補(bǔ)充 (GSS)
配置的自定義任務(wù)。此外,該任務(wù)中會(huì)初始化溫度傳感器和加速器。計(jì)時(shí)器設(shè)置為每 1s 讀取一次這兩個(gè)傳感器并發(fā)送通知。
AFE4960_read_task
用于初始化器件并等待來自 ADC_RDY 引腳和 GPIO2 引腳的中斷。一旦發(fā)生 FIFO_RDY 中斷,CC2674R10 就會(huì)通過 SPI 從 FIFO
中讀取所有數(shù)據(jù)。為避免 ECG 數(shù)據(jù)不匹配,數(shù)據(jù)長度等于 REG_WM_FIFO 寄存器設(shè)置的 FIFO 長度。SPI 讀取完成后,BLE
傳輸任務(wù)被喚醒,以通過通知發(fā)送 ECG 數(shù)據(jù)。
在此設(shè)計(jì)中,F(xiàn)IFO 長度設(shè)置為 108,即在 2 個(gè) FIFO_RDY 中斷期間讀取 432 個(gè)字節(jié)。由于 BLE5.3 的最大傳輸單元為 255 字節(jié),因此會(huì)調(diào)用兩次通知 API 來將所有數(shù)據(jù)發(fā)送出去。發(fā)送數(shù)據(jù)后,AFE4960_read_task 會(huì)被阻止,等待來自 FIFO_RDY 的下一個(gè)中斷。