找回密码
 立即注册

QQ登录

只需一步,快速开始

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

直流电机小风扇的原理图与单片机控制源码

[复制链接]
跳转到指定楼层
楼主
电路原理图如下:


/*        关闭开发板电源
开发板上不要接插任何模块,如液晶点阵这些都不能接上,
把P10用杜邦线链接到电机驱动模块 J4的4IN上,然后把小电机
端子插到 J2的 + 和D 上,不分线序接上即可。
选择好程序,打开电源点下载,接着打开单片机电源。
按S2减速,按S3加速。
*/
#include <reg52.h>
unsigned char pwm_motor_val = 130;//左右电机占空比值 取值范围0-170,0最快
unsigned char pwm_t;//周期

sbit _4IN = P1^0;//
sbit key_s2 = P3^0;
sbit key_s3 = P3^1;

void delay(unsigned int z)//毫秒级延时
{
        unsigned int x,y;
        for(x = z; x > 0; x--)
                for(y = 114; y > 0 ; y--);
}
//定时器0中断
void timer0() interrupt 1
{
        pwm_t++;
        if(pwm_t == 255)
                _4IN = 0;
        if(pwm_motor_val == pwm_t)
                _4IN = 1;                                         
}
void main()
{
        TMOD |= 0x02;//8位自动重装模块
        TH0 = 220;
        TL0 = 220;//11.0592M晶振下占空比最大比值是256,输出100HZ
        TR0 = 1;//启动定时器0
        ET0 = 1;//允许定时器0中断
        EA        = 1;//总中断允许
        while(1)
        {
                if(key_s2 == 0)         //S2按下LED变暗
                {
                        delay(5);
                        if(key_s2 == 0)
                        {
                                if(pwm_motor_val < 170)
                                {
                                        pwm_motor_val++;
                                }
                        }
                }
                if(key_s3 == 0)        //S3按键LED变亮
                {
                        delay(5);
                        if(key_s3 == 0)
                        {
                                if(pwm_motor_val > 0)
                                {
                                        pwm_motor_val--;
                                }
                        }
                }               
        }
}




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

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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