當(dāng)前位置:首頁(yè) > 公眾號(hào)精選 > 嵌入式大雜燴
[導(dǎo)讀]開(kāi)源地址:https://github.com/ART-Badge前言關(guān)注RT-Thread的同學(xué)肯定知道,RT-Thread為了向眾多開(kāi)發(fā)者展示RT-Thread的最新開(kāi)發(fā)和生態(tài)建設(shè)成果,每年都會(huì)舉辦一場(chǎng)開(kāi)發(fā)者大會(huì)(簡(jiǎn)稱:RDC—RT-ThreadDeveloperConfer...



開(kāi)源地址:https://github.com/ART-Badge


前言


關(guān)注 RT-Thread 的同學(xué)肯定知道,RT-Thread為了向眾多開(kāi)發(fā)者展示RT-Thread的最新開(kāi)發(fā)和生態(tài)建設(shè)成果,每年都會(huì)舉辦一場(chǎng)開(kāi)發(fā)者大會(huì)(簡(jiǎn)稱:RDC — RT-Thread Developer Conference),在 2020 年度的開(kāi)發(fā)者大會(huì)上,我們 RT-Thread 給到現(xiàn)場(chǎng)的每個(gè)開(kāi)發(fā)者們都發(fā)放了一個(gè)電子胸牌,胸牌的名稱起名為 ART-Bagde。



另外,特此感謝在本次電子胸牌制作過(guò)程中REALTEK、創(chuàng)凌對(duì)我們的支持!



ART-Badge是什么?


首先附上兩張渲染圖↓



ART-Badge正面圖片


ART-Badge反面圖片

再來(lái)看視頻↓




功能設(shè)計(jì)篇

首先讓我們看一下,今年的電子胸牌比較去年款有哪些升級(jí),增加哪些功能?


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


  • 微信小程序使用藍(lán)牙推送開(kāi)發(fā)者信息(姓名、公司職稱)


  • 軟件 RTC 同步時(shí)間


  • 首界面展示時(shí)間 手機(jī)推送的信息


  • 兩個(gè)app demo:藍(lán)牙傳輸助手 使用說(shuō)明


今年,我們?cè)谌ツ甑男嘏频幕A(chǔ)上進(jìn)行了大幅度的升級(jí)與優(yōu)化,廢話不多說(shuō),下面直接貼一張功能設(shè)計(jì)和擬用技術(shù)路線的導(dǎo)圖↓



思維導(dǎo)圖


開(kāi)發(fā)流程圖概括一下,ART-Badge V2.0主要有以下新特點(diǎn):


  • 自主設(shè)計(jì)的電路硬件,PSRAM 擴(kuò)大為8M,電池?fù)Q用300mAh鋰電池,可反復(fù)充電。


  • 使用體積更小巧的 SC7A20 替換原有的 mpu6050。


  • 添加了ADC采樣電路,可以采集電池電量信息。


  • 整體界面煥然一新,默認(rèn)采用暗黑色主題背景。


  • 使用最新發(fā)布的 湃心OS V4.1開(kāi)發(fā),開(kāi)發(fā)工具全新升級(jí)為基于VSCode插件模式的Persim Studio。


  • 增加游戲、音樂(lè)播放器、電子相冊(cè)…等等豐富小程序 app。


  • 小程序全新升級(jí):藍(lán)牙推送用戶 、城市天氣信息。


  • 支持使用最新湃心OS小程序進(jìn)行二次開(kāi)發(fā)。


結(jié)構(gòu)設(shè)計(jì)篇


由于去年的電子胸牌并沒(méi)有外殼,胸牌背面的電子元器件都是裸露在空氣中的,拿到手上會(huì)有明顯的突出感,同時(shí)暴漏在空氣中容易對(duì)電容觸摸芯片產(chǎn)生干擾,影響用戶使用效果,再加上今年的鋰電池電路進(jìn)行了調(diào)整:將紐扣電池更新為了鋰電池,不使用膠帶粘在背后無(wú)法固定。


綜上,今年的電子胸牌決定使用亞克力作為 ART-Badge V2.0 的外殼設(shè)計(jì)。


選擇亞克力作為外殼結(jié)構(gòu)有幾個(gè)原因:


  • 其一是該方案的“視覺(jué)極客感”最強(qiáng),由于直接使用透明蓋板將PCB電路展現(xiàn)出來(lái),顏值方面化繁為簡(jiǎn),符合審美哲學(xué)


  • 其次是如果使用封閉式設(shè)計(jì)的話按鍵誤觸,鋰電池的插拔就變成需要考量的因素了,而夾層式的開(kāi)放設(shè)計(jì)則在這方面完全無(wú)需擔(dān)心


  • 最后一個(gè)原因是,高性價(jià)比




亞克力外殼成品

電路設(shè)計(jì)篇


RTL8762D 作為主控芯片,MCU 主頻為90MHZ,運(yùn)行 RT-Thread 操作系統(tǒng),并整體使用睿賽德科技的湃心穿戴OS,外擴(kuò)了8M的PSRAM,以及16M 的片外 flash 。


ART-Badge 主要使用到串口(用于調(diào)試和控制臺(tái)輸出),GPIO(用于驅(qū)動(dòng)按鍵、蜂鳴器和ADC采集),I2C接口(用于和板載的 SC7A20 三軸加速度傳感器通信)。


底板的PCB采用2層Layout。板載的IC主要有:


  • 半反半透明屏幕,分辨率 240 X 240,顏色格式 RGB565,在關(guān)閉背光的情況下依舊能有出色的可視度。


  • APS6404L-3SQR,PSRAM(動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器),用于動(dòng)態(tài)加載圖形資源,8M的容量十分富裕。


  • ch340e,USB轉(zhuǎn)串口芯片,也很常用,通過(guò) USB 線把 ART-Badge 連接電腦之后,就可以直接用串口控制臺(tái)使用shell了,后面的二次開(kāi)發(fā)也是使用到了串口工具 UDB 下載。


  • BS814A-1,電容觸摸 IC,用于 ART-Badge 正面的按鍵交互。


  • SC7A20,士蘭微出的一款高精度12bit數(shù)字三軸加速度傳感器芯片,內(nèi)置功能豐富,功耗低,體積小,測(cè)量精確。


補(bǔ)充一點(diǎn):為了兼顧美觀,正面是看不到走線的,(所以這是單面板?不)全部藏在屏幕背面了



PCB投板回來(lái)之后就是焊接技能施展階段了,主要用到的工具有:熱風(fēng)槍、烙鐵、鑷子、錫漿、吸錫帶、助焊劑等。與直插元件不同,貼片的器件由于焊盤太小(大部分的是 0402 阻容),器件分布太密集,手工焊接采用的方法主要是風(fēng)槍吹焊。




pcb焊接
進(jìn)行焊接的第一步是制作鋼網(wǎng),也就是器件焊盤的掩模,這個(gè)在設(shè)計(jì)好PCB之后把相關(guān)的加工文件發(fā)給廠家就可以進(jìn)行激光切割制作了。





上一步貼片完成之后就需要用風(fēng)槍進(jìn)行吹焊回流了。吹焊溫度大概控制在250-300度,風(fēng)槍的吹嘴去掉以增大風(fēng)口便于均勻加熱。




軟件實(shí)現(xiàn)篇

硬件搞定之后就開(kāi)始移植軟件啦,ART-Badge 運(yùn)行的是基于 RT-Thread 的湃心穿戴 OS。



這里科普一下 湃心穿戴OS,它是一個(gè)超輕量級(jí)、已量產(chǎn)的產(chǎn)品級(jí)穿戴操作系統(tǒng)平臺(tái)。中間層的模塊包括 GUI 引擎、通訊組件、NFC、存儲(chǔ)類工具等。中上層是由 JavaScript 搭建的應(yīng)用程序框架,最上層則是輕量級(jí)系列眾多的小程序。




湃心OS
湃心穿戴 OS 有幾大特色:


  • GUI采用可用于MCU上的第四代柿餅 GUI,具備類 Android 界面交互,支持多點(diǎn)觸摸,效果更加炫酷,同時(shí)支持矢量圖形庫(kù),具備增強(qiáng)的圖形處理能力。


  • 小程序的開(kāi)發(fā)模式。采用類微信小程序開(kāi)發(fā)模式,上手極快,應(yīng)用輕量級(jí),支持應(yīng)用商店,極速安裝體驗(yàn),支持多國(guó)語(yǔ)音。


  • 提供 MVVM 應(yīng)用開(kāi)發(fā)框架。應(yīng)用的界面開(kāi)發(fā)和業(yè)務(wù)邏輯是互相解耦的,貼合前端工程師習(xí)慣。


  • 跨平臺(tái)能力。軟件一次開(kāi)發(fā),即可在任一硬件 CPU、MCU 及 MPU 平臺(tái)上運(yùn)行;


  • 湃心穿戴 OS 還具備一些創(chuàng)新性的組件,如消息管理引擎(EMQ)、數(shù)據(jù)管理組件(DCM)、KVDB 及 TSDB 數(shù)據(jù)庫(kù)、DIY 開(kāi)發(fā)套件。


軟件主要分為以下幾個(gè)模塊:


  • GUI模塊(Graphical User Interface,圖形用戶界面),用于人與設(shè)備進(jìn)行交互


  • BLE模塊(Bluetooh Low Energy,語(yǔ)音合成),通過(guò)廣播方式與小程序連接接受信息


  • AUDIO(音頻播放解碼模塊),用于無(wú)源蜂鳴器對(duì)音樂(lè)的解碼、播放


  • EMQ(Enhance Message Queue,發(fā)布訂閱式的消息隊(duì)列組件),能夠打通 C 到 JS ,JS 到 JS ,C 到 C 的消息鏈路,能夠很方便的將消息發(fā)到任意一個(gè)地方


  • DCM(Data Cache Management,數(shù)據(jù)管理組件),主要用于 JS 與 C 之前數(shù)據(jù)的交互,統(tǒng)一管理和控制系統(tǒng)中的數(shù)據(jù)統(tǒng),確保各模塊間數(shù)據(jù)傳輸?shù)男阅?/span>


GUI 最上層的開(kāi)發(fā)使用 JS 語(yǔ)法,這個(gè)就比較有意思了,使用過(guò) Android Studio 的小伙伴們可能很熟悉,安卓UI的應(yīng)用開(kāi)發(fā)是可以進(jìn)行拖拽式的,這里和柿餅UI的設(shè)計(jì)器十分相似,Persim Studio 和 Android Studio 一樣也是通過(guò) .xml 的方式對(duì)界面進(jìn)行管理。所以熟悉或者有過(guò)安卓開(kāi)發(fā)的小伙伴會(huì)有莫名的親切感。



湃新os設(shè)計(jì)器BLE 使用的是 RealTek  自帶的藍(lán)牙協(xié)議棧,通過(guò) BSAL 抽象層進(jìn)行管理,BSAL (Bluetooth Stack Abstract Layer)軟件包是由 RT-Thread 針對(duì)不同 藍(lán)牙協(xié)議棧接口實(shí)現(xiàn)的,目前支持的協(xié)議棧有:nimble,realtek 等協(xié)議棧。



Audio (音頻)設(shè)備是嵌入式系統(tǒng)中非常重要的一個(gè)組成部分,負(fù)責(zé)音頻數(shù)據(jù)的采樣和輸出。Audio 設(shè)備通常由數(shù)據(jù)總線接口、控制總線接口、音頻編解碼器(Codec)、揚(yáng)聲器和麥克風(fēng)等組成。




嵌入式音頻系統(tǒng)組成RT-Thread Audio 設(shè)備驅(qū)動(dòng)框架是 Audio 框架的底層部分,主要負(fù)責(zé)原生音頻數(shù)據(jù)的采集和輸出、音頻流的控制、音頻設(shè)備的管理、音量調(diào)節(jié)以及不同硬件和 Codec 的抽象等。在本系統(tǒng)中就將蜂鳴器設(shè)備注冊(cè)到了 Audio 框架中,從而實(shí)現(xiàn)對(duì)蜂鳴器的開(kāi)、關(guān)、音樂(lè)的解碼、播放功能。


EMQ 消息隊(duì)列具有以下功能:


  • 支持一發(fā)多收。一個(gè)生產(chǎn)者生產(chǎn)消息可被多個(gè)消費(fèi)者使用


  • 支持多個(gè)消息綁定。一個(gè)消費(fèi)者可以綁定多個(gè)不同的通道,接收不同生產(chǎn)者發(fā)送的消息。


  • 發(fā)布消息系統(tǒng)開(kāi)銷小,效率高。


  • 不同模塊間低耦合。


  • 超輕量級(jí)的整數(shù)類型消息


  • 全鏈路可達(dá)




EMQ 運(yùn)作原理DCM 數(shù)據(jù)緩存管理框架主要功能特性:


  • 支持 Value Change 模型


  • 支持存取任意類型數(shù)據(jù)


  • 支持多實(shí)例功能,解耦不同模塊間數(shù)據(jù)處理;


  • 全鏈路打通,JS 與 C 均能訪問(wèn)同一內(nèi)存池


  • 支持訂閱發(fā)布模型,可用于消息推送和通知


  • 支持?jǐn)?shù)據(jù)持久化保存功能;




dcm_framework
在本項(xiàng)目中,像一些參數(shù)需要數(shù)據(jù)持久化存儲(chǔ)、js 端對(duì) adc 采集電量數(shù)據(jù)的監(jiān)聽(tīng)、獲取屏幕亮度,小程序推送的信息等等都是用到了 dcm 組件。





本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉