搜索
bottom↓
回复: 7
打印 上一主题 下一主题

白沙怀表程序小改

[复制链接]

出0入0汤圆

跳转到指定楼层
1
发表于 2010-4-21 22:10:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
不知道大家有没有发现白沙怀表在进位的时候和我们平常的有点不一样,就是秒和分在“显示”上是逢一进一而不是逢六十进一?把秒和分的显示函数改成如下就是:
void show_minute(unsigned char minute)
{
  unsigned int temp_h,temp_b;
  clr_display();
  temp_h = minute / 5;
  temp_b = minute % 5;
  if(temp_b==0)
  {
   temp_b=4;
   if(temp_h==0) temp_h=11;
   else temp_h--;
  }
  else temp_b--;
  switch_hm(temp_h);      //
  P4OUT &=~(1 << temp_b); // 此三行酌情修改,因我的是按照原理图焊接不是按照白沙的装配图
  P4DIR |= (1 << temp_b); //

}

分钟的改动同样如此。

还有一个很严重的问题,就是功耗,也许是我的表反接过电源的原因,进入待机模式后耗电仍有惊人的200-300uA,我差点石化!最后发现是LED感光所致,增加以下函数解决,其实也就是把原来的清屏函数中端口的方向设置成输出“1”。
void display_off(void)
{
  P1DIR = 1;
  P1OUT = 1;
  P2SEL = 0;
  P2DIR = 0x60;
  P2OUT = 0;
  P3DIR = 1;
  P3OUT = 1;
  P4DIR = 1;
  P4OUT = 1;
  P5DIR = 1;
  P5OUT = 1;
  P6DIR = 1;
  P6OUT = 1;
  P7DIR = 1;
  P7OUT = 1;  
}

然后在主程序中判断怀表状态的函数里替换以下:
  if(work_state == OFF)
  {
//    clr_display();
    display_off();
    twi_init();
    twi_write_word(0x48,0x01,0x61a0);   
    twi_write(0x4c,6,0);
    twi_write(0x4c,7,0);
     __bis_SR_register(LPM3_bits + GIE);       // Enter LPM4 w/interrupt (这个注释也有误吧,这应该不叫LPM4模式)
  }

现在测试待机功耗30uA,虽达不到官方说明的那么低,也满足了,比那动不动300uA强得多。估计是怀表反接过电源的原因。
发现的问题暂时这么多,我买的是古铜色的,又在淘宝配了个银色外壳,明天到,届时开始总装。

出0入0汤圆

2
发表于 2010-4-23 11:21:14 | 只看该作者
************又在淘宝配了个银色外壳*******************

有地址没啊

出0入0汤圆

3
发表于 2010-4-26 12:10:42 | 只看该作者
用楼主的 display_off()后,怀表功耗降低了,最低只有6uA。
刷程序之前测得:V=3.06,I=7.7~8.3mA(开显示);I=76~160uA(关显示),大部分时间在84uA,(有时瞬间超量程200uA)。
刷后测得:      V=3.06,I=7.2~7.8mA(开显示);I=5.8~6.4uA(关显示),哈哈,很好!

出0入0汤圆

4
发表于 2010-4-26 14:11:01 | 只看该作者
很好,很学习啊

出0入0汤圆

5
 楼主| 发表于 2010-5-5 17:34:28 | 只看该作者
回复【1楼】zzzzxxxx
************又在淘宝配了个银色外壳*******************
有地址没啊
-----------------------------------------------------------------------

这个有很多啊,随便找下,话说我买的不咋样,小杯具~~

出0入0汤圆

6
发表于 2011-5-23 09:57:31 | 只看该作者
mark

出0入0汤圆

7
发表于 2014-1-23 20:04:07 | 只看该作者
现在才看到,做了一个。

出0入0汤圆

8
发表于 2014-4-29 09:28:21 | 只看该作者
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-20 05:46

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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