OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3841|回复: 1

麻烦各位,疑惑!!!!关于systemInit()、rcc_deinit()问题见下

[复制链接]

17

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
133
金钱
133
注册时间
2015-4-10
在线时间
0 小时
发表于 2015-5-4 20:23:04 | 显示全部楼层 |阅读模式
5金钱
void SystemInit (void)
{
  RCC->CR |= (uint32_t)0x00000001;
#ifndef STM32F10X_CL                                问题1如果这里定义过stm32f10x_cl就跳去#else下面的语句,那么#ifdef STM32F10X_CL下面的
  RCC->CFGR &= (uint32_t)0xF8FF0000;      3条语句可以添加到这里吗?执行#else的时候已经检测出定义过STM32F10X_CL了,
 #else                                                             那下面三条配置rcc的语句也放在这里可以吗?
  RCC->CFGR &= (uint32_t)0xF0FF0000;
#endif /* STM32F10X_CL */   
  RCC->CR &= (uint32_t)0xFEF6FFFF;
  RCC->CR &= (uint32_t)0xFFFBFFFF;
  RCC->CFGR &= (uint32_t)0xFF80FFFF;
#ifdef STM32F10X_CL
  RCC->CR &= (uint32_t)0xEBFFFFFF;
  RCC->CIR = 0x00FF0000;
  RCC->CFGR2 = 0x00000000;
#elif defined (STM32F10X_LD_VL) || defined (STM32F10X_MD_VL) || (defined STM32F10X_HD_VL)
  
  RCC->CIR = 0x009F0000;
  RCC->CFGR2 = 0x00000000;      
#else
  RCC->CIR = 0x009F0000;
#endif /* STM32F10X_CL */
问题2:另外systemInit()里面的内容跟RCC_DeInit()里面的内容很相似,他俩基本上是同一个函数来的?
问题3:在寄存器的例子中时钟初始化函数里面要FLASH_ACR的配置,但库函数里面没见到它的身影啊????

小杨
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

230

主题

1950

帖子

10

精华

论坛元老

Rank: 8Rank: 8

积分
4562
金钱
4562
注册时间
2010-12-14
在线时间
32 小时
发表于 2015-5-4 20:36:04 | 显示全部楼层
如果不是Cl呢?你添加了不是就不行了么?
你说的如果特定的对CL,当然可以,如果特定的对CL,哪些ifdef,ifndef你都可以判断后直接删掉了。
我是开源电子网?网站管理员,对网站有任何问题,请与我联系!QQ:389063473Email:389063473@qq.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-22 23:29

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表