javnson 发表于 2022-5-9 22:52

[GD32F310评测]开发环境小试

<p>这款芯片到手之后,比我想象中的小很多很多,但是根据我们上周的策划,这款芯片的外设资源基本可以适应一台电机的驱动任务。</p>

<p>本周的计划是跑通GD32给到的例程。我使用的开发环境是千年不变的Keil5.23。</p>

<p>### 环境布置</p>

<p>按照说明书里所说,基本步骤如下:</p>

<p>+ 安装Pack包</p>

<p>`GigaDevice.GD32F30x_DFP.2.2.0.pack`这个包已经提供在试用首页下载了。</p>

<p>+ 接下来找到试用工程</p>

<p>可以在`GD32F3x0_Demo_Suites_V2.2.0`中找到针对此次试用的`GD32310G_START_Demo_Suites`,此次我们以工程`03_EXTI_Key_Interrupt_mode`为例。</p>

<p>在工程文件目录中`MDK-ARM`可以找到`GD32F310G_START.uvproj`的Keil工程项目文件,按照说明要求,需要将文件后缀名改成`*.uvprojx`,然后再打开。</p>

<p>+ 尝试编译工程</p>

<p>打开之后发现找不到库文件。</p>

<p> &nbsp;</p>

<p>接下来需要将库文件拷贝到它这里链接的位置或者直接重新添加,我才用的方法是直接自己找一个新的位置,然后重新添加文件,注意**还需要同步一下include文件位置**。</p>

<p>首先修改一下源文件的位置</p>

<p> &nbsp;</p>

<p>然后在头文件配置中添加好新的位置,之后把之前原有的内容删掉就好。</p>

<p> &nbsp;</p>

<p>编译一下:</p>

<p> &nbsp;</p>

<p>+ 烧录</p>

<p>先检查一下烧录相关的配置,应当使用板载的DAP工具,可以看到如下图所示:</p>

<p> &nbsp;</p>

<p>能够正常发现设备,然后就可以直接开始烧录,调试一下。找一个顺眼的函数打一个断点,可以正常中断并开始调试。</p>

<p> &nbsp;</p>

<p>### 测试代码简单的分析</p>

<p>这段测试代码的主要作用是按键控制灯开关。在程序最先初始化完的时候灯会闪亮一下,然后进入按键控制状态。</p>

<p>主要的代码逻辑如下:</p>

<p>``` C++<br />
// 系统初始化</p>

<p>// 初始化中断和中断向量<br />
nvic_irq_enable(EXTI0_1_IRQn, 2U, 0U); // 启用特定中断,并赋予优先级<br />
syscfg_exti_line_config(EXTI_SOURCE_GPIOA, EXTI_SOURCE_PIN0); // 设定中断源<br />
exti_init(EXTI_0, EXTI_INTERRUPT, EXTI_TRIG_FALLING); // &nbsp;设定触发条件:下降沿<br />
exti_interrupt_flag_clear(EXTI_0); // 清除中断标志,将允许中断响应</p>

<p>// 配置IO口</p>

<p>// 闪一下<br />
&nbsp;led_flash(1); // 亮250ms,灭250ms</p>

<p>// 主循环,空循环<br />
```</p>

<p>按键中断逻辑:</p>

<p>``` C++<br />
void EXTI0_1_IRQHandler(void)<br />
{<br />
&nbsp; &nbsp; if(RESET != exti_interrupt_flag_get(EXTI_0)){<br />
&nbsp; &nbsp; &nbsp; &nbsp; gpio_bit_write(GPIOA, GPIO_PIN_1,&nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; (bit_status)(1-gpio_input_bit_get(GPIOA, GPIO_PIN_1)));<br />
&nbsp; &nbsp; }<br />
&nbsp; &nbsp;&nbsp;<br />
&nbsp; &nbsp; exti_interrupt_flag_clear(EXTI_0);<br />
}<br />
```</p>

<p>判定一下是否有中断标志位被置位,如果有,那么执行翻转,在中断结束位清除中断标志。</p>

<p>小结一下,这次配置通过了调试环境,并调试通过了一项例程。之后的开发将会在此例程的基础上进行改进。</p>

javnson 发表于 2022-5-9 22:52

<p>完蛋,这次md的图片正常了,里面加的助记又异常显示出来了,太离谱了</p>
页: [1]
查看完整版本: [GD32F310评测]开发环境小试