1.找不到头文件
问题概要
在正点原子stm32的TFTLCD显示实验例程中插入OLED显示功能时提示了找不到头文件的错误
在main.c文件中#include "oled.h"
报错
HARWARE文件夹中已经添加了oled.c文件
编译报错:main.c(7): error: #5: cannot open source input file "oled.h": No such file or directory
解决方法
1.主窗口中点击Options for Target...
按钮
2.选择C/C++
选项卡,点击Include Paths
右侧的...
按钮
3.点击New(Insert)
按钮添加新的路径
4.选择OLED文件夹的路径添加
5.确认保存
6.再次编译就能看到没有报错了
2.重复定义
问题概要
在把oled例程和lcd例程合并的时候出现错误
(这里以遥控例程为例,遥控例程中有lcd),在把oled复制到hardware文件夹里面之后编译,出现重复定义错误
报错信息中的变量asc2_××××是lcd的头文件Font.h和oled的头文件oledFont.h中的变量,两个文件内容是相同的,就是说lcd.c和oled.c两个文件中引用了同一个头文件造成了变量重复定义
解决方法
1.在lcd.c和oled.c文件中删除#include "font.h"
和#include "oledfont.h"
,
然后添加extern const unsigned char asc2_1206[95][12],asc2_1608[95][16],asc2_2412[95][36];
外部定义这三个变量
2.在main.c文件中添加#include "font.h"
(添加#include "oledfont.h"
也行,因为这两个文件内容是一模一样的)
6.再次编译就能看到没有报错了