[全]Arduino esp8266-串口的常用函數(shù)_第1頁
[全]Arduino esp8266-串口的常用函數(shù)_第2頁
[全]Arduino esp8266-串口的常用函數(shù)_第3頁
[全]Arduino esp8266-串口的常用函數(shù)_第4頁
[全]Arduino esp8266-串口的常用函數(shù)_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、Arduino esp8266-串口的常用函數(shù)常用函數(shù)1.Serial.begin(speed)打開串口參數(shù):speed :波特率2.Serial.available()獲取串口上可讀取的數(shù)據(jù)的字節(jié)數(shù)。該數(shù)據(jù)是指已經(jīng)到達(dá)并存儲(chǔ)在接收緩存(共有64字節(jié))中。available()繼承自Stream實(shí)用類。語法:Serial.available()參數(shù):無返回值:返回可讀取的字節(jié)數(shù)示例:int incomingByte = 0; / for incoming serial datavoid setup() Serial.begin(9600); / opens serial port, sets

2、data rate to 9600 bpsvoid loop() / send data only when you receive data:if (Serial.available() 0) / read the incoming byte:incomingByte = Serial.read();/ say what you got:Serial.print(I received: );Serial.println(incomingByte, DEC);3.Serial.read()讀串口數(shù)據(jù),read()繼承自Stream實(shí)用類。 語法:Serial.read()參數(shù):無返回值:串口上

3、第一個(gè)可讀取的字節(jié)(如果沒有可讀取的數(shù)據(jù)則返回-1)- int型。示例:int incomingByte = 0; / 用于存儲(chǔ)從串口讀到的數(shù)據(jù)void setup() Serial.begin(9600); / 打開串呂,設(shè)置速率為9600 bpsvoid loop() / 只在收到數(shù)據(jù)時(shí)發(fā)送數(shù)據(jù) if (Serial.available() 0) / 讀取傳入的字節(jié) incomingByte = Serial.read(); / 指示你收到的數(shù)據(jù) Serial.print(I received: ); Serial.println(incomingByte, DEC); 4.Serial.

4、flush()刷新串口數(shù)據(jù),等待串口數(shù)據(jù)完成輸出。5.Serial.print()往串口發(fā)數(shù)據(jù),無換行 描述以人類可讀的ASCII碼形式向串口發(fā)送數(shù)據(jù),該函數(shù)有多種格式。整數(shù)的每一數(shù)位將以ASCII碼形式發(fā)送。浮點(diǎn)數(shù)同樣以ASCII碼形式發(fā)送,默認(rèn)保留小數(shù)點(diǎn)后兩位。字節(jié)型數(shù)據(jù)將以單個(gè)字符形式發(fā)送。字符和字符串會(huì)以其相應(yīng)的形式發(fā)送。例如:Serial.print(78) 發(fā)送 78Serial.print(1.23456) 發(fā)送 1.23Serial.print(N) 發(fā)送 NSerial.print(Hello world.) 發(fā)送 Hello world.可選的第二個(gè)參數(shù)用于指定數(shù)據(jù)的格式。

5、允許的值為:BIN (binary二進(jìn)制), OCT (octal八進(jìn)制), DEC (decimal十進(jìn)制), HEX (hexadecimal十六進(jìn)制)。對(duì)于浮點(diǎn)數(shù),該參數(shù)指定小數(shù)點(diǎn)的位數(shù)。例如:Serial.print(78, BIN) gives 1001110Serial.print(78, OCT) gives 116Serial.print(78, DEC) gives 78Serial.print(78, HEX) gives 4ESerial.println(1.23456, 0) gives 1Serial.println(1.23456, 2) gives 1.23Ser

6、ial.println(1.23456, 4) gives 1.2346你可以用F()把待發(fā)送的字符串包裝到flash存儲(chǔ)器。例如:Serial.print(F(“Hello World”)要發(fā)送單個(gè)字節(jié)數(shù)據(jù),請(qǐng)使用Serial.write()。添加 F() 相當(dāng)于為字符串常量定義了PROGMEM屬性,常量字符串仍然存儲(chǔ)在FLASH中,但是程序運(yùn)行時(shí)不會(huì)再將常量字符串從FLASH中copy到SRAM中,而是直接讀取FLASH中的字符串,這樣一來就節(jié)約了SRAM,但是代碼運(yùn)行速度就下降了。語法:Serial.print(val)Serial.print(val, format)參數(shù):val: 要

7、發(fā)送的數(shù)據(jù)(任何數(shù)據(jù)類型)format: 指定數(shù)字的基數(shù)(用于整型數(shù))或者小數(shù)的位數(shù)(用于浮點(diǎn)數(shù))。返回值:size_t (long): print()返回發(fā)送的字節(jié)數(shù)(可丟棄該返回值)。示例:/*Uses a FOR loop for data and prints a number in various formats.*/int x = 0; / variablevoid setup() Serial.begin(9600); / open the serial port at 9600 bps:void loop() / print labelsSerial.print(NO FORM

8、AT); / prints a labelSerial.print(t); / prints a tabSerial.print(DEC);Serial.print(t);Serial.print(HEX);Serial.print(t);Serial.print(OCT);Serial.print(t);Serial.print(BIN);Serial.print(t);for(x=0; x 64; x+) / only part of the ASCII chart, change to suit/ print it out in many formats:Serial.print(x);

9、 / print as an ASCII-encoded decimal - same as DECSerial.print(t); / prints a tabSerial.print(x, DEC); / print as an ASCII-encoded decimalSerial.print(t); / prints a tabSerial.print(x, HEX); / print as an ASCII-encoded hexadecimalSerial.print(t); / prints a tabSerial.print(x, OCT); / print as an ASC

10、II-encoded octalSerial.print(t); / prints a tabSerial.println(x, BIN); / print as an ASCII-encoded binary/ then adds the carriage return with printlndelay(200); / delay 200 millisecondsSerial.println(); / prints another carriage return6.Serial.println()往串口發(fā)數(shù)據(jù),類似Serial.print(),但有換行。7.Serial.write()寫二進(jìn)制數(shù)據(jù)到串口,數(shù)據(jù)是一個(gè)字節(jié)一個(gè)字節(jié)地發(fā)送的,若以字符形式發(fā)送數(shù)字請(qǐng)使用print()代替。語法:Serial.write(val)Serial.write(str)Serial.write(buf, len)參數(shù):val: 作為單個(gè)字節(jié)發(fā)送的數(shù)據(jù)str: 由一系列字節(jié)組成的字符串buf: 同一系列字節(jié)組成的數(shù)組len: 要發(fā)送的數(shù)組的長度返回:wri

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論