新唐把CooCox作为官方开发环境推荐,可是俺拿到NUC472的例程中开发环境全是Keil和IAR,于是乎开工,先弄一个闪烁灯的工程。
首先找个地方建立一个文件夹做根目录,然后把新唐NUC400开发包中的Library文件夹拷过来。
然后在根目录下建立一个文件夹用于放闪烁灯工程,就叫LED好了,之所以这么做是因为CooCox是不会为一个新的工程新建一个文件夹的。
打开CooCox,Project-New Project 选择刚建立的LED目录(如果不让选目录的话就把Use Default Path那个勾去掉) Project Name就叫LED,Next
点Chip按钮,Next,然后选择对应的芯片型号,这里用的是NUC472HI8AE,点Finish完成工程建立。
下一步我们要仿照新唐的Keil工程结构对这个工程进行结构化。
建立三个Group:CMSIS Library User,建立Group的方法在左侧Project那个栏里面,右键,Add Group。
CMSIS文件夹用于放启动代码和系统初始化文件,Library文件夹用于放外设库,User文件夹放我们自己写的程序。
然后往里面添加文件,CMSIS文件夹下添加system_NUC472_442.c 在Library\Device\Nuvoton\NUC472_442\Source目录中
Library中添加Library\StdDriver\src中所有.c文件
把Coocox自动生成的main.c文件拖到User目录中
这里还一个比较重要的文件没有添加就是启动代码,我在新唐的开发包中找了半天也没找到CooCox能用的启动代码,干脆就采用CooCox自己的启动代码好了,
启动代码在附件中,startup_Cortex_M4.c
最后要完成Include路径的添加,否则会出现找不到头文件的问题。
点击Configuration按钮,选择Compile选项卡,找到Includepaths这个字样,右侧有个add按钮,
添加三个路径
../library/cmsis/include
../library/device/nuvoton/nuc472_442/include
../library/stddriver/inc
最后把开发包中 SampleCode\NUC472-NuTiny\LED 这个目录下的 main.c内容复制到工程的main.c中
编译,Debug
(编译之前确定一下Gcc工具链配置了么) |