Arduino基本函數介紹


轉載自http://cnlearn.linksprite.com/?p=5248#.VwZrzvl95hE

數字 I/O

(1)pinMode(pin, mode)

  數字IO 口輸入輸出模式定義函數,pin 表示為0~13, mode 表示為INPUT 或OUTPUT 。
(2) digitalWrite(pin, value)

  數字IO 口輸出電平定義函數,pin 表示為0~13,value 表示為HIGH 或LOW,比如定義HIGH 可以驅動LED。

(3)int digitalRead(pin)

  數字IO 口讀輸入電平函數,pin 表示為0~13,value 表示為HIGH 或LOW。比如可以讀數字傳感器。

模擬 I/O

(1)int analogRead(pin)

  模擬IO 口讀函數,pin 表示為0~5(Arduino Diecimila 為0~5,Arduino nano 為0~7)。比如可以讀模擬傳感器(10 位AD,0~5V 表示為0~1023)。
(2)analogWrite(pin, value)

  PWM 數字IO 口PWM 輸出函數,Arduino 數字IO 口標注了PWM 的IO 口可使用該函數,pin 表示3, 5, 6, 9, 10, 11,value 表示為0~255。比如可用於電機PWM 調速或音樂播放。

擴展 I/O

(1)shiftOut(dataPin, clockPin, bitOrder, value)

  SPI 外部IO 擴展函數,通常使用帶SPI 接口的74HC595 做8 個IO 擴展,dataPin 為數據口,clockPin 為時鍾口,bitOrder 為數據傳輸方向(MSBFIRST 高位在前,LSBFIR ST 低位在前),value 表示所要傳送的數據(0~255),另外還需要一個IO 口做74HC595 的使能控制。

(2)unsigned long pulseIn(pin, value)

  脈沖長度記錄函數,返回時間參數(us),pin 表示為0~13,value 為HIGH 或LOW。比如value 為HIGH,那么當pin 輸入為高電平時,開始計時,當pin 輸入為低電平時,停止計時,然后返回該時間。

時間函數

(1)unsigned long millis()

  返回時間函數(單位ms),該函數是指,當程序運行就開始計時並返回記錄的參數, 該參數溢出大概需要50 天時間。
(2)delay(ms)      

  延時函數(單位ms)。

(3) delayMicroseconds(us)      

  延時函數(單位us)。

數學函數

(1)min(x, y)  

  求最小值
(2)max(x, y)  

  求最大值
(3)abs(x)  

  計算絕對值

(4)constrain(x, a, b)      

  約束函數,下限a,上限b,x 必須在ab 之間才能返回。

(5)map(value, fromLow, fromHigh, toLow, toHigh)

  約束函數,value 必須在fromLow 與toLow 之間和fromHi gh 與toHigh 之間。

(6)pow(base, exponent)

  開方函數,base 的exponent 次方。

(7)sq(x)

  平方

(8)sqrt(x)

  開根號

三角函數

(1)sin(rad)
(2)cos(rad)
(3)tan(rad)

隨機數函數

(1)randomSeed(seed)

  隨機數端口定義函數,seed 表示讀模擬口analogRead(pin)函數。

(2)long random(max)

  隨機數函數,返回數據大於等於0,小於max。

(3)long random(min, max)

  隨機數函數,返回數據大於等於min,小於max。

外部中斷函數

(1)attachInterrupt(interrupt, mode)

  外部中斷只能用到數字IO 口2 和3,interrupt 表示中斷口初始0 或1,表示一個功能函數,mode:LOW低電平中斷,CHANGE 有變化就中斷,RISING 上升沿中斷,FALLING 下降沿中斷。
(2)detachInterrupt(interrupt)

  中斷開關,interrupt=1 開,interrupt=0 關。

中斷使能函數

(1)interrupts()

  使能中斷
(2)noInterrupts()

  禁止中斷

串口收發函數

(1) Serial.begin(speed)

  串口定義波特率函數,speed 表示波特率,如9600,19200 等。

(2) int Serial.available()

  判斷緩沖器狀態。

(3)int Serial.read()

  讀串口並返回收到參數。

(4)Serial.flush()

  清空緩沖器。

(5)Serial.print(data)

  串口輸出數據。
(6)Serial.println(data)

  串口輸出數據並帶回車符。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM