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

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

3天内不再提示

ART-Badge V2.0开发记录,极客感十足!

物联网星球 2021-12-02 16:30 次阅读
pYYBAGGocMyALVkEAABhWRpvO8o239.jpg


开源地址:https://github.com/ART-Badge

前言

关注 RT-Thread 的同学肯定知道,RT-Thread为了向众多开发者展示RT-Thread的最新开发和生态建设成果,每年都会举办一场开发者大会(简称:RDC — RT-Thread Developer Conference),在 2020 年度的开发者大会上,我们 RT-Thread 给到现场的每个开发者们都发放了一个电子胸牌,胸牌的名称起名为 ART-Bagde。另外,特此感谢在电子胸牌制作过程中REALTEK、创凌对我们的支持!

ART-Badge是什么?

首先附上两张渲染图↓

poYBAGGocQmAPXmYAABIhnUK54Y792.jpgART-Badge正面图片

pYYBAGGocS6AFabBAABHqPG4ntI621.jpgART-Badge反面图片


功能设计篇首先让我们看一下,今年的电子胸牌比较去年款有哪些升级,增加哪些功能?

先看一下 2020 款 ART-Badge 的主要功能:

  • 微信小程序使用蓝牙推送开发者信息(姓名、公司职称)
  • 软件 RTC 同步时间
  • 首界面展示时间+手机推送的信息
  • 两个app demo:蓝牙传输助手+使用说明


今年,我们在去年的胸牌的基础上进行了大幅度的升级与优化,废话不多说,下面直接贴一张功能设计和拟用技术路线的导图↓

pYYBAGGoc4uAC-OHAABtZxFy8EA924.jpg

思维导图


pYYBAGGoc6mARtuqAACNPOQ6k4U206.jpg

开发流程图


概括一下,ART-Badge v2.0主要有以下新特点:

  • 自主设计的电路硬件,psram 扩大为8M,电池换用300mAh锂电池,可反复充电。
  • 使用体积更小巧的 SC7A20 替换原有的 mpu6050。
  • 添加了ADC采样电路,可以采集电池电量信息。
  • 整体界面焕然一新,默认采用暗黑色主题背景。
  • 使用最新发布的 湃心OS V4.1开发,开发工具全新升级为基于VSCode插件模式的Persim Studio。
  • 增加游戏、音乐播放器、电子相册…等等丰富小程序 app。
  • 小程序全新升级:蓝牙推送用户 、城市天气信息。
  • 支持使用最新湃心OS小程序进行二次开发。

结构设计篇

poYBAGGodbKAIlPeAACcyT_zXs8558.jpg


由于去年的电子胸牌并没有外壳,胸牌背面的电子元器件都是裸露在空气中的,拿到手上会有明显的突出感,同时暴漏在空气中容易对电容触摸芯片产生干扰,影响用户使用效果,再加上今年的锂电池电路进行了调整:将纽扣电池更新为了锂电池,不使用胶带粘在背后无法固定。

综上,今年的电子胸牌决定使用亚克力作为 ART-Badge V2.0 的外壳设计。

选择亚克力作为外壳结构有几个原因:

  • 其一是该方案的“视觉极客感”最强,由于直接使用透明盖板将PCB电路展现出来,颜值方面化繁为简,符合审美哲学
  • 其次是如果使用封闭式设计的话按键误触,锂电池的插拔就变成需要考量的因素了,而夹层式的开放设计则在这方面完全无需担心
  • 最后一个原因是,高性价比

poYBAGGode2APCOGAABz5Yibk1w410.jpg亚克力外壳成品

电路设计

poYBAGGodgiAfDPNAADA5imGTZA304.jpg

RTL8762D 作为主控芯片,MCU 主频为90MHZ,运行 RT-Thread 操作系统,并整体使用睿赛德科技的湃心穿戴OS,外扩了8M的PSRAM,以及16M 的片外 flash 。

ART-Badge 主要使用到串口(用于调试和控制台输出),GPIO(用于驱动按键、蜂鸣器和ADC采集),I2C接口(用于和板载的 SC7A20 三轴加速度传感器通信)。

底板的PCB采用2层Layout。板载的IC主要有:

  • 半反半透明屏幕,分辨率 240 X 240,颜色格式 RGB565,在关闭背光的情况下依旧能有出色的可视度。
  • APS6404L-3SQR,PSRAM(动态随机存取存储器),用于动态加载图形资源,8M的容量十分富裕。
  • ch340e,USB转串口芯片,也很常用,通过 USB 线把 ART-Badge 连接电脑之后,就可以直接用串口控制台使用shell了,后面的二次开发也是使用到了串口工具 UDB 下载
  • BS814A-1,电容触摸 IC,用于 ART-Badge 正面的按键交互。
  • SC7A20,士兰微出的一款高精度12bit数字三轴加速度传感器芯片,内置功能丰富,功耗低,体积小,测量精确。

补充一点:为了兼顾美观,正面是看不到走线的,(所以这是单面板?不)全部藏在屏幕背面了


PCB投板回来之后就是焊接技能施展阶段了,主要用到的工具有:热风枪、烙铁、镊子、锡浆、吸锡带、助焊剂等。与直插元件不同,贴片的器件由于焊盘太小(大部分的是 0402 阻容),器件分布太密集,手工焊接采用的方法主要是风枪吹焊。

pYYBAGGodk-ADwaTAABkjjJ-y-I933.jpgpcb焊接

进行焊接的第一步是制作钢网,也就是器件焊盘的掩模,这个在设计好PCB之后把相关的加工文件发给厂家就可以进行激光切割制作了。

poYBAGGodnSANb8CAABWf249Z7A919.jpg


上一步贴片完成之后就需要用风枪进行吹焊回流了。吹焊温度大概控制在250-300度,风枪的吹嘴去掉以增大风口便于均匀加热。

pYYBAGGodo6AQ62hAAB6AL4cMLU064.jpg


软件实现篇

硬件搞定之后就开始移植软件啦,ART-Badge 运行的是基于 RT-Thread 的湃心穿戴 OS。

这里科普一下 湃心穿戴OS,它是一个超轻量级、已量产的产品级穿戴操作系统平台。中间层的模块包括 GUI 引擎、通讯组件、NFC、存储类工具等。中上层是由 JavaScript 搭建的应用程序框架,最上层则是轻量级系列众多的小程序。

pYYBAGGodrKAD0WzAAB53qu1OHg433.jpg

湃心OS

湃心穿戴 OS 有几大特色:

  • GUI采用可用于MCU上的第四代柿饼 GUI,具备类 Android 界面交互,支持多点触摸,效果更加炫酷,同时支持矢量图形库,具备增强的图形处理能力。
  • 小程序的开发模式。采用类微信小程序开发模式,上手极快,应用轻量级,支持应用商店,极速安装体验,支持多国语音。
  • 提供 MVVM 应用开发框架。应用的界面开发和业务逻辑是互相解耦的,贴合前端工程师习惯。
  • 跨平台能力。软件一次开发,即可在任一硬件 CPU、MCU 及 MPU 平台上运行;
  • 湃心穿戴 OS 还具备一些创新性的组件,如消息管理引擎(EMQ)、数据管理组件(DCM)、KVDB 及 TSDB 数据库、DIY 开发套件。

软件主要分为以下几个模块:

  • GUI模块(Graphical User InteRFace,图形用户界面),用于人与设备进行交互
  • BLE模块(Bluetooh Low Energy,语音合成),通过广播方式与小程序连接接受信息
  • audio(音频播放解码模块),用于无源蜂鸣器对音乐的解码、播放
  • EMQ(Enhance Message Queue,发布订阅式的消息队列组件),能够打通 C 到 JS ,JS 到 JS ,C 到 C 的消息链路,能够很方便的将消息发到任意一个地方
  • DCM(Data Cache Management,数据管理组件),主要用于 JS 与 C 之前数据的交互,统一管理和控制系统中的数据统,确保各模块间数据传输的性能

    GUI 最上层的开发使用 JS 语法,这个就比较有意思了,使用过 Android Studio 的小伙伴们可能很熟悉,安卓UI的应用开发是可以进行拖拽式的,这里和柿饼UI的设计器十分相似,Persim Studio 和 Android Studio 一样也是通过 .xml 的方式对界面进行管理。所以熟悉或者有过安卓开发的小伙伴会有莫名的亲切感。
pYYBAGGodv6AAmbmAABrEfrCOfA941.jpg湃新os设计器

BLE 使用的是 RealTek自带的蓝牙协议栈,通过 BSAL 抽象层进行管理,BSAL (Bluetooth Stack Abstract Layer)软件包是由 RT-Thread 针对不同 蓝牙协议栈接口实现的,目前支持的协议栈有:nimble,realtek 等协议栈。

Audio (音频)设备是嵌入式系统中非常重要的一个组成部分,负责音频数据的采样和输出。Audio 设备通常由数据总线接口、控制总线接口、音频编解码器(Codec)、扬声器和麦克风等组成。

poYBAGGodxmAd_lLAABD_qv0AUI435.jpg嵌入式音频系统组成


RT-Thread Audio 设备驱动框架是 Audio 框架的底层部分,主要负责原生音频数据的采集和输出、音频流的控制、音频设备的管理、音量调节以及不同硬件和 Codec 的抽象等。在本系统中就将蜂鸣器设备注册到了 Audio 框架中,从而实现对蜂鸣器的开、关、音乐的解码、播放功能。

EMQ 消息队列具有以下功能:

  • 支持一发多收。一个生产者生产消息可被多个消费者使用
  • 支持多个消息绑定。一个消费者可以绑定多个不同的通道,接收不同生产者发送的消息。
  • 发布消息系统开销小,效率高。
  • 不同模块间低耦合
  • 超轻量级的整数类型消息
  • 全链路可达
pYYBAGGod2mAMTZsAACVYv1gxGU487.jpgEMQ 运作原理


DCM 数据缓存管理框架主要功能特性:

  • 支持 Value Change 模型
  • 支持存取任意类型数据
  • 支持多实例功能,解耦不同模块间数据处理;
  • 全链路打通,JS 与 C 均能访问同一内存池
  • 支持订阅发布模型,可用于消息推送和通知
  • 支持数据持久化保存功能
poYBAGGod5mAPZ7BAACWhbOSWyA872.jpgdcm_framework


在本项目中,像一些参数需要数据持久化存储、js 端对 adc 采集电量数据的监听、获取屏幕亮度,小程序推送的信息等等都是用到了 dcm 组件。

结束语
看到这里你是不是对今年的电子胸牌产生了更多的期待呢?那么告诉大家一个好消息,到场参会人人都可以领取电子胸牌哦~

不论风云变幻,RT-Thread通过不断迭代和生态的完善,与开发者共成长。Beyond.RDC 2021,我们在深圳等你!

快来报名参会领取属于你的电子胸牌 V2.0 吧!
https://yingsheng.elecfans.com/share/live/LGpT8swkvwXdnxzFHAHziQ

pYYBAGGod-SAabo8AABjl89Sjq4572.jpg


邀请你参加 2021 RT-Thread 开发者大会的七大理由
1、刷新RT-Thread最新技术动态和产业服务能力
2、聆听行业大咖分享,洞察产业趋势
4、丰富的技术和产品展示,前沿技术发展和应用
5、绝佳的实践机会:从MCU、AIOT、MPU、RISC-V、安全总有一个应用场景满足你
6、现场揭晓开发者专属纪念胸牌升级和新玩法
7、互动区体验掌握技术带来的魅力

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

    关注

    31

    文章

    1146

    浏览量

    38851
  • 开发者大会
    +关注

    关注

    0

    文章

    285

    浏览量

    10109
收藏 人收藏

    评论

    相关推荐

    HC6800-ES V2.0单片机开发板学习指南

    电子发烧友网站提供《HC6800-ES V2.0单片机开发板学习指南.doc》资料免费下载
    发表于 01-07 09:48 5次下载

    LDPC编码器解码器产品简介(v2.0

    电子发烧友网站提供《LDPC编码器解码器产品简介(v2.0).pdf》资料免费下载
    发表于 09-13 15:21 2次下载
    LDPC编码器解码器产品简介(<b class='flag-5'>v2.0</b>)

    科技十足

    电路DIY电子技术
    学习电子知识
    发布于 :2023年09月05日 22:00:56

    求助,求NuEdu-SDK-NUC240 V2.0的电路原理图,只找到1.0的

    如题,寻找开发套件NuEdu-SDK-NUC240 V2.0的原理图。
    发表于 08-24 06:48

    RealView Developer Suite 2.0版入门指南

    ·RealView Developer Suite组件的主要功能摘要·RealView Developer Suite v2.0和ADS v1.2之间的差异摘要·RealView Developer Suite新手用户的术语表。
    发表于 08-23 06:00

    求助,请问nu-link-me v2.0如何开启虚拟串口功能?

    使用NUC472 NuTiny开发板,板子上是nu-link-me v2.0。请问如何配置,开启nu-link-me 的虚拟串口功能? 有串口丝印,有跳线。
    发表于 08-22 07:20

    可组装的模块化开源掌机GameShell,组装起了万千的童年

    ,还需要你自己动手将它组装起来。 不同于乐高或者高达的拼装,GameShell的拼装没有复杂的拼接技巧以及严格的组装规则,拼装的说明书也分简洁,且附带了为DIY提供的个性化开源3D打印模型文件
    发表于 08-14 09:46

    科大讯飞星火认知大模型V2.0将于8月15日发布

    星火大模型将在8 月 15 日迎来重大版本升级。 科大讯飞已经正式官宣,讯飞星火认知大模型 V2.0 将在 8 月 15 日 14:00 发布。
    的头像 发表于 08-11 21:42 1534次阅读
    科大讯飞星火认知大模型<b class='flag-5'>V2.0</b>将于8月15日发布

    HarmonyOS马拉松2023:谁将问鼎决赛之巅?一起预测冠军,赢取文化衫!

    HarmonyOS马拉松活动,采用开放式命题的方式,旨在鼓励各位开发者以他们喜欢的方式,去做他们想做的事情,尽情挥洒创意,和HarmonyOS一起碰撞思想的火花。】 松获奖团队
    发表于 07-28 17:50

    Development Board Kit S128(DK-S128) 用户手册 v2.0

    Development Board Kit S128 (DK-S128) 用户手册 v2.0
    发表于 07-06 18:35 0次下载
    Development Board Kit S128(DK-S128) 用户手册 <b class='flag-5'>v2.0</b>

    HarmonyOS 马拉松2023 正式启动,诚邀们用键盘码出无限可能!

    2023年6月15日, HarmonyOS马拉松2023开赛!期待各位开发朋友一起,探索移动应用和服务的更多可能性! Harmon
    发表于 06-19 09:41

    床头灯终于完成了,科技十足

    床头灯
    YS YYDS
    发布于 :2023年06月01日 21:27:34

    WINCC科技十足的界面风格 #新知创作人#硬声创作季

    plc工业控制
    或许
    发布于 :2023年05月31日 09:58:49

    【米尔MYD-JX8MMA7开发板-ARM+FPGA架构试用体验】十一、QT-HMI V2.0系统

    【MYD-JX8MMA7】 十二、QT-HMI V2.0系统的研究与使用前言:个人在之前接触米尔科技的开发板较少,最近的两年时间内,开始接触米尔科技的linux开发板。所以一开始看到QT-HMI
    发表于 05-23 09:34

    如何对WeMos D1 mini ESP8266 (V2.0) 进行编程?

    您好,第一次购买 ESP8266。如何对 WeMos D1 mini ESP8266 (V2.0) 进行编程?从哪里开始?我想连接 Arduino MEGA 2560 以收集数据并通过 wifi 发送它们...谢谢
    发表于 05-06 07:42