大家好,我们团队的名字是灵芯,参赛编号是CICC2959。 今天主要介绍一下如何利用E203的GPIO资源。
首先,我们打开约束文件:e203——hbirdv2/fpga/mcu200t/constrs/nuclei-master.xdc,这个文件里对GPIO进行了约束,其中GPIOA已经与MCU20T的外设连接好,而GPIOB则全部都没有连接外设资源,需要自己配。此外,约束文件中PACKAGE_PIN 后的引脚号对应于板子原理图上的BANK模块输出引脚号,在板子上是找不到GPIOA/GPIOB的,但可以通过引脚号找到板子上相应的位置。
在了解到GPIO的位置及相应的功能后,我们就可以通过配套的软件驱动hbirdv2来利用起它们,在NucleiStudio的工程文件中, hbird_sdk\SoC\hbirdv2\Common\Source\Drivers路径下存放了已经封装好的GPIO驱动函数 ,将hbirdv2_gpio.h和board_mcu200t.h文件includ到main里即可直接调用它们,birdv2_gpio.c文件是GPIO驱动函数的具体实现,函数中GPIO_TypeDef *gpio在调用时填GPIOA或GPIOB,对于GPIOA的uint32_t mask已经在hbird_sdk\SoC\hbirdv2\Board\muc200t\include\路径下的board_mcu200t.h中全部宏定义好了,GPIOB的uint32_t mask开参考这个来配置。
具体实现