硬件平台为微雪BLE400的(将原来的16mhz晶振改为32mhz。两个旁电容改为22pf)

以nRF51_SDK_10.0.0_dc26b5e\examples\ble_peripheral\ble_app_uart项目为例

在main.c中进行修改

#if defined( USB_SYSTEM_CLOCK_32MHZ)
#define DEVICE_NAME "Nordic_UART_32mhz" /**< Name of device. Will be included in the advertising data. */
#else
#define DEVICE_NAME "Nordic_UART" /**< Name of device. Will be included in the advertising data. */
#endif//USB_SYSTEM_CLOCK_32MHZ #if defined (USB_SYSTEM_CLOCK_32MHZ)
/**@brief Function for Set the external high frequency clock source to 32 MHz .
*/
static void setClock( void )
{
// Set the external high frequency clock source to 32 MHz
NRF_CLOCK->XTALFREQ = 0xFFFFFF00; // Start the external high frequency crystal
NRF_CLOCK->EVENTS_HFCLKSTARTED = ;
NRF_CLOCK->TASKS_HFCLKSTART = ; // Wait for the external oscillator to start up
while (NRF_CLOCK->EVENTS_HFCLKSTARTED == ) {} }
#endif//USB_SYSTEM_CLOCK_32MHZ /**@brief Application main function.
*/
int main(void)
{
uint32_t err_code;
bool erase_bonds;
uint8_t start_string[] = START_STRING;
#if defined (USB_SYSTEM_CLOCK_32MHZ)
setClock();
#endif//USB_SYSTEM_CLOCK_32MHZ // Initialize.
APP_TIMER_INIT(APP_TIMER_PRESCALER, APP_TIMER_OP_QUEUE_SIZE, false);
uart_init();
buttons_leds_init(&erase_bonds);
ble_stack_init();
gap_params_init();
services_init();
advertising_init();
conn_params_init(); printf("%s",start_string); err_code = ble_advertising_start(BLE_ADV_MODE_FAST);
APP_ERROR_CHECK(err_code); // Enter main loop.
for (;;)
{
power_manage();
}
}

修改system_nrf51.C

#if defined( USB_SYSTEM_CLOCK_32MHZ)
#define __SYSTEM_CLOCK (32000000UL) /*!< nRF51 devices use a fixed System Clock Frequency of 32MHz */
#else
#define __SYSTEM_CLOCK (16000000UL) /*!< nRF51 devices use a fixed System Clock Frequency of 16MHz */
#endif//USB_SYSTEM_CLOCK_32MHZ

后面的测试的步骤和16mhz步骤相同。

NRF51822之使用外部32Mhz晶振的更多相关文章

  1. STM32 标准库3.5修改默认外部8M晶振为16M晶振

    ST官方标准库V3.5默认的外部晶振频率为8M,实际使用中外部晶振需要修改为16M: 经过实验,修改有效,具体的patch如下: 修改 HSE_VALUE 值 diff --git "a/L ...

  2. 【STM32】晶振,主时钟,外设频率介绍

    首先,我用的是STM32F407,下方所有图片都是出自这芯片的文档,如果型号和我不同,需要找到对应的芯片说明文档,也许会有出入 先看一张时钟图 这里会着重说明高速的部分,低速(不管内部还是外部)只给R ...

  3. 痞子衡嵌入式:浅谈i.MXRT10xx系列MCU外接24MHz晶振的作用

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT10xx系列MCU外接24MHz晶振的作用. 痞子衡之前写过一篇关于时钟引脚的文章 <i.MXRT1xxx系列MCU时 ...

  4. M4修改外部晶振8M和25M晶振的方法

    共计修改三个参数: 1.HSE_VALUE   具体位置在stm32f4xx.h中 2.PLL_M          具体位置在system_stm32f4xx.c中 3.Keil编译器 工程的Opt ...

  5. 在STM32上如果不使用外部晶振,OSC_IN和OSC_OUT的接法

    如果使用内部RC振荡器而不使用外部晶振,请按照下面方法处理: 1)对于100脚或144脚的产品,OSC_IN应接地,OSC_OUT应悬空.2)对于少于100脚的产品,有2种接法:  2.1)OSC_I ...

  6. 外部晶振的使用原因与内部RC振荡器的使用方法 _

    原因一 早些年,芯片的生产制作工艺也许还不能够将晶振做进芯片内部,但是现在可以了.这个问题主要还是实用性和成本决定的.   原因二 芯片和晶振的材料是不同的,芯片 (集成电路) 的材料是硅,而晶体则是 ...

  7. 外部晶振的使用原因与内部RC振荡器的使用方法

    原因一 早些年,芯片的生产制作工艺也许还不能够将晶振做进芯片内部,但是现在可以了.这个问题主要还是实用性和成本决定的.   原因二 芯片和晶振的材料是不同的,芯片 (集成电路) 的材料是硅,而晶体则是 ...

  8. stm32 晶振不起振

    1. STM32f103有内部晶振.刚刚上电时,所有Clock都是源于内部晶振,所以当片内没有程序或内部程序没有使能外部晶振时,外部晶振是不会起振的.2. STM32f103有内部复位电路,只有当检测 ...

  9. 晶振电路的设计-AN2867学习

    一 石英晶体的等效电路.带宽: FS~FA之间就是并联带宽,越窄稳定性越好.其中Fs.Fa为Lm/Rm/Cm电抗分别为0和无穷大时的谐振频率).Fp为工作频率(通过调整负载电容CL来达到中心频率) 起 ...

随机推荐

  1. MySQL 独立表空间恢复案例

    创建表的时候就会得到元数据.可以通过定义的方式对表的元数据进行生成 这个地方要注意的是 独立表空间当中   ibd & frm分别存储的是什么数据? 表空间:文件系统,为了更好的扩容数据库的存 ...

  2. python面向对象 : 反射和内置方法

    一. 反射 1. isinstance()和issubclass() isinstance( 对象名, 类名) : 判断对象所属关系,包括父类  (注:type(对象名) is 类名 : 判断对象所属 ...

  3. [UE4]打包EXE

    Building configuration 1.Development:开发模式.不会压缩文件 2.Shipping,成品模式.移动版本会自动压缩文件

  4. andriod InputType.TYPE_NUMBER_FLAG_DECIMAL只能输入数字和小数点无效问题

    在java文件里edittext设置InputType.TYPE_NUMBER_FLAG_DECIMAL, 输入法能输入的是文本输入方式(数字.字母.符号等),和想要只能输入数字和小数点背道而驰. 在 ...

  5. 禅道-bug管理系统部署

    官方下载: https://www.zentao.net/framework/zentao11.2-80109.html 官方使用说明:(含安装及使用说明,很详细) https://www.zenta ...

  6. matplotlib基础知识全面解析

    图像基本知识: 通常情况下,我们可以将一副Matplotlib图像分成三层结构: 1.第一层是底层的容器层,主要包括Canvas.Figure.Axes: 2.第二层是辅助显示层,主要包括Axis.S ...

  7. echart力导向图

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="GBK" ...

  8. java入门简介

    1.java运行环境 下载的jdk中包含了java运行时的环境(JRE),JRE又包含了java虚拟机(JVM) 2.java运行过程 源文件(.java)由编译器编译为字节码(.class)文件,再 ...

  9. 第7章 网络层协议(2)_ICMP协议

    2. ICMP协议 2.1 ICMP报文(Internet Control Message Protocol)的类型 报文类型 类型值 代码 描述 请求报文 8 0 请求回显报文 响应报文 0 0 回 ...

  10. Thinkphp3.2+PHPQRCode 二维码生成示例

    下载phpqrcode 整合到Thinkphp框架 在“ThinkPHP\Library\Vendor\”下新建目录phpqrcode,将压缩包内容解压到该文件夹下. 下载地址:http://www. ...