|
1 | 1 | py-esp32-ulp Documentation
|
2 | 2 | ==========================
|
3 | 3 |
|
4 |
| -py-esp32-ulp is an assembler toolchain for the ESP32 ULP (Ultra Low-Power) |
5 |
| -Co-Processor, written in MicroPython. |
6 |
| - |
7 | 4 | .. contents:: Table of Contents
|
8 | 5 |
|
9 | 6 |
|
10 |
| -What is it useful for? |
11 |
| ----------------------- |
12 |
| - |
13 |
| -py-esp32-ulp can translate small assembly language programs to a |
14 |
| -loadable/executable ULP machine code binary, directly on the ESP32 |
15 |
| -microcontroller. |
16 |
| - |
17 |
| -This is intended as an alternative approach to assembling such programs using |
18 |
| -the binutils-esp32ulp toolchain from Espressif on a development machine. |
19 |
| - |
20 |
| -It can also be useful in cases where binutils-esp32ulp is not available. |
21 |
| - |
22 |
| - |
23 |
| -Features |
| 7 | +Overview |
24 | 8 | --------
|
25 | 9 |
|
26 |
| -The following features are supported: |
27 |
| - |
28 |
| -* the entire `ESP32 ULP instruction set <https://esp-idf.readthedocs.io/en/latest/api-guides/ulp_instruction_set.html>`_ |
29 |
| -* constants defined with ``.set`` |
30 |
| -* constants defined with ``#define`` |
31 |
| -* expressions in assembly code and constant definitions |
32 |
| -* RTC convenience macros (e.g. WRITE_RTC_REG) |
33 |
| -* many ESP32 ULP code examples found on the web will work unmodified |
34 |
| - |
35 |
| - |
36 |
| -Limitations |
37 |
| ------------ |
38 |
| - |
39 |
| -Currently the following are not supported: |
40 |
| - |
41 |
| -* assembler macros using ``.macro`` |
42 |
| -* preprocessor macros using ``#define A(x,y) ...`` |
43 |
| -* including files using ``#include`` |
44 |
| -* ESP32-S2 (not binary compatible with the ESP32) |
| 10 | +`README.rst </README.rst>`_ gives a general overview of this project. |
45 | 11 |
|
46 | 12 |
|
47 | 13 | Installation
|
@@ -170,6 +136,17 @@ found as part of Arduino/ESP-IDF projects.
|
170 | 136 | The preprocessor and how to use it is documented here: `Preprocessor support </docs/preprocess.rst>`_.
|
171 | 137 |
|
172 | 138 |
|
| 139 | +Limitations |
| 140 | +----------- |
| 141 | + |
| 142 | +Currently the following are not supported: |
| 143 | + |
| 144 | +* assembler macros using ``.macro`` |
| 145 | +* preprocessor macros using ``#define A(x,y) ...`` |
| 146 | +* including files using ``#include`` |
| 147 | +* ESP32-S2 (not binary compatible with the ESP32) |
| 148 | + |
| 149 | + |
173 | 150 | Testing
|
174 | 151 | -------
|
175 | 152 |
|
|
0 commit comments