這節簡單的介紹一下:
MicroPython REPL位于UART0(GPIO1 = TX,GPIO3 = RX)上,波特率為115200。制表符補全有助于找出對象具有哪些方法。粘貼模式(Ctrl-E)可用于將大量Python代碼粘貼到REPL中。
importmachine
machine.freq() # 獲取CPU頻率
machine.freq(160000000) # 設置160 MHz
import network
wlan=network.WLAN (network.STA_IF ) #創建站接口
WLAN .active (True ) #激活接口
wlan .scan () #掃描訪問點
wlan .isconnected () #檢查工作站是否連接到AP
wlan .connect ('essid' , 'password' ) #連接到AP
wlan .config ('mac' ) #獲取接口的MAC地址
wlan .ifconfig () #獲取接口的IP /網絡掩碼/ gw / DNS地址
ap = network.WLAN (網絡。AP_IF ) #創建接入點界面
AP.active (True ) #激活接口
ap.config(essid = 'ESP-AP') #設置接入點的ESSID(就是熱點名字)
ESP-yunswj就是熱點
輸入 help():
歡迎使用MicroPython!
有關在線文檔,請訪問
http:// docs.micropython.org/en/latest/esp8266/。
要使診斷信息包含在錯誤報告中,請執行“
import port_diag
”。
sta_if = network.WLAN(network.STA_IF)
sta_if.active(True)
sta_if.scan() # Scan for available access points
sta_if.connect("", "") # Connect to an AP
sta_if.isconnected() # Check for successful connection
# 更改ESP8266 AP的名稱/密碼:
ap_if = network.WLAN(network.AP_IF)
ap_if.config(essid="", authmode=network.AUTH_WPA_WPA2_PSK,
password="")
控制命令:
CTRL-A-在空白行上,進入原始REPL模式
CTRL-B-在空白行上,進入常規REPL模式
CTRL-C-中斷正在運行的程序
CTRL-D-在空白行上,對電路板進行軟復位
CTRL-E-在空白行上進入粘貼模式
有關特定對象的更多幫助,請鍵入
help(obj)
延時于時間:
import time
time.sleep(1) # 休眠一秒
time.sleep_ms(500) # 休眠 500 milliseconds
time.sleep_us(10) # sleep for 10 microseconds
start = time.ticks_ms() ##獲取毫秒計數器
delta = time.ticks_diff(time.ticks_ms(), start) # 計算書簡差
這些東西,是讓你在寫程序的時候寫進去的,命令行輸入的話,效果不是太大
from machine import Pin
p0 = Pin(0, Pin.OUT) # create output pin on GPIO0
p0.on() # set pin to "on" (high) level
p0.off() # set pin to "off" (low) level
p0.value(1) # set pin to on/high
p2 = Pin(2, Pin.IN) # create input pin on GPIO2
print(p2.value()) # get value, 0 or 1
p4 = Pin(4, Pin.IN, Pin.PULL_UP) # 使能內部上拉電阻
p5 = Pin(5, Pin.OUT, value=1) # set pin high on creation
可用的引腳為:0、1、2、3、4、5、12、13、14、15、16(11個),它們對應于ESP8266芯片的實際GPIO引腳編號。請注意,許多最終用戶板使用自己的臨時引腳編號(例如,標記為D0,D1等,自己來取名的)。由于MicroPython支持不同的板卡和模塊,因此選擇了物理引腳編號作為最低的公分母。有關板邏輯引腳和物理芯片引腳之間的映射,請看我昨天發的映射圖.
請注意,引腳(1)和引腳(3)分別是REPL UART TX和RX。另請注意,Pin(16)是一個特殊的引腳(用于從深度睡眠模式喚醒).
PWM(脈沖寬度調制)
可以在引腳(16)以外的所有引腳上使能PWM。
所有通道都有一個頻率,范圍在1到1000之間(以Hz為單位)。
占空比在0到1023之間(包含端點值)。
machine.pwm
from machine import Pin, PWM
pwm0 = PWM(Pin(0)) # create PWM object from a pin
pwm0.freq() # 現在頻率
pwm0.freq(1000) # 設置頻率
pwm0.duty() # 獲取當前占空比
pwm0.duty(200) # 設置占空比
pwm0.deinit() # 關閉引腳上的PWM
pwm2 = PWM(Pin(2), freq=500, duty=512) # #一次性創建和配置,寫法上的便利,不需要一次配置一個
ADC(模擬到數字轉換)
ADC在專用引腳上可用。請注意,ADC引腳上的輸入電壓必須在0v至1.0v之間。
使用machine.ADC類:
from machine import ADC
adc = ADC(0) # create ADC object on ADC pin
adc.read() # read value, 0-1024(10bit的精度)
軟件SPI總線
有兩個SPI驅動程序。一種是通過軟件實現的(位敲打)并在所有引腳上工作,并且可以通過機器訪問.SPI類:
frommachineimportPin,SPI
# construct an SPI bus on the given pins
# polarity is the idle state of SCK
# phase=0 means sample on the first edge of SCK, phase=1 means the second
# 構造給定的銷SPI總線
# 極性是SCK的空閑狀態
# 相位= 0表示樣品在SCK的第一邊緣,相位= 1個裝置中的第二
spi = SPI(-1, baudrate=100000, polarity=1, phase=0, sck=Pin(0), mosi=Pin(2), miso=Pin(4))
spi.init(baudrate=200000) #設置波特率
spi.read(10) # read 10 bytes on MISO
spi.read(10, 0xff) # read 10 bytes while outputing 0xff on MOSI
buf = bytearray(50) # create a buffer
spi.readinto(buf) #讀入給定的緩沖區(在這種情況下,讀取50個字節)
spi.readinto(buf, 0xff) #讀入給定的緩沖區,并在MOSI上輸出0xff
spi.write(b'12345') # write 5 bytes on MOSI
buf = bytearray(4) # create a buffer
spi.write_readinto(b'1234', buf) # write to MOSI and read from MISO into the buffer
spi.write_readinto(buf, buf) # write buf to MOSI and read MISO back into buf
硬件SPI總線
硬件SPI速度更快(最高80Mhz),但僅適用于以下引腳:MISO
GPIO12,MOSI
GPIO13和SCK
GPIO14。它具有與上面的bangbanging SPI類相同的方法,但構造函數和init的pin參數(固定的)是:
from machine import Pin, SPI
hspi = SPI(1, baudrate=80000000, polarity=0, phase=0)
(SPI(0)
用于FlashROM,對用戶不可用,別用了。)
I2C總線
I2C驅動程序是通過軟件實現的,并且可以在所有引腳上工作,并且可以通過machine.IC(class):
from machine import Pin, I2C
# construct(構造) an I2C bus
i2c = I2C(scl=Pin(5), sda=Pin(4), freq=100000)
i2c.readfrom(0x3a, 4) #從地址為0x3a i2c的從設備讀取4個字節
i2c.writeto(0x3a, '12') #將'12'寫入地址為0x3a的從設備
buf = bytearray(10) #創建一個具有10個字節
i2c.writeto(0x3a, buf) #將給定的緩沖區寫入從屬設備
-
ESP8266
+關注
關注
50文章
959瀏覽量
44537
發布評論請先 登錄
相關推薦
評論