zeng11
发表于 2020-6-12 11:25
嗯嗯嗯嗯嗯嗯嗯嗯嗯嗯嗯嗯嗯嗯嗯嗯
shandian4321
发表于 2020-6-12 15:07
本帖最后由 shandian4321 于 2020-6-12 15:09 编辑
奈何col 发表于 2020-6-12 08:43
格式会尽量统一,之前有些是用的arduino ide,有些是其他编辑器,格式化的时候规则可能不一样,造成不统 ...
是这两小节的:6.2.2 DHT11温湿度传感器、6.2.3 温湿度记录器。
应该是DHT11的头文件,我从ArduinoIDE的库中搜了dht11的头文件,下载后不能用,后来从一个教程网站上找到了一个DHT11的头文件,才能用的,我看了下,二者区别挺大的。如下(另,我的编程水平有限,C++不是很懂,只明白C,把两个头文件附上您看看):
能用的dht11.h:(.cpp不再给您附上了)
#ifndef dht11_h
#define dht11_h
#if defined(ARDUINO) && (ARDUINO >= 100)
#include <Arduino.h>
#else
#include <WProgram.h>
#endif
#define DHT11LIB_VERSION "0.4.1"
#define DHTLIB_OK 0
#define DHTLIB_ERROR_CHECKSUM -1
#define DHTLIB_ERROR_TIMEOUT -2
class dht11
{
public:
int read(int pin);
int humidity;
int temperature;
};
#endif
//
// END OF FILE
//
不知道怎么用的那个DHT.h(.cpp也不再附上了):
/* DHT library
MIT license
written by Adafruit Industries
*/
#ifndef DHT_H
#define DHT_H
#if ARDUINO >= 100
#include "Arduino.h"
#else
#include "WProgram.h"
#endif
// Uncomment to enable printing out nice debug messages.
//#define DHT_DEBUG
// Define where debug output will be printed.
#define DEBUG_PRINTER Serial
// Setup debug printing macros.
#ifdef DHT_DEBUG
#define DEBUG_PRINT(...) { DEBUG_PRINTER.print(__VA_ARGS__); }
#define DEBUG_PRINTLN(...) { DEBUG_PRINTER.println(__VA_ARGS__); }
#else
#define DEBUG_PRINT(...) {}
#define DEBUG_PRINTLN(...) {}
#endif
// Define types of sensors.
#define DHT11 11
#define DHT12 12
#define DHT22 22
#define DHT21 21
#define AM2301 21
class DHT {
public:
DHT(uint8_t pin, uint8_t type, uint8_t count=6);
void begin(uint8_t usec=55);
float readTemperature(bool S=false, bool force=false);
float convertCtoF(float);
float convertFtoC(float);
float computeHeatIndex(bool isFahrenheit=true);
float computeHeatIndex(float temperature, float percentHumidity, bool isFahrenheit=true);
float readHumidity(bool force=false);
bool read(bool force=false);
private:
uint8_t data;
uint8_t _pin, _type;
#ifdef __AVR
// Use direct GPIO access on an 8-bit AVR so keep track of the port and bitmask
// for the digital pin connected to the DHT.Other platforms will use digitalRead.
uint8_t _bit, _port;
#endif
uint32_t _lastreadtime, _maxcycles;
bool _lastresult;
uint8_t pullTime; // Time (in usec) to pull up data line before reading
uint32_t expectPulse(bool level);
};
class InterruptLock {
public:
InterruptLock() {
#if !defined(ARDUINO_ARCH_NRF52)
noInterrupts();
#endif
}
~InterruptLock() {
#if !defined(ARDUINO_ARCH_NRF52)
interrupts();
#endif
}
};
#endif
奈何col
发表于 2020-6-12 19:23
shandian4321 发表于 2020-6-12 15:07
是这两小节的:6.2.2 DHT11温湿度传感器、6.2.3 温湿度记录器。
应该是DHT11的头文件,我从ArduinoIDE的库 ...
这个当然要使用书中使用的lib啦
JRH
发表于 2020-6-23 23:00
shandian4321 发表于 2020-6-11 15:25
能否把第二版后边的附录A.1再具体的写写,现在VS已经到2019了;另,Visual Studio Code中也有arduino的工具 ...
是免费的的
jy792001
发表于 2020-7-2 22:28
奈何col 发表于 2020-6-12 19:23
这个当然要使用书中使用的lib啦
请问:在一个安利中看到Nova.h头文件,在ide中找不到这个头文件,是什么情况啊?谢谢!
奈何col
发表于 2020-7-2 23:59
jy792001 发表于 2020-7-2 22:28
请问:在一个安利中看到Nova.h头文件,在ide中找不到这个头文件,是什么情况啊?谢谢! ...
不知道是啥,建议咨询写的人
arduino_wgt
发表于 2020-7-7 14:07
能以附录的形式增加一些arduino常用的C++知识吗?学生有c语言编程经验的较多,但是对c++却很陌生。c++语言知识非常庞杂,而arduino只用到其中的一部分。增加这个附录后,期望学生通过c++附录的学习,能基本看懂arduino库的代码,这对于排查程序bug很有帮助的。
JerryWang
发表于 2020-7-7 20:12
麻烦加一下VSCODE入门的相关内容刚开始用的时候研究了一整天:)
同意楼上的,加一下esp8266的内容,我用的比较多:)
再请多讲讲物联网相关的内容,现在我arduino的项目主要用的就是这些:)
另:举的例子可以再那么多一点点,多加入一些实战操作内容:)
一直是本书的忠实粉丝,以上仅作参考,期待第三版!
11nibaba
发表于 2020-8-7 16:47
请问第三版什么时候上市,我是小白,要先买第二版吗?
link4565
发表于 2020-8-10 20:35
加入usb host Shield的教程吧我觉得这个很多人需要还有就是i2c通信的教程改良最好能增加案例