极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12854|回复: 4

求助大侠关于变量调用的问题

[复制链接]
发表于 2016-2-25 17:39:50 | 显示全部楼层 |阅读模式
向各位大侠们求助:我想把void work() 里面的变量value调取到void loop()里面参加运算,运算公式是Date=value-20;请问各位高手,如何编写调用的变量定义。小弟不胜感激!


void setup()
{
   Serial.begin(9600);         //使用9600速率进行串口通讯
}

void loop()
{

  int n = analogRead(A0);    //读取A0口的电压值

  float vol = n * (5.0 / 1023.0*100);   //温度数据由电压值换算
  Double date;

// ( Date=value-20 )

  Serial.println(Date);                   //串口输出温度
  delay(2000);                           //等待2秒,控制刷新速度
}

void work()                     
{     
        int a;
        a=35;
            double value;                   // 计算部分
            float a =0.78*PI/180;
            value=sin(a)*2000-125;
           Serial.print("val=");               //  电脑串口输出
           Serial.print(value,2);
           Serial.println();           
  }  
回复

使用道具 举报

发表于 2016-2-25 17:48:04 | 显示全部楼层
把 value 的定義部份 (double value;) 放到 最外層就可以了.
又或是把 work 改成回傳一個 double, 把 value 的值回傳.  再在 loop 調用時把回傳的數值接回.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-2-25 17:50:12 | 显示全部楼层
Super169 发表于 2016-2-25 17:48
把 value 的定義部份 (double value;) 放到 最外層就可以了.
又或是把 work 改成回傳一個 double, 把 valu ...

还是不太明白,能否把上面的代码给我编辑一下?
回复 支持 反对

使用道具 举报

发表于 2016-2-25 17:54:46 | 显示全部楼层
把 double value; 那句放上第一行.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-2-25 19:48:15 | 显示全部楼层
Super169 发表于 2016-2-25 17:54
把 double value; 那句放上第一行.

已经解决,非常感谢
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-6 14:32 , Processed in 0.056004 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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