当前位置: 首页 > news >正文

外包网站建设费用包括网站备份百度网站打不开

外包网站建设费用包括网站备份,百度网站打不开,企业所得税最新优惠政策,做空的网站有哪些STM32F1 的独立看门狗#xff08;以下简称 IWDG#xff09;。 STM32F1内部自带了两个看门狗#xff0c;一个是独立看门狗 IWDG#xff0c;另一个是窗口看门狗 WWDG#xff0c; 本章只介绍独立看门狗 IWDG#xff0c;窗口看门狗 WWDG 会在后面章节介绍。 本章要实现的功能…STM32F1 的独立看门狗以下简称 IWDG。 STM32F1内部自带了两个看门狗一个是独立看门狗 IWDG另一个是窗口看门狗 WWDG 本章只介绍独立看门狗 IWDG窗口看门狗 WWDG 会在后面章节介绍。 本章要实现的功能是 通过 K1 按键进行喂狗喂狗的时候 D1 指示灯点亮超过喂狗时间产生复位后 D1 指示灯熄灭 同时使用 D2 指示灯闪烁表示系统运行。 26.1 IWDG 介绍 IWDG 简介 STM32F1 芯片内部含有两个看门狗外设 一个是 独立看门狗 IWDG 另一个是 窗口看门狗 WWDG。 两个看门狗外设独立和窗口均可用于检测并解决由软件错误导致的故障。 独立看门狗简单理解其实就是一个 12 位递减计数器当计数器从某一个值递减到 0 时如果看门狗已激活系统就会产生一次复位。 如果在计数器递减到 0 之前刷新了计数器值那么系统就不会产生复位。 这个刷新计数器值过程我们称之为“喂狗”。 看门狗功能由 VDD 电压域供电在停止模式和待机模式下仍能工作。 IWDG 结构框图 1标号 1IWDG 时钟 独立看门狗(IWDG)由其专用低速时钟 (LSI) 驱动因此即便在主时钟发生故障时仍然保持工作状态。 在前面介绍时钟树时我们就讲解过 LSI其频率一般在 30-60KHz 之间通常选择 40KHz 作为 IWDG 时钟。 由于 LSI 的时钟频率并不非常精确所以独立看门狗只适用于对时间精度要求比较低的场合。 2标号 2预分频器寄存器 LSI 时钟并不是直接提供给计数器时钟而是通过一个 8 位预分频寄存器 IWDG_PR 分频后输入给计数器时钟。 我们可以操作 IWDG_PR 寄存器来设置分频因 子分频因子可以为 4、8、16、32、64、128、256。 分频后的计数器时钟为CK_CNT 40/ 42^PREPRE 为预分频系数0-6 *4*2^PRE 大小就是 4、8、16、32、64、128、256 值。每经过一个计数器时钟 计数器就减 1。 3标号 3计数器 独立看门狗的计数器是一个 12 位的递减计数器计数最大值为 0XFFF当 递减到 0 时会产生一个复位信号让系统重新启动运行如果在计数器减到 0 之前刷新了计数器值的话就不会产生复位信号这个刷新计数器值过程我们称 之为“喂狗”。 4标号 4重装载寄存器 重装载寄存器是一个 12 位的寄存器里面装着要刷新到计数器的值这个 值的大小决定着独立看门狗的溢出时间。溢出时间 Tout (4*2^pre) / 40 * rlr (ms)pre 是预分频器系数0-6rlr 是重装载寄存器的值公式内的 40 是 独立看门狗的时钟。 比如设置 pre4rlr800那么独立看门狗溢出时间是 1280ms也就是说 如果在 1280ms 内没有进行喂狗那么系统将进行重启即程序重新开始运行 5标号 5密钥寄存器 密钥寄存器IWDG_KR也称为关键字寄存器或键寄存器。此寄存器可以说 是 IWDG 的一个控制寄存器。往该寄存器写入三种值会有三种控制效果 ①写入 0X5555由于 IWDG_PR 和 IWDG_RLR 寄存器具有写访问保护。若要 修改寄存器必须首先对 IWDG_KR 寄存器写入代码 0x5555。若写入其他值将重 启写保护。 ②写入 0XAAAA把 IWDG_RLR 寄存器内值重装载到计数器中。 ③写入 0XCCCC启动 IWDG 功能。此方式属于软件启动一旦开启独立看门 狗它就关不掉只有复位才能关掉。 6标号 6状态寄存器 状态寄存器 IWDG_SR 只有位 0 PVU 和位 1 RVU 有效这两位只能由 硬件操作。RVU看门狗计数器重装载值更新硬件置 1 表示重装载值的更新正 在进行中更新完毕之后由硬件清 0。 PVU: 看门狗预分频值更新硬件置 1 表示预分频值的更新正在进行中当更新完成后由硬件清 0。 所以只有当RVU/PVU 等于 0 的时候才可以更新重装载寄存器/预分频寄存器。 由于篇幅限制本章并没有对相关寄存器进行介绍大家可以参考 《STM32F10x 中文参考手册》-17 独立看门狗IWDG章节里面有详细的讲解。 如果看不懂的可以暂时放下因为我们使用的是库函数开发。 26.2 IWDG 配置步骤 IWDG 相关库函数在 stm32f10x_iwdg.c 和 stm32f10x_iwdg.h 文件中 1开启寄存器访问给 IWDG_KR 寄存器写入 0X5555 通过前面内容的介绍我们知道 IWDG_PR 和 IWDG_RLR 寄存器具有写访问保 护。 若要修改寄存器必须首先对 IWDG_KR 寄存器写入代码 0x5555如果写入 其他的值将重新开启写保护。 在库函数中实现函数如下 IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); //取消寄存器写保护 这个函数非常简单里面的参数就是用来使能或失能写访问即开启或关闭写访问。 2设置 IWDG 预分频系数和重装载值 设置 IWDG 预分频系数函数为 void IWDG_SetPrescaler(uint8_t IWDG_Prescaler); //设置 IWDG 预分频值 设置 IWDG 重装载值函数为 void IWDG_SetReload(uint16_t Reload); //设置 IWDG 重装载值 设置好 IWDG 的分频系数 pre 和重装载值就可以知道独立看门狗的喂狗时 间也就是看门狗溢出时间该时间的计算公式前面已经介绍 公式如下 Tout (4*2^pre) / 40 * rlr 3重载计数器值喂狗给 IWDG_KR 寄存器写入 0XAAAA 重载计数器值喂狗库函数是 IWDG_ReloadCounter(); //重装载初值 此函数功能是将 IWDG_RLR 寄存器内值重新加载到独立看门狗计数器内实现喂狗操作。 4开启 IWDG给 IWDG_KR 寄存器写入 0XCCCC 要使用独立看门狗我们还需要打开它开启 IWDG 的库函数是 IWDG_Enable(); //打开独立看门狗 这里提醒下大家IWDG 在一旦启用就不能再被关闭想要关闭只能重 启并且重启之后不能打开 IWDG否则问题依旧存在。所以如果不用 IWDG 的 话就不要去打开它免得麻烦。 通过以上几步配置好后我们就可以正常使用独立看门狗了我们需要在规 定的时间内喂狗否则系统即会重新启动。 26.3 硬件设计 由于 IWDG 是 STM32F1 内部资源因此本硬件电路非常简单只有 LED 指示 灯、KEY1 按键连接其对应的电路图在前面章节中都有介绍这里就不多说。 D2 用来提示系统运行D1 用来作为喂狗和系统重启时的提示KEY1 按键用来喂 狗操作喂狗时 D1 亮喂狗失败系统重启D1 灭。 26.4 软件设计 本章所要实现的功能是通过 KEY1 按键进行喂狗喂狗的时候 D1 点亮同 时串口输出“喂狗”提示信息超过喂狗时间系统重启 D1 熄灭同时串口输出 “复位系统”提示信息同时使用 D2 指示灯闪烁表示系统运行。 程序框架如下 1初始化 IWDG开启 IWDG设置溢出时间 #include iwdg.h/* u8 Pre 预分频值 u16 rlr 重装载值 */// IWDG 初始化 void IWDG_Init(u8 pre,u16 rlr) {// 第一步IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); //取消寄存器写保护 // 第二步IWDG_SetPrescaler(pre); //设置 IWDG 预分频值IWDG_SetReload(rlr); //设置 IWDG 重装载值// 第三步IWDG_ReloadCounter(); //重装载初值// 第四步IWDG_Enable(); //打开独立看门狗}// 喂狗 void IWDG_FeedDog(void) {IWDG_ReloadCounter(); }2编写主函数 #include system.h #include SysTick.h #include led.h #include usart.h #include key.h #include iwdg.hint main() {u8 i0;SysTick_Init(72);NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //中断优先级分组分2组LED_Init();USART1_Init(115200);KEY_Init();IWDG_Init(4,800); // 1280msLED11;printf(复位系统\r\n);while(1){ if(KEY_Scan(0)KEY1_PRESS){IWDG_FeedDog();LED1 0;printf(喂狗\r\n);}i;if(i%100)LED0!LED0;delay_ms(10);} }
http://www.dnsts.com.cn/news/94216.html

相关文章:

  • 倒计时网站模板网站维护是什么样
  • 网站做子站点有什么用seo关于网站搜索
  • 请多记几个本站域名防止失联wordpress搭建网站教程
  • 多说评论插件对网站优化今天的新闻就是明天的历史
  • 建设银行江门市新会网站专业微信网站
  • 做短视频的网站都有哪些网页设计师联盟网站怎么
  • 新建网站费用服务好的镇江网站优化
  • 网站编辑做图片用什么在您的网站首页添加标签
  • 小型教育网站开发与设计开淘宝网店
  • 网站空间1g多少钱一年织梦网站怎么关闭
  • 微网站和微信公共平台的区别路由器通过域名解析做网站
  • 本地网站搭建如何访问网页西蔵自治区建设厅网站
  • 中文域名可以做网站吗WordPress文章文字改颜色
  • 网站 动画 怎么做的网络黄页推广软件哪个好
  • 南充网站设计学校石嘴山市建设局网站
  • 网站开发最严重的问题中国发布网
  • 达人室内设计网站企业网站 漏洞
  • 什么网站免费做简历只能用域名访问WordPress
  • 甘肃省水利建设工程项目网站学校 门户网站建设方案
  • 网站建设算什么专业做网站设计素材
  • 导航网站建设1688官网app下载
  • win2008 网站服务器如何用凡科网建立一个网站
  • 外贸平台阿里巴巴补贴政策南宁网站seo顾问
  • 网站建设与管理是干嘛的用手机制作招生简章的app
  • 技术好的手机网站建设网站快速排名怎么做
  • 青蛙网站建设wordpress 允许用户上传图片
  • 企业网站开发是什么做旅游网站需要注意什么
  • 燕莎网站建设上海建设工程信息查询网
  • 如何将软件上传到公开网站手机电脑网站
  • 个人网站创建网络推广公司有哪些