找回密码
 立即注册
搜索
0赞
赞赏
手机版
扫码打开手机版
把文字装进口袋

STM8S003引脚坑(开发过的人都知道)

earth20011 2022-8-2 17:26:58
0
实验目的 :控制stm8s003核心板进行简单的IO输入输出、中断、窗口看门狗,全休眠功能
0.先看手册
3.窗口看门狗 WWDG
因为看门狗和时钟往往有着密不可分的关系,首先时钟要先确定
这里使用的内部高速的16Mhz时钟 4分频为4Mhz.
void Clk_Init(void)
{undefined
CLK_DeInit();//复位时钟寄存器
CLK_HSICmd(ENABLE);//使能内部高速时钟
CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV4);//配置内部高速时钟(时钟分频器:4分频),系统时钟4MHz
CLK_clockSecuritySystemEnable();//开启时钟安全系统
}


void MWWDG_Init(void)
{undefined
/* WWDG configuration: WWDG is clocked by SYSCLK = 4MHz */

/* Watchdog Window = (COUNTER_INIT - 63) * 1 step
= 64 * (12288 / 4Mhz)
= 196.6 ms
/
/ Non Allowed Window = (COUNTER_INIT - WINDOW_VALUE) * 1 step

      =8 * 1 step
      =8 * (12288 / 4Mhz)
      =24.576 ms
1
2
3
*/
WWDG_Init(COUNTER_INIT, WINDOW_VALUE);//COUNTERINIT = 0x7f,WINDOW = 0x77
}
窗口看门狗就这个么一条初始化语句,但是超时的时间和喂狗的最短时间都是可以计算出来的。上面代码显示是看门狗超时时间为196.6ms,喂狗时间则要大于24.576ms 小于196.6ms之间。

4.Halt mode是最省电的模式,进入之前要将外设能关闭的都关闭,最好再喂一次购,中断不要关,因为要用中断来唤醒。
halt();//进入停机模式
//EXTI_DeInit (); /* 恢复中断的所有设置 */
//System_Init();//系统初始化函数


                                        0

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

使用道具 举报

您需要登录后才可以回帖 立即登录
前来支持~~~~~~~~~~~~~~~~~~~
2022-8-4 04:32:00
期待中......
2022-8-5 15:37:01
太赞了
2022-8-5 15:48:58
不错
2022-8-5 21:08:54
支持一下,期待更多东西
2022-8-7 02:39:48
感觉不错
2022-8-8 08:10:42
支持!!!!!!
2022-8-9 00:18:38
好像还不错!
2022-8-9 16:26:33
非常不错,感谢分享!
2022-8-11 15:41:18
返回顶部