导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→急切求教关机后累加和值能保存[求助]

* 60519: 急切求教关机后累加和值能保存[求助]

   jingdong 
jingdong发表的帖子 

 急切求教关机后累加和值能保存[求助]
急切求教各位老师:

    现有资源为89C2051,外有24C02,采用C编程。
 
要求:每次8位AD 采样后,实现累加和,且关机后能保存。现次数用24C02保存。单片机按键实现的函数有 (1) 调出累加和及次数,两者相除。得出平均值。
         (2) 按键能实现清除累加和及次数。

因累加次数最大可能有999次,不知是否可用静态变量实现。静态变量以前只在书本上学过,没真正用过。现不知如何能实现上述功能。

以下为我的想法。此程序运行时平均值只显示0。

请部各位老师,此方法是否可行,还有没有其它方法。能否详细介绍一下。

如果此方法可行,敬请帮忙指正一下,不胜感激!!!

ulong sum(uchar x)
{
 
 static long sumval;   //定义静态变量----累加和
 
 if (x==0)
    sumval=0;
 else 
 
   
    sumval=(sumval)+AD采样新值; //累加和 
   
 return(sumval);
}


ulong avg()
 {
   uint count;
   ulong avgval;

   count=24_read(0);   //从24C02中取次数
   avgval = sum(1)/count;
  
   return(avgval);

   } 


  void clear()
 {
   uchar count ;

   count = 0;
   24_write(0,count); //累加和及次数清零
   sum(0);          //累加和清零
 }


void main()
 {
  ulong temp;

  if (P1==0xef)
  clear(); //累加和及次数清零
  if (P1==0xbe)
 {
         temp=avg();
  disp_led(temp);//送显示平均值
  ...

  }


发表时间:2004年8月17日10:15:12

  
回复该帖

本主题共有 1 帖,分页:>>>>>该主题的所有内容[1]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:谢谢你给我回帖,但是'include 什么呢?像VHDL有USE lib
[下一篇帖子]:欢迎大家光临中国单片机世界论坛大家好,欢迎光临中国单片机世界论坛 http://www.mc