我的GD32105R_START开发板终于有机会和大家见面了,今晚初次体验了一把,首先从最简单的开始着手,先试着点亮一个LED灯,照亮探索的大道。先上一张效果图吧:(由于夜光拍照不是很清楚)
下面就简单说一下初次体验的感受吧,因为与STM32高度的兼容性,所以初次实验还是相当的顺利的,下面就将整个的过程和大家分享一下:
1、新建工程,完全可以按照新建STM32工程的步骤,针对开发板的型号,无图无真相,选用与ST相对应的芯片类型
接下来就是工程的简单设置了
接下来添加头文件的路径和宏定义接下来添加头文件的路径和宏定义
2、下面就是针对新建工程添加ST库中的源文件和新建自己的C文件H文件,建好的工程如图
3、GD32 与STM32 启动时间都是2ms,实际上GD 的执行效率快,所以ST 的HSE_STARTUP_TIMEOUT ((uint16_t)0x0500)是2ms,但是这个宏定义值在GD 上时间就更加短了,所以要加大这个值的设置将宏定义:
#define HSE_STARTUP_TIMEOUT ((uint16_t)0x0500)
修改为:
#define HSE_STARTUP_TIMEOUT ((uint16_t)0xFFFF)
4、到此一切就绪,连接好JLink和开发板,跑起来吧
5、源程序
#include "includes.h" /* **************************************************************************** *函数名称: void main(void) *函数功能:系统初始化,LED初始化,周期闪烁LED *入口参数:无 *出口参数:无 *日期:2015 3 20 *版本:V1.0 *作者:yrjaa * LED/PC6 **************************************************************************** */ void main(void) { SystemInit(); /*初始化系统时钟*/ delay_init( 72 ); /*初始化延时函数*/ /* LED对应管脚PC6 初始化 */ RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE); GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_Pin=GPIO_Pin_6; GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz; GPIO_Init(GPIOC,&GPIO_InitStructure); while(1) { GPIO_SetBits(GPIOC,GPIO_Pin_6); /* 点亮LED */ Delay_ms(500); GPIO_ResetBits(GPIOC,GPIO_Pin_6); /* 熄灭LED */ Delay_ms(500); } }
程序是如此的简单,使用是如此的方便,看样子GD32一点不逊于STM32的。
有不足之处欢迎大家拍砖,交流使人进步。。。