給 TI BLE 新增自己UUID

2021-06-26 13:22:21 字數 3421 閱讀 1477

給 ti ble 新增自己uuid

個人覺得這裡的uuid就像usb報告的裡面的id作用一樣,乙個usb的裝置可以根據id讀寫不同資料長度的資料塊,藍芽也如此通過特性的uuid來識別讀寫不同長度的資料塊!

可以參考demo的給 的 ******profile_char1 的樣式

我這裡使用 char5 因為在demo中char5 沒有配置成我想要的,我就配置為 16byte的資料長度的可讀寫!

******gattprofile.h 檔案

1、

// profile parameters

#define ******profile_char1 0 // rw uint8 - profile characteristic 1 value

#define ******profile_char2 1 // rw uint8 - profile characteristic 2 value

#define ******profile_char3 2 // rw uint8 - profile characteristic 3 value

#define ******profile_char4 3 // rw uint8 - profile characteristic 4 value

#define ******profile_char5 4 // rw uint8 - profile characteristic 4 valuet

// key pressed uuid

#define ******profile_char1_uuid 0xfff1

#define ******profile_char2_uuid 0xfff2

#define ******profile_char3_uuid 0xfff3

#define ******profile_char4_uuid 0xfff4

#define ******profile_char5_uuid 0xfff5

// length of characteristic 5 in bytes

#define ******profile_char5_len 16 //資料長度

******gattprofile.c檔案

// characteristic 5 uuid: 0xfff5

const uint8 ******profilechar5uuid[att_bt_uuid_size] =

;// ****** profile characteristic 5 properties

static uint8 ******profilechar5props = gatt_prop_read | gatt_prop_write ;

// characteristic 16 value

static uint8 ******profilechar5[******profile_char5_len] = ;

// ****** profile characteristic 5 user description

static uint8 ******profilechar5userdesp[17] = "characteristic 5\0";

......

// characteristic 5 declaration

,gatt_permit_read ,

0,&******profilechar5props

},// characteristic value 5

,gatt_permit_read | gatt_permit_write,

0, ******profilechar5

},// characteristic 5 user description

,gatt_permit_read,

0, ******profilechar5userdesp

},}

bstatus_t ******profile_setparameter( uint8 param, uint8 len, void *value )

else

break;

....

}

bstatus_t ******profile_getparameter( uint8 param, void *value )

static uint8 ******profile_readattrcb( uint16 connhandle, gattattribute_t *pattr, 

uint8 *pvalue, uint8 *plen, uint16 offset, uint8 maxlen )

static bstatus_t ******profile_writeattrcb( uint16 connhandle, gattattribute_t *pattr,

uint8 *pvalue, uint8 len, uint16 offset )

}else

//write the value

if ( status == success )

break;

...}

// ******bleperipheral.c

void ******bleperipheral_init( uint8 task_id )

static void ******profilechangecb( uint8 paramid )
實驗結果:

使用cc2540 dongle 作為 central 開啟btool完成連線,

利用uuid通訊,讀寫資料

central傳送資料:

串列埠輸出

液晶屏的輸出:

給 TI BLE 新增自己UUID

syd8801是一款低功耗高效能藍芽低功耗soc,整合了高效能2.4ghz射頻收發機 32位arm cortex m0處理器 128kb flash儲存器 以及豐富的數字介面。syd8801片上整合了balun無需阻抗匹配網路 高效率dcdc降壓轉換器,適合用於可穿戴 物聯網裝置等。具體可諮詢 給 ...

TI BLE 新增自己UUID

可以參考demo的給 的 profile char1 的樣式 我這裡使用 char5 因為在demo中char5 沒有配置成我想要的,我就配置為 16byte的資料長度的可讀寫!gattprofile.h 檔案 1 profile parameters define profile char1 0 ...

給自己的軟體新增後門

軟體彩蛋我想大家都應該聽說過。經典的比如在excel得某個單元隔裡面ooxx就可以獲得乙個賽車遊戲之類。這是一種軟體彩蛋,純屬娛樂。但是更多的 彩蛋 被用作軟體後門。比如我們提供給客戶乙個軟體,通常是看不到某些除錯用的視窗和工具的 當我們被要求給客戶提供現場技術支援的時候,我們往往希望通過某種隱秘的...