色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

聚豐項目 > 【作品模板】基于RT-Thread的時光空間立方

【作品模板】基于RT-Thread的時光空間立方

基于麻雀一號核心板 RW052,即博通的 WIFI 藍牙一體的芯片 BK7252,我制作了一款桌面小工具:時光空間立方。 它可以實現: 1、微信小程序可以通過藍牙配置小立方的參數; 2、晃動立方可以觸發亮屏、亮燈; 3、立方可以通過藍牙配網,連接 WIFI; 4、屏幕上可以顯示:日期時間、實時天氣、名言警句,或者是模仿搖 骰子產生隨機點數; 5、立方內部有呼吸燈和彩虹燈的效果。作為一款桌面小工具,它既可以提示必要的信息,如時間、天氣,又可 以趣味互動,如搖骰子、隨機顯示名言警句,集信息提示與娛樂一體。 外觀則是完美的正方體,每個面在未啟動時就像一面鏡子,啟動后則可 以看到一個無限五彩斑斕的內部空間。放置于辦公桌面,既是一款優雅的裝飾品,又是一款具有實用價值的小巧工具。

從前有座_山 從前有座_山

分享
0 喜歡這個項目
團隊介紹

從前有座_山 從前有座_山

團隊成員

從前有座_山 服務小達人

分享
項目簡介
基于麻雀一號核心板 RW052,即博通的 WIFI 藍牙一體的芯片 BK7252,我制作了一款桌面小工具:時光空間立方。 它可以實現: 1、微信小程序可以通過藍牙配置小立方的參數; 2、晃動立方可以觸發亮屏、亮燈; 3、立方可以通過藍牙配網,連接 WIFI; 4、屏幕上可以顯示:日期時間、實時天氣、名言警句,或者是模仿搖 骰子產生隨機點數; 5、立方內部有呼吸燈和彩虹燈的效果。作為一款桌面小工具,它既可以提示必要的信息,如時間、天氣,又可 以趣味互動,如搖骰子、隨機顯示名言警句,集信息提示與娛樂一體。 外觀則是完美的正方體,每個面在未啟動時就像一面鏡子,啟動后則可 以看到一個無限五彩斑斕的內部空間。放置于辦公桌面,既是一款優雅的裝飾品,又是一款具有實用價值的小巧工具。
硬件說明

RT-Thread使用情況概述:

整個方案涉及的技術棧有:硬件選型,PCB 設計,RT-Thread 程序, 3D 建模打印,服務器端程序,API 接口對接,微信小程序編寫等等。通過這個作品,鍛煉了我實現產品的能力,讓我對產品設計的不同方面 都加深了理解。

內核部分:使用了線程、信號量、互斥量、定時器 

組件部分:使用了虛擬文件系統、FinSH、netdev 網卡 

軟件包:

fal/EasyFlash/littlefs/netutils/cJSON/mbedtls/rt_ota 等 

設備驅動:

GPIO/SPI/RTC/WLAN/BLE 等


核心模塊RW052是官方的一個基于 BK7252 芯片的WIFI 藍牙一體的 模組,引出了非常多的引腳,使用起來非常方便,可以直接通過 USB 供電。驅動屏幕使用了模擬 SPI,LCD 是使用了麻雀一號上屏幕廠家的同系列不 同尺寸的屏幕。WS2812 則是使用了硬件 SPI,通過 MOSI 按照時序進行輸出規定協 議的波形,從而驅動 WS2812。

1.jpg

軟件說明

軟件框架:

軟件方案自我感覺比較簡單,中間使用了部分信號量和互斥量保證線程 同步,整體是按照不同功能模塊進行了文件拆分,方便功能劃分和解耦合。 

2.jpg

程序運行邏輯圖:

3.jpg


我這個作品里軟件模塊劃分的比較清晰,各個模塊均獨立為一個單獨文 件,比較好理解。屏幕、藍牙、網絡、GPIO 基本上都是遵循原有的代碼邏 輯進行編寫,邏輯比較清晰。所以這里我重點講一下之前驅動 WS2812 失 敗的原因與解決方案。

 

之前沒有正確驅動 WS2812 的原因,比較多樣化,比如自以為是的斷 定通過 GPIO+延時函數可以實現 WS2812 的驅動邏輯,后來經過示波器 證明時序完全不在一個量級上;后來使用了 I2C,發現時序非常不好控制, 也作罷;最后使用了 SPI,但是也是經歷了由模擬 SPI 到硬件 SPI 的過程。軟件 SPI 理論上跟模擬 GPIO 沒區別,達不到效果,使用了硬件 SPI 后發 現時序有時候會亂掉。最終使用硬件 SPI+DMA 方式,才得到了最終效果。


至于為什么使用 SPI,是從 WS2812 驅動時序來反推的。


WS2812 的時序屬于單總線式的時序,每一個 bit 都是由一個高電平+ 低電平實現,一個周期要在 1.25 微秒左右。當高電平在 400 納秒,低電 平在 800 納秒左右,則該 bit 為 0,反之為 1。 


當 SPI 時鐘設置在一個比較合適的頻率時,一個字節周期剛剛好可以在 1.25 微秒左右,比如 6-8MHz。這樣,只需要用一個字節表示 WS2812 一個 bit 即可。 


當然,一切都是可以變通的,我最開始的程序是采用了一個字節表示一 個 bit 的方式,后來發現這種方式不是很穩定,則改成了一個字節表示 2bit。這樣既節省了內存開支,也比之前的時序穩定性略好。經過實際測試,雖然 仍有瑕疵,但較之前版本效果更好一些,所以最后我選擇了這個方案。


具體的實現代碼在 ws2812.c 文件中。

演示效果

演示視頻:


代碼地址:

GitHubhttps://github.com/illusionlee/lightcube 


代碼使用了 MIT 協議,相對較為開放。因為我的一些代碼仍然會有一些 BUG,所以非常期待更多人可以參與進來,issue、pr,開源精神亦在于此 吧!共同完善,爭取每個人都可以擁有屬于自己的時光空間立方,工作閑暇 之余,拿起來晃一晃,能夠體驗到一點點樂趣。

附件

(13.70 MB)下載

評論區(0 )
主站蜘蛛池模板: 99国产精品偷窥熟女精品视频| 亚洲AV色香蕉一区二区9255| 免费高清国产| 肉动漫无修在线播放| 伊人久久亚洲精品一区| 国产白丝JK被疯狂输出视频| 俄罗斯12x13x处| 超碰caoporon最新视频| 久草在线精彩免费视频| 臀精插宫NP文| xxx性欧美在线| 免费看美女的网站| 亚洲一区日韩一区欧美一区a| 成人国产精品玖玖热色欲| 快播最新电影网站| 伊人久综合| 国产亚洲精品久久久久小| 日本最新免费区中文| 91免费永久在线地址| 久久99re6热在线播放| 亚洲精品国产自在现线最新| 国产精品久久久久久亚洲影视| 久久精品中文闷骚内射| 乌克兰14一18处交见血| 俄罗斯12一15处交| 人妻仑乱少妇88MAV| 99久久全国免费久久爱| 欧美v1deossexo高清| 日韩性xxx| 国产精品女上位好爽在线短片 | 办公室里呻吟的丰满老师电影| 日韩免费精品视频| 国产精品久久人妻无码网站一区无| 新影音先锋男人色资源网| 久久999视频| a国产成人免费视频| 少妇系列之白嫩人妻| 精品国产99久久久久久麻豆| 99福利视频| 午夜家庭影院| 可以看的黄页的网站|