176 lines
5.0 KiB
C
176 lines
5.0 KiB
C
|
|
/*
|
|||
|
|
*********************************************************************************************************
|
|||
|
|
* IAR Development Kits
|
|||
|
|
* on the
|
|||
|
|
*
|
|||
|
|
* M451
|
|||
|
|
*
|
|||
|
|
* Filename : gpio_vcc.c
|
|||
|
|
* Version : V1.00
|
|||
|
|
* Programmer(s) : Qian Xianghong
|
|||
|
|
*********************************************************************************************************
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
/*
|
|||
|
|
*********************************************************************************************************
|
|||
|
|
* INCLUDE FILES
|
|||
|
|
*********************************************************************************************************
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
#include "includes.h"
|
|||
|
|
|
|||
|
|
volatile uint8_t LCD_Disabled = 0;
|
|||
|
|
|
|||
|
|
void Vcc_Init()
|
|||
|
|
{
|
|||
|
|
LL_GPIO_InitTypeDef GPIO_InitStruct = {0};
|
|||
|
|
|
|||
|
|
/* GPIO Ports Clock Enable */
|
|||
|
|
|
|||
|
|
// LL_AHB2_GRP1_EnableClock(LL_AHB2_GRP1_PERIPH_GPIOC);
|
|||
|
|
LL_AHB2_GRP1_EnableClock(LL_AHB2_GRP1_PERIPH_GPIOA);
|
|||
|
|
LL_AHB2_GRP1_EnableClock(LL_AHB2_GRP1_PERIPH_GPIOB);
|
|||
|
|
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
GPIO_InitStruct.Mode = LL_GPIO_MODE_ANALOG;
|
|||
|
|
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
|
|||
|
|
|
|||
|
|
//
|
|||
|
|
GPIO_InitStruct.Pin = LL_GPIO_PIN_4
|
|||
|
|
|LL_GPIO_PIN_5|LL_GPIO_PIN_11|LL_GPIO_PIN_12|LL_GPIO_PIN_15;
|
|||
|
|
LL_GPIO_Init(GPIOA, &GPIO_InitStruct);
|
|||
|
|
|
|||
|
|
GPIO_InitStruct.Pin = LL_GPIO_PIN_8|LL_GPIO_PIN_9;
|
|||
|
|
LL_GPIO_Init(GPIOB, &GPIO_InitStruct);
|
|||
|
|
|
|||
|
|
// PC.14~15 is OSC32
|
|||
|
|
// GPIO_InitStruct.Pin = LL_GPIO_PIN_13|LL_GPIO_PIN_14|LL_GPIO_PIN_15;
|
|||
|
|
// LL_GPIO_Init(GPIOC, &GPIO_InitStruct);
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
GPIO_InitStruct.Mode = LL_GPIO_MODE_OUTPUT;
|
|||
|
|
GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_LOW;
|
|||
|
|
GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
|
|||
|
|
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
|
|||
|
|
|
|||
|
|
GPIO_InitStruct.Pin = LL_GPIO_PIN_8;
|
|||
|
|
LL_GPIO_Init(GPIOA, &GPIO_InitStruct);
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD>ÿ<EFBFBD><C3BF>ص<EFBFBD>Ĭ<EFBFBD><C4AC>״̬
|
|||
|
|
// VCC_GSM_OFF();
|
|||
|
|
// VCC_GPS_OFF();
|
|||
|
|
// VCC_RS485_OFF();
|
|||
|
|
// VCC_RF_OFF();
|
|||
|
|
// VCC_BD_OFF();
|
|||
|
|
// VCC_SFLASH_FRAM_ON();
|
|||
|
|
// VCC_SENSOR_5V_ON();
|
|||
|
|
VCC_SENSOR_5V_OFF();
|
|||
|
|
// KZ_CHARGE_ENABLE_LOW();
|
|||
|
|
// // <20>ϵ<EFBFBD><CFB5>ȹرյ<D8B1><D5B5>ŷ<EFBFBD>
|
|||
|
|
// KZ_CHARGE_DISABLE_HIGH();
|
|||
|
|
//// Charge_Pulse_Time = GetDelayTick(1000);
|
|||
|
|
//
|
|||
|
|
// KZ_ALARM_OFF();
|
|||
|
|
// KZ_LOW_ALARM_OFF();
|
|||
|
|
// KZ_LOW_LEVEL_OFF();
|
|||
|
|
// KZ_LEVEL_OFF();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void Vcc_Disable()
|
|||
|
|
{
|
|||
|
|
// <20>ѳ<EFBFBD><D1B3><EFBFBD>LCD<43><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD><D9B6>жϡ<D0B6><CFA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⡢<EFBFBD><E2A1A2><EFBFBD>ƿ<EFBFBD><C6BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊģ<CEAA><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
LL_GPIO_InitTypeDef GPIO_InitStruct = {0};
|
|||
|
|
|
|||
|
|
GPIO_InitStruct.Mode = LL_GPIO_MODE_ANALOG;
|
|||
|
|
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
|
|||
|
|
//PA0,1,2,3 AIN5 AIN6 AIN7 REF3V
|
|||
|
|
//PA6 DIO1 PA7 DIO0
|
|||
|
|
//PA 8 PWNEN <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
//PA9,10 U1TX
|
|||
|
|
// PA.13~14 is JTAG-SW
|
|||
|
|
GPIO_InitStruct.Pin =LL_GPIO_PIN_0|LL_GPIO_PIN_1|LL_GPIO_PIN_2|LL_GPIO_PIN_3
|
|||
|
|
|LL_GPIO_PIN_4|LL_GPIO_PIN_5|LL_GPIO_PIN_8
|
|||
|
|
|LL_GPIO_PIN_9|LL_GPIO_PIN_10|LL_GPIO_PIN_11|LL_GPIO_PIN_12
|
|||
|
|
|LL_GPIO_PIN_15;
|
|||
|
|
LL_GPIO_Init(GPIOA, &GPIO_InitStruct);
|
|||
|
|
|
|||
|
|
//PB0 DIO3
|
|||
|
|
//PB1 U3DE
|
|||
|
|
//PB2 LORA-RST
|
|||
|
|
//PB10,11 U3TX U3RX
|
|||
|
|
|
|||
|
|
// PB3.4.5 KEY
|
|||
|
|
// PB.6~7 is lcd (scl, sda)
|
|||
|
|
// PB.12 is cs
|
|||
|
|
// PB.13~15 is spi_LORA
|
|||
|
|
GPIO_InitStruct.Pin =LL_GPIO_PIN_0|LL_GPIO_PIN_1|LL_GPIO_PIN_2
|
|||
|
|
|LL_GPIO_PIN_6|LL_GPIO_PIN_7|LL_GPIO_PIN_8
|
|||
|
|
|LL_GPIO_PIN_9|LL_GPIO_PIN_10|LL_GPIO_PIN_11;
|
|||
|
|
LL_GPIO_Init(GPIOB, &GPIO_InitStruct);
|
|||
|
|
|
|||
|
|
|
|||
|
|
GPIO_InitStruct.Pin = LL_GPIO_PIN_0|LL_GPIO_PIN_1|LL_GPIO_PIN_2|LL_GPIO_PIN_3
|
|||
|
|
|LL_GPIO_PIN_4|LL_GPIO_PIN_5|LL_GPIO_PIN_6|LL_GPIO_PIN_7|LL_GPIO_PIN_5|LL_GPIO_PIN_8
|
|||
|
|
|LL_GPIO_PIN_9|LL_GPIO_PIN_10|LL_GPIO_PIN_11|LL_GPIO_PIN_12
|
|||
|
|
|LL_GPIO_PIN_13|LL_GPIO_PIN_14|LL_GPIO_PIN_15;
|
|||
|
|
LL_GPIO_Init(GPIOC, &GPIO_InitStruct);
|
|||
|
|
|
|||
|
|
// PD.0 is KZ_LOW_LEVEL
|
|||
|
|
// PD.1 is KZ_LEVEL
|
|||
|
|
// PD.10 is accelero-int
|
|||
|
|
// PD.11 is VCC_RF/VCC_MA
|
|||
|
|
// GPIO_InitStruct.Pin = LL_GPIO_PIN_2|LL_GPIO_PIN_3
|
|||
|
|
// |LL_GPIO_PIN_4|LL_GPIO_PIN_5|LL_GPIO_PIN_6|LL_GPIO_PIN_7
|
|||
|
|
// |LL_GPIO_PIN_8|LL_GPIO_PIN_9
|
|||
|
|
// |LL_GPIO_PIN_12|LL_GPIO_PIN_13|LL_GPIO_PIN_14|LL_GPIO_PIN_15;
|
|||
|
|
// LL_GPIO_Init(GPIOD, &GPIO_InitStruct);
|
|||
|
|
|
|||
|
|
// // PE.1 is VCC_SENSOR_5V
|
|||
|
|
// // PE.2~6 is keys
|
|||
|
|
// // PE.7 is ex-power
|
|||
|
|
// // PE.8 is leak_in
|
|||
|
|
// // PE.9 is KZ_ALARM
|
|||
|
|
// GPIO_InitStruct.Pin = LL_GPIO_PIN_0
|
|||
|
|
// |LL_GPIO_PIN_10|LL_GPIO_PIN_11
|
|||
|
|
// |LL_GPIO_PIN_12|LL_GPIO_PIN_13|LL_GPIO_PIN_14|LL_GPIO_PIN_15;
|
|||
|
|
// LL_GPIO_Init(GPIOE, &GPIO_InitStruct);
|
|||
|
|
|
|||
|
|
// // PB.13~15 is accelero-spi
|
|||
|
|
// GPIO_InitStruct.Pin = LL_GPIO_PIN_13|LL_GPIO_PIN_14|LL_GPIO_PIN_15;
|
|||
|
|
// GPIO_InitStruct.Mode = LL_GPIO_MODE_OUTPUT;
|
|||
|
|
// GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_LOW;
|
|||
|
|
// GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
|
|||
|
|
// GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
|
|||
|
|
// LL_GPIO_Init(GPIOB, &GPIO_InitStruct);
|
|||
|
|
// LL_GPIO_SetOutputPin(GPIOB, LL_GPIO_PIN_13|LL_GPIO_PIN_14|LL_GPIO_PIN_15);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20>ָ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
extern void SystemClock_Config();
|
|||
|
|
void Vcc_Enable()
|
|||
|
|
{
|
|||
|
|
SystemClock_Config();
|
|||
|
|
Vcc_Init();
|
|||
|
|
Console_Init();
|
|||
|
|
Console_Open();
|
|||
|
|
//DAC7311_Init();
|
|||
|
|
//Wakeup_Init();
|
|||
|
|
//Slave_Init();
|
|||
|
|
//Sensor_Init();
|
|||
|
|
//Accelero_Init();
|
|||
|
|
Sample_Init();
|
|||
|
|
Sample_Open();
|
|||
|
|
// Sample_ReOpen(); // <20><><EFBFBD><EFBFBD><DFBB><EFBFBD><EFBFBD>Ժ<EFBFBD><D4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>иú<D0B8><C3BA><EFBFBD>
|
|||
|
|
Battery_Init();
|
|||
|
|
// DTU_Init();
|
|||
|
|
Key_Init();
|
|||
|
|
LCD_Init();
|
|||
|
|
|
|||
|
|
// <20>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
VCC_SFLASH_FRAM_ON();
|
|||
|
|
// <20><><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
//DAC7311_Open();
|
|||
|
|
}
|