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

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

3天内不再提示

【GD32 MCU 入门教程】三、固件库使用方法和启动流程介绍

聚沃科技 2024-08-08 17:54 次阅读

GD32 MCU标准固件库是一个固件函数包,它由程序、数据结构和宏组成,包括了GD32 MCU所 有外设的性能特征。固件库还包括每一个外设的驱动描述和基于评估板的固件库使用例程。通过 使用标准固件库,用户无需深入掌握细节,也可以轻松应用每一个外设。使用固件库可以大大减 少用户的编程时间, 从而降低开发成本。每个外设驱动都由一组函数组成,这组函数覆盖了该外 设所有功能。 可以通过调用一组通用API(application programming interface应用编程界面)来实 现对外设的驱动, 这些API的结构、函数名称和参数名称都进行了标准化规范。 在此以GD32E23x系列固件库为例进行说明固件库架构及使用方法,其他系列固件库可类比参考。

1.固件库文件夹组织结构

GD32E230_Firmware_Library文件组织结构如图 0-1固件库文件组织结构图所示。

输入图片说明

2. 文件夹 Examples 文件详解

文件夹Examples,对应每一个GD32外设均包含一个子文件夹。 每个子文件夹包含了关于本外设的一个或多个例程,来示范如何使用对应外设。 每个例程子文件夹包含如下文件:

◼ readme.txt: 关于本例程的简单描述和使用说明;

◼ GD32e230_libopt.h:该头文件可以设置例程所使用到的外设,由不同的“DEFINE”语句组成(默认情况下,所有外设均打开);

◼ GD32e230_it.c:该源文件包含了所有的中断处理程序(如果未使用到中断,则所有的函数体都为空);

◼ GD32e230.it.h:该头文件包含了所有的中断处理程序的原形;

◼ systick.c: 该源文件包含了使用systick的精准延时程序;

◼ systick.h: 该头文件包含了使用systick的精准延时程序的原形;

◼ main.c:例程代码注:所有的例程的使用,都不受不同软件开发环境的影响。Firmware文件夹包含组成固件库核心的所有子文件夹和文件:

◼ CMSIS子文件夹包含有Cortex M23内核的支持文件、 基于Cortex M23内核处理器的启动代码和库引导文件以及基于GD32E230的全局头文件和系统配置文件;

◼ GD32E230_standard_peripheral子文件夹;
– Include子文件夹包含了固件函数库所需的头文件,用户无需修改该文件夹;
– Source子文件夹包含了固件函数库所需的源文件,用户无需修改该文件夹。

3. 固件库例程使用方法

3、Template文件夹包含一个关于使用LED、 USART打印、 按键控制的简单例程,(IAR_project用于IAR编译环境, Keil_project用于Keil5编译环境)。 用户可以使用该工程模板进行固件库例程的移植编译, 具体使用方法见下:

(1) 选择文件

打开“Examples”文件夹,选择需要测试的模块,如SPI,打开”SPI”文件夹,选择SPI的一个例程,如”SPI_master_transmit_slave_receive_interrupt”,如图所示

输入图片说明

(2)拷贝文件

打开“Template”文件夹,将” IAR_project”和” Keil_project”两个文件夹保留,其他文件都删除,然后将“SPI_master_transmit_slave_receive_interrupt”文件夹中的所有文件拷到“Template”文件夹子目录下,如图所示

输入图片说明

(3)打开工程

GD提 供 Keil和 IAR两种版本的工程,根据客户所安装的软件,打开不同的 project,如”Keil_project”,打开\Template\Keil_project\Project.uvproj,如图所示

输入图片说明

由于不同的模块、不同的功能,会使用到不同的文件,需要根据客户选择拷贝的文件,对工程里的文件进行增加或删除,如图所示

输入图片说明

(4)编译调试下载

首先编译整个工程,如果无错误,按照readme中的介绍,选择正确的跳线及连线,然后再将程序下载到目标板上,则会有如readme中描述的现象。 IDE的具体使用,请参考相应的软件使用说明。如客户使用的是Keil,可见下图

输入图片说明

4. Utilities 文件夹

Utilities文件夹包含运行固件库例程评估板的文件:

◼ Binary、 LCD_Commom及Third_Party子文件夹;

◼ GD32e230_eval.h及GD32e230_lcd_eval.h文件是运行固件库例程所需关于评估板的头文件;

◼ GD32e230_eval.c及GD32e230_lcd_eval.c文件是运行固件库例程所需关于评估板的源文件

5. 固件函数库文件描述

固件库使用的主要文件如表下表固件函数库文件描述所示,读者可以参考。

输入图片说明

教程GD32 MCU方案商聚沃科技原创发布,了解更多GD32 MCU教程,关注聚沃科技官网

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

    关注

    6032

    文章

    44513

    浏览量

    632715
  • 嵌入式
    +关注

    关注

    5068

    文章

    19008

    浏览量

    303005
  • 固件库
    +关注

    关注

    2

    文章

    97

    浏览量

    14923
  • GD32
    +关注

    关注

    7

    文章

    403

    浏览量

    24209
收藏 人收藏

    评论

    相关推荐

    GD32 MCU 入门教程GD32 MCU 常见外设介绍(12)FMC 模块介绍

    闪存控制器(FMC),提供了片上闪存需要的所有功能。FMC 也提供了页擦除,整片擦除,以及32 位整字或 16 位半字编程闪存等操作。 GD32 MCU 支持不同类型编程的具体说明如下表 GD32
    的头像 发表于 08-21 09:56 971次阅读
    <b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入门教程</b>】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 常见外设<b class='flag-5'>介绍</b>(12)FMC 模块<b class='flag-5'>介绍</b>

    已结束-【书籍评测活动NO.6】兆易创新FAE参与撰写:GD32 MCU原理及固件开发指南

    市面上还没有专门介绍GD32固件的书籍,这给广大初学者在学习方面带来了一定的困难。为全面系统地介绍GD
    发表于 03-08 10:12

    GD32 MCU学习这本书的理由

    驱动程序和API接口,可以帮我快速地实现各种功能。第,学习并可以掌握嵌入式系统开发的基本技能,并逐步提升自己的编程能力。第四,增加自己的就业竞争力并打开更广阔的职业发展空间。综上所述,学习GD32 MCU原理
    发表于 03-10 20:06

    GD32 MCU原理及固件开发指南》 + 初读感悟

    GD32 MCU原理固件开发指南这本书内容丰富,囊括了GD32中的所有外设,书中首先介绍了如何
    发表于 03-31 22:11

    GD32 MCU原理及固件开发指南》+读后感

    。 第2章介绍GD32 MCU快速入门与开发平台搭建的方法,包括对软硬件开发平台、调试工具、GD32
    发表于 06-06 21:52

    GD32单片机的Firmware_Library使用方法教程

    本文档介绍的是GD32单片机的文件的结构以及如何使用。
    发表于 08-28 16:24 69次下载

    使用STM32固件开发GD32 汇总

    区别描述解决方法2. 部分客户使用有源晶振出现问题,在 GD32F103 小容量产品,发现会在 MCU 的复 位管脚一直把电平拉到0.89V,电平不能保持在高电平描述解决方法3.
    发表于 12-27 18:38 23次下载
    使用STM32<b class='flag-5'>固件</b><b class='flag-5'>库</b>开发<b class='flag-5'>GD32</b> 汇总

    兆易创新GD32 MCU选型手册,适用于GD32全系列MCU

    兆易创新GD32MCU选型手册,适用于GD32全系列MCUGD32MCU选型手册,适用于GD32全系列MCU
    发表于 10-19 17:26 49次下载

    GD32 MCU 入门教程】一、GD32 MCU 开发环境搭建(1)使用Keil开发GD32

    GD32系列为通用型MCU,所以开发环境也可以使用通用型的IDE,目前使用较多的是KEIL、IAR、 GCC和Embedded Builder,客户可以根据个人喜好来选择相应的开发环境。
    的头像 发表于 08-08 15:01 1001次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入门教程</b>】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 开发环境搭建(1)使用Keil开发<b class='flag-5'>GD32</b>

    GD32 MCU 入门教程】一、GD32 MCU 开发环境搭建(2)使用 IAR 开发 GD32

    GD32系列为通用型MCU,所以开发环境也可以使用通用型的IDE,目前使用较多的是KEIL、IAR、 GCC和Embedded Builder,客户可以根据个人喜好来选择相应的开发环境。
    的头像 发表于 08-08 15:40 584次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入门教程</b>】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 开发环境搭建(2)使用 IAR 开发 <b class='flag-5'>GD32</b>

    GD32 MCU 入门教程】一、GD32 MCU 开发环境搭建(3)使用 Embedded Builder 开发 GD32

    GD32系列为通用型MCU,所以开发环境也可以使用通用型的IDE,目前使用较多的是KEIL、IAR、 GCC和Embedded Builder,客户可以根据个人喜好来选择相应的开发环境。
    的头像 发表于 08-08 16:03 818次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入门教程</b>】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 开发环境搭建(3)使用 Embedded Builder 开发 <b class='flag-5'>GD32</b>

    GD32 MCU 入门教程】二、GD32 MCU 烧录说明(1)ISP 烧录

    ISP:In System Programing,在系统编程,通过MCU片内的引导程序进行Flash编程。 GD32片内有一个只读信息块,用于存放引导装载程序,引导程序在MCU出厂前就会提前烧录好
    的头像 发表于 08-08 16:20 742次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入门教程</b>】二、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 烧录说明(1)ISP 烧录

    GD32 MCU 入门教程GD32 MCU 常见外设介绍(14)RTC 模块介绍

    GD32 MCU内部提供了一个RTC(实时时钟)模块,通过RTC可以实现日历时钟、闹钟等功能。RTC也可以用于深度睡眠或待机模式的低功耗唤醒。不同系列的GD32 MCU在RTC设计和功
    的头像 发表于 08-23 09:18 368次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入门教程</b>】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 常见外设<b class='flag-5'>介绍</b>(14)RTC 模块<b class='flag-5'>介绍</b>

    GD32 MCU 入门教程GD32 MCU FPU 使用方法

    GD32 MCU FPU 使用方法
    的头像 发表于 08-25 09:24 460次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入门教程</b>】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> FPU <b class='flag-5'>使用方法</b>

    GD32 MCU入门教程GD32 MCU GPIO 结构与使用注意事项

    本文是专门为基于GD32 MCU开发的工程设计人员提供,主要介绍了GPIO的功能配置、内部结构以及在不同场景使用时的注意事项,旨在帮助GD32 MC
    的头像 发表于 09-07 10:34 576次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b><b class='flag-5'>入门教程</b>】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> GPIO 结构与使用注意事项