历史上的今天
今天是:2024年12月18日(星期三)
2019年12月18日 | STM8S之内外部16M晶振
2019-12-18 来源:eefocus
简介
本文介绍STM8S系列如何分别实现内外部的16M晶振的使用。
实验平台
编译软件:IAR for STM8 1.42.2
硬件平台:stm8s003f3p6开发板
仿真器:ST-LINK
库函数版本:STM8Sx_AN3298_FW_V4.0.0
基础知识
1、STM8默认使用多少时钟频率?
答:默认使用的是内部16M晶振,并且是8分频,也就是2M的时钟频率。
2、内外部16M晶振有什么区别?
答:stm8内部已有16M晶振,但无法精确定时,如控制步进电机这类需要精确时间的项目,需要使用外部16M晶振。
如果是直流电机这类不需要精确时间的项目,只使用内部16M晶振即可。
六、内部16M晶振的使用步骤
1、初始化内部16M晶振(main.c的main函数中)
//设置内部高速时钟16M为主时钟
CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1);
使用“STM8函数库中文参考.exe”工具生成,一条代码即可使用内部16M晶振,简单粗暴。
七、外部16M晶振的使用步骤
1、写一个外部16M晶振初始化的函数(main.c中)
/*******************************************************************************
* Function Name : CLK_Init
* Description : 时钟初始化
* Input : None
* Return : None
* Author : 甜甜的大香瓜
* date : 2016.05.09
*******************************************************************************/
static void CLK_Init(void)
{
CLK_HSECmd(ENABLE); //外部时钟开
CLK_LSICmd(ENABLE); //内部低频RC开
CLK_HSICmd(ENABLE); //内部高频RC开
while(SET != CLK_GetFlagStatus(CLK_FLAG_HSERDY)); //等待外部晶振起振
CLK_ClockSwitchCmd(ENABLE); //切换使能
CLK_ClockSwitchConfig(CLK_SWITCHMODE_MANUAL,CLK_SOURCE_HSE,DISABLE,CLK_CURRENTCLOCKSTATE_DISABLE);//切换到外部晶振
CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV1); //1分频
}
2、初始化外部16M晶振(main.c的main函数中)
//使用外部16M晶振
CLK_Init();
上一篇:STM8S之电量采集
下一篇:Stm8L系列单片机的低功耗
史海拾趣
|
(一) 首先该明白这门课的研究对象,其实这门课可以说是电路理论的延伸。其中要运用到电路理论的分析方法,所不同的是,新增加了不少复杂的电气元器件。 说到元器件,首先接触到的便是二、三极管。不论哪种版本的教材,一开始都会介绍pn ...… 查看全部问答> |
|
HDC dc = ::GetDC(NULL); int nBitsPixel = ::GetDeviceCaps(dc, BITSPIXEL); ::ReleaseDC(NULL, dc); 我见过nBitsPixel == 16, 或者 nBitsPixel == 32 有没有高手见过nBitsPixel == 24 的,我个人认为24是不可能的,RGB888的话,一定是32,而不 ...… 查看全部问答> |
|
问几个触摸屏驱动的问题 一、我们如何用EVC应用程序去控制触摸屏驱动?我看老帖有人提到自己写触摸屏校验程序,这是如何实现的? 二、触摸屏抖动:我用笔针点应用程序的滚动条,发现滚动条会上下颤动,我在把另外一个BSP的NK放到同一个机子上,不 ...… 查看全部问答> |
|
老师的要求是: 1:3层电梯程序 2:按键有外(1楼上键,2楼上下键,3楼下键),内(1,2,3键,开门键,关门键) 3:要求是配合51系列单片机!电梯功能就不用说了!大家都很清楚! 4:用单片机的汇编语言写! 5:程序完成的代码,最好有电 ...… 查看全部问答> |
|
RESOURCE AVKON_SETTING_PAGE r_settingslist_edit_setting_page { number = 1; hint_text = EDIT_TEXT; label = EDIT_SET ...… 查看全部问答> |
|
我在设计中使用exti中断对输入脉冲计数,总是多计使用PD15做exti输入脚,脉冲干净无毛刺,外部脉冲经光电隔离后经施密特反相器整形后输入到 PD15脚程序如下,请指教;初始化程序如下;void EXTI_Configuration(void){ EX ...… 查看全部问答> |




