本项目为一款蓝牙跳蛋的设计,主控芯片为BL602,通过PWM控制震动马达的转速实现不同的震动强度变化,通过蓝牙连接设备,APP下发蓝牙指令实现设备的控制。
项目地址:
https://github.com/SmartArduino/Doiting_BL/tree/master/examples/dolphin
蓝牙初始化:
void do_ble_init(void){ // Initialize BLE controller LOGI(TAG, "do_ble_init "); ble_controller_init(configMAX_PRIORITIES - 1); //Initialize BLE Host stack hci_driver_init(); bt_enable(bt_ready_cb); bt_set_name("LVS-Lush122-XT"); bt_gatt_service_register((struct bt_gatt_service *)&dis); notify_attrs = &ble_attrs[1]; bt_conn_cb_register(&conn_callbacks); ble_start_advertise(); }
蓝牙接收到的数据处理:
//蓝牙处理函数 static void ble_reve_cb(struct bt_conn *conn, const char *buf, u16_t len){ char cmd[30] = ""; char data[15] = ""; char ret_str[20] = "OK"; //LOGI(TAG, "ble_reve_buf: %s", buf); //do_ble_notify(conn, ret_str, strlen(ret_str)); char *dp = strchr(buf,';'); if(dp == NULL){ return; }else{ *dp = '