/******************************************************************************* * File Name : BSP.c * Description : * Created on : 2018Äê7ÔÂ23ÈÕ * Author : ¶Å¼ü *******************************************************************************/ /******************************************************************************* * Include Files * *******************************************************************************/ #include "BSP.h" #include "stm32l0xx_hal.h" #include "HIDO_Debug.h" #include "Uart.h" #include "Shell.h" //#include "DBG.h" #include "RTC.h" #include "SPI.h" #include "LED.h" #include "Beep.h" #include "Key.h" #include "Led.h" #include "ADC.h" #include "Power.h" #include "GPS.h" #include "Lora.h" #include "Battery.h" /******************************************************************************* * Macro * *******************************************************************************/ /******************************************************************************* * Type Definition * *******************************************************************************/ /******************************************************************************* * Global Variable * *******************************************************************************/ /******************************************************************************* * Local Variable * *******************************************************************************/ extern UART_HandleTypeDef huart1; extern UART_HandleTypeDef huart2; extern UART_HandleTypeDef hlpuart1; extern TIM_HandleTypeDef htim21; //extern RTC_HandleTypeDef hrtc; /******************************************************************************* * Local Function Declaration * *******************************************************************************/ /******************************************************************************* * Local Function * *******************************************************************************/ /******************************************************************************* * Function Name : BSP_ResourceInit * Description : * Input : * Output : * Return : * Author : ¶Å¼ü * Modified Date: : 2018Äê7ÔÂ23ÈÕ *******************************************************************************/ static HIDO_INT32 BSP_ResourceInit(void) { Power_PinRegister(POWER_PIN_GPS_LORA, GPIOA, GPIO_PIN_8); Uart_Register(UART_ID_DBG, &huart1); Uart_Register(UART_ID_GPS, &huart2); Uart_Register(UART_ID_LORA, &hlpuart1); // Key_PinRegister(KEY_ID_RIGHT, GPIOB, GPIO_PIN_0, GPIO_PIN_0); // Key_PinRegister(KEY_ID_LEFT, GPIOC, GPIO_PIN_4, 0); // Led_PinRegister(LED_ID_0, GPIOB, GPIO_PIN_4, LED_ACTIVE_STATE_SET); // Led_PinRegister(LED_ID_1, GPIOA, GPIO_PIN_4, LED_ACTIVE_STATE_RESET); // Led_PinRegister(LED_ID_2, GPIOA, GPIO_PIN_5, LED_ACTIVE_STATE_RESET); // Led_PinRegister(LED_ID_3, GPIOA, GPIO_PIN_11, LED_ACTIVE_STATE_RESET); // Led_PinRegister(LED_ID_4, GPIOA, GPIO_PIN_12, LED_ACTIVE_STATE_RESET); Lora_PinRegister(LORA_PIN_RESET, GPIOB, GPIO_PIN_14); Lora_PinRegister(LORA_PIN_SLEEP, GPIOB, GPIO_PIN_2); Lora_PinRegister(LORA_PIN_RUN, GPIOB, GPIO_PIN_12); // GPIO_InitTypeDef GPIO_InitStruct = {0}; // GPIO_InitStruct.Pin = GPIO_PIN_12; // GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_OD; // GPIO_InitStruct.Pull = GPIO_NOPULL; // GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; // HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); // GPIO_InitStruct.Pin = GPIO_PIN_14; // GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_OD; // GPIO_InitStruct.Pull = GPIO_NOPULL; // GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; // HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); GPS_PinRegister(GPS_PIN_REST, GPIOA, GPIO_PIN_4); Beep_TimerRegister(&htim21, TIM_CHANNEL_1); Battery_PinRegister(BATTERY_PIN_MEARS_CTRL, GPIOA, GPIO_PIN_11); // RTC_Init(&hrtc); return HIDO_OK; } /******************************************************************************* * Global Function * *******************************************************************************/ /******************************************************************************* * Function Name : HAL_UART_ErrorCallback * Description : * Input : * Output : * Return : * Author : ¶Å¼ü * Modified Date: : 2018Äê7ÔÂ23ÈÕ *******************************************************************************/ void HAL_UART_ErrorCallback(UART_HandleTypeDef *huart) { Uart_RxErrorFromISR(huart); } /******************************************************************************* * Function Name : HAL_UART_TxCpltCallback * Description : * Input : * Output : * Return : * Author : ¶Å¼ü * Modified Date: : 2018Äê7ÔÂ23ÈÕ *******************************************************************************/ void HAL_UART_TxCpltCallback(UART_HandleTypeDef *huart) { Uart_TxOverFromISR(huart); } /******************************************************************************* * Function Name : HAL_UART_RxCpltCallback * Description : * Input : * Output : * Return : * Author : ¶Å¼ü * Modified Date: : 2018Äê7ÔÂ23ÈÕ *******************************************************************************/ void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) { Uart_RxOverFromISR(huart); } #if 0 /******************************************************************************* * Function Name : HAL_RTC_AlarmAEventCallback * Description : * Input : * Output : * Return : * Author : ¶Å¼ü * Modified Date: : 2018Äê7ÔÂ23ÈÕ *******************************************************************************/ void HAL_RTC_AlarmAEventCallback(RTC_HandleTypeDef *hrtc) { #ifdef __APP_CODE__ HIDO_Debug("HAL_RTC_AlarmAEventCallback\r\n"); #endif } #endif /******************************************************************************* * Function Name : HAL_TIM_PeriodElapsedCallback * Description : * Input : * Output : * Return : * Author : ¶Å¼ü * Modified Date: : 2018Äê7ÔÂ23ÈÕ *******************************************************************************/ void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) { //if(htim == &htim8) { // Key_10MsISR(); // Beep_10MsISR(); // Led_10MsISR(); // VibratingMotor_10MsISR(); } } /******************************************************************************* * Function Name : BSP_Init * Description : * Input : * Output : * Return : * Author : ¶Å¼ü * Modified Date: : 2018Äê7ÔÂ23ÈÕ *******************************************************************************/ HIDO_INT32 BSP_Init(void) { BSP_ResourceInit(); return HIDO_OK; }