本内容源自于@什么值得买APP,观点仅表率作者自己 |作者:男勃丸儿
0-效果展示
首要,来一个效果展示图。
垃圾佬力士
1-入手
儿童tel手表,是为小孩儿设计的。能够定位、能够语音、乃至能够拍照。通常不需要功能花里胡哨的,不要有什么视频啊游戏的。基本上通常三五百块钱比较恰当,性价比就还能够。但近期在大妈家见到了几款19元的儿童手表(通常标价219,领取叠加优惠券:满212减200元)。去了10元邮费,还剩9元的成本,令人惊掉下巴。。。墙裂的好奇心,促进我买了一单,尝个鲜儿。
2-外观展示
整体做工还能够,玩具级别,中规中矩,针对19元来讲是绝对值得买的。
19元儿童手表实物图
3-套餐问题
开机之后,跳出的是个二维码,需要扫码激活交费,开通套餐。套餐倒是亦不是很贵,然则看评论好多家长都反应,充值了激活不了,反复充值激活,还存在有时乱扣费的问题。期盼商家能积极改善服务。
然鹅,值得一提的是,所说的内置卡并不可用普通的手机卡代替,必须激活自带的儿童手表专用卡并购买套餐 。果然,变的有意思了。。。
套餐花费
需要激活内置手机卡
4-拆机
关于套餐问题,话不多说了,就当啥都不晓得了,直接一拆到底,瞧瞧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,亦能实现自己的有些想法。例如,在微X里跟踪手表的位置,还有安信可自己研发的app亦能够表示位置。
19元的儿童手表,有屏幕,有电池,有外壳。比单买这个模块都要更香有些,定制完自己的固件,亦能够根据自己的想法实现有些特殊功能,例如隔一段时间唤醒自己上报一次位置,这般待机时间就会大大延长啦,你看他是个屏幕不亮的儿童手表,其实它是个定位器,还能指挥录音和拍照,简直是个神间谍。。。
A9 功能
微X表示定位
APP 功能介绍
前面说过,安信可这套SDK是无LOD输出的,因此屏幕没法点亮,运行的测试程序能够输出,但是屏幕背光是不亮的,还得拿手电筒照它,才可看见字,这怎么能行呢。。。我可不可做达文西第二。。。
背光不亮
好在,偶然在github上发掘一套RDA的研发代码(感谢大佬)。
RDA8955_W17.44_IDH
科研一番,亦能够用安信可的编译环境进行编译,应该是同一套RDA机构供给的源码,安信可亦仅仅是再此基础上进行了二次封装并阉割掉了有些电源管理的功能。根据目录结构看,st7735s驱动亦是有的,仔细的指点书,亦是都有的。这里略去不表了,自己看就行了。尤其仔细了。
独一无的,便是GUI库。。。又一个大坑。。。
嗯??灵光闪现。。好似?安信可的sdk中集成为了一套LVGL的GUI库,把它搬过来不就行了吗。
果断移植过去,发掘是能够用的,然则这套LVGL库是v5版本的,表示个汉字都难,照片表示亦不配套。坑。。。
于是去github上,下载了最新的LVGL,而后移植过去,而后这事可成为了。。。
LVGL库表示汉字
7-制作表盘
有了LVGL库的加持,制作表盘,这块原理就非常简单了,便是几个照片的叠加表示。。。
例如指针式的表盘,需要:表盘图一张,时针图一张,分针图一张,秒针图一张。
而后根据次序叠加表示,每隔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。
资源图
因此,各样表盘,,看着很高级的样子,,其实背地里都是在悄悄刷照片。
针对表盘这种应用来讲,基本不消深入学习LVGL,只需了解个image对象就能够了。还是非常简单的。
至此,我的目的暂时亦就所有达成为了,能够佩戴19元的塑料手表上街了。
|