聚沃科技SDK使用指南

描述

写在前面:聚沃科技SDK使用GD固件库基础上开发了MCU外设驱动的中间层以及板级外设的驱动,相关例程调用驱动函数实现,用户在基于聚沃科技的SDK做产品开发时,可以很方便的适配新的硬件,直接调用相关驱动接口开发上层应用即可,类似STM32的hal库,弥补了原厂这一块的空缺,并且在驱动中做了很多容错性处理,总结了应用中常见一些问题,可靠性比原厂demo例程更好,可在裸机、RTOS等不同开发框架下稳定运行,能很好的缩短软件开发周期。

本文主要针对SDK如何重定义硬件接口和外设参数进行说明,方便让大家快速灵活使用聚沃科技SDK。

软件架构简介

聚沃科技SDK框架如下图所示,底层驱动为官方提供的外设库,聚沃科技实现了抽象层驱动包括MCU_Driver和BSP_Driver,其中MCU_Driver为MCU底层外设驱动,调用底层驱动进行再次封装,BSP_Driver为板级资源驱动,调用MCU_Driver进行再次封装,便于应用层调用,应用层及应用层驱动为上层应用,包括主函数文件以及相关上层驱动。该例程架构经过多层封装便于读者开发中直接使用。

mcu

主要功能介绍:

  • driver_public.c

该文件主要会初始化延时模块、系统tick中断、配套例程的LCD和串口打印,不同系列之间也会根据芯片特点做一些必要性初始化,比如H7的SDK中还做了cache的使能、中断向量表到SRAM的copy和偏移、基础MPU的配置。

在mian函数开始调用driver_init即可,产品开发中不需要LCD和串口打印可配置LCD_DEBUG为0或直接删除对应代码:

mcu

 

提供了机器周期延时、us延时、ma延时函数,采用了仅查询方式实现,支持函数重入、ROTS下调用等。

mcu

 

提供了定时任务函数指针可方便增加一些简单的定时任务,配置时间值并指向函数即可自动调用执行:

mcu
  • driver_public.h

测试例程功能时,在该头文件中可以选择LCD打印信息,并选择对应的屏幕类型,例程结果会显示在LCD上,不使用LCD时LCD_DEBUG配置0即可;

mcu

该文件中预留了分散加载的宏定义,可以方便的指定变量、函数位置,需要配合工程配置以及SCT文件使用:

mcumcumcumcu
  • driver_xx.c\bsp_xx.c中定义接口和参数

在驱动文件上方提供了注册接口或参数的示例,可参考修改即可:

  • 普通GPIO:
mcu

GPIO_DEF括号内内容分别是:注册名称、PORT、PIN、GPIO模式、默认电平、IO中断回调函数;需要增加或者修改可以复制模版后修改名称和参数。

调用驱动时将注册名称指针传输调用:

mcu
  • UART、SPI、I2C等:
mcu

定义USART时参考模版分别定义TX、RX、DMA通道,USART波特率和模式,如没有使用DMA任意填写参数;

通信类外设有三个模式:MODE_POLL、MODE_DMA、MODE_INT可选,根据需要选择配置,也可以应用中修改结构体参数并重初始化来灵活变更模式。

mcu

 

教程由GD32 MCU方案商聚沃科技原创发布,了解更多GD32 MCU教程以及聚沃科技资料板下载,关注聚沃科技官网

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分