频率是周期的倒数
51单片机定时器中TH与TL可以改变周期来改变频率。
举例如下
3000us=3ms=0.003s T=0.003s频率=333HZ
2000us=2ms=0.002s T=0.002s 频率=500HZ
1818us=1.818ms=0.001818s T=0.001818s 频率=550HZ
1300us=1.3ms=0.0013s T=0.0013s 频率750HZ
1000us=1ms=0.001s T=0.001s 频率=1000HZ
650us=0.65ms=0.00065s T=0.00065s频率1500HZ
500us=0.5ms=0.0005s T=0.0005s 频率=2000HZ
400us=0.4ms=0.0004s T=0.0004s频率2500HZ
330us=0.33ms=0.00033sT=0.00033s 频率3000HZ
可通过改变频率使PWM输出不同的值
以下为一个例子
#include<reg52.h> //包含头文件,一般情况不需要改动
sbit BUZZ=P2^5; //定义蜂鸣器接口
sbit k3=P3^2; //定义P31口是k3
sbit k2=P3^0; //定义P31口是k2
code unsigned int toneH[6]={ //音调对应的定时器计数值的高8位 第一个音为低音7
0XF8,0XFA,0XFB,0XFC,0XFE,0XFE
};
code unsigned int toneL[6]={ //音调对应的定