BLE蓝牙4.0学习笔记.docx
文本预览下载声明
蓝牙4.0?BLE?center与peripheral建立连接绑定过程2蓝牙4.0 BLE peripheral 广播设置7蓝牙4.0 BLE 数据传输(一)11蓝牙4.0 BLE 数据传输(二)12蓝牙4.0 BLE 数据传输(三)16蓝牙4.0 BLE 数据传输(四)19蓝牙4.0 BLE 数据传输(五)23蓝牙4.0 BLE 程序设计相关问题解答(转载)25蓝牙4.0 BLE SimpleBLEPeripheral_添加新CHAR值及UUID33蓝牙4.0 BLE peripheral 广播设置学习笔记(转载)45蓝牙4.0 BLE key处理过程看任务、事件、消息机制50CC254x 内部存储结构 FLASH53蓝牙4.0 BLE FLASH 操作58蓝牙4.0?BLE?center与peripheral建立连接绑定过程蓝牙主机从机建立连接绑定过程center与simplePeripheral建立连接过程center首先进行osal_init_system()初始化各个任务,SimpleBLECentral_Init-osal_set_event( simpleBLETaskId, START_DEVICE_EVT );进入SimpleBLECentral_ProcessEvent()调用 VOID GAPCentralRole_StartDevice( (gapCentralRoleCB_t *) simpleBLERoleCB );//当初始化完成,会发送GAP_DEVICE_INIT_DONE_EVENT由于注册了simpleBLERoleCB函数,因此发送的event由simpleBLERoleCB函数接收static void simpleBLECentralEventCB( gapCentralRoleEvent_t *pEvent )此时pEvent-gap.opcode =GAP_DEVICE_INIT_DONE_EVENT,相应信息存储于pEvent中typedef union{ gapEventHdr_t gap; //! GAP_MSG_EVENT and status. gapDeviceInitDoneEvent_t initDone; //! GAP initialization done. gapDeviceInfoEvent_t deviceInfo; //! Discovery device information event structure. gapDevDiscEvent_t discCmpl; //! Discovery complete event structure. gapEstLinkReqEvent_t linkCmpl; //! Link complete event structure. gapLinkUpdateEvent_t linkUpdate; //! Link update event structure. gapTerminateLinkEvent_t linkTerminate; //! Link terminated event structure.} gapCentralRoleEvent_t;联合体,只有deviceInfo里面的数据是正确的typedef struct{ osal_event_hdr_t hdr; //! GAP_MSG_EVENT and status uint8 opcode; //! GAP_DEVICE_INIT_DONE_EVENT uint8 devAddr[B_ADDR_LEN]; //! Devices BD_ADDR uint16 dataPktLen; //! HC_LE_Data_Packet_Length uint8 numDataPkts; //! HC_Total_Num_LE_Data_Packets} gapDeviceInitDoneEvent_t;能获得如设备地址等信息设备初始化完成通过串口发送1触发设备发现进行设备扫描GAP_DEVICE_INFO_EVENT 0x0D //! Sent during the Device Discovery Proc
显示全部