STM32
直播中

张桂英

7年用户 1535经验值
私信 关注
[问答]

STM8L152c6为啥一次只能设置一个外设时钟?怎么同时开启多个外设时钟设置?

CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_1);    //1分频(不分频)   
    /*Enable Usart clock */
  CLK_PeripheralClockConfig(CLK_Peripheral_tiM1, ENABLE);
  LED_Init();
  KEY_Init();
   USART1_Config();
  Timer1_Init();

STM8L152c6为啥一次只能设置一个外设时钟?怎么同时开启多个外设时钟设置

回帖(1)

符筹荣

2024-5-7 18:13:51
STM8L152C6是一款8位微控制器,其时钟系统允许您为不同的外设设置不同的时钟频率。在STM8L152C6中,您可以通过CLK_PeripheralClockConfig()函数来设置外设时钟。这个函数允许您一次设置一个外设的时钟,但是您可以通过多次调用这个函数来为多个外设设置时钟。

在您提供的代码示例中,您已经为TIM1外设启用了时钟。要同时为多个外设设置时钟,您可以按照以下步骤操作:

1. 为每个外设调用CLK_PeripheralClockConfig()函数,传入相应的外设标识符和ENABLE参数。例如,如果您想为USART1和Timer1同时设置时钟,您可以这样做:

```c
CLK_PeripheralClockConfig(CLK_Peripheral_TIM1, ENABLE);
CLK_PeripheralClockConfig(CLK_Peripheral_USART1, ENABLE);
```

2. 确保您已经正确初始化了所有相关的外设,如LED、KEY和USART1。这可以通过调用相应的初始化函数来完成,例如:

```c
LED_Init();
KEY_Init();
USART1_Config();
Timer1_Init();
```

3. 在设置外设时钟之后,您可以继续进行其他配置,如设置时钟分频器、初始化定时器等。

请注意,您需要根据您的具体需求和硬件设计来选择适当的外设时钟设置。同时,确保您的系统时钟配置能够满足所有外设的时钟要求。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分