本帖最后由 芯圣电子官方QQ 于 2023-7-24 15:02 编辑
HC89S003P开发板套件收到了,先来测试下CLKOUT输出的时钟测试。
一、手册资料
1.1、芯片时钟框图,程序中使用P2.1端口输出时钟。
1.2、输出时钟选择
二、程序部分
2.1、main.c
#define ALLOCATE_EXTERN
#include "HC89S003F4.h"
//系统初始化
void SystemInit(void)
{
/************************************系统初始化****************************************/
WDTCCR = 0x00; //关闭看门狗
while((CLKCON&0x20)!=0x20); //等待内部高频RC起振
CLKSWR = 0x51; //选择内部高频时钟为主时钟,内部高频RC2分频,Fosc=16MHz
while((CLKSWR&0xC0)!=0x40); //等待内部高频切换完成
CLKDIV = 0x01; //Fosc1分频得到Fcpu,Fcpu=16MHz
}
void main(void)
{
SystemInit(); //系统初始化
P2M0 = P2M1&0x0f|0x80; //P21设置为推挽输出
CLKO_MAP = 0x21; //时钟输出,映射P21
CLKOUT = 0x16; //选择时钟输出
while(1);
}
三、输出结果
3.1、CLKOUT = 0x15; //选择时钟输出rc32m_clk/2=16MHz
3.2、CLKOUT = 0x16; //选择时钟输出rc32m_clk/4=8MHz
3.3、CLKOUT = 0x17; //选择时钟输出rc32m_clk/8=4MHz
|