简介
本文介绍STM8L系列如何分别实现内部的16M晶振的使用。
实验平台
编译软件:IAR for STM8 1.42.2
硬件平台:stm8l101f3p6开发板
仿真器:ST-LINK
库函数版本:STM8L_STMTouch_Lib_V1.1.0
实验步骤
1、工程中添加自己写的时钟的驱动
1)写一个驱动GUA_Clk.c (存放在工程的USER文件夹中)
//******************************************************************************
//name: GUA_Clk.c
//introduce: 时钟驱动
//author: 甜甜的大香瓜
//email: 897503845@qq.com
//QQ group 香瓜单片机之STM8/STM32(164311667)
//changetime: 2016.12.04
//******************************************************************************
#include "stm8l10x.h"
#include "GUA_Clk.h"
/*********************宏定义************************/
#ifndef U8
typedef unsigned char U8;
#endif
#ifndef U16
typedef unsigned short U16;
#endif
#ifndef U32
typedef unsigned long U32;
#endif
//******************************************************************************
//name: GUA_CLK_Init
//introduce: 时钟初始化
//parameter: none
//return: none
//author: 甜甜的大香瓜
//email: 897503845@qq.com
//QQ group 香瓜单片机之STM8/STM32(164311667)
//changetime: 2016.12.04
//******************************************************************************
void GUA_CLK_Init(void)
{
CLK_DeInit(); //寄存器重置
CLK_MasterPrescalerConfig(CLK_MasterPrescaler_HSIDiv1); //时钟1分频,16MHz
}
2)写一个驱动头文件GUA_Clk.h(存放在工程的USER文件夹中)
//******************************************************************************
//name: GUA_Clk.h
//introduce: 时钟驱动的头文件
//author: 甜甜的大香瓜
//email: 897503845@qq.com
//QQ group 香瓜单片机之STM8/STM32(164311667)
//changetime: 2016.12.04
//******************************************************************************
#ifndef _GUA_CLK_H_
#define _GUA_CLK_H_
/*********************外部函数声明************************/
void GUA_CLK_Init(void);
#endif
3)工程中添加GUA_Clk.c
4)添加驱动的路径
$PROJ_DIR$..USER
注意USER文件夹是与“Project”等文件夹同级的自定义文件,用于存放香瓜写的代码。
2、添加库的驱动
1)添加库的驱动文件
3、应用层中调用
1)添加头文件(main.c中)
#include "GUA_Clk.h"
2)初始化(main.c的main函数中)
//晶振初始化
GUA_CLK_Init();
尽量放在代码最开始的位置。
『本文转载自网络,版权归原作者所有,如有侵权请联系删除』