51uwb.cn

 找回密码
 立即注册
查看: 3720|回复: 0

蓝点UWB STM32F1 使用内置晶振代码参考

[复制链接]

35

主题

941

帖子

3912

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3912
发表于 2021-12-23 22:09:26 | 显示全部楼层 |阅读模式
使用内置晶振有两个好处
1 可以降低功耗
2 设计板子时没有预留外置晶振接口。

我们自己设计的工卡标签属于使用内置晶振的例子。 目前没有大批量生产,只配在TDOA商业版本里。
部分客户可能会拿到做twr测试。


普通BP50 代码移植到低功耗标签需要修改晶振部分,我们推荐在port.c中修改。
  1. void peripherals_init (void)
  2. {

  3.     SetSysClockTo64Mhz();
复制代码
  1. void SetSysClockTo64Mhz(void)
  2. {
  3.     __IO uint32_t StartUpCounter = 0, HSEStatus = 0;
  4.     RCC_DeInit();
  5.     RCC->CR |= ((uint32_t)RCC_CR_HSION);
  6.     do
  7.     {
  8.         HSEStatus = RCC->CR & RCC_CR_HSIRDY;
  9.         StartUpCounter++;
  10.     }
  11.     while((HSEStatus == 0) && (StartUpCounter != HSE_STARTUP_TIMEOUT));
  12.     if ((RCC->CR & RCC_CR_HSIRDY) != RESET)
  13.     {
  14.         HSEStatus = (uint32_t)0x01;
  15.     }
  16.     else
  17.     {
  18.         HSEStatus = (uint32_t)0x00;
  19.     }
  20.     if (HSEStatus == (uint32_t)0x01)
  21.     {
  22.         FLASH->ACR |= FLASH_ACR_PRFTBE;
  23.         FLASH->ACR &= (uint32_t)((uint32_t)~FLASH_ACR_LATENCY);
  24.         FLASH->ACR |= (uint32_t)FLASH_ACR_LATENCY_2;
  25.         RCC->CFGR |= (uint32_t)RCC_CFGR_HPRE_DIV1;
  26.         RCC->CFGR |= (uint32_t)RCC_CFGR_PPRE2_DIV1;
  27.         RCC->CFGR |= (uint32_t)RCC_CFGR_PPRE1_DIV2;
  28.         RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_PLLSRC | RCC_CFGR_PLLXTPRE | RCC_CFGR_PLLMULL));
  29.         RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSI_Div2| RCC_CFGR_PLLMULL16);
  30.         RCC->CR |= RCC_CR_PLLON;
  31.         while((RCC->CR & RCC_CR_PLLRDY) == 0)
  32.         {
  33.         }
  34.         RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_SW));
  35.         RCC->CFGR |= (uint32_t)RCC_CFGR_SW_PLL;
  36.         while ((RCC->CFGR & (uint32_t)RCC_CFGR_SWS) != (uint32_t)0x08)
  37.         {
  38.         }
  39.     }
  40.     else
  41.     {

  42.     }
  43. }
复制代码

另外一点,将UWB复位引脚,修改为PB12。port.h
#define DW1000_RSTn                   GPIO_Pin_12
#define DW1000_RSTn_GPIO            GPIOB


回复

使用道具 举报

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

本版积分规则

bphero Inc.  

GMT+8, 2024-3-29 17:57 , Processed in 0.011934 second(s), 4 queries , File On.

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc. Template By 【未来科技】【 www.wekei.cn 】

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