找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4283|回复: 6
打印 上一主题 下一主题
收起左侧

单片机如何用pwm波控制直流电机的速度啊?

[复制链接]
跳转到指定楼层
楼主
ID:488382 发表于 2019-5-28 20:04 来自手机 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
10黑币
已经会写pwm波的程序,就是如何将这个pwm波给到直流电机上,从而控制它的转速呢?(在单片机开发板上)。程序上还要怎么写才能控制呢?
#include<reg52.h>   
unsigned int a, b;    //------------------------------------------   
void main()   
{             TMOD = 0x01;                 //T0定时方式1            
TH0 = (65536-50000) / 256;   //50ms@12MHz             TL0 = (65536-50000) % 256;            
TR0 = 1;             ET0 = 1;             EX0 = 1; EX1 = 1;            
IT0 = 1; IT1 = 1;             EA = 1;             a = 0;             b = 10;            
while(1);    }    //------------------------------------------   
void time0() interrupt 1    {            
TL0 = (65536-50000) % 256;            
TH0 = (65536-50000) / 256;   //50ms@12MHz             a++;            
if(a == 20) a = 0;           //在这里调整周期.            
if(a < b) P2 = 0xff;        //在这里调整占空比.            
else   P2 = 0x00;            
P0 = ((b / 10) << 4) + b % 10; //显示占空比等级    }    //------------------------------------------   
void X0_INT() interrupt 0    {             b++;             if(b > 19) b = 19;           //占空比等级最大为19    }    //------------------------------------------    void X1_INT() interrupt 2    {             b--;             if(b < 1) b = 1;             //占空比等级最小为1.    }

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:549631 发表于 2019-5-28 20:45 | 只看该作者
调整占空比就可以调整速度了
回复

使用道具 举报

板凳
ID:456588 发表于 2019-5-28 20:53 | 只看该作者
看一下跑马灯程序  io口一个高电平一个低电平就能转了
回复

使用道具 举报

地板
ID:456588 发表于 2019-5-28 20:53 | 只看该作者
跑马灯程序改一下就行了
回复

使用道具 举报

5#
ID:502774 发表于 2019-5-28 23:44 来自手机 | 只看该作者
占空比会决定输出高低电平的时间。
回复

使用道具 举报

6#
ID:548229 发表于 2019-5-29 08:02 | 只看该作者
pwm 控制电机,说白了就是控制电压;直流电机是你给他的电压大,他就转的块,电压小就慢;
回复

使用道具 举报

7#
ID:393699 发表于 2019-5-29 10:51 | 只看该作者
占空比
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表