123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- /************************************************************************************************/
- /**
- * @file common.c
- * @author MCU Ecosystem Development Team
- * @brief 通用函数或本外设相关的配置实现函数。
- *
- *
- **************************************************************************************************
- * @attention
- * Copyright (c) CEC Huada Electronic Design Co.,Ltd. All rights reserved.
- *
- **************************************************************************************************
- */
- /*------------------------------------------includes--------------------------------------------*/
- #include "common.h"
- /*------------------------------------------functions-------------------------------------------*/
- /**
- * @brief 系统时钟配置
- * @retval 无
- */
- void system_clock_config(void)
- {
- /* 设置Flash读访问等待时间 */
- std_flash_set_latency(FLASH_LATENCY_1CLK);
- /* 使能RCH */
- std_rcc_rch_enable();
- while(std_rcc_get_rch_ready() != RCC_CSR1_RCHRDY);
-
- /* 设置系统时钟源为RCH */
- std_rcc_set_sysclk_source(RCC_SYSCLK_SRC_RCH);
- while(std_rcc_get_sysclk_source() != RCC_SYSCLK_SRC_STATUS_RCH);
- /* 设置AHB分频因子 */
- std_rcc_set_ahbdiv(RCC_HCLK_DIV1);
- /* 设置APB分频因子 */
- std_rcc_set_apbdiv(RCC_PCLK_DIV1);
- /* 配置系统时钟全局变量 */
- SystemCoreClock = RCH_VALUE;
- }
- /**
- * @brief GPIO初始化
- * @retval 无
- */
- void gpio_init(void)
- {
- std_gpio_init_t gpio_config = {0};
- /* 使能LED对应的GPIO时钟 */
- std_rcc_gpio_clk_enable(RCC_PERIPH_CLK_GPIOB);
- std_rcc_gpio_clk_enable(RCC_PERIPH_CLK_GPIOA);
- /* 配置LED的IO */
- gpio_config.pin = LED_PIN;
- gpio_config.mode = GPIO_MODE_OUTPUT;
- gpio_config.pull = GPIO_NOPULL;
- gpio_config.output_type = GPIO_OUTPUT_PUSHPULL;
- std_gpio_init(GPIOA, &gpio_config);
- std_gpio_set_pin(LED_GPIO_PORT,LED_PIN);
-
- gpio_config.pin = GPIO_PIN_6; //PA2
- gpio_config.mode = GPIO_MODE_INPUT;
- gpio_config.pull = GPIO_PULLDOWN;
- std_gpio_init(GPIOB, &gpio_config);
-
- }
|