之前偶然的机会拆到了几片GD32F103RET6芯片,正好借活动的机会来体验一下兆易创新的这款芯片。本次实验测试就是用其中一片做的开发板,其它的几片准备做点其它的小玩意。
一、硬件准备
1、从这款芯片的数据手册上可以得知,这是一款Cortex-M3内核、LQFP64封装的微控制器,外设资源丰富,功能强大,时钟频率更是高达108MHz。
2、选用的这块PCB板原来是配套STM32F103Rx的,与GD32F103RET6引脚兼容,很适合GD32F103RET6安家。下面是焊接完成后的照片,看着还不错。焊接时有松香污染,芯片表面的丝印不是太清晰了,为了与另一片相同的STM32开发板区别特意打了个标签;
二、软件测试
1、准备各种资源,首先去了http://gd32mcu.21ic.com/documents,这里的东西很多,包括编译器支持包、库开发包、各种手册等,按需下载就可以了。
2、实验环境:
a、Keil V5.27.1.0;
b、GigaDevice.GD32F10x_DFP.2.0.1.pack;
c、GD32F10x_Firmware_Library_V2.1.0;
d、GD32F103RET6开发板;
e、J-LINK V9.4;
三、建立实验工程
1、这里首先安装GD32F10x_Firmware_Library_V2.1.0,安装后KEIL中就会有GD32F103RE选项,当然如果使用IAR也有同样的支持包可选;
2、利用GD32F10x_Firmware_Library_V2.1.0建立实验工程,具体过程就不多说了。我这里实验主要是点亮板载的三颗LED,让其按一定的频率进行闪烁,建立好的工程目录及其它主要配置(附件中有本次实验的完整工程及原理图):
3、主要代码
根据原理图对相应端口进行配置;
- void GPIO_Init(void)
- {
- rcu_periph_clock_enable(RCU_GPIOC);
- gpio_deinit(LED_PORT);
- gpio_init(LED_PORT,
- GPIO_MODE_OUT_PP,
- GPIO_OSPEED_50MHZ,
- LED1|LED2|LED3);
- gpio_bit_set(GPIOC, LED1|LED2|LED3);
- }
- void LED_ON(void)
- {
- gpio_bit_reset(LED_PORT, LED1|LED2|LED3);
- }
- void LED_OFF(void)
- {
- gpio_bit_set(LED_PORT, LED1|LED2|LED3);
- }
|