0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CW32F003E4芯片入门学习:3.工程模板的创建(不使用例程或模板)

jf_qE49KoVBr8 来源:武汉芯源半导体 2024-04-24 14:15 次阅读

1.2.1.新建keil工程文件夹

创建一个文件夹为CW32_new_pro,注意避免出现中文路径和特殊符号

1.2.2.创建keil工程

打开keil,选择Project->New uVision Project,选择CW32_new_pro文件夹目录,输入项目名称,例子使用CW32_new_pro

4edebd58-01f7-11ef-a297-92fbcf53809c.png

1.2.3.选择芯片型号

芯片型号为CW32F003F4,如下:

4ef50e3c-01f7-11ef-a297-92fbcf53809c.png

1.2.4.选择CMSIS固件

4f008348-01f7-11ef-a297-92fbcf53809c.png

1.2.5.复制CW32库文件和启动文件

复制CW32库文件和启动文件到CW32_new_pro

库文件路径:CW32F003_StandardPeripheralLib_V1.4Libraries,

启动文件路径:CW32F003_StandardPeripheralLib_V1.4IdeSupportMDKstartup_cw32f003.s

4f0c1de8-01f7-11ef-a297-92fbcf53809c.png

1.2.6.创建main.c

在keil中右键Source Group1(根据自己的group名称还选择),选择Add New Item toGroupxxx,创建main.c文件.

4f213f16-01f7-11ef-a297-92fbcf53809c.png

4f34228e-01f7-11ef-a297-92fbcf53809c.png

1.2.7.添加库文件和启动

在Groups,新建group取名为cw32_lib

4f40f090-01f7-11ef-a297-92fbcf53809c.png

选择cw32_lib,点击AddFiles,找到CW32_new_proLibrariessrc目录,把所有.c选中,点击Add->Close->OK,完成添加。

4f58df34-01f7-11ef-a297-92fbcf53809c.png

添加启动文件

4f6d433e-01f7-11ef-a297-92fbcf53809c.png

1.2.8.添加头文件路径

4f8773f8-01f7-11ef-a297-92fbcf53809c.png

1.2.9.选择编译器

4f9671b4-01f7-11ef-a297-92fbcf53809c.png

1.2.10.main.c文件编写

示例如下:

#include "base_types.h"
#include "cw32f003.h"
#include "system_cw32f003.h"


int32_t main(void)
{


  CW_SYSCTRL->AHBEN_f.GPIOC = 1U; // Open GPIOC Clk


  CW_GPIOC->ANALOG_f.PIN0 = 0U; // Digital
  CW_GPIOC->BRR_f.BRR0 = 1U;    // Reset PA00
  CW_GPIOC->DIR_f.PIN0 = 0U;    // Output


  while (1)
  {
    CW_GPIOC->TOG = bv0;//电平发名字卷
    FirmwareDelay(100000);
  }
}

1.2.11.编译

4fb0a4a8-01f7-11ef-a297-92fbcf53809c.png

点击上图所示的编译选项,会出现下图所示的错误,原因是重复定义了。

4feebbda-01f7-11ef-a297-92fbcf53809c.png

打开cw32f003_systick.c文件将164行的__weak void SysTick_Handler(void)修改为void SysTick_Handler(void)。即可解决14点的错误

再次点击编译,无错误,完成工程创建。

4ffc5a24-01f7-11ef-a297-92fbcf53809c.png

可以看到0个错误,0个警告,至此,工程模板创建完成。

1.2.12 探讨1.2.11的编译报错原因:

CW32要用AC5编译器,用AC6编译会报错,可能是这样的错误,还有一堆的警告

501166f8-01f7-11ef-a297-92fbcf53809c.png

KEIL从MDK5.37版本开始已经不集成AC5编译器了,想用最新版本有两个方法:

方法1: 最简单的方法是先安装5.36再安装最新版本,这样AC5可以自动集成到MDK中。

安装完MDK后把ARMCC文件夹手动放到keil安装目录的ARM文件夹中

501d5a1c-01f7-11ef-a297-92fbcf53809c.png

然后在keil中手动添加,选择刚刚添加的文件夹

5026359c-01f7-11ef-a297-92fbcf53809c.png

50378630-01f7-11ef-a297-92fbcf53809c.png

如果不想折腾安装AC5编译器,可以对现有工程代码修改以适应AC6的编译规则

CW32的例程直接用AC6编译的话一般会报这个错误

5047da3a-01f7-11ef-a297-92fbcf53809c.png

AC6中__weak这个关键字不能被识别,改为__WEAK就好了(或如上删去),关键字的不同可以看这个图:

5052f7da-01f7-11ef-a297-92fbcf53809c.png

更多的关于MDK适配AC6的内容可以下载KEIL官方的文档进行查看https://developer.arm.com/documentation/kan298/latest/或者看ARM的AC6介绍,里面也有说明如何从AC5转向

AC6https://developer.arm.com/documentation/100068/latest/

1.2.13 补充:用AC6编译有中文的代码会报-Winvalid-source-encoding的警告

用AC6编译有中文的代码会报-Winvalid-source-encoding的警告

5072931a-01f7-11ef-a297-92fbcf53809c.png

可以在下方如图位置填入-Wno-invalid-source-encoding 将该警告信息屏蔽

507c0166-01f7-11ef-a297-92fbcf53809c.png


审核编辑:刘清
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • CMSIS
    +关注

    关注

    0

    文章

    40

    浏览量

    11908
  • CW32
    +关注

    关注

    1

    文章

    210

    浏览量

    649

原文标题:CW32F003E4芯片入门学习:3.工程模板的创建(不使用例程或模板)

文章出处:【微信号:武汉芯源半导体,微信公众号:武汉芯源半导体】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【LabVIEW懒人系列教程-视觉入门】2.6LabVIEW模板匹配之创建模板

    链接:https://pan.baidu.com/s/1-zxcJBxPgk4t1E***YlzSng提取码:7kyh 今日总结① 模板匹配的模板图像创建编程运用今日作业熟悉视觉助手中
    发表于 08-11 21:41

    怎样搭建环境与CCS6创建工程模板

    环境3 CCS6创建工程模板4 结语  鄙人之前学习过STM32,现在学习DSP的永磁同步电机矢
    发表于 08-06 08:28

    如何创建STM32Keil工程模板

    STM32F103基于库函数的工程模板创建一、Keil软件安装1、下载keil(MDK版)2、安装支持包3、下载对应固件库文件二、
    发表于 12-08 07:11

    利用STM32创建工程模板的方法

    STM32学习1:创建工程模板1,建立工程文件夹2,Keil新建工程3,Keil
    发表于 02-14 06:54

    OpenCV3编程入门-源码例程全集-模板匹配

    OpenCV3编程入门-源码例程全集-模板匹配
    发表于 09-17 22:55 4次下载

    STM32F4XX的模板例程

    完整的STM32F4XX的模板例程
    发表于 03-05 15:25 47次下载

    Smart Cortex M3-1788配套例程工程模板资料免费下载

    本文档的主要内容详细介绍的是SmartCortex M3-1788配套例程工程模板详细资料免费下载例程囊括tcp/ip can uart
    发表于 10-17 08:00 33次下载

    STM32Keil工程模板创建(详细配图)

    STM32Keil工程模板创建(详细配图)
    发表于 11-25 11:06 11次下载
    STM32Keil<b class='flag-5'>工程</b><b class='flag-5'>模板</b><b class='flag-5'>创建</b>(详细配图)

    DSP 基础学习 1:搭建环境与CCS6创建工程模板

    环境3 CCS6创建工程模板4 结语  鄙人之前学习过STM32,现在学习DSP的永磁同步电机矢
    发表于 11-26 10:36 17次下载
    DSP 基础<b class='flag-5'>学习</b> 1:搭建环境与CCS6<b class='flag-5'>创建工程</b><b class='flag-5'>模板</b>

    STM32学习1:创建工程模板

    STM32学习1:创建工程模板1,建立工程文件夹2,Keil新建工程3,Keil
    发表于 12-08 19:06 4次下载
    STM32<b class='flag-5'>学习</b>1:<b class='flag-5'>创建工程</b><b class='flag-5'>模板</b>

    STM32CubeMX 创建工程模板

    STM32CubeMX 创建工程模板
    发表于 12-08 20:06 20次下载
    STM32CubeMX <b class='flag-5'>创建工程</b><b class='flag-5'>模板</b>

    STM32F4系列标准库工程模板文件结构分析及标准工程模板分享

    STM32F4系列标准库工程模板文件结构分析及标准工程模板分享
    发表于 12-09 13:51 27次下载
    STM32<b class='flag-5'>F4</b>系列标准库<b class='flag-5'>工程</b><b class='flag-5'>模板</b>文件结构分析及标准<b class='flag-5'>工程</b><b class='flag-5'>模板</b>分享

    CW32F003E4芯片入门学习3.工程模板创建不使例程模板

    Project,选择CW32_new_pro文件夹目录,输入项目名称,例子使用CW32_new_pro 1.2.3.选择芯片型号 芯片型号为CW3
    的头像 发表于 03-27 09:37 727次阅读
    <b class='flag-5'>CW32F003E4</b><b class='flag-5'>芯片</b><b class='flag-5'>入门</b><b class='flag-5'>学习</b>:<b class='flag-5'>3.</b><b class='flag-5'>工程</b><b class='flag-5'>模板</b>的<b class='flag-5'>创建</b>(<b class='flag-5'>不使</b>用<b class='flag-5'>例程</b><b class='flag-5'>或</b><b class='flag-5'>模板</b>)

    CW32F003E4芯片入门学习4.工程模板创建(使用例程模板)

    1.3.1拷贝模板工程和库文件 模板路径:CW32F003_StandardPeripheralLib_V1.4ExamplesTemplate 库文件路径
    的头像 发表于 03-27 09:39 508次阅读
    <b class='flag-5'>CW32F003E4</b><b class='flag-5'>芯片</b><b class='flag-5'>入门</b><b class='flag-5'>学习</b>:<b class='flag-5'>4</b>.<b class='flag-5'>工程</b><b class='flag-5'>模板</b><b class='flag-5'>创建</b>(使用<b class='flag-5'>例程</b><b class='flag-5'>或</b><b class='flag-5'>模板</b>)

    CW32F003E4芯片入门学习4.工程模板创建(使用例程模板)

    模板路径:CW32F003_StandardPeripheralLib_V1.4ExamplesTemplate
    的头像 发表于 04-24 14:14 407次阅读
    <b class='flag-5'>CW32F003E4</b><b class='flag-5'>芯片</b><b class='flag-5'>入门</b><b class='flag-5'>学习</b>:<b class='flag-5'>4</b>.<b class='flag-5'>工程</b><b class='flag-5'>模板</b><b class='flag-5'>创建</b>(使用<b class='flag-5'>例程</b><b class='flag-5'>或</b><b class='flag-5'>模板</b>)