我正在使用Eclipse来编程PID线跟随器机器人。使用的微控制器是Atmega328P。为此,我使用Pololu的一个QTR-8RC红外传感器和两个改进的伺服系统进行连续旋转。我和我的合作伙伴决定使用Pololu AVR库,因为它包含专门用于伺服控制和IR传感器的功能。
问题是Eclipse确实识别了库,但它没有编译。
例如:
#include <pololu/orangutan.h>
#include <pololu/3pi.h>
#include <pololu/qtr.h>
#include <pololu/encoders.h>
unsigned char qtr_rc_pins[]={IO_D2,IO_D3,IO_D4,IO_D5,IO_D6,IO_D7}; //Setup Qtr pins
void main(){
qtr_rc_init(qtr_rc_pins,6,2000,255); //starts qtr
while(1){} //does nothing
每当我尝试编译此eclipse时,都会给出以下错误:
对`qtr_rc_init&#39;
的未定义引用
有关Pololu AVR library的更多信息。
答案 0 :(得分:0)
您可以通过向链接器标志添加-lpololu_atmega328p
来解决未定义的引用错误。有关所需编译器和链接器选项的更多信息,请参阅&#34;将Pololu AVR库用于您自己的项目&#34;您链接到的user's guide部分。