388264|8

8

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

急事,小人物大哥请进 [复制链接]

我是做小车题目的,pwm小弟不太懂,请给个用PWM控制小车调速的程序吧,谢了(我要用汇编语言编写的)进来看贴的网友也是有缘分的,呵呵,要是有这样的程序也帮忙提供一些,再次感谢
此帖出自单片机论坛

最新回复

我有个你试下 #include   <reg51.h> unsigned char time,period,high; sbit P10=P1^0; unsigned char speed(unsigned char period0,unsigned char high0 ) { period=period0; high =high0 ; } void   timer0()   interrupt   1 {     time++;     if(time==high)   /*高电平持续时间结束,变低*/      P10=0;     else if(time==period)     /*周期时间到,变高*/     {time=0;      P10=1;     } } main() { TMOD=0x02;   /*定时器0方式1*/ TH0=55;     /*定时器装载初值*/ TL0=55; EA=1;      /*开CPU中断*/ ET0=1;     /*开定时器0中断*/ TR0=1;     /*启动定时器0*/ speed(50,25);   //可以修改占空比 while(1); } 还不会上传附件,就将就吧  详情 回复 发表于 2007-8-30 19:21
点赞 关注
 

回复
举报

242

帖子

0

TA的资源

纯净的硅(高级)

沙发
 

回复:急事,小人物大哥请进

呵呵,先百度一下,看看什么是PWM,你就知道怎么做了,很简单的。 还有,建议你别用汇编,4天3晚的时间,写汇编太慢了。
此帖出自单片机论坛
 
 

回复

152

帖子

0

TA的资源

裸片初长成(初级)

板凳
 

回复:急事,小人物大哥请进

PWM很容易的。 上网搜搜,主要是理解PWM的含义。然后你就全明白了。
此帖出自单片机论坛
 
个人签名我是有火救火,无火灌水的救火车
救火车单片机工作室
http://www.qm999.cn
 
 

回复

175

帖子

0

TA的资源

裸片初长成(初级)

4
 

回复:急事,小人物大哥请进

pwm就是利用改变占空比来改变供应电流功率大小。 比如,直流波形是这样的 ----------那么换成这样的-_-_-_-_就变成一半了。同理,改变高电平的占空比,就可以调整供给,就可以改变速度。
此帖出自单片机论坛
 
个人签名谁想我?我想谁?
 
 

回复

24

帖子

0

TA的资源

一粒金砂(中级)

5
 

回复:急事,小人物大哥请进

我改了 就可以变了
此帖出自单片机论坛
 
 
 

回复

8

帖子

0

TA的资源

一粒金砂(初级)

6
 

回复:急事,小人物大哥请进

我在网上找过了,有没有现成的程序让我研究研究啊,谢了
此帖出自单片机论坛
 
 
 

回复

175

帖子

0

TA的资源

裸片初长成(初级)

7
 

回复:急事,小人物大哥请进

最简单的。你直接把一个单片机的脚置1,持续,算占空比为100%的话。 那么你给一下1给一下0给一下1给一下0,就是占空比为50%的。同理。。你给3个0然后给个1,这样的话,占空比就为25%了。 当然,你外面做个驱动电路的开关。单片机控制,这样最好。。 当然,还有专用的pwm芯片。用了也很好。。
此帖出自单片机论坛
 
个人签名谁想我?我想谁?
 
 

回复

11

帖子

0

TA的资源

一粒金砂(中级)

8
 

回复:急事,小人物大哥请进

厉害!!!
此帖出自单片机论坛
 
 
 

回复

54

帖子

0

TA的资源

一粒金砂(中级)

9
 

回复:急事,小人物大哥请进

我有个你试下 #include <reg51.h> unsigned char time,period,high; sbit P10=P1^0; unsigned char speed(unsigned char period0,unsigned char high0 ) { period=period0; high =high0 ; } void timer0() interrupt 1 { time++; if(time==high) /*高电平持续时间结束,变低*/ P10=0; else if(time==period) /*周期时间到,变高*/ {time=0; P10=1; } } main() { TMOD=0x02; /*定时器0方式1*/ TH0=55; /*定时器装载初值*/ TL0=55; EA=1; /*开CPU中断*/ ET0=1; /*开定时器0中断*/ TR0=1; /*启动定时器0*/ speed(50,25); //可以修改占空比 while(1); } 还不会上传附件,就将就吧
此帖出自单片机论坛
 
个人签名大家都是最棒的,哦……
 
 

回复
您需要登录后才可以回帖 登录 | 注册

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表