|
下面是看到的一个获得328P内部温度的函数 我怎么才能把他打包起来放进函数库里? 那样如果需使用就方便多了。
void setup()
{
Serial.begin(9600);
}
void loop()
{
Serial.println(GetTemp(),1);
delay(1000);
}
double GetTemp(void)
{
unsigned int wADC;
double t;
ADMUX = (_BV(REFS1) | _BV(REFS0) | _BV(MUX3));
ADCSRA |= _BV(ADEN);
delay(20);
ADCSRA |= _BV(ADSC);
while (bit_is_set(ADCSRA,ADSC));
wADC = ADCW;
t = (wADC - 104.31 ) / 1.22;
return (t);
}
我自己有看过一些自己创建函数库的例子,也试着做了很久但是都不成功 请看我做的是错在哪里?
下面是头文件.h
#ifndef GetChipTemp_h
#define GetChipTemp_h
#include <Arduino.h>
class GetChipTemp
{
public:
double GetTemp();
private:
unsigned int wADC;
double t;
};
#endif
下面是函数.cpp
#include "GetChipTemp.h"
double GetChipTemp::GetTemp()
{
unsigned int wADC;
double t;
ADMUX = (_BV(REFS1) | _BV(REFS0) | _BV(MUX3));
ADCSRA |= _BV(ADEN); // enable the ADC
delay(20); // wait for voltages to become stable.
ADCSRA |= _BV(ADSC); // Start the ADC
while (bit_is_set(ADCSRA,ADSC));
wADC = ADCW;
t = (wADC - 324.31 ) / 1.22;
return (t);
请回复一个可以使用的函数库文件。请不要让我去看别的例子 因为我都看过了,没看到详细教程。
}
|
|