当前位置: 首页 > wzjs >正文

网站后台怎么做钟楼做网站

网站后台怎么做,钟楼做网站,怎么申请网址怎么用,成都公司网站设计哪家专业0 前言 AIO-1126-JD4采用了正基科技推出的一款集成WiFi、蓝牙功能的模组AP6236,支持高速(HS)功能的蓝牙 4.0,集成了 1.5 类功率放大器(PA),并支持低功耗蓝牙(BLE)。提到…

0 前言

AIO-1126-JD4采用了正基科技推出的一款集成WiFi、蓝牙功能的模组AP6236,支持高速(HS)功能的蓝牙 4.0,集成了 1.5 类功率放大器(PA),并支持低功耗蓝牙(BLE)。提到正基就不得不提下博通。博通和正基是芯片技术与模块制造方面的合作关系,正基科技是中国台湾的公司,在无线通信模块领域有一定的市场份额,博通则是全球领先的有线和无线通信半导体公司。正基把包含博通关键IP的核心芯片和自家的射频部分等封装在一起,即SIP(System In Package)。AP6236正是这种采用了博通BCM43430B0方案的SIP模组。

一般SDK里面都会带上博通或正基提供的后台应用。前端的话,可以是自己封装的应用或服务,直接调用博通的接口和后台交互,跑自己的协议栈,当然也可以跑开源的bluez协议栈,bluez的IPC机制是D-BUS,一样是后台前端的模式。

1 Deviceio库

在AIO-1126-JD4上, 瑞芯微专门开发了一个中间层Deviceio库,可以支持正基博通,海华博通,还有bluez。Deviceio库屏蔽了底层复杂的WiFiBT操作比如wpa_supplicant/bluez/bsa等,向上提供友好的应用开发接口,比直接拿着bluez开发起来方便得多,见仁见智。

1.1 Deviceio库编译

SDK里面Deviceio库源码路径在external/deviceio_release,严格按照下面顺序编译。

make rkwifibt-dirclean && make rkwifibt-rebuild
make broadcom_bsa-dirclean && make broadcom_bsa-rebuild
make deviceio_release-dirclean && make deviceio_release

如果直接编译deviceio_release编不过,需要对Deviceio库源码的CMakeLists.txt进行修改,修改如下:

external/deviceio/CMakeLists.txt

cmake_minimum_required(VERSION 2.8.0 FATAL_ERROR)#PROJECT (deviceio_test)message(${PROJECT_SOURCE_DIR})
message(${PROJECT_BINARY_DIR})set(deviceio_SOURCE_DIR ${PROJECT_SOURCE_DIR})add_definitions("-Wall -g")add_subdirectory("DeviceIO")
add_subdirectory("test")

external/deviceio/test/CMakeLists.txt

cmake_minimum_required(VERSION 2.8.0 FATAL_ERROR)set(SRC_FILESDeviceIOTest.cppbt_test.cppbt_test_1s2.cpprk_ble_app.crk_wifi_test.c
)if(BLUEZ)
add_definitions(-DBLUEZ_USE)
elseif(BSA)
add_definitions(-DBSA_USE)
endif()add_definitions("-fpermissive")link_directories(${deviceio_SOURCE_DIR}/DeviceIO/rv1126_rv1109/lib32/broadcom)add_executable(deviceio_test ${SRC_FILES})
target_include_directories(deviceio_test PUBLIC"${deviceio_SOURCE_DIR}/DeviceIO/include" )
target_link_libraries(deviceio_test pthread DeviceIo asound)install(TARGETS deviceio_test DESTINATION bin)

external/deviceio/DeviceIO/CMakeLists.txt

cmake_minimum_required(VERSION 3.1 FATAL_ERROR)
project(DeviceIo)# file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/include/DeviceIo DESTINATION ${CMAKE_INSTALL_STAGING}/usr/include/)
# file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/rv1126_rv1109/lib32/broadcom/libDeviceIo.so DESTINATION ${CMAKE_INSTALL_STAGING}/usr/lib/)
install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/DeviceIo DESTINATION ${CMAKE_INSTALL_PREFIX}/include)
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/rv1126_rv1109/lib32/broadcom/libDeviceIo.so DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)

在SDK根目录下再次执行

make deviceio_release-dirclean && make deviceio_release

编译成功后会自动安装到host编译链路径和打包target路径

执行./build.sh生成新固件,就可将带有Deviceio库的新固件烧写到设备中。

2 蓝牙服务程序开发

 2.1 Deviceio库链接到应用

cmake工程配置

set(TARGET_SYSROOT "you_sdk_path/rv1126_rv1109_linux_release_20211022/buildroot/output/firefly_rv1126_rv1109/host/arm-buildroot-linux-gnueabihf/sysroot")
set(CMAKE_SYSROOT "${TARGET_SYSROOT}")
target_link_libraries(${PROJECT_NAME}DeviceIo
)

2.2 创建蓝牙服务程序

蓝牙名:ROCKCHIP_BLUE_DOG

创建一个包含三个特征的蓝牙服务,可用如下方法。

#define BLE_UUID_SERVICE	"9FA480E0-4967-4542-9390-D343DC5D04AE"
#define BLE_UUID_REMOTE_CHAR	"AF0BADB1-5B99-43CD-917A-A77BC549E3CC"
#define BLE_UUID_SEND		"dfd4416e-1810-47f7-8248-eb8be3dc47f9"
#define BLE_UUID_RECV		"9884d812-1810-4a24-94d3-b2c11a851fac"
/** The Bluetooth basic service is turned on and the function* must be called before using the Bluetooth function.*/
#if 1
void *bt_test_bluetooth_init_thread(void *)
{printf("%s: BT BLUETOOTH INIT\n", __func__);memset(&bt_content, 0, sizeof(RkBtContent));bt_content.bt_name = "ROCKCHIP_BLUE_DOG";//bt_content.bt_addr = "11:22:33:44:55:66";bt_content.ble_content.ble_name = "ROCKCHIP_ROBOT BLE";#if 0//user-defined ble address test, if not set, the default random addressbt_content.ble_content.ble_addr[0] = 0x11;bt_content.ble_content.ble_addr[1] = 0x22;bt_content.ble_content.ble_addr[2] = 0x33;bt_content.ble_content.ble_addr[3] = 0x44;bt_content.ble_content.ble_addr[4] = 0x55;bt_content.ble_content.ble_addr[5] = 0x66;//Clear two most significant bitsbt_content.ble_content.ble_addr[5] &= 0x3f;//Set second most significant bit, Private resolvablebt_content.ble_content.ble_addr[5] |= 0x40;printf("ble_addr: %02hhx:%02hhx:%02hhx:%02hhx:%02hhx:%02hhx\n",bt_content.ble_content.ble_addr[5], bt_content.ble_content.ble_addr[4],bt_content.ble_content.ble_addr[3], bt_content.ble_content.ble_addr[2],bt_content.ble_content.ble_addr[1], bt_content.ble_content.ble_addr[0]);
#endifbt_content.ble_content.server_uuid.uuid = BLE_UUID_SERVICE;bt_content.ble_content.server_uuid.len = UUID_128;bt_content.ble_content.chr_uuid[0].uuid = BLE_UUID_REMOTE_CHAR;bt_content.ble_content.chr_uuid[0].len = UUID_128;bt_content.ble_content.chr_uuid[1].uuid = BLE_UUID_SEND;bt_content.ble_content.chr_uuid[1].len = UUID_128;bt_content.ble_content.chr_uuid[2].uuid = BLE_UUID_RECV;bt_content.ble_content.chr_uuid[2].len = UUID_128;bt_content.ble_content.chr_cnt = 3;bt_content.ble_content.advDataType = BLE_ADVDATA_TYPE_SYSTEM;bt_content.ble_content.cb_ble_recv_fun = bt_test_ble_recv_data_callback;bt_content.ble_content.cb_ble_request_data = bt_test_ble_request_data_callback;rk_bt_register_state_callback(bt_test_state_cb);rk_bt_register_bond_callback(bt_test_bond_state_cb);rk_bt_register_name_change_callback(bt_test_name_change_cb);rk_bt_init(&bt_content);return NULL;
}
#else

cb_ble_recv_fun:BLE数据接收回调。

cb_ble_request_data:BLE请求数据回调。

rk_bt_register_state_callback:注册蓝牙状态回调,蓝牙的打开、关闭等状态。

rk_bt_register_bond_callback:注册蓝牙绑定回调,蓝牙绑定状态通过这个回调上送。

rk_bt_register_name_change_callback:注册蓝牙名称改变回调。

3 数据收发测试

2.1 启动服务程序

启动程序后蓝牙服务被创建。

在手机上可以搜索到蓝牙名ROCKCHIP_BLUE_DOG

2.2 连接蓝牙服务测试

这里借助一个APP“蓝牙调试助手”,搜索到蓝牙ROCKCHIP_BLUE_DOG点进去后就会自动连接上,连接上可以看到我们上面所创建的服务UUID、特征UUID。

2.3 蓝牙数据收发测试

随便选择一个可写的特征UUID,比如BLE_UUID_REMOTE_CHAR对应的UUID,将数据类型调为ASCII,在输入框中填入“Hello body!”,然后点击“Write”。

这时,我们的服务程序就可以在接收回调里收到来自手机的消息内容。


文章转载自:

http://K3pOcq42.zcwtL.cn
http://4nz1W2mB.zcwtL.cn
http://3NKKDs3Z.zcwtL.cn
http://9Gur6m2S.zcwtL.cn
http://P6QAWEJL.zcwtL.cn
http://voCuK7UR.zcwtL.cn
http://sP7YYqE4.zcwtL.cn
http://7DP50QsR.zcwtL.cn
http://kh3ddQ1F.zcwtL.cn
http://UEcVn3Wb.zcwtL.cn
http://vH5UXEWr.zcwtL.cn
http://imJFRbNr.zcwtL.cn
http://Xkz21GpP.zcwtL.cn
http://X80Xbo6U.zcwtL.cn
http://EVV2QZ6c.zcwtL.cn
http://dgaglris.zcwtL.cn
http://iaZMTFJ8.zcwtL.cn
http://EnclIqHX.zcwtL.cn
http://wP80T7MX.zcwtL.cn
http://cxiTQg91.zcwtL.cn
http://2OvBbN1H.zcwtL.cn
http://KATmuM6P.zcwtL.cn
http://3vUCQawO.zcwtL.cn
http://5og0E58p.zcwtL.cn
http://iPyakEft.zcwtL.cn
http://bJV39r48.zcwtL.cn
http://18nCeOx1.zcwtL.cn
http://hy2gOq51.zcwtL.cn
http://fTbVG5cM.zcwtL.cn
http://SNNzjCIK.zcwtL.cn
http://www.dtcms.com/wzjs/684126.html

相关文章:

  • 做众筹网站有哪些提供网站建设出售
  • 做网站全是别人的链接网站设计论文答辩问题及答案
  • 营销推广型网站公司台州网页设计
  • 湘潭城乡建设发展集团网站什么是网络营销战略
  • 咸阳网站建设seoseo 推广怎么做
  • 南川网站建设公司网络传奇游戏
  • 做网站怎么导入源码个人主页静态网站
  • 建设积分兑换商城网站网站管理是什么
  • 郑州网站建设创业做设计必看十大网站
  • 网站维保方法久久建筑网图集下载
  • 网站制作 南宁怎么用上线了做网站
  • 自己网站做优化的有权利卖么旅游网站名字
  • 网站建设招标要求微商城小程序定制开发
  • 做第三方库个人网站外贸网站赚钱
  • 网站信息组织优化网站建设背景介绍
  • 政务网站建设索引厦门专业网站设计
  • 用cn作网站行么霸州建设局网站
  • 深圳图派做的网站后台加什么最新长沙招聘信息
  • 充值网站分销站怎么做聊城做网站公司信息
  • 电商网站系统建设wordpress问卷模板下载
  • 做网站在国外发图片seo关键词排名优化如何
  • 网站空间需要多大做 网站 要专线吗
  • 快速搭建网站框架新手攻略网站建设公司要多少钱
  • 蓝韵官方网站广州网站设计工作室
  • 做视频网站一般多少钱网站建设 文档下载
  • 安卓优化大师老版本下载萤火虫网站建设优化
  • 深圳高端网站建设收费如何在网盘上做网站
  • 狮山镇建设局网站wordpress如何静态化
  • 专业网站制作公司排行金点子
  • 如何制作单页网站重庆毛笔制作