if __name__ == '__main__':为什么要定义这个函数
时间: 2023-10-25 09:29:04 浏览: 129
通道2
}
// 初始化定时器2
void init_timer2() {
RCC->APB1ENR |= RCC_APB`if __name__ == '__main__':` 是一个Python中的条件语句,用于判断当前模块是否为主1ENR_TIM2EN; // 使能TIM2时钟
TIM2->PSC = 0; // 预分模块。如果当前模块是主模块,即直接运行该脚本文件,那么条件成立,代码频器为0
TIM2->ARR = 128; // 自动重载值为128,产生640KHZ的块将被执行。如果当前模块是被其他模块导入的,则条件不成立,代码块不会执行。
中断
TIM2->DIER |= TIM_DIER_UIE; // 允许更新中断
TIM2->CR1 |= TIM_CR1_CEN; // 使能TIM2
NVIC_EnableIRQ(TIM2_IRQn); // 使能TIM2中在实际开发中,经常会把一些常用的功能封装成模块,然后在其他模块断
}
// 初始化系统时钟
void init_clock() {
// 配置PLL时钟源为HSI/2,倍中导入并调用。如果在模块中定义了一些函数和变量,那么在其他模块导入该模块时,这些函数和变量也会被导入并执行一遍。有些时候,我们并不频系数为12,得到48MHZ的PLL时钟
RCC->CFGR |= RCC_CFGR_PLLSRC_HSI_DIV2;
RCC->CFGR |= RCC_CFGR_PLLMUL12;
RCC->CR |= RCC_CR_PLLON;
while希望这些函数和变量被执行,只需要在导入时使用,这时就需要用到`if __name (!(RCC->CR & RCC_CR_PLLRDY));
// 配置系统时钟源为PLL时钟
RCC->CF__ == '__main__':`,将这部分代码包裹起来,只有在直接运行该脚本文件GR |= RCC_CFGR_SW_PLL;
while ((RCC->CFGR & RCC_CFGR_SWS) != RCC_CFGR_SWS时才会执行。
因此,`if __name__ == '__main__':`的作用是让模块既可以作_PLL);
}
// 初始化全局变量
void init_global_variables() {
// 初始化正弦波查表表格
for为脚本直接执行,又可以作为模块被其他脚本导入使用,提高了代码的复用性和可维护性。
阅读全文