#include "led.h"
//////////////////////////////////////////////////////////////////////////////////
// 本程序只供国轩使用，未经作者许可，不得用于其它任何用途
//  BMS3-MCU1主板
//  LED驱动代码
// 作者:郁伉
// 创建日期:2018/10/11
// 版本：V1.0
// 版权所有，盗版必究。
//  Copyright(C) 上海国轩新能源有限公司 2016-2024
//  All rights reserved
//////////////////////////////////////////////////////////////////////////////////

// LED IO WATCHDOG IO初始化
void LED_Init(void)
{
    GPIO_InitTypeDef GPIO_InitStructure;

    // WATCHDOG
    RCC_AHB1PeriphClockCmd(macWATCHDOG_CLK, ENABLE); // 使能时钟
    GPIO_InitStructure.GPIO_Pin   = macWATCHDOG_PIN;
    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_NOPULL;  // 上拉
    GPIO_Init(macWATCHDOG_PORT, &GPIO_InitStructure);  // 初始化GPIO

    GPIO_ResetBits(macWATCHDOG_PORT, macWATCHDOG_PIN); //

    // RUN LED
    RCC_AHB1PeriphClockCmd(macLED_RUN_CLK, ENABLE); // 使能时钟
    GPIO_InitStructure.GPIO_Pin   = macLED_RUN_PIN;
    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_NOPULL;  // 上拉
    GPIO_Init(macLED_RUN_PORT, &GPIO_InitStructure);   // 初始化GPIO
    LED_RUN_OFF();                                     // 灯灭

    //  FAULT LED
    RCC_AHB1PeriphClockCmd(macLED_FAULT_CLK, ENABLE); // 使能时钟
    GPIO_InitStructure.GPIO_Pin   = macLED_FAULT_PIN;
    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_NOPULL;  //
    GPIO_Init(macLED_FAULT_PORT, &GPIO_InitStructure); // 初始化GPIO
    LED_FAULT_OFF();
}
