1. 主页
  2. 文档
  3. 双轮平衡小车
  4. 外设
  5. LED

LED

LED原理图

LED发光二极管,顾名思义,本质是一个二极管,具有单向导电性,当施加正向电压时,电流流经,二极管导通发光。

驱动板上共有三颗LED灯,一颗用于指示3.3V电源,而剩下两颗连接GPIO口,可通过软件输出高低电平进行驱动。

电源指示灯
可编程驱动的指示灯,靠近WIFI模块

可编程驱动的指示灯,靠近MPU模块

相关代码路径:HARDWARE/LED/led.c

初始化代码:

void LED_init(void)
{    	 
  GPIO_InitTypeDef  GPIO_InitStructure;

  RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOD|RCC_AHB1Periph_GPIOG, ENABLE);//使能GPIOF时钟

  //GPIOD0,G10初始化设置
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;//对应IO口
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;//普通输出模式
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽输出
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
  GPIO_Init(GPIOD, &GPIO_InitStructure);//初始化GPIO
	
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;//对应IO口
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;//普通输出模式
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽输出
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
  GPIO_Init(GPIOG, &GPIO_InitStructure);//初始化GPIO
	
}

指示灯LED2、LED3分别用来指示WIFI模块和MPU模块的正确初始化:

void LED2_light(void)
{
	GPIO_SetBits(GPIOD,GPIO_Pin_0);
}

void LED3_light(void)
{
	GPIO_SetBits(GPIOG,GPIO_Pin_10);
}

因此需要在WIFI模块初始化和MPU模块初始化之后调用。

这篇文章对您有用吗?

我们要如何帮助您?

发表评论

邮箱地址不会被公开。 必填项已用*标注