211 | | |
| 211 | AIN1ピンをArudino Unoのデジタル11番に、AIN2ピンを10番ピンに接続します。[[BR]] |
| 212 | |
| 213 | [[Image(0J4056.1200.jpg,300px)]] |
| 214 | [[Image(DRV8835_5.png,360px)]] |
| 215 | |
| 216 | サンプルスケッチです。正転と逆転を繰り返すようになっています。 |
| 217 | |
| 218 | {{{ |
| 219 | #define AIN1 11 |
| 220 | #define AIN2 10 |
| 221 | |
| 222 | void setup() { |
| 223 | pinMode(AIN1,OUTPUT); |
| 224 | pinMode(AIN2,OUTPUT); |
| 225 | } |
| 226 | |
| 227 | void loop() { |
| 228 | int i=0; |
| 229 | //モーター停止 |
| 230 | analogWrite(AIN1,0); |
| 231 | analogWrite(AIN2,0); |
| 232 | delay(500); |
| 233 | |
| 234 | //モーター正回転・スピード変化 |
| 235 | analogWrite(AIN2,0); |
| 236 | for(i=0;i<256;i++){ |
| 237 | analogWrite(AIN1,i); |
| 238 | delay(100); |
| 239 | } |
| 240 | for(i=255;i>=0;i--){ |
| 241 | analogWrite(AIN1,i); |
| 242 | delay(100); |
| 243 | } |
| 244 | |
| 245 | //モーター停止 |
| 246 | analogWrite(AIN1,0); |
| 247 | analogWrite(AIN2,0); |
| 248 | delay(500); |
| 249 | |
| 250 | //モーター逆回転・スピード変化 |
| 251 | analogWrite(AIN1,0); |
| 252 | for(i=0;i<256;i++){ |
| 253 | analogWrite(AIN2,i); |
| 254 | delay(100); |
| 255 | } |
| 256 | for(i=255;i>=0;i++){ |
| 257 | analogWrite(AIN2,i); |
| 258 | delay(100); |
| 259 | } |
| 260 | } |
| 261 | }}} |
| 262 | |
| 263 | |
| 264 | この他にアナログ入力で速度を変化させるようなタイプなど、上の3タイプではない制御方法を持つモータードライバも存在します。[[BR]] |
| 265 | モータードライバの種類によって制御に必要なピンがいくつか追加されますが、大体のDCモータードライバの基本的な使い方は上記の3タイプです。[[BR]] |
| 266 | |