在调试窗口勾选“CMSIS-DAP Debugger”调试器。这是使用GD-Link调试器需要的。
图3-17 调试器选择
点击设置按钮,并确认使用SW方式调试。
图3-18 CMSIS-DAP Debugger设置
在Flash Download中勾选Reset and Run选项,以便程序下载后可以直接运行看效果。
图3-19 Flash Download配置
修改main.c文件下的LED_config()函数如下,对LED的GPIO进行初始化。
图3-20 LED_config()函数
在主函数中添加LED控制程序如下。
图3-21 工程主函数
在gd32f20x_it.c程序的SysTick_Handler()中断函数中修改如下代码。
图3-22 SysTick_Handler()中断函数
编译工程,无错误和警告。
图3-23 工程编译完成
确保GD32207i-EVAL评估板正确供电并链接了GD-Link调试器,点击调试按钮,使用GD-Link调试器对工程进行单步调试,这对程序开发人员来说是非常好的福音,可以方便查找错误,查看中间变量等等。
图3-24 单步调试界面
图3-25 变量查看界面
也可在MDK中点击下载程序按钮,待程序下载完成,就可以看到熟悉的流水灯效果,在这里就不给大家演示了。
整个开发过程相当简单顺利,而且可以使用板载的GD-Link对工程进行单步调试。而且大家可以看到,这个过程和之前大家熟悉的STM32的标准外设库的开发过程基本一致,而且库文件内容和编程格式也一致,因此对工程师迁移到GD32上开发没有什么难度。
4、实例
兆易创新公司为GD32207i-EVAL评估板提供了非常丰富的例程来供用户熟悉GD32F2XX系列MCU。这么好的资源,当然不能错过了,下面就找个实例测试一下。
感觉GD-Link不带虚拟串口功能是一个小的遗憾,正好看到例程中有一个使用gd32实现虚拟USB串口的例程,那就拿它来测试一下。
具体工程在资料盘的“GD32207I_EVAL_GD32F20x_Firmware_Library_RoutineProject”下的第22个例程“22_USB_OTG_Device_VirtualCOMPort”。
图3-26 虚拟串口例程
打开MDK工程文件,在工程目录中有readme.txt文件可供参考。
图3-27 虚拟串口例程工程
编译工程,发现有许多错误,但都是同样的,“......LibraryGD32F20x_Firmware_LibraryFirmwareCMSIScore_cm3.h(147): error: #5: cannot open source input file "core_cmInstr.h": No such file or directory”,提示找不到core_cmInstr.h头文件。
图3-28 虚拟串口例程编译错误
原因应该是版本问题,在GD32的固件库中没有带有这个文件。它的位置在大家的MDK安装目录”C:Keil_v5ARMPackARMCMSIS4.5.0CMSISInclude“可以找到,在c/c++编译选项中添加包含目录。
图3-29 添加包含路径
记得仿真调试选项也选择“CMSIS-DAP Debugger”调试器,以便可以使用GD-Link下载调试程序。
图3-30 修改调试器
再次编译就没有问题。
确保32207i-EVAL评估板的USB OTG接口连接电脑,GD-Link接口连接电脑,JP5 跳到Usart1 端, JP31选择LCD_R2。然后将程序下载到评估版并运行。
可以看到计算机的设备管理器多了一个未被识别的设备,这个就是本实例实现的虚拟串口,需要安装驱动程序(GDUSB2Ser.inf),此驱动程序可以从“/documents#001”下载。其安装方法可以参考其解压后GD VCP Driver 文件夹中的安装文档。驱动安装成功后,就可以在计算机设备管理器中找到新添加的串口。
图3-31 虚拟串口驱动程序
图3-32 驱动程序安装后的虚拟串口
在上面可以看到,计算机上显示了一个串口“COM7“连接的是评估版的串口1,串口”COM10“连接的是评估板虚拟出的USB串口。
图3-33 虚拟串口硬件接线
同时在评估版的LCD屏上显示了USB通信过程的提示信息。
图3-34 虚拟串口例程提示信息
在计算机上打开2个串口助手,就可以互相通信了。
图3-35 串口调试信息
可以看到,通信正常。是不是发现GD32207i-EVAL评估板功能很强大吧。
在使用过GD32207i-EVAL评估板之后,有几点点小小的感触:
(1)兆易创新的GD32系列在开发过程中关于GD32207i-EVAL评估板串口的问题,希望能把串口1除了RS232形式引出来外,能够单独引出一个TTL形式的串口,因为在调试过程中估计大家经常需要连电脑,对用笔记本的人来说,估计都配的有USB-TTL的串口模板,不用像我这样连接。
(3)强烈建议公司在后期给GD-Link调试器添加虚拟串口功能。
(4)建议兆易创新公司在后期可以考虑能为用户提供一个图形化的编程工具,几乎所有流行的MCU产品都有类似功能的软件来帮助用户快速开发,向ST的STM32 CUBEMX工具,NXP(原飞思卡尔的产品)的PE工具,TI的CCS中Grace工具等等。
四、总结
GD32207i-EVAL评估板是兆易创新公司为最新推出的基于ARM Cortex-M3内核的高性价比增强型GD32F205和GD32F207系列微控制器的评估套件,板载有GD-Link编程调试器、4.3寸4线电阻屏、以太网接口、SDRAM和NAND Flash存储器、OV7670摄像头等模块,资源丰富,可供用户快速评估GD32F207系列微控制器性能。同时提供简单易用的固件库和丰富的工程例程缩短开发周期,适用多种主流IDE助力系统开发。
评估板的微控制器GD32F207IKT6,主频120MHz,集成3MB Flash、256KB SRAM,内核访问闪存高速零等待,最高主频下的工作性能可达150DMIPS,同时强了对视频图像、液晶显示、存储扩展以及高速信号采集等应用的支持,GD32F2xx系列延续了更高性能与更优价格相结合的价值核心,保持了与GD32现有产品在软件和引脚封装方面的完美兼容。GD32F2xx系列微控制器主要定位于工业控制、人机界面、安全支付、车载设备和物联网等市场应用。
参考
1、兆易创新(GigaDevice)推出GD32F2系列全新高性能增强型Cortex-M3 MCU:
/news/detail/new_id/78
2、GD32207I-EVAL光盘资料
3、兆易创新网站资料:/documents