0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于Dialog DA14580主要芯片的智能手环/智能鞋子解决方案

Aztr_Dialog_Sem 来源:lq 2019-01-09 11:08 次阅读

本文是一位工程师朋友撰写的基于Dialog DA14580主要芯片智能手环/智能鞋子解决方案,详细地分享了使用Dialog SmartBond DA14580进行设计的心得和建议,也许可以对您的设计提供一些启发和帮助。

应用领域:智能穿戴方案类型:模块板卡

主要芯片:Dialog DA14580

方案概述1. 产品功能描述

用户可通过蓝牙连接手机,在APP或者微信小程序中查看当日的走路步数、跑步距离、骑行距离、爬楼梯步数、检测体温或者心率。可USB充电、无线充电。 根据实际用途待机时长可在1个星期甚至更长。

2. 产品应用范围

老人防跌、儿童防丢、运动等场景

3. 产品特点优势总结功耗业内最低:如下所示:状态:电流睡眠: 0.07mA待机: 0.8mA

传输数据: 4.8mA

4. 产品实物图片

【DA14580】DA14580是Dialog公司研制的蓝牙单芯片。号称全球功耗最低,是TI CC2541的四分之一,是运动手环等穿戴类电子产品经常使用的芯片。

可是DA14580的开发门槛不低。适合有蓝牙开发经验的团队来开发,不适合学习爱好者。

笔者将对DA14580的系统架构和应用开发框架进行分析,之后再解说怎样进行应用开发。

对于蓝牙单芯片应用开发来说,我们要关注的问题是:蓝牙协议栈方面怎样新增一个GATT profile(服务和特征值定义及操作)、SoC内核方面怎样驱动外围设备、系统应用框架上怎样使用定时器和任务间消息通信等等。DA14580单芯片公布时并非一颗裸片,而是带有开发平台和SDK包,还有经常使用的应用例程(如防丢proximity)。我们要做的就是通过SDK和相关的文档去理解它整个系统架构和应用框架,在这个基础上才去完成以上三个方面的开发。

一、DA14580系统架构

DA14580是基于Cortex M0架构,内置ROM、OTP和RAM

当中ROM固化了大部分协议栈和操作系统(单任务)的代码实现,而OTP一次性编程则是为了减少成本,实现用户的差异化应用需求。当用户通过SPI NORFLASH引导或者直接通过JLINK下载代码到RAM进行调试后,就能够通过SmartSnippets工具下载代码到OTP。量产产品即从OTP开始引导运行。

DA14580集成的是第三方公司RW的蓝牙协议栈IP,范围包含GAT和GAP层及下面。因此我们能够在代码框架文件夹上看到RW开头命名的文件夹和头文件,官方文档涉及到蓝牙协议栈方面大部分都是RW公司出品。

二、DA14580 开发例程文件夹和SDK文件夹结构

DA14580的SDK开发平台使用keil,我们先来看看开发例程的文件夹结构,再来看SDK文件夹结构。前者简单一些。后者由于涉及到第三方IP、ROM等原因,文件夹实在是太多太细了,初接手真的会歇菜。

防丢(proximity,英文是接近的意思)的开发文件夹结构例如以下:

这里须要注意的是,ROM里面的固话代码。包含协议栈和单任务操作系统的相关管理代码也是整个project应用的一部分,仅仅只是没有列到开发文件夹里面。

SDK文件夹架构例如以下:

三、蓝牙profile和应用的角色和分工

从project的代码文件夹结构来看,每一个profile都有一个以profile(如proxr)命名的.c文件,也有一个以profile_task(如proxr_task)命名的.c文件;对应地,每一个应用子任务也有一个app_profile(如app_proxr)的.C文件,和app_profile_task(如app_proxr_task)的.c文件。

一般地:

在操作系统ke内核看来,Profile和profile_task共同完毕一个task任务,当中app_proxr_task的task ID标识是TASK_PROXR。但app_profile和app_profile_task并非一个详细的task任务,在代码文件夹的app文件夹。全部的task,包含app_proxr_task和app_batt_task(电池)、app_sec_task(安全)共同组成一个task。在app.c中完毕任务创建。task的ID标识是TASK_APP。

各个app_profile_task仅仅只是完毕应用的一个子场景功能,如防丢、电池告警等。

app是主动发送消息给profile,以运行对应的蓝牙GATT服务和操作,并接受回调。即app是profile的上层。

Profile任务运行GATT服务/属性的详细创建create、开启服务enable和属性特征的读写等操作,其调用ATT和GAP等底层接口来实现详细功能。

Profile作为接口供给app层调用。app是通过消息通信来完毕接口调用的。

app_profile的代码一般包含主动调用的接口实现。而app_profile_task则是接受消息回调的接口实现。两者的分工是很清晰的。

四、应用开发框架

DA14580的应用开发框架的核心是基于状态机和消息回调。下面分析以防丢proxr为例。

1. 状态机每一个任务都必须明白自己的状态表。比如proxr的状态表是:

状态的初始化和转换是由用户主动切换的。

在某个确定的状态时,内核会在对应的状态响应接口集中遍历全部发给该任务的消息。每一个任务都会在初始化时被创建。比如proxr任务的创建是:

这时,如果有个其它的任务发一个消息给TASK_PROXR。则会在proxr_disabled中查找对应的消息回调接口,并运行回调。

2. 消息回调

接下来看看各个状态的响应接口集,比如PROXR_CONNECTED连接状态时的状态响应接口集例如以下。可见,其会对两个消息进行回调,一个是底层ATT收到对特征值的写操作时运行回调,还有一个应用层主动改写还有一个特征值。在笔者的防丢和计步应用中,前者是实现防丢告警功能。后者是上报计步数据。

3. 任务间通信

消息发出之后,系统即会运行proxr_jibu_update_req_handler回调。

另外。笔者会依据文章的阅读量考虑进一步对DA14580的SDK进行分析。如系统启动过程、服务建立过程以及上面说的。怎样进行应用开发,即蓝牙协议栈方面怎样新增一个GATT profile(服务和特征值定义及操作)、SoC内核方面怎样驱动外围设备、系统应用框架上怎样使用定时器和任务间消息通信等等。

采用Dialog蓝牙智能芯片,小米手环如虎添翼

凭借Dialog DA14580 SmartBond™低能耗SoC拥有的业界顶尖功耗技术,小米手环如虎添翼。

最新发布的小米手环中采用了Dialog 的蓝牙超低功耗SmartBond SoC(片上系统芯片)。

借助Dialog的DA14580,只需给小米手环充电一次,就可满足长达30天的续航时间,这比其最强竞争对手所供的电池能力高出两倍多,为当今的消费者提供了一款拥有最高能效的连接解决方案。

小米公司自2010年推出基于安卓(Android)的MIUI操作系统以来,所设计并开发出的创新型消费电子产品源源不断,其中包括智能手机、智能电视、机顶盒、平板电脑、路由器,还有最新出炉的可穿戴设备。小米手环由小米的下属公司华米科技研发制造。全球竞争对手的运动追踪手环价格较高、续航能力较弱、能效较低,如今最新推出的小米手环极具竞争力,成为替代其竞争对手的不二选择。

Dialog半导体有限公司连接性、汽车与工业事业部资深副总裁兼总经理Sean McGrath表示:“小米将DA14580 SmartBond解决方案融入小米手环的核心单元中,这是我们在中国市场业务的一项至关重要的突破。DA14580可为小米产品带来真正的竞争优势,因为选用Dialog蓝牙SoC的工程师再也无需因为电池容量问题在产品设计上做出妥协:他们能够打造出更加轻薄、更具吸引力的产品,这些产品不仅拥有业界领先的能效,而且仍然满足用户对于性能的期望。因此,消费者可以依靠小米手环来监测他们的运动情况、卡路里摄入量和睡眠模式,同时又避免了频繁充电的烦恼。”

Dialog的SmartBond是一个高度集成的SoC,其易用性和节省成本优势获得了业界认可。比起目前任何其它蓝牙智能解决方案,DA14580所需要的外部组件较少,无需使用微控制器也可实现全面托管型应用。借助通用软件开发包的各种支持,设计人员能够迅速开发出各类前卫应用,使其应用于人机交互设备(HID)、健康与健身可穿戴设备、医疗、近距感测和智能家庭等迅速扩展的市场。凭借世界一流的高能效技术,SmartBond可兼顾产品设计,是打造数十亿电池供电物联网设备的绝好选择。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    453

    文章

    50360

    浏览量

    421627
  • 智能手环
    +关注

    关注

    47

    文章

    792

    浏览量

    72829
  • DA14580
    +关注

    关注

    7

    文章

    13

    浏览量

    24373

原文标题:工程师分享 | 基于Dialog DA14580主要芯片的智能手环/智能鞋子解决方案

文章出处:【微信号:Dialog_Semiconductor,微信公众号:Dialog半导体公司】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    主流蓝牙BLE控制芯片详解(5):Dialog DA14580

    Dialog推出的号称全球功率最低、体积最小的SmartBond DA14580蓝牙智能系统级芯片(SoC),与竞争方案相比,该产品可将搭载
    发表于 09-02 10:58 6w次阅读

    智能手表/环--DA14580资料开源下载地址

    =a1z10.5-c.w4002-9765417143.10.6ELA3B&id=522905240089二、资料下载地址手环DIY开源学习教程:http://pan.baidu.com/s/1eQlUGiI(赠送DA14580蓝牙开发套件资料下载
    发表于 05-24 11:43

    DA14580学习流程

    DA14580学习(第一节)DA14580用来干什么? 1.超长待机的智能手环、手表和其他智能穿戴设备。2.智能鼠标、键盘、遥控器、触控板
    发表于 07-02 13:39

    DA14580学习系列二

    DA14580学习(第二节)--硬件基础一.DA最小系统1.DA14580芯片介绍DA14580是首款突破4mA无线收发电流极限的蓝牙
    发表于 07-02 15:11

    【FireBLE申请】智能手环

    申请理由:项目处于芯片选型阶段,已经测试过nRF51822和DA14580,现在想试试QN9021是否也能满足项目需求项目描述:智能手环项目旨在设计一款集校园支付,校园身份识别,社交,运动等为一体的专为在校学生打造的
    发表于 07-07 10:04

    如何快速低成本搭建 DA14580 软硬件开发平台

    的SmartBond DA14580蓝牙智能系统级芯片(SoC),与竞争方案相比,该产品可将搭载应用的智能型手机配件,或计算机周边商品的电池
    发表于 07-14 14:51

    基于Dialog DA14580超低功耗防丢器解决方案

    方案概述该方案采用Dialog DA14580 超低功耗芯片平台,通过手机APP与蓝牙防丢器建立连接,实现断开报警功能;同时支持双向查找、定
    发表于 12-05 17:41

    Dialog DA14580产品定制开发,需要的朋友联系

    Dialog DA14580产品定制开发,需要的朋友加Q2775737337或电***蔡Dialog DA14580产品定制开发,需要的朋友加Q2775737337或电***蔡
    发表于 07-14 17:51

    基于ADI ADXL362三轴MEMS加速度计的小米智能手环设计方案

    (W25Q80BV数据手册),传感器采用ADI的三轴MEMS加速度传感器ADXL362,蓝牙芯片采用DialogDA14580DA14580数据手册)蓝牙SoC。小米
    发表于 09-29 15:13

    请问DA14580蓝牙透传的代码实现原理是什么?

    和同学想研究一下蓝牙技术,恰逢小米手环用的是DialogDA14580,于是就卖了一个讯联的开发板,可惜店家给的开发教程真是尴尬,加之这个芯片虽然功耗小,性能牛逼,无奈资料太少,我看
    发表于 05-28 01:05

    智能穿戴DA14580开发板套件资料分享

    教程,能够毫无阻力的开发出自己的智能手环智能手表、以及实现一切你想实现的创意。DA14580开发板详情介绍:·IO管脚全部引出·CB印制天线(高效率天线,通讯可达10M)·三种供电方式,Jlink
    发表于 08-28 03:47

    <转> 主流蓝牙BLE控制芯片详解(5):Dialog DA14580 精选资料分享

    [导读]Dialog推出的号称全球功率最低、体积最小的SmartBond DA14580蓝牙智能系统级芯片(SoC),与竞争方案相比,该产品
    发表于 07-27 06:49

    小米智能手环bong+II完整设计方案

    小米智能手环bong+II完整设计方案,小米手环基于DA14580和ADXL362
    发表于 12-24 18:25 458次下载

    基于蓝牙DA14580的可穿戴智能手环设计方法

    基于蓝牙DA14580的可穿戴手环设计的全套方案方案,宝库内核、蓝牙协议栈、通讯教程、裸机教程、模数转换、串口、spi等等,非常全面,希望给各位帮助。
    发表于 09-04 09:03 159次下载
    基于蓝牙<b class='flag-5'>DA14580</b>的可穿戴<b class='flag-5'>智能手环</b>设计方法

    DA14580 datasheet

    DA14580 datasheet
    发表于 10-17 09:48 127次下载
    <b class='flag-5'>DA14580</b> datasheet