STC12C56xxAD芯片怎么用pwm调速程序?

STC12C56xxAD芯片怎么用pwm调速程序?,第1张

STC12C56xxAD芯片用pwm调速程序的代码如下:

sbit k1=P3^4

sbit k2=P3^5

void delay(unsigned int cnt)

{

unsigned char i

for(cnt>0cnt--)

for(i=0i<250i++)

}

void main()

{

CCON=0//PCA初始化

CL=0//PCA的16位计数器低八位

CH=0//PCA的16位计数器高八位

CMOD=0x00//选择 系统时钟/12 为计数脉冲,则PWM的频率f=sysclk/256/12

CCAP0H=0x80// 占空比控制

CCAP0L=0x80

PCA_PWM0=0x00//控制占空比的第九位为0

CCAPM0=0x42//允许P13作为PWM输出

CR=1//启动PCA计数器

while(1)

{

if(k1==0)

{

delay(200)

while(k1==0)

CCAP0H+=5//占空比调节

CCAP0L+=10

}

if(k2==0)

{

delay(200)

while(k2==0)

CCAP0H-=5//占空比调节

CCAP0L-=5

}

}

}

tc15w401as单片机ad做的一个根据电压调节led亮度,最简单的方法是 用 ad转换的结果 直接控制 LED灯(用 PWM 输出控制LED灯),tc15w401as 正好有四个 PWM 口 可以控制三个 LED灯 不同的亮度,用AD结果 +-*/&|^不同的算法产生不同的数值,灯的亮度就不同了。

STC单片机程序怎么调整PWM的空占比,在初始化函数中 对 PWM 进行初始化后 就会有按照初始化的 占空比输出了,需要调整占空比只要 PWM0 改变 CCAP0H 的值,PWM1 改变 CCAP1H 的值,就可以了,如果不断地 改变 CCAPxH 的数字 PWMx 的输出 也会不断地 改变。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11204862.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存