Espruino/targets/esp32/docs/TasksInterruptsEtc.md
jumjum123 6c5e37d6d2 Corrected use of Arduino libs, they are not necessary anymore, since we now have spi and i2c in standard drivers
Added some categories to tasksInterruptsetc
New docu to give some information about hardware timer
Added description of notification between tasks
2017-01-13 13:46:14 +01:00

1.2 KiB

Internals

RTOS and the SDK for ESP32 bring up some new screws and bolts. In this document, we will list at least some of them.

##Tasks## Rtos supports a simple form of tasks. These tasks get a priority on start and some other information.

Task Stack Priority CPU
EspruinoTask 10000 5 0
ConsoleTask 2048 20 0
TimerTask 2048 19 0

##Interrupt Level## Each realtime OS uses interrupts, and so does RTOS. There are some predefined or reserved for future use. For more info see esp-idf/components/esp32/include/soc/soc.h line 259ff..

Based on actual version of esp-idf, interrupt levels are assigned automatically.

##Timer## ESP32 generally support 2 groups of timers each having 2 timer. Timer is used for interrupt driven handling inside Espruino like Waveforms.

Group Timer used for
0 0 Espruino Util Timer
0 1 testing only
1 0 free
1 1 free

##Uarts## ESP32 supports 3 uarts, which can be assigned to GPIO ports. Espruino right now only uses uart_num_0 for console.

Uart used for
uart_num_0 espruino console
uart_num_1 free
uart_num_2 free