问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

我要做一个pwm发生器,周期20ms,占空比在5%~10%之间变化

发布网友 发布时间:2022-04-25 02:27

我来回答

1个回答

热心网友 时间:2023-11-07 11:39

50HZ要求不高,下面这个给你参考,建议你的晶振要么32.768M的,要么16.384M比较准容易实现
这个程序的pca当定时器用了,没有用它的pwm功能,因为它的pwm只有8位(16位不是不行有点麻烦)

#include "51.h"
#include "stc12c5a_pca.h"
sfr AUXR = 0x8E;
#define PCA_SPEED 0x80 //pca备频设置
#define PCA_OUTPUT_POLARITY 1 //输出极性 0:低电平开启 1:高电平开启

#define PWM_OUTPUT_PORT P2
uint16 PWM_CH0_Value=10000,PWM_CH1_Value=0x7fff;
uint8 PWM_OpenBit=0x0f; //低四位由ch0输出,高四位由ch1输出
extern bit SF_TASKRUN_FLAG;

void PCA_ISR(void) interrupt 7
{
if (CCF0) {
CCF0=0;
#if PCA_OUTPUT_POLARITY
PWM_OUTPUT_PORT&=~(PWM_OpenBit&0x0f);
#else
PWM_OUTPUT_PORT|=(PWM_OpenBit&0x0f);
#endif
}
if (CCF1) {
CCF1=0;
#if PCA_OUTPUT_POLARITY
PWM_OUTPUT_PORT&=~(PWM_OpenBit&0xf0);
#else
PWM_OUTPUT_PORT|=(PWM_OpenBit&0xf0);
#endif
}
/**/if (CF) {
CF=0;
CCAP0L=(uint8)PWM_CH0_Value;
CCAP1L=(uint8)PWM_CH1_Value;
#ifdef PCA_SPEED
CH=PCA_SPEED;
CCAP0H=(uint8)(~PWM_CH0_Value>>8)|PCA_SPEED;
CCAP1H=(uint8)(~PWM_CH1_Value>>8)|PCA_SPEED;
#else
CCAP0H=(uint8)(~PWM_CH0_Value>>8);
CCAP1H=(uint8)(~PWM_CH1_Value>>8);
SF_TASKRUN_FLAG=1;
#endif
#if PCA_OUTPUT_POLARITY
PWM_OUTPUT_PORT=0xff;
#else
PWM_OUTPUT_PORT=0x0;
#endif
}
}
sfr P2M0 = 0x96;
sfr P2M1 = 0x95;
void PCA_Init(void)
{
P2M1=0x00;
P2M0=0xff;
//stc 1t pca
CMOD = (0x04<<1)|1;//pca1T
#ifdef PCA_SPEED
CH=PCA_SPEED;
#endif
CCAPM0=0x49;
CCAPM1=0x49;
CCF0=0;
CCF1=0;
CF=0; //清pca中断
PPCA=1; //12c5a pca高优先级
CR=1; //启动pca输出
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 使用puppeteer实现将htmll转成pdf 内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档 【译】将HTML转为PDF的几种实现方案 变形金刚08动画怎么样 变形金刚08动画的问题 变形金刚08动画日语版剧情介绍 乐华彩电怎样进入总线 欧宗瑛的出版著作和论文 SIMCA化学指的是什么 汽车用语 在家宅腻了吧,不如让“它”带你去远行吧! 洛神花的功效与作用有哪些? 寻matlab大牛指点PCA人脸识别代码运行问题 pcar什么意思 主成分分析(PCA),用Matlab和SAS、SPSS结果不一样,后二者一样。但三者的特征值一样,特征向量正负不一 主机连接如下图所示,划分子网情况下,PCA和PCB能够通讯,那么子网掩码可以是? 东阳市昌兴生物质燃料有限公司怎么样? ps另存为的按钮在哪里 离婚女人梦见很多旧拖鞋但没有买是什么意思? 梦见女邻居剃光头穿烂拖鞋是什么征兆? 梦见穿旧拖鞋还不是一双,感觉还很舒服,请高手帮我解解梦,谢谢 康佳电视怎么连接有线电视? 创维电视机怎么连有线电视 数字有线电视信号怎么接普通电视机 如何把机顶盒接头连接到有线电视线上如图? 电视怎么连接有线电视? 郭崇慧的出版著作和论文 VB 调用lingo 输出结果不正确 迈克尔杰克逊的这首歌叫什么名字?(有视频) 研华cpu 长卡PCA-6010有什么特性? 求WLO世界恋爱机构、晓之护卫123、赤箱2的下载链接或种子。一个一百分。 发到邮箱就行1500549416@qq.com s7pcacpx.all是哪个软件上的 为什么系统重装后电脑变卡了怎么办 电脑重装系统后变卡了怎么回事 为什么重装系统后电脑变卡 为什么我电脑重装系统之后变卡了? 为什么我的电脑重装系统后变得比以前更卡了?求大虾解释 为什么电脑重装系统几次之后就变得很卡了 椎间盘手术中的钛金钉子能在人体用多久。【椎间盘脱出】 钛金到底治疗什么病症?钛金项圈里的钛金能起什么作用? 医用钛金钉对人体有排斥吗 手术内固定钢板是钛合金的,钢钉也是钛合金的吗? 60岁。右小腿骨折打髓内钉。用的是钛金的。右小腿那个大的骨头有三处骨折。术后三年了。要不要取钉 前五年做了腰部手术 ,用了六个钛合金钢钉做固定,]]型壮的,我己五十岁了,不计划取了,可以吗 ?谢谢! 手术过后的钛合金钢钉会不会和骨头长在一起_百度拇指医生 我父亲头部做了开颅手术,用了钛合金的钉子固定,请问下以后要取出来吗?取与不取有什么不同,会伤身吗?