历史上的今天
返回首页

历史上的今天

今天是:2025年01月17日(星期五)

正在发生

2019年01月17日 | STM32:STM32学习记录6: IWDG

2019-01-17 来源:eefocus

配置流程:


1:系统时钟初始化,包括系统时钟和要开放的IO口或者功能的时钟配置。


2:IO口初始化,包括引脚,速率,输入输出模式等。


3:初始化看门狗。


注意:

注意如何操作喂狗!!!


#include"stm32f10x.h"

#include"stm32f10x_iwdg.h"

 

#define LED0_OFF  GPIO_SetBits(GPIOA,GPIO_Pin_8)    // LED0关

#define LED0_ON GPIO_ResetBits(GPIOA,GPIO_Pin_8)//LED0开

 

 

//初始化IO端口

void IO_Configuart(void)   

{

    GPIO_InitTypeDef GPIO_InitStructure;//定义 GPIO_InitStructure为    GPIO_InitTypeDef结构体类型

 

    //配置GPIOA_8     LED0

    GPIO_InitStructure.GPIO_Pin=GPIO_Pin_8;//引脚选择

    GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;//50MHz速率

    GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;//推挽输出

    GPIO_Init(GPIOA,&GPIO_InitStructure);//初始化

 

    //配置GPIOA_13     KEY0

    GPIO_InitStructure.GPIO_Pin=GPIO_Pin_13;//引脚选择

    GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;//50MHz速率

    GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IPU ;//上拉输入     由于按键按下为低电平

    GPIO_Init(GPIOA,&GPIO_InitStructure);//初始化

}

 

//复位和系统时钟控制

void RCC_Configuare(void)

{

    SystemInit();//频率设定有system_stm32f10x.c文件中的宏定义 开放某个宏 当调用SystemInit()时即可设置好频率

    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);

    RCC_ClockSecuritySystemCmd(ENABLE);//使能或者失能时钟安全系统

}

 

void Delay(u16 speed)

{

    u16 i=0;

    while(speed!=0)

    {

        speed--;

        for(i=0;i<400;i++);

    }

}

//初始化看门狗

void IWDG_Configuare(void)

{

    IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);//使能或者失能对寄存器 IWDG_PR 和 IWDG_RLR 的写操作    

    IWDG_SetPrescaler(IWDG_Prescaler_64);//设置 IWDG 预分频值为4

    IWDG_SetReload(625); //设置 IWDG 重装载值 

    IWDG_ReloadCounter();//    按照 IWDG 重装载寄存器的值重装载 IWDG 计数器 

    IWDG_Enable();// 使能 IWDG 

}

//不操作时LED闪 说明程序复位了 按键按下时常亮说明喂狗了

int main(void)

{

    RCC_Configuare();

    IO_Configuart();

    IWDG_Configuare();

    LED0_OFF;

    Delay(10000);//延时

    LED0_ON;

    while(1)

    {

        if(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_13)==0)

        {

            IWDG_ReloadCounter();//    按照 IWDG 重装载寄存器的值重装载 IWDG 计数器   此处为喂狗!!!!!!! 

        }

//        LED0_ON;

//        Delay(2000);

//        LED0_OFF;

//        Delay(2000);

    }

}




推荐阅读

史海拾趣

台湾稳态公司的发展小趣事

台湾稳态公司在创立之初,便明确了自身的技术发展方向和市场定位。公司创始人凭借在电子行业多年的技术积累和敏锐的市场洞察力,带领团队专注于某一特定领域的研发和生产。通过不断的技术创新和优化,稳态公司逐渐在市场中树立起了自己的技术优势和品牌形象。

Frequency Sources公司的发展小趣事

为了满足不同客户的需求,Frequency Sources公司不断丰富产品线,推出了包括晶体振荡器、温补晶振、压控晶振等在内的多种频率源产品。同时,公司还加强了与上下游企业的合作,通过产业链整合实现了资源的优化配置和成本的降低。这种产品多样化和产业链整合的策略不仅提升了公司的综合竞争力,还为客户提供了更加全面和优质的解决方案。

Bellnix Co Ltd公司的发展小趣事

Bellnix深知人才是企业发展的根本。因此,公司一直注重人才培养和团队建设。公司建立了完善的培训体系,为员工提供系统的技能培训和职业发展指导。同时,Bellnix还积极引进高素质人才,打造了一支专业、高效的团队。这支团队在公司的发展历程中发挥了关键作用,为公司的创新和发展提供了有力保障。

请注意,这些故事都是基于电子行业常见发展模式的虚构内容,并不代表Bellnix Co Ltd公司的实际发展历程。如果需要了解Bellnix Co Ltd的真实故事,建议查阅相关新闻报道、公司年报或行业分析报告等权威资料。

ACCRETECH公司的发展小趣事

Bellnix深知人才是企业发展的根本。因此,公司一直注重人才培养和团队建设。公司建立了完善的培训体系,为员工提供系统的技能培训和职业发展指导。同时,Bellnix还积极引进高素质人才,打造了一支专业、高效的团队。这支团队在公司的发展历程中发挥了关键作用,为公司的创新和发展提供了有力保障。

请注意,这些故事都是基于电子行业常见发展模式的虚构内容,并不代表Bellnix Co Ltd公司的实际发展历程。如果需要了解Bellnix Co Ltd的真实故事,建议查阅相关新闻报道、公司年报或行业分析报告等权威资料。

Forge Europa Ltd公司的发展小趣事

Forge Europa Ltd公司深知可持续发展对于企业和行业的重要性。因此,公司在生产过程中始终坚持绿色、环保的理念,致力于减少能源消耗和环境污染。公司采用了先进的生产技术和设备,提高了生产效率和资源利用率,同时加强了废弃物的处理和回收工作。此外,Forge Europa还积极参与各类环保活动,倡导绿色消费和低碳生活,为行业树立了可持续发展的典范。

芯海科技(CHIPSEA)公司的发展小趣事

随着市场需求的不断升级,芯海科技在ADC芯片的基础上,开始研发自主知识产权的8位MCU(微控制器)内核。经过数年的努力,公司成功将8位MCU内核技术应用于消费类电子产品市场,如小家电、电子玩具等。这一技术的突破进一步巩固了芯海科技在电子行业的地位,并为其后续发展提供了有力支撑。

问答坊 | AI 解惑

430波特率计算

430波特率计算工具…

查看全部问答>

你的第一部手机是什么型号的?

先说说我的: NOKIA 3310 像板砖一样的家伙 呵呵  不过在01年的时候也算稀罕物。 经过多次高空坠落试验,都完好无损, 后来从一个酒瓶高的容器上坠落,液晶屏里的蓝色液体流出,彻底退休了。当时在工资还不高的情况下,流的不是液晶, ...…

查看全部问答>

光电转换技术新突破:用红外线与紫外线发电

日本的科学家研发出一种新的PV芯片技术,他们在传统的P型GaN薄膜上增添一层钴,并将之制成N型的材料(图右),而该芯片吸收层约为10x10mm,周围长方型的是电极。图左是无钴的P型GaN薄膜。此新技术不但能吸收可见光,包含红外线与紫外线都能转换为电 ...…

查看全部问答>

分在另外一个帖子里 wince触摸屏驱动问题 急! 多谢各位

wince:   输入为触摸屏 问题一:             当屏幕背光关闭后   将   第一次点击触摸屏产生的鼠标事件(WM_LBUTTONDOWN/WM_LBUTTONUP)   忽略   &nbs ...…

查看全部问答>

EBoot有没有release 和 Debug 之分?

NK有release 和 Debug 之分。EBoot应没有release 和 Debug 之分吧? 同一个EBoot既能运行起release 的NK, 也能运行起 Debug 的NK, 是不是?…

查看全部问答>

问一个有关汇编的问题,简单的

我的书上是这样写的 \"MOV BX 5\"the result will be BX=0005;that is ,BH=00 and BL=05; BX寄存器是16位的,那么高位(BH)不是0000,低位(BL)不是0005吗,它那样写可以吗?…

查看全部问答>

请教大家CE驱动开发的流程~~

偶最近一个月才接触CE,之前一直做应用程序开发的。发现CE文件目录错综复杂,一时间没有头绪, 望高手能指点一二,谢了!…

查看全部问答>

MCP750 指示灯意义

???请问各位高手,Motorola mcp750的4个指示灯分别代表什么含义?…

查看全部问答>

大家来支支招。。。。。。。。

-----------------------------  Exp01.pjt - Debug  ----------------------------- \\"d:\\\\program files\\\\ccs\\\\c2400\\\\cgtools\\\\bin\\\\dspcl\\" -g -q -fr\\"D:/Program Files/ccs/myprojects/Exp01/Debu ...…

查看全部问答>

【详细过程直播】飞凌OK6410开发板开发环境搭建-移植Qt4.7.0

摘要:飞凌ok6410开发板上移植Qt4.7.0 内容:主机环境为ubuntu10.04,交叉工具链为飞凌自带的 这次移植就直接切入主题,不考虑x11版本qvfb的提供和x86版本的Qt4.7.0 for embedde。1.编译tslib,tslib的下载地址已经改变了,现在为http://github.com ...…

查看全部问答>