历史上的今天
返回首页

历史上的今天

今天是:2024年12月19日(星期四)

正在发生

2020年12月19日 | 神舟IV学习笔记(十二)IWDG独立看门狗

2020-12-19 来源:eefocus

看门狗这个词非常形象,如果你不定时给它骨头吃,它就会汪汪叫。STM32当中写入IWDG_KR寄存器值为0XAAAA,就相当喂骨头给狗吃。如果你超时没有喂狗,后果非常严重,狗就会要咬主人啦(也就是单片机复位)。


IWDG最适合应用于那些需要看门狗作为一个在主程序之外,能够完全独立工作,并且对时间精度要求较低的场合。独立看门狗(IWDG)由专用的低速时钟(LSI)驱动,即使主时钟发生故障它也仍然有效。


我们今天就实现这样一个功能,当按下KEY1键,执行喂狗程序。采用LED1指示复位情况。当配置看门狗后,LED1 将常亮,如果 KEY1按键按下,就喂狗,只要 KEY1不停的按,看门狗就一直不会产生复位。只要超过看门狗定时时间还没按,那么将会导致程序重启,而 LED1也会熄灭。

程序代码:

int main(void)

{

  /* Setup STM32 system (clock, PLL and Flash configuration) */

  SystemInit();

 

  /* Add your application code here

     */

  LED_Configuration();

  KEY_Configuration();

  /* Enable write access to IWDG_PR and IWDG_RLR registers */

  IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);

 

  /* IWDG counter clock: 40KHz(LSI) / 64 = 0.244 KHz */

  IWDG_SetPrescaler(IWDG_Prescaler_64);

 

  /* Set counter reload value to 625 */

  IWDG_SetReload(625);//40KHZ/64*625=1S 溢出时间为 1s

 

  /* Reload IWDG counter */

  IWDG_ReloadCounter();

 

  /* Enable IWDG (the LSI oscillator will be enabled by hardware) */

  IWDG_Enable();

  /* Infinite loop */

  delay_ms(300);         //让人看得到灭

  LED1_ON();

  while (1)

  {

     if(Read_key1())

       /* Reload IWDG counter */

       IWDG_ReloadCounter();

  }

}


推荐阅读

史海拾趣

思瑞浦微电子科技(3PEAK INCORPORATED)公司的发展小趣事

思瑞浦微电子科技(3PEAK INCORPORATED)公司是一家总部位于台湾的电子元器件制造商,专注于高性能模拟和混合信号集成电路(IC)的设计、开发和销售。以下是关于该公司发展的五个相关故事:

  1. 公司成立和早期发展: 思瑞浦微电子科技公司成立于2003年,初期主要致力于集成电路设计和技术研发。公司在成立初期便注重技术创新和产品质量,通过不断提升研发能力和技术水平,逐渐树立了良好的品牌声誉。

  2. 产品线扩展和市场拓展: 随着公司技术实力的增强和市场需求的不断变化,思瑞浦逐步扩展了产品线,并开始向汽车电子、工业控制、消费电子等领域拓展市场。公司致力于提供高性能、低功耗的模拟和混合信号IC,满足不同领域客户的需求。

  3. 技术创新和专利积累: 思瑞浦在模拟和混合信号集成电路领域不断进行技术创新和研发投入,取得了多项关键技术的突破和专利成果。公司建立了完善的研发体系和技术团队,持续推出具有竞争优势的新产品,加强了在市场上的地位和竞争力。

  4. 国际合作和市场扩张: 为了进一步拓展市场和提升品牌影响力,思瑞浦积极开展国际合作,与全球知名的客户和合作伙伴建立了长期稳定的合作关系。公司产品逐渐进入国际市场,销售网络覆盖了全球多个地区,并取得了可观的业绩和市场份额。

  5. 持续发展和未来展望: 思瑞浦微电子科技公司在不断发展壮大的过程中,始终坚持技术创新和客户导向,不断提升产品质量和服务水平。公司未来将继续致力于研发投入、市场拓展和国际合作,加强在模拟和混合信号集成电路领域的领先地位,为客户提供更优质的产品和解决方案。

柯爱亚(ceaiya)公司的发展小趣事

柯爱亚一直秉承“持续改进,满足客户要求,不断创新,超越客户期望”的品质方针。公司严格把控产品质量,从原材料采购到生产流程,再到产品检测,每一个环节都力求精益求精。这种对品质的坚持赢得了客户的信任,柯爱亚的产品逐渐在市场上树立了良好的口碑。

ELPIDA公司的发展小趣事

ELPIDA公司成立于1999年,是日本在DRAM(动态随机存取存储器)领域的重要企业。它的成立是对当时日本半导体产业的一次重要整合,由NEC、日立、三菱电机等公司的DRAM业务合并而成。这一举措旨在振兴日本在DRAM领域的竞争力,并保护国内DRAM产业。

Acculin Inc公司的发展小趣事

为了进一步提升技术水平,Acculin Inc积极寻求与国际知名企业的合作。通过与欧洲一家半导体制造商的技术交流,公司引进了一条先进的生产线,并成功将其应用于新型芯片的制造中。这一合作不仅提升了Acculin的生产效率,也使其在芯片制造领域达到了国际先进水平。

Hama公司的发展小趣事

为了提升产品的市场竞争力,H&D Wireless积极寻求技术合作。20XX年,公司与全球领先的微控制器解决方案提供商爱特梅尔(Atmel)携手,共同推出了基于AVR®微控制器的IEEE802.11b+g Wi-Fi解决方案。这一合作不仅提升了H&D Wireless产品的功耗效率和连接稳定性,还显著缩短了客户的产品开发周期。通过不断优化产品性能,H&D Wireless的Wi-Fi解决方案在市场上获得了广泛认可。

Continental Industries公司的发展小趣事

随着业务的不断扩展,Continental Industries开始积极寻求全球市场机会。公司在欧洲、北美洲、南美洲和亚洲等多个地区设立了代表处或全资子公司,以更好地服务当地客户。通过本地化运营和定制化服务,公司成功打开了多个新的市场,实现了业务的快速增长。

问答坊 | AI 解惑

一点建议

来这个论坛的人不乏有刚接触单片机的。 但是,在单片机学习的过程中,因为很多人都是初学,有时候问别人跟问自己也没什么区别。 有时候一点东西想不通,就有可能影响我们的兴趣,毕竟是初学。难度很大。 建议:单片机高手,拿出一些完整的成功的 ...…

查看全部问答>

DC-DC布线中如何减小地弹噪声

布线中除环路最小化原则外,还有一个环路的变化最小化原则,这个原则对于减小DC-DC的地弹意义重大。 ADI对此有一篇文章专门对此进行了详细的说明。非常值得EE们参考。…

查看全部问答>

windml中如何修改root界面

windDemo程序启动后是wind river的logo,如果我想修改成自定义的logo应该怎么做?…

查看全部问答>

求救!!`GLIBC_2.4' not found

编译内核时出错: scripts/kallsyms: /lib/tls/libc.so.6: version `GLIBC_2.4\' not found (required by scripts/kallsyms) make: *** [.tmp_kallsyms1.S] Error 1 请球高手解答!!谢谢…

查看全部问答>

对IDE和SATA的I/O端口比较了解的高手看看

  最近要把原来写过的IDE接口的硬盘读写程序改成SATA的,用到1F0~1F7和3F6~3F7这些I/O映射地址对硬盘控制芯片的寄存器进行寻址,现在我需要知道用SATA接口时,这些I/O地址应该是什么,只要知道对SATA操作的I/O端口地址就能解决所有问题了,请 ...…

查看全部问答>

急驱动器开发高级工程师

高级软件工程师 职责: 系统底层软件的开发; 参与系统需求分析和设计; 职位要求: 1.要求本科以上的计算机相关专业,有丰富开发经验; 2.三年以上的软件开发经验,良好的软件编程习惯; 3.具有两年以上的系统内核程序的开发经验,熟 ...…

查看全部问答>

急需数控机床系统开发??

我公司需要开发套数控机床系统,请问有没有知道这方面知识的朋友?可以加我QQ:913410767,我回电话给你…

查看全部问答>

s3c2440 800x600 如何提速控件显示速度

本人初学wince,请教大虾们一个问题。 本人使用的是S3c2440,wince5.0,800x600的LCD。 因为屏幕过大,wince的显示看起来已经较慢。 因为客户的要求,开发软件需要保持与pc机版本的界面一致。导致程序中需要在一个界面上绘制上百个控件,可以看 ...…

查看全部问答>

基于继电器的温度加热控制器

基于继电器的温度加热控制器…

查看全部问答>