- GPIO 0 connected to GND » ESP32-CAM in flashing mode
- micropython-camera-driver (Работает но много ошибок – фото зеленое)
- https://randomnerdtutorials.com/esp32-cam-post-image-photo-server/ – Тут все четко.
- flashlight GPIO 4
- GPIO 33 – Built-in Red LED
- ESP32 & ESP32-CAM and Arduino install
- I2C SSD1306 OLED Display
- ESP32_CAM_V1.6 Схема
- ESP-IDF Programming Guide
- FRAMESIZE_QVGA for 320×240
- FRAMESIZE_CIF for 400c296
- FRAMESIZE_VGA for 640×480
- FRAMESIZE_SVGA for 800×600
- FRAMESIZE_XGA for 1024×768
- FRAMESIZE_SXGA for 1280×1024
- FRAMESIZE_UXGA for 1600×1200
Вспышка работает только до первого обращения к камере. После чего включить вспышку так и не получилось. pinMode(4, OUTPUT); digitalWrite(4, LOW); rtc_gpio_hold_en(GPIO_NUM_4);Удерживать кнопку возле перемычки для перехода в режим программирования, при включении питания.(5 секунд) Обеспечить хорошее питание !!! #esp32cam #ESP323CAM
from machine import Pin, I2C import ssd1306 from time import sleep # 1 3 Busy GREEN = Pin(0, Pin.OUT) GREEN.on() BLUE_OLED = Pin(2, Pin.OUT) BLUE_OLED.on() def do_connect(): import network wlan = network.WLAN(network.STA_IF) wlan.active(True) if not wlan.isconnected(): print('connecting to network...') wlan.connect('ssd', 'pass') while not wlan.isconnected(): pass print('network config:', wlan.ifconfig()) do_connect() i2c = I2C(-1, scl=Pin(4), sda=Pin(5)) print(i2c.scan()) oled_width = 128 oled_height = 64 oled = ssd1306.SSD1306_I2C(oled_width, oled_height, i2c) oled.text('Hello, World 1!', 0, 0) oled.text('Hello, World 2!', 0, 10) oled.text('Hello, World 3!', 0, 20) oled.show()
esptool.py –port /dev/ttyUSB0 –baud 115200 write_flash –flash_size=detect -fm dio 0 esp8266-20171101-v1.9.3.bin
Если после загрузки не работает REPL через COM порт при любой скорости.
GPS, Ethernet W5500 Lite, Micropython
Source: STM32F405-MICROPYTHON-2020-01-31
Добавил прогноз погоды и NTP.
Интересная платочка.
- STM32F411CEU6_schematics
- https://github.com/mcauser/WEACT_F411CEU6
- https://github.com/YXZhu/micropython/tree/master/ports/stm32/boards/WeAct_F411CE
Вот пришла платка, залил Micropython, запаял W25Q32 SPI FLASH – все работает.
Все с этим модулем работает. Ethernet модуль Wiznet 5500
import network
nic = network.WIZNET5K(SPI(1,SPI.MASTER), pyb.Pin.board.PA4, pyb.Pin.board.PA3)
nic.active(True)
nic.ifconfig( ‘dhcp’ )
print(nic.ifconfig())
(‘10.10.10.113’, ‘255.255.255.0’, ‘10.10.10.1’, ‘10.10.10.1’)
MicroPython compiled with parameters.
MICROPY_PY_WIZNET5K = 5500
MICROPY_PY_LWIP = 1
Подключение W25Q32 по шине SPI
Из документации смотрим:
Конкретные имена портов интерфейса SPI могут различаться в зависимости от производителя аппаратных средств, при этом возможны следующие варианты:
- MOSI: SIMO, SDO (на устройстве), DO, DON, SO, MRSR;
- MISO: SOMI, SDI (на устройстве), DI, DIN, SI, MTST;
- SCLK: SCK, CLK, SPC (SPI serial port clock);
- SS: nCS, CS, CSB, CSN, nSS, STE, SYNC.
Но в итоге получается что нужно подключать вот так:
Вот собрал рабочую плату для изучения MicroPython-a на STM32F405
-
- STM32F405 with MicroPython PYB V1.1
- GPS SIm33ELA
- MAX30102
- BMP180
- W5500 Ethernet (Пока с этим модулем проблемы)
- Display TFT ILI9341
- Li-Ion Зарядка будем работать от аккумуляторы
- FLASH W25Q32
- 5 Users Button (74HC14 для избежания дребезга)
- RTC battery
- Accelerometer-MMA76603 (Встроенный)
- Распиновка подключения MicroPythonWeatherStation
- W25Q32 FLASH DI->MOSI DO-MISO
- X17 – BOOT1 – лучше не использовать