聚沃科技SDK使用指南

[复制链接]
1396|3
手机看帖
扫描二维码
随时随地手机跟帖
聚沃科技|  楼主 | 2024-5-6 09:48 | 显示全部楼层 |阅读模式
#申请原创#
写在前面:聚沃科技SDK使用GD固件库基础上开发了MCU外设驱动的中间层以及板级外设的驱动,相关例程调用驱动函数实现,用户在基于聚沃的SDK做产品开发时,可以很方便的适配新的硬件,直接调用相关驱动接口开发上层应用即可,类似STM32hal库,弥补了原厂这一块的空缺,并且在驱动中做了很多容错性处理,总结了应用中常见一些问题,可靠性比原厂demo例程更好,可在裸机、RTOS等不同开发框架下稳定运行,能很好的缩短软件开发周期。
本文主要针对SDK如何重定义硬件接口和外设参数进行说明,方便让大家快速灵活使用聚沃科技SDK
软件架构简介
聚沃科技SDK框架如下图所示,底层驱动为官方提供的外设库,聚沃科技实现了抽象层驱动包括MCU_DriverBSP_Driver,其中MCU_DriverMCU底层外设驱动,调用底层驱动进行再次封装,BSP_Driver为板级资源驱动,调用MCU_Driver进行再次封装,便于应用层调用,应用层及应用层驱动为上层应用,包括主函数文件以及相关上层驱动。该例程架构经过多层封装便于读者开发中直接使用。
图片1.png
主要功能介绍:
driver_public.c
该文件主要会初始化延时模块、系统tick中断、配套例程的LCD和串口打印,不同系列之间也会根据芯片特点做一些必要性初始化,比如H7SDK中还做了cache的使能、中断向量表到SRAMcopy和偏移、基础MPU的配置。
mian函数开始调用driver_init即可,产品开发中不需要LCD和串口打印可配置LCD_DEBUG0或直接删除对应代码:
图片2.png
提供了机器周期延时、us延时、ma延时函数,采用了仅查询方式实现,支持函数重入、ROTS下调用等。
图片3.png
提供了定时任务函数指针可方便增加一些简单的定时任务,配置时间值并指向函数即可自动调用执行:
图片4.png
driver_public.h
测试例程功能时,在该头文件中可以选择LCD打印信息,并选择对应的屏幕类型,例程结果会显示在LCD上,不使用LCDLCD_DEBUG配置0即可;
图片5.png
该文件中预留了分散加载的宏定义,可以方便的指定变量、函数位置,需要配合工程配置以及SCT文件使用:
图片6.png
图片7.png
图片8.png
图片9.png
driver_xx.c\bsp_xx.c中定义接口和参数
在驱动文件上方提供了注册接口或参数的示例,可参考修改即可:
普通GPIO
图片10.png
GPIO_DEF括号内内容分别是:注册名称、PORTPINGPIO模式、默认电平、IO中断回调函数;需要增加或者修改可以复制模版后修改名称和参数。
调用驱动时将注册名称指针传输调用:
图片11.png
○ UARTSPII2C等:
图片12.png
定义USART时参考模版分别定义TXRXDMA通道,USART波特率和模式,如没有使用DMA任意填写参数;
通信类外设有三个模式:MODE_POLLMODE_DMAMODE_INT可选,根据需要选择配置,也可以应用中修改结构体参数并重初始化来灵活变更模式。
图片13.png
本教程由GD32 MCU方案商聚沃科技原创发布,了解更多GD32 MCU教程以及开发板资料,关注聚沃科技官网
GD32MCU技术交流群:859440462



使用特权

评论回复
sagade| | 2024-5-6 09:52 | 显示全部楼层
感觉原厂真的摆烂,要么只支持大客户

使用特权

评论回复
trucyw| | 2024-5-7 08:08 | 显示全部楼层
现在的芯片厂商普遍都认同大客户,小客户太无赖

使用特权

评论回复
埃娃| | 2024-5-15 22:55 | 显示全部楼层
小客户一般都得找代理

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

67

主题

87

帖子

2

粉丝