Arduino和ESP8266引腳圖

Arduino的引腳圖

https://www.geek-workshop.com/thread-11826-1-1.html

 

 

ESP8266

 https://item.taobao.com/item.htm?_u=n1qf7bf57e4b&id=562045987553

 

 

 

 

模擬輸入 Analog input
ESP8266只有一個ADC通道提供給用戶。它可以使用於讀取ADC引腳電壓,也可使用於讀取模塊電源電壓(VCC)。
讀取ADC引腳值電壓,使用analogRead(A0)。輸入電壓範圍:0~1.0V。
讀取模塊電源電壓,使用ESP.getVcc() 且ADC引腳不能連接。另外,下面的代碼必須添加至程序中:
ADC_MODE(ADC_VCC);
這條代碼不能包含在任何函數中,放在程序中 #include 之後即可。
模擬輸出 Analog output
analogWrite(pin, value) 在已有的引腳上使能軟件PWM功能。PWM可以用在引腳0~16。調用analogWrite(pin, 0) 可以關閉引腳PWM。取值範圍:0~ PWMRANGE,默認爲1023。 PWM 範圍可以使用analogWriteRange(new_range)語句來更改。
PWM 默認頻率:1KHz。使用analogWriteFreq(new_frequency) 可以更改頻率。

時間與延時  Timing and delays
millis() 和 micros() 分別返回單位爲毫秒和微秒的值,復位後值重置。
delay(ms) 暫時程序給定毫秒時間並允許WiFi和TCP/IP任務的運行。delayMicroseconds(us) 暫時程序給定微秒時間。
記住wifi連接後除了素描程序外還有許多代碼需要再芯片上運行。每次loop()函數完成時或當delay被調用時,Wifi和TCP/IP庫都有機會處理任何等待事件。如果你程序中某處有循環,消耗事件大於50ms且沒有調用delay,你可以考慮添加一個調用延時函數以保持Wifi堆棧的平穩運行。
有個 yield()函數和delay(0)功能相同。delayMicroseconds函數,在另一方面,不會爲其他任務讓步,所以當延時超過20ms時不推薦使用它。

串行 Serial
Serial 功能幾乎和普通arduino一樣,除了硬件FIFO (128 bytes for TX and RX)有額外256byte TX and RX緩衝區。傳輸和接收都是中斷驅動。當FIFO和緩衝區分別爲滿和空時,讀寫功能將阻止程序的運行。
Serial 使用UART0,即引腳映射GPIO1(TX)和GPIO3(RX)。Serial.begin 之後調用Serial.swap()時,Serial引腳將映射到GPIO15(TX)和GPIO13(RX)。再次調用 swap時 引腳映射將回到GPIO1(TX)和GPIO3(RX)。
Serial1 使用UART1,TX引腳爲GPIO2。UART1不能用來接收數據因爲通常情況RX引腳被用到flash芯片連接了。使用Serail1,調用 Serial1.begin(baudrate)。
如果Serial1沒有使用且Serial沒有被調換 - 通過在Serial.begin之後調用Serial.set_tx(2)或者直接調用Serial.begin(baud,config,mode,2) 可以將UART0的TX映射到GPIO2。
默認情況下當你調用Serial.begin,Wifi庫診斷輸出是禁用的。再次啓動調試輸出,調用Serial.setDebugOutput(true)。調用Serial1.setDebugOutput(true),Serial1重定向調試輸出。
你也需要使用Serial.setDebugOutput(true)去使能printf()函數的輸出。
Serial和Serial1都支持 5,6,7,8數據位;奇 (O), 偶 (E),無(N) 校驗位;1或2停止位。設置所需模式,調用Serial.begin(baudrate,SRIAL_8N1),Serial.begin(baudrate, SERIAL_6E2), etc.

Progmem

程序內存工作特性和arduino頁非常相似,在只讀存儲器中的存放只讀數據和字符串,爲你的應用釋放堆。最重要的區別是在ESP8266上字符串不合並。這意味着在代碼中定義在F("")和PSTR("")中的相同字符串在每個實例中都將佔用空間。所以你需要自行管理重複的字符串。

有個附加輔助宏,讓它更容易通過 const PROGMEM 字符串去使用 FPSTR()(__FlashStringHelper)方法。這樣使用將有助於使合併字符串更簡便。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章