Arduino學習筆記 (四) 常用函式

2022-04-30 17:36:18 字數 1822 閱讀 5428

1、pinmode(pin,mode):設定引腳的輸入輸出狀態

pin:引腳號;

mode:input、output

2、digitalwrite(pin,value) :設定輸出引腳的高低電平狀態

pin:引腳號 ;

value:high low

3、int digitalread(pin):讀取引腳的狀態,並返回high 或low

pin:引腳號

4、int analogread(pin):讀出模擬引腳上的電壓,並以二進位制數值返回(0~1023)對應為0~5v

pin:引腳號

5、analogwrite(pin,value):給pwm引腳輸出電壓值

pin:引腳號  ;

value:具體的pwm值,(0~255對應表示乙個週期的高電平占空比)

6、shiftout(datapin,clockpin,bitorder,value):將乙個位元組的資料通過移位的方式逐位的輸出。

datapin:資料引腳

clockpin:時鐘引腳

bitorder:移位順序(msbfirst-高;lsbfirst-低)

value:需要進行移位傳輸的值

說明:在輸出資料時,當一位資料寫入資料輸出引腳時,時鐘引腳將輸出脈衝訊號,指示該位資料已被寫入資料輸出引腳等待外設讀取。並且在使用本函式之前datapin和clockpin引腳應該設定為輸出狀態。本函式一次只能輸出乙個位元組的內容,也就是說最大一次只能輸出255,如果大於255,就要多次呼叫這個函式。

7、unsigned long mills():回傳微控制器從開始執行到現在目前的時間(單位:ms)

8、delay( number):占用微控制器的時間(單位:ms)

number:其代表占用微控制器的時間長度

9、delay microseconds( number):占用微控制器的時間(單位:us)

number:其代表占用微控制器的時間

10、pulsein(pin,state,timeout):讀取脈衝寬度。  從脈衝狀態為state開始,到脈衝狀態為~state為止。當然是由時間限制的

pin:模擬引腳號

state:讀取脈衝的型別(高或者低)

timeout:等待脈衝讀取完成的最長時間,如果引數中沒有這乙個,那麼預設就是1min

11、map() 將數字從乙個範圍重新對映到另乙個範圍。

函式原型:map(value, fromlow, fromhigh, tolow, tohigh)

value:要對映的數

fromlow:當前值範圍的下限

fromhigh:當前值範圍的下限

tolow:目標值範圍的下限

tohigh:目標值範圍的上限

返回值:對映後的值

eg: (讀取io0的模擬電壓(0~1023),並將其設定到io9(0~255)(其實也就是pwm))

int val = analogread(0);

val = map(val, 0, 1023, 0, 255);

analogwrite(9, val);

12、設定串列埠波特率

serial.begin(9600);

讀取某io口引數

int buttonstate = digitalread(pushbutton);

讀取a0腳輸入值大小(0-5v對應0~1023)

int sensorvalue = analogread(a0);

串列埠顯示器輸出

serial.println()

產生pwm訊號

analogwrite(pin, val)//val 是 0~255 的整數值,對應電壓從 0 到+5v

arduino學習筆記四 例項led

在數位電路中開關 switch 是一種基本的輸入形式,它的作用是保持電路的連線或者斷開。arduino 從數字i o 管腳上只能讀出高電平 5v 或者低電平 0v 因此我們首先面臨到的乙個問題就是如何將開關的開 斷狀態轉變成 arduino 能夠讀取的高 低電平。解決的辦法是通過上 下拉電阻,按照電...

Arduino學習筆記01 Arduino介紹

學習arduino最好有些c語言基礎,我開始學arduino時也有些許困惑,希望以下教程能夠幫到你!本次學習筆記主要板子是arduino uno。首先介紹一下學習arduino的資源 arduino中文社群 arduino實驗室 太極創客 別再找了!這是有史以來最棒的arduino教程 太極創客 零...

arduino學習筆記五

串列埠輸出顯示 序列通訊是在實現在 pc機與微控制器進行互動的最簡單的辦法。之前的 pc機上一般都配有標準的 rs 232 或者rs 422 介面來實現序列通訊,但現在這種情況已經發生了一些改變,大家更傾向於使用 usb這樣一種更快速但同時也更加複雜的方式來實現序列通訊。儘管在有些計算機上現在已經找...