〔ESP32-WROOM-32E〕
〔マイコンのトップに戻る〕
[準備編]
[module編]
[通信編]
[ファイル編]
[OLED編]
[WiFi編]
[メール編]
[並行処理編]
[色々編]
| 端子 番号 名称 |
Myボード |
物理PinNo
|
ESP-WROOM-02端子の一般的な機能 | |
| 1 |
3V3 |
3.0V〜3.6Vまでの+電源(VDD) | ||
| 2 |
EN |
VDDに接続する事によりチップが動作します | ||
| 3 |
IO14 |
D14/SCK |
14 |
GPIO14/CLK(SPI)/SCL(I2C)/IR_T(赤外線38KHz)/I2SI_WS |
| 4 |
IO12 |
D12/MISO |
12 |
GPIO12/MISO(SPI)/PWM/I2SI_DATA |
| 5 |
IO13 |
D13/MOSI |
13 |
GPIO13/MOSI(SPI)/CTS(UART0)/PWM/I2SI_BCK |
| 6 |
Io15 |
D15 |
15 |
GPIO15/CS(SPI)/RTS(UART0)/PWM/I2SO_BCK |
| 7 |
IO2 |
D2 |
2 |
GPIO2/TXD(UART1)/SDA(I2C)/I2SO_WS UART1はこのTXDのみ |
| 8 |
IO0 |
D0(SW1) |
0 |
GPIO0 |
| 9 |
GND |
GND | ||
| 10 |
IO4 |
D4/SDA |
4 |
GPIO4 |
| 11 |
RXD |
D3/RX |
3 |
RXD(UART0)/GPIO3/I2SO_DATA ここにマイコン/PCは接続する |
| 12 |
TXD |
D1/TX |
1 |
TXD(UART0)/GPIO1 ここにマイコン/PCは接続する |
| 13 |
GND |
GND |
||
| 14 |
IO5 |
D5/SCL |
5 |
GPIO5/IR_R |
| 15 |
RST |
リセット、通常はVDD、LOW(GND)でリセットが掛かる | ||
| 16 |
TOUT |
AD |
AD変換(0.0-1.0Vの範囲)が可能なピンです。 |
|
| 17 |
IO16 |
D16(LED1) |
16 |
GPIO16(スリープから目覚める場合にも使用する) |
| 18 |
GND |
GND | ||
| ピン名称(左) | 備考1 | モジュール方向 | ピン名称(右) | 備考2 |
| 3.3V | 出力のみ | (アンテナ側) | D16 | LED1 |
| D14 | SCK |
![]() |
AD | |
| D12 | M I | REST | SW2(RST) | |
| D13 | MO | D5 | SCL | |
| D15 | D1 | TX | ||
| D2 | D3 | RX | ||
| D0 | SW1(LOAD) | D4 | SDA | |
| GND | (USBコネク側) | 5V | 入出力可 |

--------------------------------------------------------------------------------
import time
from machine import Pin
led = Pin(4, Pin.OUT) # ピン4番(GPIO4)をLED出力で割り付ける
sw1 = Pin(5, Pin.IN, Pin.PULL_UP) # ピン5番(GPIO5)をスイッチ入力で割り付ける
while True:
if sw1.value() == 0: # スイッチが押された
led.on() # LED点灯
else :
led.off() # LED消灯
time.sleep_ms(100) # 100msで繰り返す
--------------------------------------------------------------------------------
Myボードなら"GPIO16"にLEDが接続され、"GPIO0"はモード切替スイッチに接続されているのでぇ
--------------------------------------------------------------------------------
led = Pin(16, Pin.OUT) # ピン16番(GPIO16)をLED出力で割り付ける
sw1 = Pin(0, Pin.IN) # ピン0番(GPIO0)をスイッチ入力で割り付ける
while True:
if sw1.value() == 0: # スイッチが押された
led.value(0) # LED点灯
else :
led.value(1) # LED消灯
time.sleep_ms(100) # 100msで繰り返す
--------------------------------------------------------------------------------
"led.off()"でLED点灯なのでぇ、led.value(0)と書き換えた次第です。

"ticks"とは、稼働時間の事で、"ticks_ms"なら起動してからの時間をms時間で得る事が出来ます。
詳しい説明は、ここ又は、ここ或いはオリジナルのここを参照しましょう。
--------------------------------------------------------------------------------
import time
from machine import Pin
# 割り込みが発生したら呼ばれるコールバック関数
def LED_ON(p) :
print("OK!")
led.on()
time.sleep_ms(100) # 100ms間点灯
led.off()
led = Pin(4, Pin.OUT) # ピン4番(GPIO4)をLED出力で割り付ける
sw1 = Pin(5, Pin.IN, Pin.PULL_UP) # ピン5番(GPIO5)をスイッチ入力で割り付ける
# スイッチの立ち上がりエッジで割り込みをかける
sw1.irq(trigger=Pin.IRQ_RISING, handler=LED_ON)
while True:
time.sleep(1) # 1秒間隔で繰り返す
--------------------------------------------------------------------------------
割り込みサンプルとしては、この例はあまり良いとは言えません、
--------------------------------------------------------------------------------
import time
from machine import ADC
adc = ADC(0) # ADCのオブジェクト作成
while True:
print(adc.read())
time.sleep(1) # 1秒で繰り返す
--------------------------------------------------------------------------------
※ "PyCharm"で記述すると、"ADC"が無いと怒られますがESP8266に入れたMicroPythonには
--------------------------------------------------------------------------------
import time
from machine import Pin, PWM
led = Pin(4, Pin.OUT) # ピン4番(GPIO4)をLED出力で割り付ける
pwm = PWM(led) # PWMのオブジェクト作成
pwm.freq(1000) # 1KHzで周波数を設定
while True:
for i in range(1024):
pwm.duty(i) # デューティ比を設定(0-1023で可変)
time.sleep_ms(10) # 10msで繰り返す
--------------------------------------------------------------------------------
※ "PyCharm"で記述すると、"PWM"が無いと怒られますがESP8266に入れたMicroPythonには

詳しい説明は、ここを参照しましょう。
【きむ茶工房ガレージハウス】
Copyright (C) 2006-2021 Shigehiro Kimura All Rights Reserved.