昨天看到板卡申请信息,考虑到之前未用过灵动微电子的芯片,因此申请一块灵动的G0001板卡体验。昨天下午申请,今天上午便收到了板卡快递。
先上板卡完整图:

收到板卡后,便是上灵动官网下资料,具体链接如下:
上海灵动微电子股份有限公司 (mindmotion.com.cn) 此链接下载芯片参考工程文件和对应芯片资料
上海灵动微电子股份有限公司 (mindmotion.com.cn) 此链接下载Keil pack,目前arm官方还未上G系列的keil pack,自能在此路径下载
https://chendo.gitee.io/webusb/examples/firmware/src/G0001/FTHR-G0001_SCH.pdf 板卡原理图官网未找到,最终在论坛中找到
安装好环境后,便开始点灯操作,先按照原理图将例程中的电灯管脚改对。

对应代码修改为:
void GPIO_Condiv(void)
{
GPIO_InitTypeDef GPIO_InitStruct;
RCC_AHBPeriphClockCmd(RCC_AHBENR_GPIOA, ENABLE);
GPIO_StructInit(&GPIO_InitStruct);
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_11;
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(GPIOA, &GPIO_InitStruct);
GPIO_WriteBit(GPIOA, GPIO_Pin_11, Bit_SET);
}
void GPIO_LED_Toggle_Sample(void)
{
printf("\r\nTest %s", __FUNCTION__);
GPIO_Condiv();
while (1)
{
GPIO_IO_Toggle(GPIOA, GPIO_Pin_11);
PLATFORM_DelayMS(100);
}
}
之后编译烧录进板卡(板卡只需要用typec线接到PC机即可,插入后会识别出一个U盘,初步怀疑固件放在U盘里也能升级,暂未验证),烧录完毕后可以看到绿灯以100ms间隔闪烁/
验证完点灯后,便是增加按键信息,此时查看原理图,发现按键接口为PA2:

此时按如下方法改写代码:
void GPIO_Condiv(void)
{
GPIO_InitTypeDef GPIO_InitStruct;
RCC_AHBPeriphClockCmd(RCC_AHBENR_GPIOA, ENABLE);
GPIO_StructInit(&GPIO_InitStruct);
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_11;
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(GPIOA, &GPIO_InitStruct);
GPIO_WriteBit(GPIOA, GPIO_Pin_11, Bit_SET);
GPIO_StructInit(&GPIO_InitStruct);
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_2;
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_IPU;
GPIO_Init(GPIOA, &GPIO_InitStruct);
GPIO_WriteBit(GPIOA, GPIO_Pin_2, Bit_SET);
}
void GPIO_LED_Toggle_Sample(void)
{
printf("\r\nTest %s", __FUNCTION__);
GPIO_Condiv();
while (1)
{
if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_2) == Bit_SET)
{
GPIO_IO_Toggle(GPIOA, GPIO_Pin_11);
}
else
{
GPIO_SetBits(GPIOA, GPIO_Pin_11);
}
PLATFORM_DelayMS(100);
}
}
更改完毕后编译烧录,此时看到的效果和只改灯一致,按下按键,发现绿灯熄灭。
具体效果视频如下:
总结:
MM32G0001上手方面可以做到快速上手,学习成本低。
2023/08/08 20:20
全部评论