Ticker.h
以10khz的频率对模拟输入进行一致采样,即每100us采样一次。我注意到
Ticker sampler; sampler.attach(0.0001,callbackfunc);
没用是因为
attach()
不会接受值0.0001。
因此,我根据我看到的一些指南编写了以下代码:
#include <ESP8266WiFi.h>
#include <Ticker.h>
bool s = true;
void getSample()
{
s = !s;
}
Ticker tickerObject(getSample, 100, 0, MICROS_MICROS);
const char *ssid = "___"; // Change it
const char *pass = "___"; // Change it
void setup()
{
Serial.begin(115200);
Serial.println(0); //start
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, pass);
tickerObject.start();
}
void loop()
{
if(s == true)
{
Serial.println("True");
}
else
{
Serial.println("False");
}
}
然而,这并没有编译,因为
tickerObject.start()
方法不存在。所以我接下来做的是:
-
下载最新的股票代码包
as a zip file
-
-
备份
C:\Users\john\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.5.0-beta2\libraries\Ticker
-
-
重新启动我的Arduino IDE
-
编译并运行代码
-
打开串行监视器
但是,当我检查串行监视器时,它打印的所有内容都是“True”。我在期待价值
s
以10khz频率在真与假之间切换。
我做错了什么?