本帖最后由 大头哥 于 2020-11-21 17:12 编辑
前天拿到了板子,今天才有时间把LED灯点亮。
不得不说,MRS IDE已经做得很好用了,WCH-LINK模块也很赞。
步骤比较简单,用MRS缺省模板创建一个Project:LED,然后进行LED的初始化GPIO,我用的时候PB3和PB7,中间隔了一个PIN避免碰线。
main.c代码如下:
/********************************** (C) COPYRIGHT *******************************
* File Name : main.c
* Author : WCH
* Version : V1.0.0
* Date : 2020/04/30
* Description : Main program body.
*******************************************************************************/
/*
*@Note
串口打印调试例程:
USART1_Tx(PA9)。
本例程演示使用 USART1(PA9) 作打印调试口输出。
*/
#include "debug.h"
/* Global typedef */
/* Global define */
/* Global Variable */
void GPIO_LED_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3 | GPIO_Pin_7;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOB, &GPIO_InitStructure);
}
/*******************************************************************************
* Function Name : main
* Description : Main program.
* Input : None
* Return : None
*******************************************************************************/
int main(void)
{
//NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
USART_Printf_Init(115200);
printf("SystemClk:%d\r\n", SystemCoreClock);
printf("This is LED example\r\n");
Delay_Init();
GPIO_LED_Init();
while (1)
{
GPIO_WriteBit(GPIOB, GPIO_Pin_3, Bit_SET);
Delay_Ms(500);
GPIO_WriteBit(GPIOB, GPIO_Pin_3, Bit_RESET);
Delay_Ms(500);
GPIO_WriteBit(GPIOB, GPIO_Pin_7, Bit_SET);
Delay_Ms(500);
GPIO_WriteBit(GPIOB, GPIO_Pin_7, Bit_RESET);
Delay_Ms(500);
}
}
附上完整代码:
这是视频截图,眨呀眨的,,,
|