文章目录[隐藏]
【STC单片机】STC15主时钟对外输出示例程序及演示
- 采用的是自制
STC15W408AS
开发板,采用的是外部16MHz晶振。 - 《【开源分享】自制STC15W408AS开发板》
对外输出不同时钟频率
- 对外输出8MHz,引脚
P54
- 对外输出4MHz,引脚
P54
- 对外输出16MHz,引脚
P54
虽然可以看到16MHz的波形,但是在示波器显示上,是闪烁的,说明不是很稳定,STC15F型号的,为5V供电的,最大支持对外输出是13.5MHz。
STC15主时钟对外输出示例程序
#include "reg51.h"
typedef unsigned char BYTE;
typedef unsigned int WORD;
#define FOSC 16000000L //外部晶振频率
//-----------------------------------------
sfr CLK_DIV = 0x97; //时钟分频?存器
//-----------------------------------------
void main()
{
CLK_DIV = 0x40; //0100,0000 P5.4输出频率为SYSclk = 16MHz
// CLK_DIV = 0x80; //1000,0000 P5.4输出频率为SYSclk/2 =8MHz
// CLK_DIV = 0xC0; //1100,0000 P5.4输出频率为SYSclk/4 = 4MHz
// CLK_DIV = 0x00; //主时钟不对外输出时钟
while (1); //程序终止
}
STC15主时钟对外输出官网文档说明
主时钟可以是内部高精度R/C时钟,也可以是外部输入的时钟或外部晶体振荡产生的时
钟。由STC15
系列5V
单片机I/O的对外输出速度最快不超过13.5MHz
,所以5V
单片机的对外
可编程时钟输出速度最快也不超过13.5MHz
,如果频率过高,需进行分频输出;而3.3V
单片机
I/O的对外输出速度最快不超过8MHz,故3.3V
单片机的对外可编程时钟输出速度最快也不超
过8MHz
,如果频率过高,需进行分频输出。
- 主时钟既可以是内部R/C时钟,也可以是外部输入的时钟或外部晶体振荡产生的时钟。但对于无外部时钟源的单片机(STC15F100W系列、STC15W201S系列、STC15W404S系列、STC15W1K16S系列)以及现供货的STC15F2K60S2系列C版单片机,其主时钟只能是内部R/C时钟。
- 系统时钟是指对主时钟进行分频后供给CPU、定时器、串行口、SPI、CCP/PWM/PCA、A/D转换的
实际工作时钟。STC15W4K32S4系列、STC15W401AS系列、STC15W1K08PWM系列及STC15W1K20SLQFP64单片机的主时钟既可以是内部R/C时钟,也可以是外部输入的时钟或外部晶体振荡产生的时钟。 - MCLK是指主时钟频率,MCLKO是指系统时钟输出。SysClk是指系统时钟频率,SysClkO是指系统时钟输出。
- 系统时钟选择控制位
CLKS2、CLKS1
、CLKS0
(系统时钟是指对主时钟进行分频后供给CPU、串行口、SPI、定时器、CCP/PWM/PCA、A/D转换的实际工作时钟),这3个位除了影响MCU对内部时钟频率有影响,同时也对外部时钟输出也有影响。
// CLK_DIV = 0x40;//0100,0000 P5.4输出频率为SYSclk = 16MHz
// CLK_DIV = 0x42;//0100,0010 P5.4输出频率为SYSclk/4 = 4MHz
// CLK_DIV = 0x43;//0100,0011 P5.4输出频率为SYSclk = 2MHz
// CLK_DIV = 0xc2; //1000,0000 P5.4输出频率为SYSclk/4/4 =1MHz
//CLK_DIV = 0x80; //1000,0000 P5.4输出频率为SYSclk/2 =8MHz
// CLK_DIV = 0x83; //1000,0011 P5.4输出频率为SYSclk/2/8 =1M
// CLK_DIV = 0xC0; //1100,0000 P5.4输出频率为SYSclk/4 = 4MHz
CLK_DIV = 0xC4;//1100,0111 P5.4输出频率为SYSclk/4/16 = 250KHz
// CLK_DIV = 0xC5;//1100,0111 P5.4输出频率为SYSclk/4/32 = 125KHz
//CLK_DIV = 0xC6;//1100,0111 P5.4输出频率为SYSclk/4/64 = 62.5KHz
// CLK_DIV = 0xC7;//1100,0111 P5.4输出频率为SYSclk/4/128 = 31.25KHz
//CLK_DIV = 0x00; //主时钟不对外输出时钟
- 3.3V单片机针对的型号是STC15l系列,F是5V的工作电压
版权声明:本文为CSDN博主「perseverance52」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42880082/article/details/122769798
暂无评论