“(SKU:ELB040404)ULN2803步进电机驱动板”的版本间的差异
来自YwRobot Studio Wiki
(→使用教程) |
|||
(未显示同一用户的1个中间版本) | |||
第25行: | 第25行: | ||
==使用教程== | ==使用教程== | ||
− | *[[File: | + | *[[File:ULN2803连线图.jpg|800px|]] |
===样例代码=== | ===样例代码=== | ||
<pre style="color:blue"> | <pre style="color:blue"> | ||
+ | int Pin0 = 4; | ||
+ | int Pin1 = 5; | ||
+ | int Pin2 = 6; | ||
+ | int Pin3 = 7; | ||
+ | int _step = 0; | ||
+ | boolean dir = true;//正反转 | ||
+ | int stepperSpeed = 1;//电机转速,3ms一步 | ||
+ | void setup(){ | ||
+ | pinMode(Pin0, OUTPUT); | ||
+ | pinMode(Pin1, OUTPUT); | ||
+ | pinMode(Pin2, OUTPUT); | ||
+ | pinMode(Pin3, OUTPUT); | ||
+ | } | ||
+ | |||
+ | void loop(){ | ||
+ | switch(_step){ | ||
+ | case 0: | ||
+ | digitalWrite(Pin0, LOW); | ||
+ | digitalWrite(Pin1, LOW); | ||
+ | digitalWrite(Pin2, LOW); | ||
+ | digitalWrite(Pin3, HIGH); | ||
+ | break; | ||
+ | case 1: | ||
+ | digitalWrite(Pin0, LOW); | ||
+ | digitalWrite(Pin1, LOW); | ||
+ | digitalWrite(Pin2, HIGH); | ||
+ | digitalWrite(Pin3, HIGH); | ||
+ | break; | ||
+ | case 2: | ||
+ | digitalWrite(Pin0, LOW); | ||
+ | digitalWrite(Pin1, LOW); | ||
+ | digitalWrite(Pin2, HIGH); | ||
+ | digitalWrite(Pin3, LOW); | ||
+ | break; | ||
+ | case 3: | ||
+ | digitalWrite(Pin0, LOW); | ||
+ | digitalWrite(Pin1, HIGH); | ||
+ | digitalWrite(Pin2, HIGH); | ||
+ | digitalWrite(Pin3, LOW); | ||
+ | break; | ||
+ | case 4: | ||
+ | digitalWrite(Pin0, LOW); | ||
+ | digitalWrite(Pin1, HIGH); | ||
+ | digitalWrite(Pin2, LOW); | ||
+ | digitalWrite(Pin3, LOW); | ||
+ | break; | ||
+ | case 5: | ||
+ | digitalWrite(Pin0, HIGH); | ||
+ | digitalWrite(Pin1, HIGH); | ||
+ | digitalWrite(Pin2, LOW); | ||
+ | digitalWrite(Pin3, LOW); | ||
+ | break; | ||
+ | case 6: | ||
+ | digitalWrite(Pin0, HIGH); | ||
+ | digitalWrite(Pin1, LOW); | ||
+ | digitalWrite(Pin2, LOW); | ||
+ | digitalWrite(Pin3, LOW); | ||
+ | break; | ||
+ | case 7: | ||
+ | digitalWrite(Pin0, HIGH); | ||
+ | digitalWrite(Pin1, LOW); | ||
+ | digitalWrite(Pin2, LOW); | ||
+ | digitalWrite(Pin3, HIGH); | ||
+ | break; | ||
+ | default: | ||
+ | digitalWrite(Pin0, LOW); | ||
+ | digitalWrite(Pin1, LOW); | ||
+ | digitalWrite(Pin2, LOW); | ||
+ | digitalWrite(Pin3, LOW); | ||
+ | break; | ||
+ | } | ||
+ | if(dir){ | ||
+ | _step++; | ||
+ | }else{ | ||
+ | _step--; | ||
+ | } | ||
+ | if(_step>7){ | ||
+ | _step=0; | ||
+ | } | ||
+ | if(_step<0){ | ||
+ | _step=7; | ||
+ | } | ||
+ | delay(stepperSpeed); | ||
+ | } | ||
</pre> | </pre> | ||
2017年6月9日 (五) 20:42的最新版本
产品参数
- 尺寸:52*39mm
- 固定孔:3mm
- 端口:数字
- 芯片:ULN2803(内含8路达林顿三极管驱动器)
- 驱动电压:5V(推荐)7-24V(通过跳线切换只外部供电)
- 输出电流:500mA(总电流)
- 可驱动8路低电平设备或2个五线步进电机
- 平台:Arduino、单片机
产品特性
- 采用ULN2803,可驱动8路低电平设备
- 可以让Arduino通过低电平直接驱动继电器、12V LED灯带、步进电机等
- 板载电压输入跳线,可以直接用Arduino供电,也可以通过外部供电驱动高电压设备
- 可以直接驱动8个继电器,或者8路12V LED灯带
- 输入端采用Arduino 3P接口可以直接连接传感器板,彩色插针,方便连接
- 完全替代7路输出的ULN2003驱动板,直接兼容
使用教程
样例代码
int Pin0 = 4; int Pin1 = 5; int Pin2 = 6; int Pin3 = 7; int _step = 0; boolean dir = true;//正反转 int stepperSpeed = 1;//电机转速,3ms一步 void setup(){ pinMode(Pin0, OUTPUT); pinMode(Pin1, OUTPUT); pinMode(Pin2, OUTPUT); pinMode(Pin3, OUTPUT); } void loop(){ switch(_step){ case 0: digitalWrite(Pin0, LOW); digitalWrite(Pin1, LOW); digitalWrite(Pin2, LOW); digitalWrite(Pin3, HIGH); break; case 1: digitalWrite(Pin0, LOW); digitalWrite(Pin1, LOW); digitalWrite(Pin2, HIGH); digitalWrite(Pin3, HIGH); break; case 2: digitalWrite(Pin0, LOW); digitalWrite(Pin1, LOW); digitalWrite(Pin2, HIGH); digitalWrite(Pin3, LOW); break; case 3: digitalWrite(Pin0, LOW); digitalWrite(Pin1, HIGH); digitalWrite(Pin2, HIGH); digitalWrite(Pin3, LOW); break; case 4: digitalWrite(Pin0, LOW); digitalWrite(Pin1, HIGH); digitalWrite(Pin2, LOW); digitalWrite(Pin3, LOW); break; case 5: digitalWrite(Pin0, HIGH); digitalWrite(Pin1, HIGH); digitalWrite(Pin2, LOW); digitalWrite(Pin3, LOW); break; case 6: digitalWrite(Pin0, HIGH); digitalWrite(Pin1, LOW); digitalWrite(Pin2, LOW); digitalWrite(Pin3, LOW); break; case 7: digitalWrite(Pin0, HIGH); digitalWrite(Pin1, LOW); digitalWrite(Pin2, LOW); digitalWrite(Pin3, HIGH); break; default: digitalWrite(Pin0, LOW); digitalWrite(Pin1, LOW); digitalWrite(Pin2, LOW); digitalWrite(Pin3, LOW); break; } if(dir){ _step++; }else{ _step--; } if(_step>7){ _step=0; } if(_step<0){ _step=7; } delay(stepperSpeed); }
更多
[YWRobot产品资料下载]