Microchip PIC16F1619随记:故障保护时钟监视器(FSCM)

标签:PICPIC16FSCM
分享到:

我在使用外部时钟源提供时钟信号的时候,可能会遇到一种尴尬的情况,就是外部时钟源突然就崩溃了,没有一点点预兆。这样就相当于系统就崩了。所以一个健康茁壮的系统,必须要有一个监测调度机构,就像守夜人一样。PIC16就提供了有这样功能的外设------故障保护时钟监视器(FSCM)。

故障保护时钟监视器(FSCM)使得器件在出现外部振荡器或外部时钟故障时,自动调度到内部时钟源继续进行工作。如果选择了振荡器模式,FSCM能在振荡器起振定时器(OST)延时结束后的任一时刻检测振荡器故障。当选择了外部时钟模式时,FSCM能在器件从复位释放后立即检测振荡器故障。
 
FSCM通过将配置字中的FCMEN位置1来使能。FSCM可用于外部振荡器模式(HS)、外部时钟模式(ECH、ECM、ECL和EXTRC)和辅助振荡器(SOSC)。
 
故障保护时钟监视器(FSCM)
 
SCS(在OSCCON寄存器中)= 00,由配置字中的FOSC<1:0>决定时钟来源。
 
配置字CONFIG1的bit 13(FCMEN)置1,使能故障保护时钟监视器;bit 2-0(FOSC<2:0>)= 010,选用外部晶振作为时钟源。
 
故障保护条件清除
 
SCS<1:0> = 1x:
修改OSCCON寄存器中SCS位,以选择内部振荡器模块。这会复位振荡器起振定时器OST并允许其重新工作。
OSFIF = 0:
将PIR2寄存器的OSFIF位清零(发生故障时OSFIF会被硬件置1,触发中断,这里先略过不提)。
SCS<1:0> = 00:
修改OSCCON寄存器的SCS位,以选择FOSC配置字时钟选择。这会启动振荡器起振定时器OST。CPU将继续依靠内部振荡器工作,直到达到OST计数。当OST超时后,时钟模块将切换到外部晶振且故障保护条件将被清除。

 

继续阅读
51单片机、AVR单片机和PIC单片机IO口的操作

51单片机、AVR单片机和PIC单片机IO口结构的均不同,导致了IO口操作也不同。操作单片机IO口的目的是让单片机的管脚输出逻辑电平和读取单片机管脚的逻辑电平。下面我们来看看51单片机、AVR单片机和PIC单片机IO口的操作的方法。

Microchip Curiosity PIC32MX470+简单测试 +点亮LED灯

我这次拿到的板子是PIC32MX470 Curiosity开发板,第一次使用,就先来点个LED灯吧。使用定时器中断来实现,亮灭时间各一秒。

用Microchip Curiosity PIC32MX470驱动OLED12864显示屏

这次要测试的是驱动OLED12864显示屏。OLED12864模块使用的是IIC接口,SDA接RF4引脚,SCL接RF5引脚,电源为3.3V。IIC时序使用软件模拟,采用强制读写模式。

Microchip PIC单片机12864汉字液晶模块显示文字

本文是用PIC单片机12864汉字液晶模块来显示文字

项目分享:基于Microchip PIC32MM Curiosity的超级电容器

级电容器的应用非常广泛,电动车起步、加速,给HIFI做电源,点焊机等。这次分享的项目,是超级电容器充电控制。

©2018 Microchip Corporation
facebook google plus twitter linkedin youku weibo rss