作者squall0734 (Squall)
看板ASM
标题Re: [问题] 8051控制直流马达
时间Thu Jul 2 18:43:57 2009
※ 引述《GeroGero (-M-)》之铭言:
: 小弟最近才摸8051
: 想做个直流马达正反转
: 还有用8051写出pwm来控制转速
: 不过一直毫无头绪
: 求救大大们可否提供些东西让我参考
: 电路图 或 程式码 power point 皆可
: 感恩...
我之前有写过~
是使用计时中断去写的~
若你对计时中断不熟的话,多多练习~
我是参考计时中断范例程式下去改的~
当然还要经过实验才清楚~~
(用是波器去看~~)
t=~t;
switch(t)
{
case0:
P10=1;
time=pulse_time;
TH0=(65536-time)>>8;
TL0=(65536-time);
break;
case1:
P10=0;
time=time_cycle - pulse_time;
TH0=(65536-time)>>8;
TL0=(65536-time);
break;
}
上面的程式是计时中断里的程式码
(碍於这是之前帮厂商写的,不知是否会侵权,所以只出示部份)
pulse_time就是你要P10这支脚为high的时间
low的时间就是整个周期减掉high的时间重新再计算一次
周期的话应该用100ms就够用了~
电路跟桥式整流器有点像,把负载换成马达,二极体换mos
这样~~~
一个计时中断可以驱动多颗马达的~看你的功力~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.42.192.60
※ 编辑: squall0734 来自: 114.42.192.60 (07/02 18:45)