enter image description here非常感谢您的帮助。 我是一名学生,正在使用Arduino(IDE)从事“光束屏蔽”项目,但现在我被困住了。
我有一个采样库,该库在代码的含义(中断等..)方面具有全部功能,它还可以识别archenteron图像描述,因此可以更改所使用的调光器。
但是我需要调整它-每当Sampling3Library发现AVR拱门包含伺服库时,它就会识别它并将其自身设置为计时器2,因为Servo正在使用计时器1。
为进一步理解该主题,以下是有关编译工作方式的一些信息(如果我错了,请告诉我):
-头文件(.h)一起编译,并交换信息(如果它们相互包含的话),而不是被编译成一个对象-因此,头文件知道包含另一个头文件。 -库文件夹中的所有.cpp文件都单独编译,并且都编译成功能对象!!! 参见图1-我在Servo库警告句中添加了.cpps中的3个(警告使用斯洛伐克语)-所有这些都已编译:enter image description here
IDE已开发了预处理器宏(ARDUINO_ARCH_XXX)。这些与令牌不同,甚至可以从.cpp文件中识别出来。 这就是Servo库只能激活一个.cpp文件的方式,而不是该文件夹中包含的许多文件。 多亏了ifdef条件(请参见图2)enter image description here
我尝试使用相同的逻辑,仅使用令牌。 这是我的图书馆文件夹:(图片4 5 6)enter image description here 和主标头的代码:
scale_size_continuous(range = c(0, 10))
建筑专家,还没有到那儿,请不要注意。
问题在于从Sampling库中的伺服库中识别库令牌(Servo_h)。 这是发生了什么: 步骤1: .Ino文件进行编译(包括Servo.h)并调用Sampling.h,后者识别Servo的内部令牌并将其设置为timmer 2(只是简化)。 第二步: .cpp文件(所有文件都在库文件夹中)会编译,并且每个文件都在不同的计时器上运行。...请参阅图3 enter image description here
因此,令牌在我想要实现的功能中毫无用处。 请提出任何有关使其运作的想法?