本內容來源於@什麼值得買APP,觀點僅代表作者本人 |作者:男勃丸兒



0-效果展示

首先,來一個效果展示圖。

我愛玩垃圾:19元兒童電話手表自己動手改表盤

垃圾佬力士

我愛玩垃圾:19元兒童電話手表自己動手改表盤

1-入手

兒童電話手表,是為小孩子設計的。可以定位、可以語音、甚至可以拍照。一般不需要功能花裡胡哨的,不要有什麼視頻啊遊戲的。基本上一般三五百塊錢比較合理,性價比就還可以。但最近在大媽傢見到瞭幾款19元的兒童手表(一般標價219,領取疊加優惠券:滿212減200元)。去瞭10元郵費,還剩9元的成本,令人驚掉下巴。。。墻裂的好奇心,促使我買瞭一單,嘗個鮮兒。

2-外觀展示

整體做工還可以,玩具級別,中規中矩,對於19元來說是絕對值得買的。

我愛玩垃圾:19元兒童電話手表自己動手改表盤

19元兒童手表實物圖

3-套餐問題

開機之後,跳出的是個二維碼,需要掃碼激活交費,開通套餐。套餐倒是也不是很貴,但是看評論好多傢長都反應,充值瞭激活不瞭,反復充值激活,還存在有時亂扣費的問題。希望商傢能積極改善服務。

然鵝,值得一提的是,所謂的內置卡並不能用普通的手機卡代替,必須激活自帶的兒童手表專用卡並購買套餐 。果然,變的有意思瞭。。。

我愛玩垃圾:19元兒童電話手表自己動手改表盤

我愛玩垃圾:19元兒童電話手表自己動手改表盤

套餐費用

我愛玩垃圾:19元兒童電話手表自己動手改表盤

需要激活內置手機卡

4-拆機

關於套餐問題,話不多說瞭,就當啥都不知道瞭,直接一拆到底,看看19元的硬件到底是何方妖怪 。

我愛玩垃圾:19元兒童電話手表自己動手改表盤

兒童手表主板

HS8225L

HS8225L是一款完整的CMOS高功率,高效率發射模組,適用於低成本四頻TX(GSM850 / EGSM900 / DCS1800 / PCS1900)/雙頻RX GSM / GPRS手機。

RDA8955

紫光展銳旗下銳迪科微電子(以下簡稱“RDA”)推出一款物聯網2G芯片RDA8955。該芯片具有全球最小尺寸及超低功耗的特點,是2G物聯網市場最具性價比的解決方案。不查不知道,這個芯片性能還是非常強勁的,配置足夠強大。簡單說下參數:32位XCPU RISC core , 312MHz 。32Mb PSRAM 32Mb SPI NOR Flash。外圍繼承瞭相機、Audio、SD卡、USB1.1、LCD、37個GPIO口。尤其內部集成瞭電源管理模塊,可以管理鋰電池充電。也可以配置LDO輸出用於支持LCD、鍵盤背光等。這比平日玩的單片機、aduino等不論是性能還是配置的豐富程度都不是一個級別的。

我沒有看到GPS相關芯片,說明僅僅是通過2G基站進行定位的,也就意味著定位精度不會很高。

5-刷機

必須激活套餐才能用,何解?。。。

通過對主板的一番觀察,發現主板上存在串口的測試點,並且印刷上瞭標註Tx,Rx,於是果斷飛線,連接上串口轉USB輸出的模塊,連接電腦,打開串口。開機,此時串口的輸出就像脫瞭鋼的野馬,一頓狂奔。。。

其中,最重要的就這句log瞭,直接告知瞭LCD屏幕的具體型號:

[23:13:57.700] SXR 01 : ST7735S(0x89f0): lcd read id is 0x89f0

此刻我想刷個機。。。然鵝,搜遍全網,貌似沒有對應固件。

6-寫固件

看來隻能另起爐灶瞭,搜啊搜,搜啊搜……

就看到瞭安信可的一個2G物聯網GPS定位模塊A9/A9G,用的也是RAD8955這一款芯片,是有支持二次開發的SDK。

鏈接在此

安信可提供的SDK,功能還是非常強大的,同時模塊的賣點定位也是非常明確的,就是做一個定位模塊可能對其他的支持比較弱,比如:LOD輸出是沒有的。而這一點對於屏幕的點亮卻很重要。導致我換瞭開發SDK。

通過安信可的二次開發sdk,也能實現自己的一些想法。比如,在微信裡跟蹤手表的位置,還有安信可自己開發的app也可以顯示位置。

19元的兒童手表,有屏幕,有電池,有外殼。比單買這個模塊都要更香一些,定制完自己的固件,也可以按照自己的想法實現一些特殊功能,比如隔一段時間喚醒自己上報一次位置,這樣待機時間就會大大延長啦,你看他是個屏幕不亮的兒童手表,其實它是個定位器,還能指揮錄音和拍照,簡直是個神間諜。。。

我愛玩垃圾:19元兒童電話手表自己動手改表盤

A9 功能

我愛玩垃圾:19元兒童電話手表自己動手改表盤

微信顯示定位

我愛玩垃圾:19元兒童電話手表自己動手改表盤

APP 功能介紹

前面說過,安信可這套SDK是沒有LOD輸出的,所以屏幕沒法點亮,運行的測試程序可以輸出,但是屏幕背光是不亮的,還得拿手電筒照它,才能看見字,這怎麼能行呢。。。我可不能做達文西第二。。。

我愛玩垃圾:19元兒童電話手表自己動手改表盤

我愛玩垃圾:19元兒童電話手表自己動手改表盤

背光不亮

好在,偶然在github上發現一套RDA的開發代碼(感謝大佬)。

RDA8955_W17.44_IDH

研究一番,也可以用安信可的編譯環境進行編譯,應該是同一套RDA公司提供的源碼,安信可也僅僅是再此基礎上進行瞭二次封裝並閹割掉瞭一些電源管理的功能。按照目錄結構看,st7735s驅動也是有的,詳細的指導書,也是都有的。在此略去不表瞭,自己看就行瞭。特別詳細瞭。

唯一沒有的,就是GUI庫。。。又一個大坑。。。

嗯??靈光閃現。。好像?安信可的sdk中集成瞭一套LVGL的GUI庫,把它搬過來不就行瞭嘛。

果斷移植過去,發現是可以用的,但是這套LVGL庫是v5版本的,顯示個漢字都難,圖片顯示也不配套。坑。。。

於是去github上,下載瞭最新的LVGL,然後移植過去,然後此事可成瞭。。。

我愛玩垃圾:19元兒童電話手表自己動手改表盤

LVGL庫顯示漢字

7-制作表盤

有瞭LVGL庫的加持,制作表盤,這塊原理就非常簡單瞭,就是幾個圖片的疊加顯示。。。

比如指針式的表盤,需要:表盤圖一張,時針圖一張,分針圖一張,秒針圖一張。

我愛玩垃圾:19元兒童電話手表自己動手改表盤

然後按照順序疊加顯示,每隔xx毫秒,就去刷新指針角度就可以瞭。

創建時:

lvHour = lv_img_create(central);//造一個時針對象

lv_img_set_src( lvHour, &hour);//時針對象設置圖片源

lv_img_set_pivot(lvHour, 6, 62);//時針對象設置支點位置,

lv_obj_align(lvHour,LV_ALIGN_CENTER, 0, -18);//對齊到中間並調整位置

周期性更新時間時: lv_img_set_angle(lvHour, angle);//設置圖片角度

太空人表盤,對比於指針式表盤也是更加的簡單,隻需要準備數字的圖片,還有宇航員的動畫序列圖片就可以瞭。

宇航員飛翔,就是不斷更換圖片的過程,1秒內從fly0均勻刷到fly9。

我愛玩垃圾:19元兒童電話手表自己動手改表盤

資源圖

所以,各種表盤,,看著很高級的樣子,,其實背地裡都是在悄悄刷圖片。

對於表盤這種應用來說,根本不用深入學習LVGL,隻需瞭解個image對象就可以瞭。還是非常簡單的。

至此,我的目標暫時也就全部達成瞭,可以佩戴19元的塑料手表上街瞭。

創作者介紹
創作者 3C王者 的頭像
3C王者宇晨

3C王者

3C王者宇晨 發表在 痞客邦 留言(0) 人氣( 5 )