Bootstrap

请描述定时器初值的计算方式_51单片机定时器初值计算详解

前言:

本文详细介绍了51单片机学习过程中定时器的初值计算问题以及相关概念,力求把每一个学习过程中的可能会遇到的难点说清楚,并举相关的例子加以说明。学习完毕,又顺手利用刚学到定时器的相关知识写了一个“定时器初值计算”控制台程序,能够实现:51定时器三种不同工作方式下的初值计算输出,既实用,又能加深对所学知识的理解。

软件使用VS2012编写,实现效果如下,仅仅是控制台程序,没有界面,有兴趣的话可以自己用C#或者QT写个界面,或者做一些功能上拓展,跟我们平常学习51资料中附带的定时器初值计算小工具一样哦!

附51系列单片机控制台程序定时器初值核心计算函数源码(完整VS2012工程源码下载)

/*

* 函数名:Timer_Initial_calculation

* 描述 :定时器初值计算函数

* 输入 :无

* 输出 :无

*/

void Timer_Initial_calculation()

{

int N;//计数值

int n; //定时器位数

int TimeDigit;//计数总值

N = (t*fosc*1000) / 12; //计算计数值N

//定时器位数选择

switch(y)

{

case 0:

n=13;

TimeDigit = pow(2.0,n); //定时器位数选择

Timing

;