@@ -15,7 +15,7 @@ micropython-esp32-ulp is an assembler toolchain for the ESP32 ULP (Ultra Low-Pow
1515Co-Processor, written in MicroPython.
1616
1717It can translate small assembly language programs to a loadable/executable
18- ULP-FSM (not RISC-V) machine code binary, directly ona ESP32 microcontroller.
18+ ULP-FSM (not RISC-V) machine code binary, directly onan ESP32 microcontroller.
1919
2020This is intended as an alternative approach to assembling such programs using
2121the `binutils-gdb toolchain <https://github.com/espressif/binutils-gdb/tree/esp32ulp-elf-2.35 >`_
@@ -39,26 +39,26 @@ The following features are supported:
3939* many ESP32 ULP code examples found on the web will work unmodified
4040* a simple disassembler is also provided
4141
42- .. [#f1 ]Note: the ESP32-S2 and ESP32-S3 have the same ULP binary format between each other
43- but the binary format is differentthan that of the original ESP32 ULP. You need to
44- select the ``esp32s2 ``cpu (`see docs </docs/index.rst >`_) when assembling code for
42+ .. [#f1 ]Note: the ESP32-S2 and ESP32-S3 have the same ULP binary format,
43+ but the binary format is differentfrom that of the original ESP32 ULP. You need to
44+ select the ``esp32s2 ``CPU (`see docs </docs/index.rst >`_) when assembling code for
4545 use on an ESP32-S2/S3.
4646
4747 .. [#f2 ]Note: The ESP32-S2 and ESP32-S3 have the same ULP binary format, but the peripheral
4848 register addresses (those accessed with REG_RD and REG_WR) are different. For best
4949 results, use the correct peripheral register addresses for the specific variant you
5050 are working with. The assembler (when used with ``cpu=esp32s2 ``) will accept
5151 addresses for any of the 3 variants, because they are translated into relative
52- offsets anyway and many registers live at the same relative offset on all 3 variants.
53- This conveniently means that the same assembly code can assembled unmodified for each
52+ offsets anyway, and many registers live at the same relative offset on all 3 variants.
53+ This conveniently means that the same assembly code canbe assembled unmodified for each
5454 variant and produce a correctly working binary - as long as only peripheral registers
5555 are used, which have the same relative offset across the variants. Use with care!
5656
5757
5858 Quick start
5959-----------
6060
61- To get going run the following directly on the ESP32:
61+ To get going, run the following directly on the ESP32:
6262
6363..code-block ::python
6464
@@ -77,7 +77,7 @@ To get going run the following directly on the ESP32:
7777import counter
7878
7979 The `examples/counter.py </examples/counter.py >`_ example shows how to assemble code,
80- load and run the resulting binary and exchange data between the ULP and the main CPU.
80+ load and run the resulting binary, and exchange data between the ULP and the main CPU.
8181
8282
8383Documentation
@@ -88,9 +88,9 @@ See `docs/index.rst </docs/index.rst>`_.
8888Requirements
8989------------
9090
91- The minimum supported version of MicroPython is v1.12. (For ESP32-S2 and S3
92- devices, a version greater than v1.20 is required as versionsbefore that
93- did not enable the ``esp32.ULP `` class).
91+ The minimum supported version of MicroPython is v1.12. (For ESP32-S2 andESP32- S3
92+ devices, a version greater than v1.20 is required, asearlier versionsdid not
93+ enable the ``esp32.ULP `` class).
9494
9595An ESP32 device is required to run the ULP machine code binary produced by
9696micropython-esp32-ulp.