0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

晶振损坏情况下的芯片运行情况

我快闭嘴 来源:精通单片机与嵌入式 作者:精通单片机与嵌入 2022-09-05 11:53 次阅读

大家对晶振在电路中的作用肯定很了解,晶振作为电路中的心脏,具有极其重要的作用,在各种电子产品设备中广泛应用,如果出现不振就会导致整个设备不能正常工作。但是,类似STM32这种MCU是有内部晶振的,默认使用外部晶振时,若外部晶振损坏,会出现什么情况?芯片自动切换到内部晶振程序继续运行还是单片机死机?今天就来验证一下晶振损坏情况下的芯片运行情况,下面做一下实验测试一下。

01找一块开发板

如下图中是STM32的一个最小系统板,在本公众号下回复【STM32】可以索取关于STM32的全部视频和例程资料

54bfd5ee-2be9-11ed-ba43-dac502259ad0.jpg

今天就用这个最小系统板进行测试验证。

02修改晶振

为了方便后面的操作,将开发板的晶振焊接的引脚裸露在外。

54eb46ac-2be9-11ed-ba43-dac502259ad0.png

在这里要特别说明一下:现在这样焊接是为了方便后面的验证,在实际产品中,一定要保证晶振焊接可靠、稳定,否则容易影响产品的稳定性

03编写程序

编写LED闪烁的程序,用LED是否闪烁以及闪烁的频率来证明芯片工作的状态。时钟初始化程序如下:
void SystemInit (void){  /* Reset the RCC clock configuration to the default reset state(for debug purpose) */  /* Set HSION bit */  RCC->CR |= (uint32_t)0x00000001;
  /* Reset SW, HPRE, PPRE1, PPRE2, ADCPRE and MCO bits */#ifndef STM32F10X_CL  RCC->CFGR &= (uint32_t)0xF8FF0000;#else  RCC->CFGR &= (uint32_t)0xF0FF0000;#endif /* STM32F10X_CL */       /* Reset HSEON, CSSON and PLLON bits */  RCC->CR &= (uint32_t)0xFEF6FFFF;
  /* Reset HSEBYP bit */  RCC->CR &= (uint32_t)0xFFFBFFFF;
  /* Reset PLLSRC, PLLXTPRE, PLLMUL and USBPRE/OTGFSPRE bits */  RCC->CFGR &= (uint32_t)0xFF80FFFF;
#ifndef STM32F10X_CL  /* Disable all interrupts and clear pending bits  */  RCC->CIR = 0x009F0000;#else  /* Reset PLL2ON and PLL3ON bits */  RCC->CR &= (uint32_t)0xEBFFFFFF;
  /* Disable all interrupts and clear pending bits  */  RCC->CIR = 0x00FF0000;
  /* Reset CFGR2 register */  RCC->CFGR2 = 0x00000000;#endif /* STM32F10X_CL */      /* Configure the System clock frequency, HCLK, PCLK2 and PCLK1 prescalers */  /* Configure the Flash Latency cycles and enable prefetch buffer */SetSysClock();}
引脚初始化程序如下:
GPIO_InitTypeDefGPIO_InitStructure;
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);    GPIO_InitStructure.GPIO_Pin = PB8_LOAD_PIN;    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;    GPIO_Init(GPIOB, &GPIO_InitStructure);  
PB8_LOAD_1;
LED闪烁的程序如下:
PB8_LOAD_1;                 //PB8输出高电平DelayMs(100);               //延时PB8_LOAD_0;                 //PB8输出低电平DelayMs(100);               //延时
04将晶振引脚剪断

详情可参考下面的视频过程。 我们发现,剪断晶振的引脚后,LED的闪烁频率发生了改变,证明晶振的引脚损坏时,单片机程序仍然在运行。

特殊说明:

1、本实验仅仅验证了单片机程序是否运行,并不能代表晶振掉了后,我们设计的产品的功能仍然正常;由于系统时钟发生改变,依赖于时钟的功能模块肯定工作不正常,比如串口通信、周期定时的任务等;

2、现在验证测试的程序可能与您产品中的程序有所差异。 3、现在只是验证了晶振掉了的情况(晶振掉了后,单片机程序仍然在运行),但是若晶振出现引脚对地短路、2个引脚之间短路、晶振对电源短路等不同情况,结果可能不同。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6032

    文章

    44513

    浏览量

    632738
  • 晶振
    +关注

    关注

    34

    文章

    2819

    浏览量

    67892
  • STM32
    +关注

    关注

    2265

    文章

    10870

    浏览量

    354716

原文标题:把STM32的晶振剪下来,正在运行的程序还能运行吗?单片机会死机吗?

文章出处:【微信号:精通单片机与嵌入式,微信公众号:精通单片机与嵌入式】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    在高速和超高速运行情况下,高速变频电机的测试至关重要

    高速变频电机是指转速超过10000r/min,一般都是几万转甚至达到十几万转,在电动汽车、分布式发电系统中具有广阔的应用前景。在高速和超高速运行情况下,电机的运行特性与常规电机有很大的不同,对高速电机进行相关测试是至关重要的。
    的头像 发表于 08-31 11:06 1.2w次阅读
    在高速和超高速<b class='flag-5'>运行情况下</b>,高速变频电机的测试至关重要

    损坏了,STM32还能正常运行

    损坏了,STM32还能正常运行
    的头像 发表于 09-21 17:10 863次阅读
    <b class='flag-5'>晶</b><b class='flag-5'>振</b><b class='flag-5'>损坏</b>了,STM32还能正常<b class='flag-5'>运行</b>?

    CY8C4025AXI-S412在什么情况下外部会自动跳转到内部?能再跳转回外部吗?

    我使用的是CY8C4025AXI-S412,请问在什么情况下外部会自动跳转到内部?能再跳转回外部
    发表于 03-06 06:04

    ESP32在使用wifi和BLE的情况下,内部能不能用来提供时钟?

    在使用wifi和BLE的情况下,内部能不能用来提供时钟 在使用wifi和BLE的情况下,spiI2C通信,内部的4Mflash是否足够程序使用
    发表于 06-21 16:41

    IAP15F2K61S2不接外部情况下下载程序

    IAP15F2K61S2不接外部情况下下载程序,在不勾选选择内部时钟的情况下可以下载,勾选了却下载不上,这是什么情况?有人知道吗?
    发表于 07-23 13:17

    在单片机11.05926mhz的情况下,gps模块接收频率设置为多少比较合适?

    在单片机11.05926mhz的情况下,gps模块接收频率设置为多少比较合适?
    发表于 05-18 23:14

    请问新唐单片机在外部失灵的情况下,能否自动切换到内部继续工作?

    请问新唐单片机在外部失灵的情况下,能否自动切换到内部继续工作?
    发表于 06-16 07:27

    轴承以及电机运行情况的判断方法

    判断轴承以及电机运行情况我们还可以使用视觉,听觉,触觉
    的头像 发表于 10-13 03:22 5821次阅读

    主板损坏情况与修复

    电脑主板是电脑最基本的也是最重要的部件之一,在整个微机系统中扮演着举足轻重的角色。那你知道在电脑主板中究竟能起到什么作用吗?
    的头像 发表于 04-20 16:44 1.2w次阅读

    对于在不同情况下的失效原因进行总结和解析

    我们知道有许多分类,主要分为无源和有源,无源
    发表于 12-22 15:59 7993次阅读

    什么情况下芯片容易坏呢

    芯片是在电子学中一种将电路小型化的方式,并且时常制造在半导体圆表面上。相信很多小伙伴都经历过芯片坏掉的情况,那么什么情况下
    的头像 发表于 01-02 17:54 6471次阅读

    什么情况下需要使用微机消谐装置

    情况: 电气设备中存在谐波产生的风险。谐波是电力系统中常见的问题之一,特别是在使用非线性负载(例如变频器、电子镇流器等)的情况下。谐波会导致电力系统中电压失真、谐波电流增加、设备损坏运行
    的头像 发表于 03-06 13:46 629次阅读

    单片机不起后会有什么情况

    时钟信号的情况下,单片机无法执行程序,无法完成预定的功能。 无法进行通信:很多单片机芯片都支持通信接口,如UART、SPI和I2C等,这些通信接口都需要时钟信号的支持。如果不起
    的头像 发表于 01-04 17:12 1899次阅读

    高压差分探头什么情况下容易坏?

    探头有一些容易损坏情况。在下面的文章中,我们将详细讨论高压差分探头容易损坏的几种情况。 首先,高压差分探头容易在电压过高的情况下
    的头像 发表于 01-08 16:36 633次阅读

    使用SystemView工具分析瑞萨RA6M4芯片上RT-Thread的运行情况

    使用SystemView工具分析瑞萨RA6M4芯片上RT-Thread的运行情况
    的头像 发表于 12-11 17:23 544次阅读
    使用SystemView工具分析瑞萨RA6M4<b class='flag-5'>芯片</b>上RT-Thread的<b class='flag-5'>运行情况</b>