第一步:安装芯片支持包,可以到华大官网下载对应的芯片MDK支持包的既可
第二步:创建新工程
输入名称,点击保存到Projiect文件下
第三步:选择对应的芯片包对应的芯片型号(前提我们要小华官网先下载对应的MDK芯片支持包,下载下来双击安装即可)
方法2 。复制ST库的内核标准文件到我们的CMSIS目录下,注意HC32L是M0+内核。
第一步:创建目录添加文件
APP还没放代码,所以为空闲预留,后续自己可以添加外设驱动放在这里
BSP比如GPIO\timer等等,大家 自己可以放
库文件添加大家根据自己需求来放置,我是去全都添加进去
启动文件
第二步:声明头文件
添加完
第三步:编译优化配置。华大驱动库中断的特点是回调函数调用,而编译器是会优化掉一些认为不用的函数的,所以我们要屏蔽优化回调函数。--keep=*Handler
第四步:输出hex
第五步:细心的同学肯定发现刚刚我们移植的CMSIS目录下的MDK算法文件没有用到,当然你也可以用上。如下,这个文件只要跟你到时候仿真有关系,我们还是添加下,这个具体含义我不太懂。
第六步:我们编译下
编译完有警告与错误,我们先来解决下错误
(1)错误查找解决,这个错误显示是库文件ram.c的类型与头文件的类型不一致,报错的。
修改完,错误没有了
(2)警告排查
说实话这些警告看不出问题所在,后面与官方提佛
上面这个警告表示不会执行到这一句话
上面这个警告表示这个参数超出“int”范围,确实这个1<<31,确实超出这个类型范围
那么回过头看看官方提供的代码,发现官方提供的DEMO没有警告,警告查找发现他默认使用的是编译器6版本。
我们也改成V6版本编译器,重新编译
编译通过,我去查找了V6编译器没招相关有用的资料,如果你们有找到跟我说下,共勉学习下。
我猜测是V6的编译器int类型的范围变成64位了,这样才你能合理解释把
那么到这里,我们整个裸机工程创建结束啦!
工程文件
链接:https://pan.baidu.com/s/1Q5tm52aqviDYVa2ODmORiA
提取码:5vt5