怎么给kl25z建立一个usb_device 的keil工程

2019-03-26 07:53发布

本帖最后由 liwenz 于 2016-6-12 09:31 编辑

我在学用kl25z , 看例子工程都还不错,编译连接,调试都可以。
其中有个工具 make_new_project-sc_Keil, 也就是建立工程模板,感觉不错。

但我特想学习usb device 程序, 源代码也有,但我不知道怎么建立工程。
我用模板工具建立了一个usb_device ,然后添加 usb_main.c 到工程里, 当然还要添加其他的文件。
为了能编译, 我把很多相关其他文件都注释掉,可以编译成功。
然后我就取消如下2行的注释,可就不行了。当然我也添加include 路径。
#include "usb_cdc.h"
#include "usb_reg.h"

错误信息如下。 如果我把其他文件都加上,错误信息更多, 为了简化问题,我只是加这2行.

compiling usb_main.c...
......srccpuarm_cm0.h(19): error:  #147-D: declaration is incompatible with "void NVIC_EnableIRQ(IRQn_Type)" (declared at line 626 of "C:KeilARMPACKARMCMSIS3.20.3CMSISIncludecore_cm0plus.h")
  void enable_irq (int);
......srccpuarm_cm0.h(20): error:  #147-D: declaration is incompatible with "void NVIC_DisableIRQ(IRQn_Type)" (declared at line 638 of "C:KeilARMPACKARMCMSIS3.20.3CMSISIncludecore_cm0plus.h")
  void disable_irq (int);

kl25_sc_rev10 样例库,有cw ,iar ,keil 的工程文件, 我只会用keil , 其实如果用 iar 就有现成的usb_device. 不知道为什么keil 和 cw 没有这个工程目录, src 都是公用的。
如果你不能得到 kl25_sc_rev10 , 可以qq 联系我: 635477196 理文

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
6条回答
liwenz
2019-03-27 09:19
我下载编译下载都很好。
按照链接的方法,做了一遍,却有点问题。
出现如下错误:
Error[Li005]: no definition for "USBD_ReqGetStatus" [referenced from D:kl25z
kl25_sc_rev10klxx-sc-baremetaluildiarplatinumFLASH_128KBObjusbd_core.o]

我就检查 usbd_core.c
inline BOOL USBD_ReqGetStatus (void) {
这不是明明为inline 函数吗 ?  怎么会 no definition
我就编译链接不了。

我把isr.h中
#undef  VECTOR_040
#define VECTOR_040 USB0_IRQHandler

extern void USB0_IRQHandler(void);
这3行注释掉,编译链接下载都可以了,运行结果不对了。
因为本来要设置usb 中断的,却没有。

一周热门 更多>