#include <at89x52.h>
unsigned char pwm,pwmh,counter;
void keyadd( );
void keysubb( );
void main( )
{
pwmh=2;
counter=1;
pwm=21;
TMOD=0x02;
TL0=0X38;//自动装载,定时200uS
TH0=0X38;
ET0=1;
EA=1;
TR0=1;
while(1)
{
keyadd();
keysubb();
}
}
void time0_int(void) interrupt 1
{
counter++;
if(counter==pwmh)
{P1_0=0;}
if(counter==pwm)
{counter=1;P1_0=1;}
}
void keyadd( )
{ if(P1_1==0)
{while(P1_1==0);
if (pwmh!= pwm)
{pwmh++;
if (pwmh==pwm){TR0=0;P1_0=1;}
if (pwmh==2){TR0=1;}
}
}
}
void keysubb( )
{ if(P1_2==0)
{while(P1_2==0);
if (pwmh!=1)
{ pwmh--;
if (pwmh==1){TR0=0;P1_0=0;}
if (pwmh==20){TR0=1;}
}
}
}
在每句后面加上注释
你说的都是表面 深沉次的还是没有 比如 为什么定义pwmh=2 counter=1 pwm=21
还有其周期是多少
每一句注释都有了,就剩下分析了,再说,定义的数跟工艺要求有关,周期自己算一下吧
追问我要是会算了还问吗 你帮我分析分析吧
下面是c51单片机生成简单的pwm程序调速直流电机。可是接到电机上电机...
可以的,89C51本身没有PWM触发器,调速起来比较麻烦,建议采用本身带有PWM的单片机 是可以的,但要外附加变频转换电路就可以了! 可以的 只用一个
如何设计c51单片机实现直流电机pwm调速系统.不是c语言程序。在线等...
1,“如果用单片机恒温可以使温度到达预定值就停止加热,低了就加热,用一个温度传感器反馈,这样算是一个自动控制吗”你这是控制系统,但是效果会非常差,尤其是对于温度控制这种大惯性系统,达到预定值就停止加热,但是由于惯性,温度肯定会继续上升,电炉烧水的时候,水开了,断电之后水还要沸腾一定时间的...
...您还有用C51驱动两相混合步进电机的程序啊,能给我一份吗?我急需你...
可以加您Q吗?帮我们一下吧 展开 我来答 分享 微信扫一扫 网络繁忙请稍后重试 新浪微博 QQ空间 举报 浏览14 次 可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。 步进电机 c51 驱动 两相 搜索资料 本地图片 图片链接 提交回答 匿名 回答自动保存中为你推荐:特别推荐...
我要做一基于c51的温控风扇最简单的那种。用直流电机,DS18b20,pwm调速...
焊接超级简单,给你几个建议:1是学学ALTIUM,画PCB的,看视频学学,快的话半天速成,做出来之后先将焊盘过孔少量镀锡,焊接比较容易,锡最好用好的,细一点的,相信你自己,焊接根本就不能算个问题。关键是程序,这个凭经验积累,C51功底要积累。至于视频:推荐郭天祥的ALTIUM学习视频。请问。我解释清楚...
全国电子设计大赛大赛又来临了 请问各位放大类题目需要准备哪些模块啊...
像LED,LCD子电路,子程序。(这点凌阳的61板做的很好,有很多现成的标准函数可以调用)AD,DA电路,搞控制的总得选好步进电机的型号,驱动电路,驱动程序吧,那搞无线的应该准备什么呢?自己去想吧!有一个一等奖选手告诉过我,他说“在竞赛前我就知道我会得奖,因为我把该准备的东西都准备了,而且在比赛前几天都梦到了...
如何设计c51单片机实现直流电机pwm调速系统.不是c语言程序。在线等...
2,一般的控制系统都需要加反馈,以构成闭环控制系统,相对的还有开环控制系统。开环控制系统,举个例子,就是你加热的时候事先计算好大约需要多少热量,然后考虑一下环境影响,计算出加热时间,然后控制加热系统按照你这个时间加热。你觉得这样的系统能够稳定工作吗?环境稍稍有变动就挂了!开环控制系统的...