- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在绘制arduino草图时遇到问题。
我得到这些错误:
C:\Users\FRANCE~1\AppData\Local\Temp\build8652217817452966608.tmp/bit_array.cpp:6: multiple definition of `Bit_Array::Bit_Array(unsigned long)'
C:\Users\FRANCE~1\AppData\Local\Temp\build8652217817452966608.tmp\bit_array.cpp.o:C:\Users\FRANCE~1\AppData\Local\Temp\build8652217817452966608.tmp/bit_array.cpp:6: first defined here
C:\Users\FRANCE~1\AppData\Local\Temp\build8652217817452966608.tmp\Master_Controller_modbus_RTU.cpp.o: In function `Bit_Array::~Bit_Array()':
C:\Users\FRANCE~1\AppData\Local\Temp\build8652217817452966608.tmp/bit_array.cpp:18: multiple definition of `Bit_Array::~Bit_Array()'
C:\Users\FRANCE~1\AppData\Local\Temp\build8652217817452966608.tmp\bit_array.cpp.o:C:\Users\FRANCE~1\AppData\Local\Temp\build8652217817452966608.tmp/bit_array.cpp:18: first defined here
C:\Users\FRANCE~1\AppData\Local\Temp\build8652217817452966608.tmp\Master_Controller_modbus_RTU.cpp.o: In function `Bit_Array::~Bit_Array()':
C:\Users\FRANCE~1\AppData\Local\Temp\build8652217817452966608.tmp/bit_array.cpp:18: multiple definition of `Bit_Array::~Bit_Array()'
C:\Users\FRANCE~1\AppData\Local\Temp\build8652217817452966608.tmp\bit_array.cpp.o:C:\Users\FRANCE~1\AppData\Local\Temp\build8652217817452966608.tmp/bit_array.cpp:18: first defined here
C:\Users\FRANCE~1\AppData\Local\Temp\build8652217817452966608.tmp\Master_Controller_modbus_RTU.cpp.o: In function `Bit_Array::Set_Value_MSB(unsigned char, unsigned long, unsigned char)':
C:\Users\FRANCE~1\AppData\Local\Temp\build8652217817452966608.tmp/bit_array.cpp:26: multiple definition of `Bit_Array::Set_Value_MSB(unsigned char, unsigned long, unsigned char)'
C:\Users\FRANCE~1\AppData\Local\Temp\build8652217817452966608.tmp\bit_array.cpp.o:C:\Users\FRANCE~1\AppData\Local\Temp\build8652217817452966608.tmp/bit_array.cpp:26: first defined here
collect2.exe: error: ld returned 1 exit status
Errore durante la compilazione
#ifndef bit_array
#define bit_array
// includo il supporto per le funzioni base dell'arduino
#if defined(ARDUINO) && ARDUINO >= 100
#include "Arduino.h"
#else
#include "WProgram.h"
#include <pins_arduino.h>
#endif
#include<cstdint> // libreria per supporto tipo uint8_t in C++ standard (arduino lo conosce, ma voglio fare la libreria cross-plattform)
class Bit_Array
{
private:
unsigned long N_Elementi; // Numero di bit della memoria effettivamente utilizzati (es 15 bit occupano 2byte, ma solo i primi 15bit hanno significato).
uint8_t* Array; // array di uint8_t. Ogni uint8_t verrà interpretato come una sequenza di 8 bool
unsigned long Dimensione; // Dimensione (in byte) della memoria puntata da Array. Deve essere allocata una quantità di memoria pari a upper_bound(N_elementi/8)
public:
Bit_Array(const unsigned long Number_of_Elements);
~Bit_Array();
// Getters
uint8_t Get_Value_MSB(const unsigned long Inizio, const uint8_t Lunghezza ) const;
uint8_t Get_Value_LSB(const unsigned long Inizio, const uint8_t Lunghezza ) const; // Implementazione futura
// Setters
void Set_Value_MSB(const uint8_t B, const unsigned long Inizio, const uint8_t Lunghezza);
void Set_Value_LSB(const uint8_t B, const unsigned long Inizio, const uint8_t Lunghezza); // Implementazione futura
void Print() const;
};
#endif
#include "bit_array.h"
Bit_Array::Bit_Array(const unsigned long Number_of_Elements)
{
if(Number_of_Elements <= 0)
{Array=NULL;} // non alloco la memoria
else
{
N_Elementi = Number_of_Elements;
Dimensione = (unsigned long) (( (double)Number_of_Elements/8.0 ) + 0.5); // alloco una quantità di memoria sufficiente a memoriazzare i Number_of_Elements. La memoria viene allocata con granularità di byte, quindi devo allocare Number_of_Elements/8 byte e poi arrotondare per eccesso
}
}
Bit_Array::~Bit_Array()
{if(Array!=NULL)
{delete Array;
Array=NULL;}
}
void Bit_Array::Set_Value_MSB(const uint8_t B, const unsigned long Inizio, const uint8_t Lunghezza)
{
}
#include "bit_array.cpp"
最佳答案
我建议您看看this article,以更好地了解include
指令。
C++ programs are built in a two stage process. First, each source file is compiled on its own. The compiler generates intermediate files for each compiled source file. These intermediate files are often called object files -- but they are not to be confused with objects in your code. Once all the files have been individually compiled, it then links all the object files together, which generates the final binary (the program).
Even though MyClass is declared in your program, it is not declared in main.cpp, and therefore when you compile main.cpp you get that error.
This is where header files come in. Header files allow you to make the interface visible to other .cpp files
关于c++ - Arduino IDE编译器错误多个定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34973759/
我尝试使用键盘和 TVout 库制作一个简单的 arduino 计算机。 由于库不兼容,我想使用 arduino mega 作为主板,使用 arduino uno 作为图形芯片。 但它总是在电视上只显
我正在尝试学习如何评估一个值是增加还是减少。在这种情况下,我使用从 0 - 14 映射的电位计。基本上我需要它来查看当前值,如果当前值增加,则打印一件事,如果该值减小,则打印其他内容。 到目前为止,这
我曾尝试使用 Arduino IDE 中提供的标准草图测量模拟引脚值。然而,即使没有连接到引脚,它也会打印出随机值。有什么需要注意的吗? 我有一个从 5V+ 连接到模拟引脚 0 的 FSR 传感器 最
我正在尝试在字符串旁边打印一个整数,但它并没有真正起作用并且我感到困惑。 int cmdSeries = 3; Serial.println("Series : " + cmdSeries);// T
我有一个使用不同电源供电的设备,我正在尝试与其串行通信,它有 TX 和 RX 线、GND 和 2.7+ 线,它非常笨拙,所以它有自己的 PS。 目前我得到了一些奇怪的结果,所以想知道是否需要在 Ard
使用Arduino Blackwidow或Yellowjacket有运气吗?在评论方面,我找不到关于它们的在线信息。 我想连接到无线路由器,发送与已读取的电阻有关的小型POST请求,并以JSON格式接
我的 Arduino Uno 已全部设置完毕并且运行良好。 项目:Arduino 根据给定的命令控制 9v 电机。由于 Arduino 仅提供 5v,我通过晶体管为其添加了 9v 电池 我决定将新代码
我最近买了一个Arduino Uno ,现在我正在尝试一下。我有几个 18B20 传感器和一个连接到它的 ENC28J60 网络模块,然后我正在制作一个草图,以便我可以从浏览器连接到它,并以简单的网页
我有一个使用不同电源供电的设备,我正在尝试与其串行通信,它有 TX 和 RX 线、GND 和 2.7+ 线,它非常笨拙,所以它有自己的 PS。 目前我得到了一些奇怪的结果,所以想知道是否需要在 Ard
已结束。 这个问题是 off-topic .它目前不接受答案。 想要改进这个问题? Update the question所以它是on-topic堆栈溢出。 关闭 9 年前。 Improve this
我有一个 Arduino 入门套件,它带有主动和被动蜂鸣器。不幸的是,我似乎不知道哪个是哪个。我只知道一个比另一个长一点,我可以看到下面的绿色电路板。 最佳答案 有源蜂鸣器会自行发出声音。你基本上只是
关闭。这个问题是off-topic .它目前不接受答案。 想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。 9年前关闭。 Improve this q
我想从 Arduino 中的几个传感器获取一些数据,然后创建一些端点,以便我可以从 Web 应用程序中的传感器获取数据。那可能吗? 最佳答案 您可以使用 Firebase 或 Thingspeak 服
我正在创建一个新库来一起控制键盘和 LCD。大多数代码似乎都可以编译,但是当它到达我定义 LiquidCristal 变量的行时,它说: 'LiquidCrystal' does not name a
我从最近刚开始使用arduino的我的一个学生那里得到了一些代码。 他试图做一个中断,并且有点奏效。问题是它运行了两次(他调用了该函数),所以 bool 值被重置了。 我试图找到答案,但找不到任何答案
我最近开始了 Arduino 开发,在向 friend 和同事解释时,我收到的一个问题我没有答案,也想知道为什么微 Controller 运行的程序称为草图?这是从电气工程继承下来的惯例吗?我不熟悉这
如何在编译时确定 Arduino 的板类型(例如 Uno vs Nano)? 不要与确定处理器类型混淆。正如我所看到的那样,例如#如果定义(__AVR_ATmega32U4__)... 同样,我想要一
我已经看了很多,但还没有找到涵盖所有这些的好教程。因此,我需要将项目分成多个选项卡/ino 文件,只是为了使其更清晰。 所以当你打开一个新标签后,我想问几个问题: 如果主项目文件(例如 main)还有
您好,我正在使用 https://github.com/pubnub/arduino 中的 PubNubsubscriber 示例我能够接收消息,只要我收到消息,一切都运行正常,如果一段时间过去了,比
所以我的 arduino 正在从串行接收一个字符串,由三个用逗号分隔的值组成,我试图将这些值分成三个不同的变量,其余的我可以做。 字符串看起来像这样“1000,1.5,0.9”或“5000,20,0.
我是一名优秀的程序员,十分优秀!