液晶显示定时器有点像小时侯戴过的多功能电子表的桌面版,功能减少了跑表、日历星期显示,但增加了倒计时、多组闹铃等功能。像下图这样的在电商活动的时候十块钱内就能买到。
![]()
不过实物没有宝贝页面上的那么好看,外观细节还有差别。有的情况是拍照效果的问题,有的是因为宣传使用不是照片而是电脑制作的效果图。不到十元的东西预期不能太高,关键在于液晶显示的效果。我买过不少定时器了,深知这个不见实物不知底细的。
![]()
这个的塑料件质量算中等,模具设计还比较精致,手感不错。按键是硅胶+导电橡胶的,不是锅仔片那种硬邦邦的触感,很好。关键的,显示效果呢?在最佳视角下底层膜的反射率是可以的,对比度很好。但是,它还是比较挑视角,包括光源的位置,像下面这个角度就勉强能看了。
![]()
在极端的角度,就可能是下面这种完全不能看的效果。戴过电子表的同学应该有经验,这种液晶的视角范围有限度的。
![]()
主要是看它用的屏的最佳视角方向是哪个了,我觉得这款立在桌面用还行(带一点俯视角度),如果是挂墙上仰视,效果要差不少。
![]()
能立起来放是因为背后它带有一个折叠的小支撑,这个设计还不错。也还粘了一块软的磁性材料,可以吸附在实验室的铁板、铁架子上。最上面还可以用挂钩钩住。
![]()
![]()
打开电池盖,可以看到电池正负极的钢片是焊接在PCB上的。外壳是螺丝固定,拆掉螺丝后发现并没有卡扣,可以轻松分离。
![]()
这拆解完全没有难度。PCB暴露出来了:
什么,竟然是沉金工艺的FR4双面板!
竟然是LQFP封装的芯片!
竟然是STM32!
![]()
PCB另一面,连接液晶的导电橡胶条的触点,以及按键的触点都是沉金的,所以有良好的接触。
![]()
再仔细看看芯片,STM32L053R8T6. 周围还留出了好几个测试焊盘,还有SWD调试接口的标志。
难道这是个工程样机流出来了?
![]()
请EEWorld论坛@xutong帮忙分析一下BOM成本。这种液晶只要量大了成本很低,但MCU可是实打实的。
![]()
在这样的定时器上用LQFP封装的MCU,真是用料十足了!
最后有个细节,看这个STM32封装表面那两个凹的圆,里面是不光滑的。我印象中ST的片子,圆圈里面至少比较平整。
![]()
所以,为了降成本,它用的是拆机翻新的芯片?
![]()
xutong帮忙分析的BOM成本表
“拆解一个用料十足的多功能定时器”之前传
我在去年淘宝618活动的时候买了一个多功能定时器:
![]()
上图是宝贝页面的照片,比实物要漂亮。但是包装就很简陋了,就一小纸盒,小商品市场的风格。毕竟卖得便宜呢,还包邮了。
![]()
当我装上电池看显示效果的时候,意外发现它的显示在一通电时有,然后竟然渐渐消失!
![]()
试几下都有问题,先怀疑是里面液晶接触不良了,那就拆开处理一下。
开后盖卸下电池
![]()
卸掉几颗自攻螺丝之后壳子就分开了。
电路板是这种价位东西常见的电木板,还是单面设计。
![]()
PCB的元件面:COB封的专用ASIC芯片
![]()
其实原版的拆解现场是如上这样的,就是廉价货。
我用示波器查看了液晶的驱动波形,在刚通电的时候是正常的,但不久就消失了。我诊断结论是:芯片损坏。于是录了视频和卖家沟通,这个订单退款了,货不用退。
那么这个定时器尸体在我手上做什么用途呢?模具还挺好的,为了物尽其用,我就复刻一个吧。于是,过了很久,你们看到了我上面的帖子“拆解一个用料十足的多功能定时器”。我故意开了这样一个玩笑,先不提“用料十足的定时器”并不是原版,而是我的复刻版。
于是就有了 STM32L053 出场。能支持这种段码LCD的MCU并不是很普遍,在ST的产品里面只有 STM8L, STM32L 系列的某些型号。注意,LCD是交流驱动,不是方波驱动,因此不能用MCU的GPIO直接驱动,必须有控制器。STM32L053算是STM32中带LCD驱动的价钱最低的。我最早用过STM8L152,后来发现淘宝出现了很便宜的STM32L053就买了几片,再后来恍然明白便宜的原因是——翻新货。不过自己玩的,买了就算了。
![]()
ST MCU里的LCD控制器支持最多8个COM端,32个SEG端。像这种定时器LCD大概率是4个COM端的(1/4 duty). MCU里面有电荷泵来产生驱动电压,软件可调节,也就能控制对比度。不过最高驱动电压也有限制,不是能适配任何LCD的。
LCD直接接在GPIO上,引脚配置为LCD SEG或COM功能。另外要使用LSE,接32.768kHz的晶振做时间基准。
画原理图的时候要先确认LCD的电极中COMx的位置(余下的就是SEGx端),因为COM和SEG相当于行和列扫描线(打比方,这种LCD不是点阵的不存在行列说)是不可交换的。我是通过示波器测电路板驱动端的波形判断的,一共有4个公共端,排在一头。
![]()
![]()
复刻的关键在于测绘原来的PCB上的定位孔,和需要定位的元件的位置。最重要的LCD的电极的位置不能偏。我是用游标卡尺+直尺来量的,效率比较低;我还从来没有试过拍照法。
![]()
用某创的沉金工艺免费打样券,和我的其它电路一起拼着打了一块PCB.
打样回来,先检查对位,没问题了再焊接。
![]()
测绘结果还是比较准的,板子放上去稳稳的。电池盒用到的钢片要从原来的PCB上拆下来。
剩下就是焊接和软件的工作了。因为软件是自己做,功能也就可以自由发挥了。
首先需要测试LCD功能,确定每个驱动线组合COMx SEGy对应的LCD笔段是什么。对于STM32这个控制器,核心的配置寄存器是FCR和CR,它们决定了怎样驱动:
![]()
而点亮(显示)哪些笔段,由4个LCD RAM寄存器决定,每个寄存器对应一个COM端的扫描,bit[n]表示SEGn的笔段。用起来还是很简单的。
![]()
我做了一个通用的测试程序:
LCD->RAM[0]=show; LCD->RAM[2]=show; LCD->RAM[4]=show; LCD->RAM[6]=show; LCD->SR = LCD_SR_UDR; // update segsel++; } }}就是每个SEGy依次点亮,以分辨出每一组四个笔段。效果看这个视频:
当然这还不能区分每个COMx对应哪些,还需要换种切换方式才能判断完整。
测试的时候在草稿纸上记录下映射关系(这法比较原始):发现了5个8字的笔段映射是很有规律的。
![]()
确定完了就可以开发时钟程序了。这种任务的确是8位MCU搞定都很轻松的。
资源推荐
请将我们设为“星标”,这样就会第一时间收到推送消息。
欢迎关注EEWorld旗下订阅号:“机器人开发圈”
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.