基质喷涂
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

98 lines
2.9 KiB

//
// Created by iflyt on 2025/2/27.
//
#include "bsp.h"
#include "LED/exti_key_manager.h"
#include "uart_cmd/cmd_receive_service.h"
/*
*********************************************************************************************************
* 函 数 名: bsp_Init
* 功能说明: 初始化所有的硬件设备。该函数配置CPU寄存器和外设的寄存器并初始化一些全局变量。只需要调用一次
* 形 参:无
* 返 回 值: 无
*********************************************************************************************************
*/
void bsp_Init(void)
{
/*
STM32H7xx HAL 库初始化,此时系统用的还是H7自带的64MHz,HSI时钟:
- 调用函数HAL_InitTick,初始化滴答时钟中断1ms。
- 设置NVIV优先级分组为4。
*/
// HAL_Init();
/*
配置系统时钟到400MHz
- 切换使用HSE。
- 此函数会更新全局变量SystemCoreClock,并重新配置HAL_InitTick。
*/
// SystemClock_Config();
DBG_UART_Init();
// CMD_DMA_Init(); // 指令 收发 UART 初始化
CMD_UART_Init();
EXHAL_UART_BindUart("CMD_UART", &CMD_UART);
CmdReceiveService_Init(); // 接收指令,解析指令,执行指令
CAN1_Init();
LED_Init();
#if 1
EX_GPIO_Init(); // 外部中断初始化
MYI2C_Init(&SENx,2000,0x38); //温湿度传感器 2000:读取数据周期2S; 0x38:AHT20地址
MX_ADC1_Init();
#endif
#if 0
app_init();
#endif
}
#if 0
/*
*********************************************************************************************************
* 函 数 名: Error_Handler
* 形 参: file : 源代码文件名称。关键字 __FILE__ 表示源代码文件名。
* line :代码行号。关键字 __LINE__ 表示源代码行号
* 返 回 值: 无
* Error_Handler(__FILE__, __LINE__);
*********************************************************************************************************
*/
void Error_Handler(char *file, uint32_t line)
{
/*
用户可以添加自己的代码报告源代码文件名和代码行号,比如将错误文件和行号打印到串口
printf("Wrong parameters value: file %s on line %d\r\n", file, line)
*/
/* 这是一个死循环,断言失败时程序会在此处死机,以便于用户查错 */
__disable_irq();
if (line == 0)
{
return;
}
/* USER CODE BEGIN Error_Handler_Debug */
/* User can add his own implementation to report the HAL error return state */
while (1)
{
}
/* USER CODE END Error_Handler_Debug */
}
/**
* @brief This function is executed in case of error occurrence.
* @retval None
*/
void Error_Handler(void)
{
/* USER CODE BEGIN Error_Handler_Debug */
/* User can add his own implementation to report the HAL error return state */
__disable_irq();
while (1)
{
}
/* USER CODE END Error_Handler_Debug */
}
#endif