中易网

请问有没有4路以上的pwm芯片,用单片机来控制,我要的是独立的芯片,不考虑单片机。谢谢

答案:1  悬赏:0  
解决时间 2021-01-24 09:19
请问有没有4路以上的pwm芯片,用单片机来控制,我要的是独立的芯片,不考虑单片机。谢谢
最佳答案
#include
typedef unsigned int uint;
typedef unsigned char uchar;
uchar pwm_data_a,pwm_data_b,pwm_data_c,pwm_a,pwm_b,pwm_c;
sbit pwm_1=P1^5;
sbit pwm_2=P1^6;
sbit pwm_3=P1^7;
void init_time0(void)//定时器0初始化函数
{
TMOD=(TMOD&0xf0)|0x01;//定时器0工作在模式2(16位定时器)(做PWM频率)
TH0=0xd8;
TL0=0xf0;//定时器周期为512US(频率2K)
TR0=1;//启动定时器0
ET0=1;//开定时器0的中断
EA=1;//开总中断
}
void init_time1(void)//定时器1初始化函数
{
TMOD=(TMOD&0x0f)|0x20;//定时器0工作在模式3(自动重装载的模式下)(做PWM宽度调
TH1=0xd8;
TL1=0xd8;//定时器周期为2US(频率512K)
TR1=1;//启动定时器0
ET1=1;//开定时器0的中断
EA=1;//开总中断
}
void intr_time0(void) interrupt 1//定时器0中断服务函数
{
TH0=0xd8;
TL0=0xf0;//定时器周期为512US(频率2K)
pwm_1=pwm_2=pwm_3=1;
pwm_a=pwm_b=pwm_c=0;
}
void intr_time1(void) interrupt 3//定时器1中断服务函数
{
if(pwm_a {
pwm_a++;
}
else
{
pwm_1=0;
}
if(pwm_b {
pwm_b++;
}
else
{
pwm_2=0;
}
if(pwm_c {
pwm_c++;
}
else
{
pwm_3=0;
}
}
void main(void)
{
pwm_data_a=240;
pwm_data_b=200;
pwm_data_c=160;
init_time1();
init_time0();
while(1)
{}
}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
旅游时如何使用对讲机?
我想我可以胜任这份工作 怎么翻译?
请问松下nanoe空气净化器和夏普的双净离子哪
史泰龙的同学说他是「最有可能在电椅上结束生
请问晚上睡觉经常做噩梦的原因是什么?有什么
linux嵌入式软件开发为什么基本都是用c++qt开
项目营销计划书
卫生间洗手盆什么牌子好
重大这附近有卖正装的 吗,?
12岁孩子幽门螺杆菌,吃饭以后腹疼,晚上疼得
有若干张长9厘米、宽6厘米的长方形纸片。用这
什么是同步电抗?其意义如何?凸极式与隐极式
长春融创上城的质量怎么样?
如何申请听障儿童语言康复中心定点机构
仙桃市仙桃中国移动这个地址怎么能查询到,着
推荐资讯
下列公司对高级管理人员的规定,错误的有哪些
在冬天正常的室内温度下怎么样能使吊兰长的更
请问工厂拖欠员4月工资不发,请假不批还倒扣工
电视机晶振14.31818m和其它的型号替代吗
天涯论坛删除密码邮箱都忘记账号发的帖子
新旺商务宾馆地址有知道的么?有点事想过去
亲戚的称谓如何区分?
有成熟卵子,但是排不出来,是什么原因,我想
水落归漕打一肖
极品纯正红碧石有价值吗
希望金融和贷金所项目真的吗?
1.3公斤的重量放在脚上跑起来感觉重吗
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?