抽了點(diǎn)時(shí)間在Arduino官方上看了很多資料,官方的資料解析都是英文的,看得有點(diǎn)吃力!其中如下圖:
(PS:我的無線鼠標(biāo)電池沒電了,充電等了半天才能用)
- Arduino官方: http://www.arduino.cc/
- Arduino源碼: http://code.google.com/p/arduino/
- Arduino臺(tái)灣: http://www.arduino.tw/
- Liquidware : http://www.liquidware.com/
Arduino的軟件可以在http://code.google.com/p/arduino/downloads/list這里下載得到。
看了很多資料,得到的總結(jié)來分享下面的程序代碼:
#include <Servo.h> //這里是頭文件,可以在“sketch”-“Import Library”-“servo”調(diào)用出來
Servo myservo_1; //定義一號(hào)舵機(jī)名{Servo [聲明舵機(jī)的名字,可以隨意,后面需要調(diào)用]}
Servo myservo_2; //定義二號(hào)舵機(jī)名
void setup() //這里前面的文章提過了,指的是函數(shù)在程序開始時(shí)使用,可以初始化變量、接口模式、啟用庫等
{
myservo_1.attach(9); //定義一號(hào)舵機(jī)接口,連接到Arduino板子上的pin9
myservo_2.attach(10); //定義二號(hào)舵機(jī)接口,連接到Arduino板子上的pin10
Serial.begin(19200); //設(shè)置波特率為19200,波特率
Serial.print("Ready"); //板子運(yùn)行的時(shí)候返回“Ready”提示
}
void loop()
{
static int v=0;
if (Serial.available()) //判斷語句
{
char ch = Serial.read(); //讀取串口數(shù)據(jù)
switch(ch)
{
case '0'...'9':
v = v*10 + ch - '0'; //字符轉(zhuǎn)換成十進(jìn)制
break;
case 'a': //如果數(shù)據(jù)后帶a,則表示是一號(hào)舵機(jī)的數(shù)據(jù),比如串口發(fā)送85a
myservo_1.write(v); //用于設(shè)定舵機(jī)旋轉(zhuǎn)角度的語句,可設(shè)定的角度范圍是0°到180°,“V”得到所輸入的值而改變角度,比如85a為85度角
v = 0;
break;
case 'b': //如果數(shù)據(jù)后帶b,則表示是二號(hào)舵機(jī)的數(shù)據(jù),比如串口發(fā)送85a
myservo_2.write(v); //用于設(shè)定舵機(jī)旋轉(zhuǎn)角度的語句,可設(shè)定的角度范圍是0°到180°,“V”得到所輸入的值而改變角度,比如90b為90度角
v = 0;
break;
}
}
}
====================我用的擴(kuò)展板是Roboduino I/O Expansion v3.0=============================