欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

从零开始构建 cortex-m0 UART 项目

最编程 2024-04-30 19:28:53
...

本文介绍了通过Keil开发工具,在已有工程源码的情况下建立一个Cortex-M0工程的基本流程,并通过串口打印数据来表明程序能够成功运行。

1. 创建工程

 建立新工程 Project -> New uVision Project

 2. 选择器件ARMCM0

2. 向工程中添加文件

1. 在工程根目录下,创建Include目录,并添加文件:

CMSDK_CM0.h核内外设访问层Core Peripheral Access Layer

core_cm0.h核内外设访问层Core Peripheral Access Layer,定义了使用的CMSIS版本、Cortex内核、工具链,提供了核内外设访问层的定义,例如核内外设的数据结构和地址映射,也提供了一些访问Cortex-M0核内寄存器及外设的静态内联函数

system_CMSDK_CM0.h片上外设访问层Device Peripheral Access Layer,和system_CMSDK_CM0.c定义了系统初始化函数SystemInit ()和一些指示时钟的变量。

这一目录下通常存放CMSIS相关头文件

 2. 继续在工程目录下,创建Hardware目录,并添加文件

cortex_uart.c, cortex_uart.h 定义了串口操作相关函数,如uart的初始化、接收和发送

cortex_gpio.c, cortex_gpio.h 定义了GPIO操作相关函数,如gpio初始化等

3. 在工程目录下,创建Source目录,并添加文件

main.c用户自定义main函数

startup_CMSDK_CM0.sM0启动文件

startup_CMSDK_CM0.c

headinclude.h包含了各外设的头文件

4. 回到Keil,右键Target1,添加新group,分别重命名为:Application, Hardware, Include, Startup

向Application中添加文件main.c

向Hardware中添加文件cortex_uart.c, cortex_gpio.c

向System中添加文件startup_CMSDK_CM0.c

向Startup中添加文件startup_CMSDK_CM0.s

5. 编译后的结构

 6. 设置C/C++中的Define为CORTEX_M0,将之前建立的目录包含到Include Paths中 ./Include; ./Hardware; ./Source

 7. 根据根据实际情况,由自己的调试方式来配置调试选项 

3. 运行和调试

编译通过后点击调试

可以发现已经进入了main函数,开始执行第一行代码。

继续运行程序,可以发现在执行printf后串口助手收到数据

原文地址:https://www.cnblogs.com/Annabelle/p/11260515.html