查看: 1851|回复: 0

小红板GD32F190那些事之工程模块建立篇

[复制链接]
  • TA的每日心情
    开心
    2017-6-17 09:42
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    发表于 2016-5-5 08:51:44 | 显示全部楼层 |阅读模式
    分享到:
    小红板GD32F190那些事之工程模块建立篇

    一、 硬件连接
    1、小编硬件配置

    图1.1电脑系统属性

    2、将小红板连入电脑后

    图1.2串口驱动成功图

    3、小编的驱动是电脑自动安装的,如果你的出现叹号或安装不成功,请以管理员身份安装驱动,驱动下载网:https://www.eeboard.com/gd32f190mcu/?ziliao

    图1.3需下载的资料图

    同时请将上面的资料全部下载下来。
    二、 工程环境搭建
    1、看自己Keil的版本是否支持GD32,不然需要去网上下载一个5.13以上版本的Keil
    我用的这个5.16a 大家可以在这下载https://pan.baidu.com/s/1hq92Zwo
    2、当装好keil后,我们需下载将GD32F1x0_Firmware_Library_V2.0.0.rar解压后点击运行。出现下图后直接点击Next即可,不要做其他任何操作。
                                                 

    图2.1安装GD32F1x0_Firmware_Library_V2

    3、当我们上述工作都完成了,我们打开keil,点击projectànew uVision project新建工程保存后就能看到下图中的内容。若没有,我们要将Device选成Software Packs,不然将重新安装GD32F1x0_Firmware_Library_V2
                                           
    图2.2 GD32F190Device

    三、工程创建
    1、创建两个目录Library 和 project,我们将下载的资料中的GD32F1x0_Firmware_Library_V2.0.0.rad,解压后拷贝到Library中。并按照上面工程环境搭建中的第3点将工程命名后保存到project文件夹中。弹出如下对话框,我们进行选择则如下图。
    图3.1 Device配置

    2、接下来就是我们工程模板制作过程。请按下面图的顺序操作

    图3.2模板创建一


    图3.2模板创建二

    路径:library\GD32F1x0_Firmware_Library_V2.0.0\Firmware\CMSIS\ARM

    图3.3模板创建三

    路径:library\GD32F1x0_Firmware_Library_V2.0.0\Firmware\CMSIS

    图3.4模板创建四(全部添加进去)

    路径: library\GD32F1x0_Firmware_Library_V2.0.0\Firmware\Peripherals\src

    图3.5模板创建五(如上图将选中的文件拷贝到project文件夹下)


    图3.6模板创建六

    路径: \project(刚复制过来文件中的C文件)

    图3.7模板创建七

    路径: \project

    图3.7模板创建八


    图3.7模板创建九


    图3.7模板创建十(添加头文件的搜索路径)


    图3.7模板创建十一(选择下载方式)


    图3.7模板创建十二(选择下载方式)


    图3.7模板创建十三(选择Flash)

    到此我们的工程配置就全部完成了。接下来就是写程序了。
    四、实现流水灯
               1、代码
    /**      ******************************************************************************  * @file    main.c  * @author  shamozhihuong  * @version V2.0.0  * @date    04-May-2016  * @brief   The main function file.  ******************************************************************************  *//* Includes ------------------------------------------------------------------*/#include "gd32f1x0.h"#include "systick.h"/* Private functions ---------------------------------------------------------*/void GD_GPIO_Confing(void){         GPIO_InitPara  GPIO_InitStructure;    /* Enable the LED Clock */    RCC_AHBPeriphClock_Enable(RCC_AHBPERIPH_GPIOB, ENABLE);    /* Configure the LED pin */    GPIO_InitStructure.GPIO_Pin = GPIO_PIN_8|GPIO_PIN_9|GPIO_PIN_10;    GPIO_InitStructure.GPIO_Mode = GPIO_MODE_OUT;    GPIO_InitStructure.GPIO_OType = GPIO_OTYPE_PP;    GPIO_InitStructure.GPIO_PuPd = GPIO_PUPD_NOPULL;    GPIO_InitStructure.GPIO_Speed = GPIO_SPEED_50MHZ;    GPIO_Init(GPIOB, &GPIO_InitStructure);                GPIO_ResetBits(GPIOB, GPIO_PIN_8|GPIO_PIN_9|GPIO_PIN_10); }/**  * @brief  Toggle the LED every 500ms.  * @param  None  * @retval None  */void DG_Delay(void){    int x,y;        for(x=0;x<0x2ff;x++)        for(y=0;y<0x2ff;y++);}/**  * @brief  Main program.  * @param  None  * @retval None  */int main(void){    GD_GPIO_Confing();                //SysTick_Configuration();    while (1)    {                        GPIO_ResetBits(GPIOB, GPIO_PIN_9|GPIO_PIN_10);                        GPIO_SetBits(GPIOB, GPIO_PIN_8);                        DG_Delay();                        GPIO_ResetBits(GPIOB, GPIO_PIN_8|GPIO_PIN_10);                        GPIO_SetBits(GPIOB, GPIO_PIN_9);                        DG_Delay();                        GPIO_ResetBits(GPIOB, GPIO_PIN_8|GPIO_PIN_9);                        GPIO_SetBits(GPIOB, GPIO_PIN_10);                        DG_Delay();                            }}/******************* (C) COPYRIGHT 2016 shamozhihuong *****END OF FILE****/2、实验结果


    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /5 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-12-20 02:14 , Processed in 0.138138 second(s), 17 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.