打印
[51单片机]

普中单片机有谁能给科普一下大概的几个问题

[复制链接]
1914|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
沙发
不买球鞋|  楼主 | 2014-11-24 16:55 | 只看该作者
它就长这个样子....

WIN_20141124_165335.JPG (160.66 KB )

WIN_20141124_165335.JPG

使用特权

评论回复
板凳
不买球鞋|  楼主 | 2014-11-24 16:56 | 只看该作者
我想知道,我想用它控制一个小电机的转速,通过按键控制,可以实现吗!?还是说需要什么其他的芯片什么的!

使用特权

评论回复
地板
不买球鞋|  楼主 | 2014-11-24 16:58 | 只看该作者
电机是这个,

WIN_20141124_165635.JPG (152.68 KB )

WIN_20141124_165635.JPG

使用特权

评论回复
5
不买球鞋|  楼主 | 2014-11-24 16:59 | 只看该作者
我的问题就是我还需要什么才能控制小电机的转速,希望看到的别觉得太弱智,科普一下下

使用特权

评论回复
6
慢慢学| | 2014-11-24 20:20 | 只看该作者
还需要一个电机驱动芯片,普中的板子上是ULN2003来驱动的,你只要编程就可以了,

使用特权

评论回复
7
NE5532| | 2014-11-24 21:33 | 只看该作者
你这个是直流电刷电机,要控制转速,就要控制他的工作电压。

使用特权

评论回复
8
coody| | 2014-11-25 09:27 | 只看该作者
最简单的是PWM控制转速

使用特权

评论回复
9
人民币的幻想| | 2014-11-25 12:35 | 只看该作者
看一下h桥原理,拿三极管搭一个电路就能驱动小电机了。

使用特权

评论回复
10
不买球鞋|  楼主 | 2014-11-25 13:22 | 只看该作者
慢慢学 发表于 2014-11-24 20:20
还需要一个电机驱动芯片,普中的板子上是ULN2003来驱动的,你只要编程就可以了, ...

需要额外的再来一个芯片是吗!?

使用特权

评论回复
11
不买球鞋|  楼主 | 2014-11-25 13:28 | 只看该作者
ningling_21 发表于 2014-11-25 12:44
板上应该有驱动电路,只要通过程序产生PWM驱动电机就可以实现控制转速

因为比较没基础,不知道到底有没有,也不知道电机到底应该连在哪里,所以附图希望得到答案!

使用特权

评论回复
12
ZONGNAN| | 2014-11-25 13:53 | 只看该作者
板上有驱动电路的,只要通过程序产生PWM驱动电机就可以实现控制转速

使用特权

评论回复
13
sosozz| | 2014-11-25 16:44 | 只看该作者
单片机没法直接驱动小电机,用一片uln2003可以立马解决问题又简单又方便,一片2003能同时驱动6个(具体记不清了)不同的电机,单片机接2003的输入端,2003的输出端接小电机就好啦

使用特权

评论回复
14
tokuhou| | 2014-11-26 16:27 | 只看该作者
PWM调速

使用特权

评论回复
15
不买球鞋|  楼主 | 2014-11-26 18:21 | 只看该作者
while(1)
        {
                  int a;
                    float tp;
                    a=ds18b20readtemp();
                LcdDisplay(a);
                    tp=a;
                    tp=tp*0.0625;
                    if(tp<=22.00)
                    {
                              Motor=0;
                    }                    
                    else if((tp>22.00)&&(tp<24.00))
                    {
                              time1config();
                            while(1)
                            {
                                    if(timer1>100)
                                    {
                                            timer1=0;
                                    }
                                    if(timer1 < 5)
                                    {
                                            Motor=1;
                                    }
                                    else
                                    {
                                            Motor=0;
                                    }
                            }
                     
                    
                    }
                    else if((tp>24.00)&&(tp<27.00))
                    {
                     
                              time1config();
                            while(1)
                            {
                                    if(timer1>100)
                                    {
                                            timer1=0;
                                    }
                                    if(timer1 < 35)
                                    {
                                            Motor=1;
                                    }
                                    else
                                    {
                                            Motor=0;
                                    }
                            }
                    
                    }
                    else
                    {
                              time1config();
                            while(1)
                            {
                                    if(timer1>100)
                                    {
                                            timer1=0;
                                    }
                                    if(timer1 < 80)
                                    {
                                            Motor=1;
                                    }
                                    else
                                    {
                                            Motor=0;
                                    }
                            }
                    }       

                    LcdDisplay(ds18b20readtemp());
        }

这是我调速的一块,为什么一旦进入其中一个就出不了了。温度就固定不再变化了,不知道怎么破,大神可以告诉我问题在哪吗!?

使用特权

评论回复
16
skiiwujinhua| | 2014-11-26 19:54 | 只看该作者
我的也是普中天的板子,在做led流水灯的时候,从左往右的第一个数码管会亮,有没有办法消除??

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

16

帖子

0

粉丝