O Lua RTOS é um sistema operacional em tempo real projetado para ser executado em sistemas incorporados, com requisitos mínimos de memória flash e RAM. Atualmente, o Lua RTOS está disponível para plataformas ESP32, ESP8266 e PIC32MZ e pode ser levado por outras plataformas de 32 bits.
Lua RTOs tem um design de 3 camadas:
Para portar Lua RTOs para outras plataformas, é necessário apenas para escrever o código para a camada inferior, porque a camada superior e a camada média são as mesmas para todas as plataformas.
As placas compatíveis com Lua RTOs podem ser programadas com o IDE Whitecat de duas maneiras: usando a linguagem de programação Lua diretamente ou usando uma linguagem de programação baseada em bloco que traduz blocos para Lua. Não importa se você usa Lua ou blocos, ambas as formas de programação são feitas do mesmo ambiente de programação. O programador pode decidir, por exemplo, fazer um protótipo rápido usando blocos, depois alterar para Lua e, finalmente, voltar aos blocos.
O IDE Whitecat está disponível em: https://ide.whitecatboard.org.
Em nosso wiki, você tem mais informações sobre isso.
Observe que você provavelmente precisa baixar e instalar drivers para o adaptador USB-serial da sua placa para versões Windows e Mac OSX. A versão GNU/Linux geralmente não precisa de drivers. Esses drivers são necessários para se conectar à sua placa através de uma conexão de porta serial.
| Quadro |
|---|
| Whitecat ESP32 N1 |
| Esp32 Core |
| Esp32 Coisa |
Para o Linux, o usuário registrado atualmente deve ter lido e gravação acessar o dispositivo Susb-to-Serial. Na maioria das distribuições do Linux, isso é feito adicionando o usuário ao grupo de discagem com o seguinte comando:
$ sudo usermod - a - G dialout $ USER Instale o console Whitecat. O Whitecat Console é uma ferramenta de linha de comando que permite ao programador exibir uma placa compatível com Lua RTOS com o último firmware disponível.
Faça o download do Whitecat Console Binary para sua plataforma.
Copie o Binário do Console Whitecat para uma pasta acessada pelo caminho do sistema. Por exemplo:
Teste que o Binário do Console Whitecat funciona bem.
Para Ubuntu / Mac OS, abra um terminal e digite:
$ wcc
wcc - p port | - ports [ - ls path |
[ - down source destination ] | [ - up source destination ] |
[ - f | - ffs ] | [ - erase ] | - d ]
- ports : list all available serial ports on your computer
- p port : serial port device , for example / dev / tty . SLAB_USBtoUART
- ls path : list files present in path
- down src dst : transfer the source file ( board ) to destination file ( computer )
- up src dst : transfer the source file ( computer ) to destination file ( board )
- f : flash board with last firmware
- ffs : flash board with last filesystem
- erase : erase flash board
- d : show debug messagesPara o Windows, abra uma janela "Command" e digite wcc.exe
Encontre qual dispositivo serial é usado pela sua placa.
Abra um terminal com sua placa desconectada.
$ wcc - ports
Available serial ports on your computer :
/ dev / cu . Bluetooth - Incoming - Port
/ dev / cu . Bluetooth - ModemAgora conecte sua placa.
$ wcc - ports
Available serial ports on your computer :
/ dev / cu . Bluetooth - Incoming - Port
/ dev / cu . Bluetooth - Modem
/ dev / cu . SLAB_USBtoUARTNo exemplo acima, a placa está usando o dispositivo serial /dev/cu.slab_usbouart. Este dispositivo será usado nas etapas a seguir como valor do parâmetro -p.
Para o Windows, use wcc.exe em vez do WCC.
Flash sua placa.
Abra um terminal com sua placa conectada.
$ wcc - p / dev / cu . SLAB_USBtoUART - fSe você deseja piscar o sistema de arquivos padrão, adicione a opção -FFS.
$ wcc - p / dev / cu . SLAB_USBtoUART - f - ffsSe você estiver piscando o firmware Lua RTOS pela primeira vez, receberá um erro:
Unknown board model .
Maybe your firmware is corrupted , or you haven ' t a valid Lua RTOS firmware installed.
Do you want to install a valid firmware now [ y / n ])?Digite "Y" se você deseja instalar um firmware válido:
Please , enter your board type :
1 : WHITECAT N1
2 : WHITECAT N1 WITH OTA
3 : ESP32 CORE BOARD
4 : ESP32 CORE BOARD WITH OTA
5 : ESP32 THING
6 : ESP32 THING WITH OTA
7 : GENERIC
8 : GENERIC WITH OTA
Type : Por fim, digite seu tipo de placa e sua placa será exibida.
Para o Windows, use wcc.exe em vez do WCC.
Para atualizar uma placa com um firmware Lua RTOS instalado nele:
$ wcc - p / dev / cu . SLAB_USBtoUART - fSe você precisar alterar o tipo de firmware em uma placa com um firmware Lua RTOS instalado, por exemplo, para alterar um firmware OTA para um firmware não OTA:
$ wcc - p / dev / cu . SLAB_USBtoUART - erase
$ wcc - p / dev / cu . SLAB_USBtoUART - f Instale o ESP32 Toolchain para sua plataforma de desktop. Por favor, siga as instruções fornecidas pela Espressif:
Clone ou puxe o repositório ESP-IDF da Espressif:
Se você estiver construindo Lua RTOs pela primeira vez, clone o repositório ESP-IDF:
git clone -- recursive https://github.com/espressif/esp-idf.gitCaso contrário, puxe as últimas mudanças ESP-IDF da sua pasta ESP-IDF:
git pull
git submodule update -- init --recursiveClone ou puxe o repositório RTOS Lua:
Se você estiver construindo Lua RTOs pela primeira vez, clone Lua RTOs Repository:
git clone -- recursive https://github.com/whitecatboard/Lua-RTOS-ESP32Caso contrário, puxe o último Lua RTOs muda da sua pasta Lua Lua-Rtos-Esp32:
git pull origin masterO instalador funciona apenas com o Python 2.
Você pode verificar sua versão python executando
python --version
Se o seu Python Verision padrão for 3.xx, a maneira mais conveniente de alternar é instalar o PYENV. Em seguida, instale o Python2 mais recente e ative a versão Python2. A ativação do Python2 no diretório Lua-Rtos-Esp32 pode ser sua melhor abordagem.
Pode ser necessário reverter sua versão do Pyparsing usando
pip install pyparsing==2.4.7
que é a versão mais recente que funciona com o Python2.
Configure o ambiente de construção:
Vá para a pasta Lua-Rtos-Esp32:
cd Lua - RTOS - ESP32Edite o arquivo Env e altere o caminho, IDF_PATH, Library_Path, PKG_CONFIG_PATH, CPATH PARA O FIT nos seus locais de instalação.
Agora faça:
source . / envConstruir:
$ make flashSe você estiver construindo Lua RTOs pela primeira vez, selecione seu tipo de placa e pressione Enter:
Please , enter your board type :
1 : Whitecat N1 ESP32
2 : Whitecat N1 ESP32 with OTA
3 : Whitecat N1 ESP32 DEVKIT
4 : Whitecat N1 ESP32 DEVKIT with OTA
5 : Espressif Systems ESP32 - CoreBoard
6 : Espressif Systems ESP32 - CoreBoard with OTA
7 : SparkFun ESP32 Thing
8 : SparkFun ESP32 Thing with OTA
Board type :Quando o processo de criação do Lua RTOs, a placa será exibida. É possível que, para certos sistemas operacionais, ou placas, o processo piscante falhe, devido a um nome de dispositivo não compatível para o adaptador USB-serial da sua placa. Nesse caso, altere a configuração padrão para atender à sua placa ou requisitos do sistema operacional, conforme descrito acima.
Altere a configuração padrão:
Você pode alterar a configuração padrão:
$ make menuconfigVerifique o nome do dispositivo para obter o adaptador USB para serial da sua placa na categoria "Porta serial de configuração / padrão de pisca-pisca serial".
Construa para outra placa:
Se você já construiu Lua RTOs anteriormente e deseja construir para outro tipo de placa:
$ make cleanVá para a etapa 5.
Você pode se conectar ao console Lua RTOS usando seu programa de emulador de terminal favorito, como Picocom, Minicom, Hyperterminal, Putty, etc ... Os parâmetros de conexão são:
Por exemplo, se você usar o Picocom:
picocom -- baud 115200 /dev/tty.SLAB_USBtoUART / /
/ _____ /
/ _____________
W H I T E C A T
Lua RTOS beta 0.1 build 1479953238 Copyright ( C ) 2015 - 2017 whitecatboard . org
cpu ESP32 at 240 Mhz
spiffs0 start address at 0x180000 , size 512 Kb
spiffs0 mounted
spi2 at pins sdi = 012 / sdo = 013 / sck = 014 / cs = 015
sd0 is at spi2 , pin cs = 015
sd0 type II , size 1943552 kbytes , speed 15 Mhz
sd0a partition type 0 b, sector 227 , size 1943438 kbytes
fat init file system
fat0 mounted
redirecting console messages to file system ...
Lua RTOS beta 0.1 powered by Lua 5.3 .4
Executing / system . lua ...
Executing / autorun . lua ...
/ > O Lua RTOS é gratuito para você, mas os fundos são necessários para tornar isso possível. Sinta -se à vontade para doar tão pouco ou quanto desejar. Cada doação é muito apreciada.