06.05 覺得對藍牙夠了解?那LE設備的傳輸數據格式懂麼?不慌,一文解答

藍牙協議明確定義了LE設備的傳輸數據格式,下面以藍牙Core4.1為例來說明BLE設備傳輸的數據格式。從連接層來看,廣播通道和數據通道都遵循下列格式:

覺得對藍牙夠了解?那LE設備的傳輸數據格式懂麼?不慌,一文解答

其中廣播通道的PDU格式為:

覺得對藍牙夠了解?那LE設備的傳輸數據格式懂麼?不慌,一文解答

數據通道的PDU格式為:

覺得對藍牙夠了解?那LE設備的傳輸數據格式懂麼?不慌,一文解答

到此為止大家也許覺得數據通道最大可傳輸的數據長度已經確定為31字節,實不盡然。用過CSR1010芯片的同仁或許知道,基於它基礎上的電視空鼠在傳輸音頻數據時,每次卻最多隻能傳輸20字節,這是為什麼呢?

下圖為一段空鼠音頻數據包,

覺得對藍牙夠了解?那LE設備的傳輸數據格式懂麼?不慌,一文解答

除了要存放MIC的4個字節外,數據段只有27個字節的空間,而這隻到ATT層。ATT層又佔用了4個字節,其中2字節表示長度(或許1字節表長度,1字節他用),兩個字節表示Channel ID。到了L2CAP也就只有23個字節的空間了,其中1字節表示類型或者操作碼,2字節存放ATT Handle。到了HID報表,也就只有20字節了。


分享到:


相關文章: