OpenEdv-开源电子网

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

RCC_LSEConfig库函数

[复制链接]

62

主题

126

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
280
金钱
280
注册时间
2015-6-11
在线时间
56 小时
发表于 2015-10-8 13:25:52 | 显示全部楼层 |阅读模式
5金钱
void RCC_LSEConfig(uint8_t RCC_LSE)
{
   /* Reset LSEON bit */
  *(__IO uint8_t *) BDCR_ADDRESS = RCC_LSE_OFF;
  /* Reset LSEBYP bit */
  *(__IO uint8_t *) BDCR_ADDRESS = RCC_LSE_OFF;

  /* Configure LSE (RCC_LSE_OFF is already covered by the code section above) */
  switch (RCC_LSE)
  {
    case RCC_LSE_Bypass:
      /* Set LSEBYP and LSEON bits */
      *(__IO uint8_t *) BDCR_ADDRESS = RCC_LSE_Bypass | RCC_LSE_ON;
      break;
    }
}

这个库函数有点看不懂,首先
/* Reset LSEON bit */
/* Reset LSEBYP bit */
两条下面的语句是一模一样的,为什么要写两遍呢?(橙色)

其次,参考手册里描述:
2 LSEBYP: 外部低速振荡器旁路 (External low-speed oscillator bypass)
由软件置 1 和清零,用于旁路调试模式下的振荡器。只有在禁止 LSE 时钟后才能写入该位。

只有在禁止LSE时钟后才能写入该位,函数中是开启LSE时钟同时写入该位的?(绿色)

最佳答案

查看完整内容[请看2#楼]

RCC_LSE_OFF的值是多少?看其值,再去对应寄存器的对应位,如果清零了LSEON 和LSEBYP ,则没有问题. 说明这里是在同时设置.
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2015-10-8 13:25:53 | 显示全部楼层
RCC_LSE_OFF的值是多少?看其值,再去对应寄存器的对应位,如果清零了LSEON 和LSEBYP ,则没有问题.
说明这里是在同时设置.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

62

主题

126

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
280
金钱
280
注册时间
2015-6-11
在线时间
56 小时
 楼主| 发表于 2015-10-9 11:30:10 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
RCC_LSE_OFF = 0
RCC_LSE_ON = 1
RCC_LSE_Bypass = 4

一条语句就同时清零了,他却有两条一样的,所以才问了第一个问题

看不太懂你是在回答我第一个还是第二个问题,是不是设置了LSEBYP必然也要设置LSEON,但不能先设置LSEON
回复

使用道具 举报

22

主题

2251

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4471
金钱
4471
注册时间
2013-4-22
在线时间
335 小时
发表于 2015-10-9 11:53:42 | 显示全部楼层
我觉得是为了安全他才这么写的
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2015-10-10 15:06:10 | 显示全部楼层
回复【3楼】ygrc45:
---------------------------------
1,那就是有重复了。你可以尝试去掉一句,看看能否正常工作。
2,1,2都回答了。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-25 09:24

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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