1.环境文件准备
打开链接:MM32G0001 库函数与例程 下载 LibSamples_MM32G0001_V2.1.5.zip

下滑,找到推荐软件,KEIL Pack 下载 MM32_KEIL_Pack_2.25.zip

2.安装
MM32_KEIL_Pack_2.25.zip(解压)- MindMotion.MM32G0001_DFP.1.0.1.pack(双击安装 - 直接next)
LibSamples_MM32G0001_V2.1.5(解压)
路径:\LibSamples_MM32G0001_V2.1.5\Samples\LibSamples\GPIO\GPIO_LED_Toggle\MDK-ARM
找到 GPIO_LED_Toggle.uvprojx(双击打开 或 拖到arm keil打开)
编译没有问题
3.点灯
3.1单片机上电
D1(下载指示灯),D3(电源指示灯)常亮,D2为呼吸灯状态,按下按键可改变呼吸速度

3.2下载(编译完成后点击 Download)

结果:D1(下载指示灯),D3(电源指示灯)常亮,D2熄灭;
3.3使D2闪烁
打开gpio_led_toggle.c找到两个函数:
void GPIO_Configure(void);
void GPIO_LED_Toggle_Sample(void);
void GPIO_Configure(void)
{
GPIO_InitTypeDef GPIO_InitStruct;
RCC_AHBPeriphClockCmd(RCC_AHBENR_GPIOA, ENABLE);
GPIO_StructInit(&GPIO_InitStruct);
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_15 | GPIO_Pin_10 | GPIO_Pin_6 | GPIO_Pin_5;
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_High;
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(GPIOA, &GPIO_InitStruct);
GPIO_WriteBit(GPIOA, GPIO_Pin_15 | GPIO_Pin_10 | GPIO_Pin_6 | GPIO_Pin_5, Bit_SET);
}
void GPIO_LED_Toggle_Sample(void)
{
printf("\r\nTest %s", __FUNCTION__);
GPIO_Configure();
while (1)
{
GPIO_IO_Toggle(GPIOA, GPIO_Pin_15);
GPIO_IO_Toggle(GPIOA, GPIO_Pin_10);
GPIO_IO_Toggle(GPIOA, GPIO_Pin_6);
GPIO_IO_Toggle(GPIOA, GPIO_Pin_5);
PLATFORM_DelayMS(100);
}
}修改为
void GPIO_Configure(void)
{
GPIO_InitTypeDef GPIO_InitStruct;
RCC_AHBPeriphClockCmd(RCC_AHBENR_GPIOA, ENABLE);
GPIO_StructInit(&GPIO_InitStruct);
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_15 | GPIO_Pin_11 | GPIO_Pin_10 | GPIO_Pin_6 | GPIO_Pin_5;//修改项,添加 | GPIO_Pin_11
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_High;
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(GPIOA, &GPIO_InitStruct);
GPIO_WriteBit(GPIOA, GPIO_Pin_15 | GPIO_Pin_11 | GPIO_Pin_10 | GPIO_Pin_6 | GPIO_Pin_5, Bit_SET);//修改项,添加 | GPIO_Pin_11
}
void GPIO_LED_Toggle_Sample(void)
{
printf("\r\nTest %s", __FUNCTION__);
GPIO_Configure();
while (1)
{
// GPIO_IO_Toggle(GPIOA, GPIO_Pin_15);//注释
// GPIO_IO_Toggle(GPIOA, GPIO_Pin_10);//注释
// GPIO_IO_Toggle(GPIOA, GPIO_Pin_6);//注释
// GPIO_IO_Toggle(GPIOA, GPIO_Pin_5);//注释
GPIO_IO_Toggle(GPIOA, GPIO_Pin_11);//添加 GPIO_IO_Toggle(GPIOA, GPIO_Pin_11);
PLATFORM_DelayMS(100);
}
}编译,下载
效果D2每隔约100ms闪烁
完成点灯闪烁
4.其他
附件1为原理图
参考链接:

