历史上的今天
今天是:2025年01月15日(星期三)
2020年01月15日 | STM32 keil4 extern问题
2020-01-15 来源:eefocus
最近一个项目,在stm32 keil中移植了别人的一些库文件,编译时出现如下错误提示
.OBJW5100_SPI.axf: Error: L6218E: Undefined symbol FLAG_comerr (referred from master.o).
.OBJW5100_SPI.axf: Error: L6218E: Undefined symbol adcval (referred from master.o).
.OBJW5100_SPI.axf: Error: L6218E: Undefined symbol nzval (referred from master.o).
.OBJW5100_SPI.axf: Error: L6218E: Undefined symbol receBuf (referred from master.o).
.OBJW5100_SPI.axf: Error: L6218E: Undefined symbol regstartaddr (referred from master.o).
.OBJW5100_SPI.axf: Error: L6218E: Undefined symbol slaveraddr (referred from master.o).
原因是extern的使用问题,对于移植来说这毫无疑问。记得以前C51时想用extern 声明变量以便在其他的文件调用,但都出现了这个问题,以前不懂,只能将一大片代码直接在Main.c中实现。好吧,闲话休提。查了一些资料extern仅仅是声明变量,不同定义,编译器不会分配内存给它。也就是说要使用它除了在相应的头文件声明为extern,还要在具体用到的.c文件中定义它比如头文件中声明extern u8 c;在用到的文件中:u8 c;。
上一篇:STM32看门狗研究
史海拾趣
|
本帖最后由 paulhyde 于 2014-9-15 03:46 编辑 主要用于微弱小信号放大,尤其是做传感器的微弱信号,AD620与OP07配合,AD620可做前级放大,OP07可做二级放大 … 查看全部问答> |
|
近年来,移动通信的市场需求增长迅速,当前的移动通信系统已经可以使用成熟的信号处理技术来获取更高的信息传输速率。下一代无线系统的设计难度将增大,主要体现在对多标准和可重配置性的支持。不同的通信标准在中心频率、信号带宽、信噪比和线性度 ...… 查看全部问答> |
|
怎么判断串口接受寄存器目前正有数据,使发送端延迟发送数据,从而实现简单的流量控制? 小弟我现在有一练习,就是在dos平台下,用C语言来实现简单的串口流量控制. 有一个问题是:怎么判断串口接受寄存器目前正有数据,使发送端延迟发送数据,从而实现简单的流量控制?我个人看了串口的几个寄存器都没有这个状态信息的.请各位高 ...… 查看全部问答> |
|
请教各位大侠,我现在想集成一个8位的CAN控制器在APB总线上 CAN控制器的输入输出数据都是8位的,而APB总线的输入输出数据都是32位的。。。 那把这个控制器集成在APB总线上的时候怎么处理比较合理? 高24位补零,好像太浪费了。。。CAN的波特率比 ...… 查看全部问答> |
|
作者:Chris Cockrill 德州仪器如今,现代设计公司不仅正在努力寻找功耗更低的更小型器件,同时他们还希望为工业自动化、PC、服务器以及电信设备等应用降低成本。实现这些目标的绊脚石是:设计人员使用运行在单一电压下的处理器,其需要 ...… 查看全部问答> |
|
本帖最后由 蓝雨夜 于 2014-12-17 11:20 编辑 SAM R21跑轻量级网软件堆栈DEMO 在Atmel Studio 6.2中有关无线收发测试的 demo没几个,只找到个Peer2Peer先测试下 功能很简单:A串口接收数据,通过无线发送B,同时A串口反送数据 ATEML在程序结构 ...… 查看全部问答> |
|
一个比较大的FPGA项目往往由许多模块组合而成,开发时我们可能要一个一个模块地验证,有时候一个模块可能会有非常多的模块之间的接口信号或者有些大工程会有好几百个引脚,这样FPGA提供的引脚接口就可能不够,而我们在进行单一功能验证时有些引脚可 ...… 查看全部问答> |




