c.c
来自「使用STC12C5AXXS2的单片机实现准确的脉宽调制(PWM)。本程序演示在C」· C语言 代码 · 共 29 行
C
29 行
//本程序演示在CCP0(P1.3)输出占空比可调的矩形波
#include<REG51.H>
sfr AUXR=0x8E;
sfr CCON=0xD8;
sfr CMOD=0xD9;
sfr CL=0xE9;
sfr CH=0xF9;
sfr CCAP0L=0xEA;
sfr CCAP0H=0xFA;
sfr CCAPM0=0xDA;
sfr CCAPM1=0xDB;
sbit CR=0xDE;
void main()
{
CMOD=0x04;//脉宽调制输入时钟为定时器0的溢出率
CH=0x00;
CL=0x00;
CCAP0L=0xC0;//占空比为C0/100=25%
CCAP0H=0xC0;
CCAPM0=0x42;//8位脉宽调制,无中断
AUXR=AUXR|0x80;//定时器0以1T方式工作
TMOD=0x02;//定时器0以方式2工作
TH0=240;//输出矩形波频率=fosc/256/(256-240)
TL0=240;
TR0=1;//定时器0开始工作
CR=1;//CCP0开始工作
while(1)
;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?