你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

Keil编译常见问题(一)

[复制链接]
kqh1120 发布时间:2015-1-28 10:24
STM32电机培训online,大佬带你玩电机
0 G9 g6 E7 e; H: x5 L
2 y9 U/ ]" M9 X; h0 H' G7 |Keil编译常见问题(二)/ x3 F/ N; X& S! H' A/ U. l" k
% Y; p+ ]) R- f# B% _! ?
KEIL MDK 5.24a免费下载! ]! C0 e+ i1 S4 |8 R" ^7 |, T
* u" c. c3 B" Z8 I

0 |; |. {9 F6 _4 `. M: terror: #18:
6.error: #18: expected a ")": o- X9 U- H7 ~- c6 J
如果是出现在c文件中, 多半是因为少了一个")",或者错误行有编译器不识别的字符" m; O+ q* q$ |; A" Z# `
如果出现在头文件中,错误行又是一个函数声明,多半是因为在函数声明中有编译器不认识的字符
& e* V0 ~- h; u' a: Q0 L
. [8 N) D% J( j3 u: `error: #20error: #20: identifier "TIM2_IRQChannel" is undefined 谁能说说,哪里错了2 ?' j# f# @# O$ E5 I* e% f" o1 j
你的固件库里的库文件没有添加进工程里面,所以出现未定义的情况。
; e) P/ c, u! C$ mTIM2_IRQChannel指定时器2的中断通道没有定义,其实在固件库对这些参数都有定义,宏定义代替了一串寄存器地址数据。需要将.C文件添加到工程文件中
8 v7 }2 x% ?2 ]( Z/ S
; c; w6 H2 \' x' g' p5 a) Uwarning:  #1-D main.c(7): warning:  #1-D: last line of file ends without a newline
6 F( a% u% V; B6 S  s当使用keil编译时,弹出这样的警告信息:main.c(7): warning:  #1-D: last line of file ends without a newline
! Z- R+ C) v  ?+ P: @# |' k这个是由于在main函数的“}”后,没有加回车。- t! a7 o, p) \. R6 x$ Q
只要在main函数的“}”后加回车键,此警告信息即可消除。% c" H3 E& ^- w9 h4 q
* C& n6 |: ~0 C9 l: j* y8 ^
error:#65...test_menu.c(27):error:#65:expected a ";"
! P" Q. i1 J/ D5 `' O9 F你的固件库里的库文件没有添加进工程里面,所以出现未定义的情况。
3 m' L! U: p5 DTIM2_IRQChannel指定时器2的中断通道没有定义,其实在固件库对这些参数都有定义,宏定义代替了一串寄存器地址数据。需要将.C文件添加到工程文件中( v# a% s( D( X5 k: k) f/ C

6 ?( F$ O- Z8 _! a' ^& I5 TError: L6200E Error: L6200E: Symbol temp multiply defined (by wenshidu.o and main.o).在编译的时候出现了这个问题,但是检查不出来,希望各位大侠帮帮忙' Z1 }% ?5 k8 B7 A$ {
什么变量你给付了两次值
) N  P& f& |6 e7 T( v* ~
你看看是不是那个外部变量你又给赋值了) w* b! m# M1 w
main.c申明,其他.c文件对应的.h文件中用extern引用
9 v' K0 s) V7 V: c: c& c( |# ^6 D- v& F7 l; ]/ `* @+ d1 h
warning:  #223-D..\..\source\CCxx00_New.C(718): warning:  #223-D: function "_NOP_" declared implicitly
* H2 p5 {% M1 N! Y7 }在使用的文件中添加extern void _NOP_();既可
! p$ ^7 m* i* k8 r( [# |1 X/ x% u% b9 u- i
warning:  #1295-D..\..\include\CCxx00_New.h(20): warning:  #1295-D: Deprecated declaration CC_XCal - give arg types+ a6 N% I5 N  t( m, y# h3 l( m- y

! g$ F* r8 g% b' a: QError: L6218E: Undefined symbol.\Obj\output.axf: Error: L6218E: Undefined symbol FSMC_NORSRAMCmd (referred from tft_lcd.o).
6 |1 H0 h+ P" m" Y9 r) o
.\Obj\output.axf: Error: L6218E: Undefined symbol FSMC_NORSRAMInit (referred from tft_lcd.o).
( I3 i* U8 z5 r( R  `, h
Target not created6 |; e1 H& P8 _8 c  x8 N# Q
6 j' u% o& J. L; u; f9 y
你的固件库里的库文件没有添加进工程里面,所以出现未定义的情况。
- D. g  j# [: p3 [8 u1 ~; w* dTIM2_IRQChannel指定时器2的中断通道没有定义,其实在固件库对这些参数都有定义,宏定义代替了一串寄存器地址数据。需要将.C文件添加到工程文件中! U/ u1 d* O$ g/ E3 |

( l% S, m7 |$ {, C9 T: Perror: #101:error: #101: has already been declared in the current scope' x* ?3 P$ r+ f* b5 j/ y
8 r8 @5 ^  R0 H
. ?& I# t7 ~4 ^0 Q, t+ q& ?6 U+ `
#ifndef __STM32F10x_LIB_H
& {/ V1 m( S6 e$ D+ o#define __STM32F10x_LIB_H
. z8 o( C4 Q& z. z! Q0 M#endif调整到最后!) r8 `0 }$ n1 Z7 ~" m. b1 {

' }2 P! X; A. B% o* _
收藏 2 评论10 发布时间:2015-1-28 10:24

举报

10个回答
天天晓宇 回答时间:2015-1-28 11:38:28
stary666 回答时间:2015-1-28 12:18:43
moyanming2013 回答时间:2015-1-28 12:25:12
过来学习。。。
wu1169668869 回答时间:2015-1-28 12:28:53
不错,等到错了再出来找orz
时光碎了天 回答时间:2015-1-28 12:36:51
很不错的
cxtarm 回答时间:2015-1-28 12:49:24
子曰小玖 回答时间:2015-1-28 13:09:08
coolblood 回答时间:2015-1-28 13:42:36
不错
bldc小菜鸟 回答时间:2015-1-28 15:55:06
不错,不错,最近做实验keil越来越操蛋。
Scofield_Gu 回答时间:2017-6-30 12:37:28
好好好

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版