搜索
bottom↓
回复: 4

【关于一个充电器的逻辑问题】

[复制链接]

出0入0汤圆

发表于 2014-5-12 15:25:15 | 显示全部楼层 |阅读模式
我现在用io口去检测一个充电器和负载是否插入,现在客户要求充电器插入后,led显示电量,如果充满后就休眠。如果温度异常的话,led就2HZ闪烁。如果充电器中途拔掉,延迟2min后就关机,现在我就不知道怎么去在

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

 楼主| 发表于 2014-5-12 15:25:44 | 显示全部楼层
  1. void Charge_detect(void)
  2. {
  3. if(t1_ms50==1)
  4.         {
  5.              t1_ms50=0;                       
  6.               if((CID==0)&&(DID==1))          //充电器接入  //反推充电器接入
  7.                         {
  8.                              CHG=0;        DSG=1;                  //打开充电mos,关放电mos                       
  9.                                  if((Ad_temp[0]<OVERTEMP)&&(Ad_temp[1]>LOWTEMP))//温度正常
  10.                                  {
  11.                                       if(CID==0)                           //再次检测充电器是否接入
  12.                                          {
  13.                                                 Soc_Detect();  //Soc电量显示                                                           
  14.                                          }
  15.                                      else if(CID==1)  // 如果充电器拔掉,就准备进入休眠
  16.                                          {                                       
  17.                                                   if((min_2==1))
  18.                                                  {
  19.                                                                    min_2=0;                                                    
  20.                                                                 POWEROFF();
  21.                                                  }
  22.                                                                      
  23.                                           }                                                                  
  24.                                
  25.                                  }
  26.                                  else if(Ad_temp[0]<LOWTEMP||Ad_temp[1]>OVERTEMP)  //温度异常
  27.                                  {
  28.                                             
  29.                                      if(ms650_time==1)     //温度异常后,灯闪烁2HZ
  30.                             {
  31.                                ms650_time=0;
  32.                                    LED1^=1;
  33.                                    LED2^=1;          //否则灯闪烁表示温度异常 2HZ频率
  34.                                    LED3^=1;
  35.                                    LED4^=1;
  36.                                    LED5^=1;
  37.                              }               
  38.                                  }
  39.                                                                                                                                                                             
  40.                         }  
  41.                        
复制代码

出0入0汤圆

 楼主| 发表于 2014-5-12 15:27:06 | 显示全部楼层
上面的是我写的,感觉中途拔掉充电器后,定时器2min后就中断了,跟我拔掉充电器后2min没有搭边?

出0入0汤圆

 楼主| 发表于 2014-5-12 15:29:57 | 显示全部楼层
客户要求的不是2min后休眠,是拔掉充电器后2min休眠?

出0入0汤圆

 楼主| 发表于 2014-5-12 15:38:57 | 显示全部楼层
我想在拔掉充电器后做一个标志位,关闭定时器  再开启,再查询标志位。不知道这个方法怎么样!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-8-26 12:21

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

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