数码之家

 找回密码
 立即注册
搜索
查看: 20649|回复: 36

汉朔Stellar-M单色电子墨水屏价签之无损改造+降低功耗+无线刷图

  [复制链接]
发表于 2021-2-20 17:57:33 | 显示全部楼层 |阅读模式
我买的是Stellar-M单色型。外观相当不错,不舍得拆掉,好在背面有调试口触点,可以下载程序与调试。于是定下目标:
1.无损改造
2.降低功耗(为了利用原装电池)
3.无线刷图


参考了数码论坛内先行者的拆解、例程,搞定了刷屏。
目前只做了全刷,一直不知道局刷怎么弄,试了几个LUT都不行,放弃了。

板载A7106无线模块有WOR功能(低功耗睡眠定时唤醒监听,没信号就再睡眠)
我设定为每8192ms唤醒3ms。按手册上接收电流16mA、睡眠电流1.5uA来算,平均电流不到8uA。
再充分利用MSP430本身的省电功能,静态时电流在10uA以下。
CR2450标称容量550mAH,2节可以续航5到10年(可能太乐观了,实际一两年应该没问题)

淘宝买来A7105模块(不知为何买不到A7106),加一片STM32最小系统做成发射基站。
USB VCP串口,接收完整图像数据后,先一包连发8192ms唤醒价签,再依次发送后续包。



至此硬件就完成了。之后在电脑上生成图像取模发送就行。

下一步的目标
1.电池电压测定与反馈
2.用ESP8266做基站发送天气和时间
https://www.mydigit.cn/forum.php?mod=viewthread&tid=247117

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

打赏

参与人数 2家元 +70 收起 理由
azzajazz + 20
家睦 + 50

查看全部打赏

发表于 2021-2-20 19:18:11 | 显示全部楼层
先一包连发8192ms唤醒价签
要是碰到刚好醒了,平均电流就高了,还有接收时间
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-20 20:28:53 | 显示全部楼层
ploestar 发表于 2021-2-20 19:18
先一包连发8192ms唤醒价签
要是碰到刚好醒了,平均电流就高了,还有接收时间

最坏情况下以16mA的接收电流持续8.192秒,如果每2小时刷新一下天气应该还能接受。
本来也不适合做时钟,因为没搞定局刷,全刷一次要10秒。做日历每天刷一次倒可以。
回复 支持 反对

使用道具 举报

发表于 2021-2-20 20:49:37 来自手机浏览器 | 显示全部楼层
高啊,实在是高。看到有人买带红色那个屏,好像长期显示某个部位容易老化偏色
回复 支持 反对

使用道具 举报

发表于 2021-2-20 22:18:44 | 显示全部楼层
azzajazz 发表于 2021-2-20 20:49
高啊,实在是高。看到有人买带红色那个屏,好像长期显示某个部位容易老化偏色 ...

可以加上个随机偏移量来解决这个问题的吧
回复 支持 反对

使用道具 举报

发表于 2021-2-20 23:38:30 | 显示全部楼层
“静态时电流在10uA以下”,这个目标实现了么?

如何实现的,相关IO怎么设置的?我折腾了好久,在不改动原硬件的基础上最低测得18uA(+3uA 8025)。
望能分享经验,共同进步。:handshake:


回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-21 11:16:49 | 显示全部楼层
lyy-cy 发表于 2021-2-20 23:38
“静态时电流在10uA以下”,这个目标实现了么?

如何实现的,相关IO怎么设置的?我折腾了好久,在不改动原 ...

我用15年前的古董表测的,3位半毫安档显示为6uA,就算有误差也就是10uA量级了。
我用的省电手段:
1.墨水屏用P-MOS断开主电后,修改相关IO,输出设低电平,输入设下拉。
2.MSP430进入LPM3,用A7106的外中断唤醒
3.flash不用管(虽然有睡眠指令,但睡眠后电流没变)

你内嵌了RTC,电流肯定会更大的。
以后添加电量检测和发射,就需要定时唤醒,VLO得开着,只能进LPM3,静态电流肯定会增加

补充内容 (2021-4-3 23:43):
打错了,是LPM4,全靠A7106唤醒
回复 支持 1 反对 0

使用道具 举报

发表于 2021-2-21 14:57:40 | 显示全部楼层
reiyawea 发表于 2021-2-21 11:16
我用15年前的古董表测的,3位半毫安档显示为6uA,就算有误差也就是10uA量级了。
我用的省电手段:
1.墨水 ...

谢谢分享,
建议LPM4,
用A7106的中断唤,更省电。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-21 17:07:45 | 显示全部楼层
lyy-cy 发表于 2021-2-21 14:57
谢谢分享,
建议LPM4,
用A7106的中断唤,更省电。

请问能分享一下生成日历画面的程序吗?
回复 支持 反对

使用道具 举报

发表于 2021-2-21 17:50:36 | 显示全部楼层
reiyawea 发表于 2021-2-21 17:07
请问能分享一下生成日历画面的程序吗?

https://www.mydigit.cn/forum.php?mod=viewthread&tid=226645

这个帖子里面有好多资源,下面的这个是我写的。

  1. #include <stdio.h>
  2. #include <stdint.h>
  3. uint8_t week_buf[42]={0};
  4. uint8_t data_count = 35;
  5. void set_buf(uint8_t week_day_fist,uint8_t month_days,uint8_t* buf)
  6. {
  7.         uint8_t i =0;
  8.         uint8_t day_count =1;
  9.         if ((week_day_fist + month_days)>36)
  10.         {
  11.                 data_count = 42;
  12.         }
  13.         
  14.         for(i=0;i<7;i++)
  15.         {
  16.                 buf[i] = 0;
  17.         }
  18.         
  19.         day_count =1;
  20.         for(i=week_day_fist -1 ;i<week_day_fist-1 + month_days;i++)
  21.         {
  22.                 buf[i] = day_count++;
  23.         }
  24.         
  25.         day_count = 1;
  26.         for(i=week_day_fist-1 + month_days ;i<42;i++)
  27.         {
  28.                 buf[i] = day_count++;
  29.         }        
  30. }



  31. int main(int argc, uint8_t** argv) {
  32.         uint8_t i =0;
  33.         set_buf(5,31,week_buf);        
  34.         printf("一\t二\t三\t四\t五\t六\t日");
  35.         for(i=0;i<data_count;i++)
  36.         {
  37.                 if(!(i%7))
  38.                 {
  39.                         printf("\n\r");
  40.                 }
  41.                 if(week_buf[i])
  42.                 {
  43.                         printf("%d\t",week_buf[i]);
  44.                 }
  45.                 else
  46.                 {
  47.                         printf("\t");
  48.                 }
  49.                
  50.         }        
  51.         return 0;
  52. }
复制代码

打赏

参与人数 1家元 +20 收起 理由
家睦 + 20

查看全部打赏

回复 支持 1 反对 0

使用道具 举报

发表于 2021-2-22 19:46:20 | 显示全部楼层
lyy-cy 发表于 2021-2-20 23:38
“静态时电流在10uA以下”,这个目标实现了么?

如何实现的,相关IO怎么设置的?我折腾了好久,在不改动原 ...

我试了lmp3只能到16ua。
回复 支持 反对

使用道具 举报

发表于 2021-2-22 21:22:29 | 显示全部楼层
cxw0102 发表于 2021-2-22 19:46
我试了lmp3只能到16ua。

我的情况差不多,15多一点+3uA 8025。

但是我测过原始的标签,就是原版的,拿回来直接用电池串万用表,6uA。测过几个都是这样。

肯定是能实现的。就是不知道哪里没做到位。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-22 22:07:26 | 显示全部楼层
lyy-cy 发表于 2021-2-22 21:22
我的情况差不多,15多一点+3uA 8025。

但是我测过原始的标签,就是原版的,拿回来直接用电池串万用表,6 ...

过些天我再找几个万用表,测测静态电流。
顺便问一下,您知道如何读出原版固件吗?
回复 支持 反对

使用道具 举报

发表于 2021-2-23 00:18:08 | 显示全部楼层
本帖最后由 lyy-cy 于 2021-2-23 00:19 编辑
reiyawea 发表于 2021-2-22 22:07
过些天我再找几个万用表,测测静态电流。
顺便问一下,您知道如何读出原版固件吗? ...
测电流的时候最好断开开发板,直接   电池----万用表----价签   这样才准确。
原版固件,这个应该有加密,没有去尝试。
回复 支持 反对

使用道具 举报

发表于 2021-2-23 10:39:07 | 显示全部楼层
这种屏估计就没有局刷功能的。
能局刷的屏成本比较高。
回复 支持 反对

使用道具 举报

发表于 2021-2-23 19:42:06 | 显示全部楼层
lyy-cy 发表于 2021-2-22 21:22
我的情况差不多,15多一点+3uA 8025。

但是我测过原始的标签,就是原版的,拿回来直接用电池串万用表,6 ...

我猜测原版应该如楼主说的,进入lmp4,用a7106来唤醒。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-25 09:26:01 | 显示全部楼层
lyy-cy 发表于 2021-2-22 21:22
我的情况差不多,15多一点+3uA 8025。

但是我测过原始的标签,就是原版的,拿回来直接用电池串万用表,6 ...

我换了块最近生产的表,测下来静态电流也是3uA。
这个静态是CPU是LPM4,A7106处于WOR睡眠,墨水屏断电。
接收数据时,A7106接收,墨水屏通电,CPU活动,这时电流是20mA。
另外,上传原版固件。
从里面找出来的墨水屏波形文件和另一位论坛大佬提供的演示代码一致。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复 支持 反对

使用道具 举报

发表于 2021-2-25 13:13:10 | 显示全部楼层
reiyawea 发表于 2021-2-25 09:26
我换了块最近生产的表,测下来静态电流也是3uA。
这个静态是CPU是LPM4,A7106处于WOR睡眠,墨水屏断电。
...

那个波形就是从原版的提取的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-31 22:16:22 | 显示全部楼层
lyy-cy 发表于 2021-2-20 23:38
“静态时电流在10uA以下”,这个目标实现了么?

如何实现的,相关IO怎么设置的?我折腾了好久,在不改动原 ...

最近发现当430被无线唤醒时经常自动重启。
后查明是430唤醒时给墨水屏上电,一瞬间电流有70mA多,如果电池用过一段时间,内阻稍大点,压降就会大到让430掉电复位。
现在改成让墨水屏一直通电,不用时深睡眠。测了电流还是不到10uA。
回复 支持 反对

使用道具 举报

发表于 2021-10-6 09:40:04 | 显示全部楼层
lyy-cy 发表于 2021-2-20 23:38
“静态时电流在10uA以下”,这个目标实现了么?

如何实现的,相关IO怎么设置的?我折腾了好久,在不改动原 ...

您好,请问这个UI界面的资料可以分享学习下嘛,谢谢了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-5-2 22:03 , Processed in 0.140400 second(s), 10 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表