版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选文库本系列教程将结合 TI 推出的 CC254x SoC 系列,讲解从环境的搭建到蓝牙4.0 协议栈的开发来深入学习蓝牙 4.0 的开发过程。教程共分为六部分,本文为第五部分:第五部分知识点:第二十一节 DHT11 温湿度传感器第二十二节 蓝牙协议栈之从机通讯第二十三节 蓝牙协议栈主从一体之主机通讯第二十四节 OAD 空中升级第二十五节 SBL 串口升级有关 TI 的 CC254x 芯片介绍,可点击下面链接查看:主流蓝牙 BLE控制芯片详解( 1):TI CC2540同系列资料推荐:由浅入深,蓝牙4.0/BLE 协议栈开发攻略大全(1)由浅入深,蓝牙4.0/BLE 协议栈开发攻略大全(2)
2、由浅入深,蓝牙4.0/BLE 协议栈开发攻略大全(3)由浅入深,蓝牙4.0/BLE 协议栈开发攻略大全(4)有关本文的工具下载,大家可以到以下这个地址:朱兆祺 ForARM第二十一节 DHT11 温湿度传感器DHT11简介DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠 性和卓越的长期稳 定性。传感器包括一个电阻式感湿元件和一个NTC测温元件, 并与一个高性能 8 位单片机相 连接。因此该产品具有品质卓越、 超快响应、 抗干扰 能力强、性价比极高等优点。 每个 DHT11 传感器都在极为精确的湿度校验
3、室中进行校准。 校准系数以程序的形式存在 OTP内存中, 传 感器内部在检测型号的处 理过程中要调用这些校准系数。单线制串行接口,使系统集成变 得简易快捷。 超小的体积、 极低的功耗, 使其成为给类应用甚至最为苛刻的应用场合的最佳 选择。产 品为 4 针单排引脚封装,连接方便。技术参数供电电压: 3.35.5V DC输 出: 单总线数字信号测量范围: 湿度 20-90%RH, 温度 050 测量精度: 湿度+-5%RH, 温度 +-2分 辨 率: 湿度 1%RH,温度 1互 换 性: 可完全互换 ,长期稳定性: 0) / Increment index of current result( w
4、ith wraparound )simpleBLEScanIdx+;simpleBLETaskId );显示扫描到的设备if ( simpleBLEScanIdx = simpleBLEScanRes )simpleBLEScanIdx = 0;LCD_WRITE_STRING_VAL(UE“Device ”, simpleBLEScanIdx + 1 ,10, HAL_LCD_LINE_1 ) ;LCD_WRITE_STRIN(G bdAddr2Str ( simpleBLEDevList simpleBLEScanIdx .addr ),HAL_LCD_LINE_2 );if ( keys
5、 & HAL_KEY_RIGHT ) / 右/ Connection updateif ( simpleBLEState = BLE_STATE_CONNECTED ) / 如果连接,则更新连接GAPCentralRole_UpdateLink ( simpleBLEConnHandle ,DEFAULT_UPDATE_MIN_CONN_INTER,VALDEFAULT_UPDATE_MAX_CONN_INTE,RVALDEFAULT_UPDATE_SLAVE_LATE,NCYDEFAULT_UPDATE_CONN_TIMEO)U;Tif ( keys & HAL_KEY_CENTER ) /
6、 中间键uint8 addrType;uint8 *peerAddr;/ Connect or disconnectif ( simpleBLEState = BLE_STATE_IDLE ) / 空闲则连接/ if there is a scan resultif ( simpleBLEScanRes 0 )/ connect to current device in scan resultpeerAddr = simpleBLEDevList simpleBLEScanIdx .addr;addrType = simpleBLEDevList simpleBLEScanIdx .addrT
7、ype; simpleBLEState = BLE_STATE_CONNECTING;GAPCentralRole_EstablishLink ( DEFAULT_LINK_HIGH_DUTY_CYC,LE DEFAULT_LINK_WHITE_LIS,TaddrType , peerAddr ) ;LCD_WRITE_STRIN(G “Connecting ”, HAL_LCD_LINE_1 ) ;LCD_WRITE_STRIN(G bdAddr2Str ( peerAddr ), HAL_LCD_LINE_2 );else if ( simpleBLEState = BLE_STATE_C
8、ONNECTING | /连接则断开连接simpleBLEState = BLE_STATE_CONNECTED)/ disconnectsimpleBLEState = BLE_STATE_DISCONNECTING;gStatus = GAPCentralRole_TerminateLink( simpleBLEConnHandle ) ;LCD_WRITE_STRIN(G “Disconnecting ”, HAL_LCD_LINE_1 ) ;if ( keys & HAL_KEY_DOWN ) / 下/ Start or cancel RSSI pollingif ( simpleBL
9、EState = BLE_STATE_CONNECTED ) / 连接则读取 RSSi 的值if ( ! simpleBLERssi )simpleBLERssi = TRUE;GAPCentralRole_StartRssi ( simpleBLEConnHandle , DEFAULT_RSSI_PERIOD) elsesimpleBLERssi = FALSE;GAPCentralRole_CancelRssi ( simpleBLEConnHandle )HAL_LCD_LINE_1 )LCD_WRITE_STRIN(G “RSSI Cancelled然后因为从机一直处于广播状态, 所
10、以秩序将上一节中的从机程序烧录进开发板即可, 将主机程序烧录到另外一快开发板,通过五向按键来实现和从机的连接和读写功能。( 1) 上电提示从机上电提示:主机上电提示:( 2)根据主机的按键功能,我们按“UP”键,开始搜索周边设备。搜索完成后,可以看到,扫描到了一个设备。(3)接着我们查看扫描到的设备地址,按左键。可以看到扫描到的设备地址为 0x7C669D9F638A。这个地址正是我们的从机地址。( 4)按中间键连接从机,可以看到主机提示连接成功,从机也提示连接成功。(5)接着我们开始读取从机的RSSI 值,按下键。(6)再次按下键,取消 RSSI 值的读取。( 7)对从机的 CHAR1进行读
11、写,再次按上键读取到CHAR1的值为 1。( 8)接着按上键,对 CHAR1写入 0,同时看到从机提示 CHAR1的值被修改为 0。主机写入成功:精选文库连接。53从机提示 CHAR1被改变:上电自动连接上一节中我们通过五向按键实现了主机连接从机的功能, 这一节中们来实现主机上电后 自动搜索连接从机。要实现连接,从机必须处于广播状态,剩下的工作全部由主机完成,扫描、发起连接。主机的状态也有回调函数, 主机启动后, 第一个状态是初始化, 所以我们在初始化完成 时开始扫描,这样开机后主机就会开始扫描周边设备, 接下来我们在扫描完成后对扫描到的设备发起将工程编译下载后通过串口助手观察主机和从机的输出
12、可以发现主机上电后自动的完 成了一系列的操作。第二十四节 OAD 空中升级通过仿真器更新程序或者通过 USB更新固件那都是一般人都可以实现的操作, 但是要想 实现 OAD空中升级,这还是需要一定的技术能力。这一节我就带着大家完善这一能力。OADn air download ,指空中下载模式。当我们的产品发布以后,有时需要对固件进行 升级, OAD是升级方式中的一种。配置 BIM( Boot Image Manger )打开 IAR,打开 BLE-CC254x-1.4.0 下的工程 C: TexasInstrumentsBLE-CC254x-1.4.0ProjectsbleutilBIMcc25
13、4xBIM.eww ,然后编 译,下载到开发板中。配置 Image A打开 OADExample工程,配置工程,添加如下几个宏FEATURE_OAD_BIMHAL_IMAGE_AFEATURE_OADOAD_KEEP_NV_PAGES( 1) 打开 simplePeripheral.c 找到宏定义 DEFAULT_ENABLE_UPDATE_REQU,E将S其T 改为 FLASE。否则会影响 BLEDevice Monitor 对其进行空中升级,到时可以再改回来。( 2) IAR 左侧导航中找到 Profile 文件夹,点击右键添加 oad_target.c 和 oad_target.h 两个
14、文件,二文件位于 C : TexasInstrumentsBLE- CC254x-1.4.0ProjectsbleProfilesOAD 中。( 3) 在 IAR 导航中找到 HALTarget MT254xboard Driver ,右键添加文件 hal_crc.c ,该文件位于 C: TexasInstruments BLE-CC254x-1.4.0ComponentshaltargetMT254xboard 中。精选文库( 4) 在刚才的 simplePeripheral.c 文件中,找到 simplePeripheral_Init ()函数, 在里面添加 OADTarget_AddSe
15、rvice ()函数。(5) 在 simplePeripheral.c的前面,添加引用 OAD的头文件, OAD.h 和 OAD_target.h 。( 6) 点击 Project Option ,或直接按 Alt+F7 ,选择 BuildActions ,在 Post-buildcommand line 中添加:“。 。commoncc2540cc254x_ubl_pp.bat ”“ $PROJ_DIR$”“ rodUBL ”“$PROJ_DIR$CC2540-OAD-ImgAExeOADExample”注意,各双引号之间只有一个空格。注意图中红框标的部分,Image_A 是和之前第 1 步
16、对应的。( 7) 点击 Project Option ,或直接按 Alt+F7 ,选择 Linker ,选择 Config ,Linker Configurationfile 中勾选 Override default ,添加 C: TexasInstrumentsBLE-CC254x-1.4.0Projectsblecommoncc2540cc254x_f256_imgA.xcl 。( 8) 点击 Project Option ,或直接按 Alt+F7 ,选择 Linker ,选择 Extra Output 。(9) Extra Option 添加 Hex文件的输出。(10) 点击 OK,编译
17、下载,如果出现如下错误,是因为我们使用的是IAR8051 8.30版本,如果你使用的是 IAR8.20 版本就没有这问题。( 11) 这个问题是因为使用了虚拟寄存器导致的,我们找到如下文件。6712) 对文件的 115 行进行如下修改,将虚拟寄存器注释掉。13) 编译后,可以看到我们生成的文件14) 我们将 hex 文件叠加到 BIM 后面这样 ImageA 就成功烧录进开发板了。配置 Image B(1) 方法如 Image A ,其它要注意的几个地方:点击 Project Option ,或直接按 Alt+F7 ,选择 C/C+Compiler ,选择 Preprocessor ,将 De
18、fined symbols 中的 HAL_IMAGE_A 改成 B。( 2) 点击 Project Option ,或直接按 Alt+F7 ,选择 Linker ,选择 Config ,将 Linker Configuration file 中的文件改为 B。( 3) 保存后编译,同样的可以看到生成的文件。4) 为了区分 A和 B镜像,我们将最终结果改名。空中升级有了 bin 文件就可以进行空中升级了,打开 BLE Device Monitor (没有安装的需要安 装),打开后软件会自动扫描设备,如图,我们扫描到了开发板。( 2) 连接后,打开 OAD( 3) 点击 file ,选择 Progame(OAD),选择生成的 bin 文件,可以看到我们当前运 行的是 A 固件( 4)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 注册会计师战略中风险管理技术方法的应用选择
- 绿色中式风道德讲堂主题
- 生物科技公司实习心得体会
- 医疗器械信息咨询公司合同付款管理办法
- 麻纺厂物料消耗控制准则
- 2026广东省社会福利服务中心(广东江南医院)编外人员招聘26人备考题库及答案详解(名校卷)
- 2026四川 巴中市属国企市场化招聘聘职业经理人5人备考题库附参考答案详解(培优a卷)
- 2026南方科技大学生物医学工程系诚聘海内外高层次人才备考题库及答案详解(夺冠系列)
- 2026年上半年成都市温江区面向社会考核招聘副高级及以上职称教师备考题库(7人)含答案详解(夺分金卷)
- 2026山东菏泽宋江武校招聘备考题库及答案详解(基础+提升)
- 非遗泥塑传承与创新:传统色彩·现代技艺·实践探索【课件文档】
- 汽车行业无人配送专题报告:无人配送应用前景广阔国内迎来加速期-
- 城管队伍建设考核制度
- 卫生院中层干部任用制度
- 2026年高级经济师宏观经济学实务操作题集
- 前程无忧在线测试题库及答案行测
- 第15课+列强入侵与中国人民的反抗斗争(教学设计)-中职历史(高教版2023基础模块)
- 护理礼仪与沟通:构建和谐医患关系
- 炎症性肠病精准医疗:生物标志物与治疗响应
- HG-T 2521-2022 工业硅溶胶介绍
- 《健康教育学》第五章-健康心理课件
评论
0/150
提交评论