Май 222020
 

 

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()


Дек 162019
 

Все с этим модулем работает. 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

Дек 122019
 

Подключение 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.

Но в итоге получается что нужно подключать вот так:

Дек 112019
 

Вот собрал рабочую плату для изучения 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 – лучше не использовать

 

Ноя 282019
 

Пока не работает с Arduino и PyBoard (Micropython). Если у кого получилось запустить – напишите.

Продолжение истории. Пришел другой такой же модуль, только от другого поставщика. И он работает. В чем проблемы пока не выяснил, буду разбираться. Видно одно, они отличаются качеством сборки. Первый с лева – работает. Правый не работает.