调小车马达转速的第一步,输出固定pwm波

#include<reg52.h>          //pwm波控制灯亮,依照原理直接控制马达电压从而控制转速
#define uint unsigned int
uint a=0,b=100;//设置b占空比
void timer0Init()
{
    TR0=1;
    ET0=1;
    EA=1;
    TMOD=0X01;
}
void timer0()interrupt 1
{
    TH0=(65535-100)/256;
    TL0=(65535-100)%256;       //100微秒基准比较好。
    a=a+1;
}
void main()
{
    int T=100;//周期
    timer0Init();
    while(1)
    {
        if(a>T)//越过周期而重复
        {
            a=0;
        }
        if(a<b)//占空比控制的时间进而控制高电压电压时间(最后输出的是平均电压)
        {
            P1=0xff;
        }
        if(a>b)
        {
            P1=0;//低电压的占空比
        }
    }
}

//刚学会就来分享了,有错请尽指斧正。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值