module:micropython:esp32uartpcuc:esp32uartpcuc
Table of Contents
MicroPython: Esp32UartPCUC
Übersicht
IT01
- 1 2 3 4
- 5 6 7 8
- 9 A B C
- 0 S T N
Neues Modul: 4x4 KeyPad (entsprechend IT01-FrontKeys)
- 8x IOPin: 4x Input(34, 35, 36, 39) und 4x Output(12, 13, 14, 27)
LocalSystem
- Kapselung aller System-Variablen (CpuTemperature,…)
- Collector für Commands/Responses für lokale Hardware-Ressourcen(BreadBoard!):
- LedSystem
- LedQuad(Uart1, Wlan, Bt, (Lan))
- LCDisplayI2C(PCF8574, I2C)
- Temperature / Humidity(DHT22: CLK, DATA, 5V0, GND)
- 4×4 KeyPad (entsprechend IT01-FrontKeys)
- Pressure/Humidity
- GetChipID (Examples-Esp32-GetChipID)
UCSystem
- LCDisplayI2C((PCF8574, I2C)
- Quertz-Keyboard(PS/2, 5V, CLK, DATA, GND):
- Paul Stoffregen Arduino-Library PS2Keyboard
CommandReceiver(relative to Esp32)
- PC-[Uart1]: Command↔Response
- PC/Tablet/Handy-[Wlan]: Command↔Response
- PC/Tablet/Handy-[Bt]: Command↔Response
- Extension later: PC-[Lan]: Command↔Response
Dispatcher(relative to Esp32)
- LocalSystemDispatcher[Spi, I2C, Gpio]:
- ExternalControllerDispatcher[Uart2]: Command↔Response
Dataflow
MainLoop = True while (MainLoop): #-------------------------------------------------- # Esp32<-Uart1-Usb<-PC #-------------------------------------------------- # From PC: receive command -> Pass to Local or UC as command CommandLine = UartPC.ReadLine() # RxLines-Fifo AnalyseCommandLine(CommandLine) # -> ChildUC # #-------------------------------------------------- # # Esp32<-Bt-Usb/Serial<-PC # #-------------------------------------------------- # CommandLine = BtPC.ReadLine() # RxLines-Fifo # AnalyseCommandLine(CommandLine) # -> ChildUC # #-------------------------------------------------- # # Esp32<-Wlan<-PC # #-------------------------------------------------- # CommandLine = WlanPC.ReadLine() # RxLines-Fifo # AnalyseCommandLine(CommandLine) # -> ChildUC # # #-------------------------------------------------- # # # Esp32<-Lan<-PC # # #-------------------------------------------------- # # CommandLine = LanPC.ReadLine() # RxLines-Fifo # # AnalyseCommandLine(CommandLine) # -> ChildUC # # #ResponseLine = '! command parameter0 .. parametern' # <- ChildUC #-------------------------------------------------- # PC<-Uart1/Bt/Wlan/Lan<-Esp32<-Local #-------------------------------------------------- ResponseLine = LocalSystem.ReadLine() # RxLines-Fifo UartPC.TransmitResponse(ResponseLine) BtPC.TransmitResponse(ResponseLine) WlanPC.TransmitResponse(ResponseLine) LanPC.TransmitResponse(ResponseLine) #-------------------------------------------------- # Esp32<->Uart2<->UC(Stm32) #-------------------------------------------------- ResponseLine = UartUC.ReadLine() # RxLines-Fifo UartPC.TransmitResponse(ResponseLine) BtPC.TransmitResponse(ResponseLine) WlanPC.TransmitResponse(ResponseLine) LanPC.TransmitResponse(ResponseLine) #
Links
Version
Beschreibung
Ausgabe MicroPython-Terminal Esp32CheckUart.py
Main-Program: Esp32CheckUart.py
Library-Module: Uart.py
Library-Module: Thread.py
Library-Module: Lines.py
Library-Module: Define.py
# ID_UART0 = 0 PIN_UART0_TX = 1 # USB PIN_UART0_RX = 3 # USB # ID_UART1 = 1 PIN_UART1_RX = 25 # 9 - not usable PIN_UART1_TX = 26 # 10 - not usable # ID_UART2 = 2 PIN_UART2_RX = 16 PIN_UART2_TX = 17 #
Entwicklung
211221 : Basis
module/micropython/esp32uartpcuc/esp32uartpcuc.txt · Last modified: 2022/09/13 11:58 by 127.0.0.1