Merge remote-tracking branch 'origin/main' into thunderpack1.2
This commit is contained in:
commit
63b0bf9075
27
.github/workflows/build.yml
vendored
27
.github/workflows/build.yml
vendored
@ -14,7 +14,7 @@ on:
|
||||
|
||||
jobs:
|
||||
test:
|
||||
runs-on: ubuntu-18.04
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- name: Dump GitHub context
|
||||
env:
|
||||
@ -37,7 +37,7 @@ jobs:
|
||||
run: |
|
||||
sudo apt-get install -y eatmydata
|
||||
sudo eatmydata apt-get install -y gettext librsvg2-bin mingw-w64 latexmk texlive-fonts-recommended texlive-latex-recommended texlive-latex-extra
|
||||
pip install requests sh click setuptools cpp-coveralls "Sphinx<4" sphinx-rtd-theme recommonmark sphinx-autoapi sphinxcontrib-svg2pdfconverter polib pyyaml astroid isort black awscli
|
||||
pip install requests sh click setuptools cpp-coveralls "Sphinx<4" sphinx-rtd-theme recommonmark sphinx-autoapi sphinxcontrib-svg2pdfconverter polib pyyaml astroid isort black awscli mypy
|
||||
- name: Versions
|
||||
run: |
|
||||
gcc --version
|
||||
@ -67,8 +67,8 @@ jobs:
|
||||
- name: mpy Tests
|
||||
run: MICROPY_CPYTHON3=python3.8 MICROPY_MICROPYTHON=../ports/unix/micropython_coverage ./run-tests -j1 --via-mpy -d basics float
|
||||
working-directory: tests
|
||||
- name: Stubs
|
||||
run: make stubs -j2
|
||||
- name: Build and Validate Stubs
|
||||
run: make check-stubs -j2
|
||||
- uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: stubs
|
||||
@ -111,12 +111,15 @@ jobs:
|
||||
with:
|
||||
name: mpy-cross.static-x64-windows
|
||||
path: mpy-cross/mpy-cross.static.exe
|
||||
- name: Upload mpy-cross builds to S3
|
||||
- name: Upload stubs and mpy-cross builds to S3
|
||||
run: |
|
||||
[ -z "$AWS_ACCESS_KEY_ID" ] || aws s3 cp mpy-cross/mpy-cross.static-raspbian s3://adafruit-circuit-python/bin/mpy-cross/mpy-cross.static-raspbian-${{ env.CP_VERSION }} --no-progress --region us-east-1
|
||||
[ -z "$AWS_ACCESS_KEY_ID" ] || aws s3 cp mpy-cross/mpy-cross.static s3://adafruit-circuit-python/bin/mpy-cross/mpy-cross.static-amd64-linux-${{ env.CP_VERSION }} --no-progress --region us-east-1
|
||||
[ -z "$AWS_ACCESS_KEY_ID" ] || aws s3 cp mpy-cross/mpy-cross.static.exe s3://adafruit-circuit-python/bin/mpy-cross/mpy-cross.static-x64-windows-${{ env.CP_VERSION }}.exe --no-progress --region us-east-1
|
||||
zip -9r circuitpython-stubs.zip circuitpython-stubs
|
||||
[ -z "$AWS_ACCESS_KEY_ID" ] || aws s3 cp circuitpython-stubs.zip s3://adafruit-circuit-python/bin/stubs/circuitpython-stubs-${{ env.CP_VERSION }}.zip --no-progress --region us-east-1
|
||||
env:
|
||||
AWS_PAGER: ''
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
|
||||
@ -157,19 +160,21 @@ jobs:
|
||||
run: |
|
||||
[ -z "$AWS_ACCESS_KEY_ID" ] || aws s3 cp mpy-cross/mpy-cross s3://adafruit-circuit-python/bin/mpy-cross/mpy-cross-macos-catalina-${{ env.CP_VERSION }} --no-progress --region us-east-1
|
||||
env:
|
||||
AWS_PAGER: ''
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
|
||||
|
||||
|
||||
build-arm:
|
||||
runs-on: ubuntu-18.04
|
||||
runs-on: ubuntu-20.04
|
||||
needs: test
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
board:
|
||||
- "8086_commander"
|
||||
- "ADM_B_NRF52840_1"
|
||||
- "TG-Watch02A"
|
||||
- "aloriumtech_evo_m51"
|
||||
- "aramcon_badge_2019"
|
||||
@ -360,12 +365,13 @@ jobs:
|
||||
- name: Upload to S3
|
||||
run: "[ -z \"$AWS_ACCESS_KEY_ID\" ] || aws s3 cp bin/ s3://adafruit-circuit-python/bin/ --recursive --no-progress --region us-east-1"
|
||||
env:
|
||||
AWS_PAGER: ''
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
|
||||
|
||||
build-riscv:
|
||||
runs-on: ubuntu-18.04
|
||||
runs-on: ubuntu-20.04
|
||||
needs: test
|
||||
strategy:
|
||||
fail-fast: false
|
||||
@ -408,16 +414,18 @@ jobs:
|
||||
- name: Upload to S3
|
||||
run: "[ -z \"$AWS_ACCESS_KEY_ID\" ] || aws s3 cp bin/ s3://adafruit-circuit-python/bin/ --recursive --no-progress --region us-east-1"
|
||||
env:
|
||||
AWS_PAGER: ''
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
|
||||
build-xtensa:
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-20.04
|
||||
needs: test
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
board:
|
||||
- "adafruit_magtag_2.9_grayscale"
|
||||
- "adafruit_metro_esp32s2"
|
||||
- "electroniccats_bastwifi"
|
||||
- "espressif_kaluga_1"
|
||||
@ -425,6 +433,8 @@ jobs:
|
||||
- "espressif_saola_1_wrover"
|
||||
- "microdev_micro_s2"
|
||||
- "muselab_nanoesp32_s2"
|
||||
- "targett_module_clip_wroom"
|
||||
- "targett_module_clip_wrover"
|
||||
- "unexpectedmaker_feathers2"
|
||||
- "unexpectedmaker_feathers2_prerelease"
|
||||
|
||||
@ -499,6 +509,7 @@ jobs:
|
||||
- name: Upload to S3
|
||||
run: "[ -z \"$AWS_ACCESS_KEY_ID\" ] || aws s3 cp bin/ s3://adafruit-circuit-python/bin/ --recursive --no-progress --region us-east-1"
|
||||
env:
|
||||
AWS_PAGER: ''
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
|
||||
|
2
.github/workflows/create_website_pr.yml
vendored
2
.github/workflows/create_website_pr.yml
vendored
@ -10,7 +10,7 @@ on:
|
||||
|
||||
jobs:
|
||||
website:
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- name: Dump GitHub context
|
||||
env:
|
||||
|
2
.github/workflows/pre-commit.yml
vendored
2
.github/workflows/pre-commit.yml
vendored
@ -11,7 +11,7 @@ on:
|
||||
|
||||
jobs:
|
||||
pre-commit:
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- uses: actions/setup-python@v1
|
||||
|
2
.gitmodules
vendored
2
.gitmodules
vendored
@ -152,4 +152,4 @@
|
||||
url = https://github.com/adafruit/Adafruit_CircuitPython_RFM69.git
|
||||
[submodule "ports/esp32s2/esp-idf"]
|
||||
path = ports/esp32s2/esp-idf
|
||||
url = https://github.com/espressif/esp-idf.git
|
||||
url = https://github.com/jepler/esp-idf.git
|
||||
|
@ -6,7 +6,7 @@ SPDX-License-Identifier: MIT
|
||||
|
||||
# Contributing
|
||||
Please note that this project is released with a
|
||||
[Contributor Code of Conduct](https://github.com/adafruit/circuitpython/blob/main/CODE_OF_CONDUCT.md).
|
||||
[Contributor Code of Conduct](CODE_OF_CONDUCT.md).
|
||||
By participating in this project you agree to abide by its terms. Participation
|
||||
covers any forum used to converse about CircuitPython including unofficial and official spaces. Failure to do
|
||||
so will result in corrective actions such as time out or ban from the project.
|
||||
|
26
README.rst
26
README.rst
@ -95,7 +95,6 @@ Differences from `MicroPython <https://github.com/micropython/micropython>`__
|
||||
CircuitPython:
|
||||
|
||||
- Supports native USB on all boards, allowing file editing without special tools.
|
||||
- Supports only SAMD21, SAMD51, nRF52840, CXD56, STM32F4 and i.MX RT ports.
|
||||
- Floats (aka decimals) are enabled for all builds.
|
||||
- Error messages are translated into 10+ languages.
|
||||
- Does not support concurrency within Python (including interrupts and threading). Some concurrency
|
||||
@ -137,8 +136,8 @@ Behavior
|
||||
API
|
||||
~~~
|
||||
|
||||
- Unified hardware APIs. Documented
|
||||
`on ReadTheDocs <https://circuitpython.readthedocs.io/en/latest/shared-bindings/index.html>`_.
|
||||
- Unified hardware APIs. Documented on
|
||||
`ReadTheDocs <https://circuitpython.readthedocs.io/en/latest/shared-bindings/index.html>`_.
|
||||
- API docs are rST within the C files in ``shared-bindings``.
|
||||
- No ``machine`` API.
|
||||
|
||||
@ -201,14 +200,27 @@ Ports
|
||||
Ports include the code unique to a microcontroller line and also
|
||||
variations based on the board.
|
||||
|
||||
- ``atmel-samd`` Support for SAMD21 and SAMD51 based boards.
|
||||
- ``nrf`` Support for the nRF52840 based boards.
|
||||
- ``unix`` Support for UNIX. Only used for automated testing.
|
||||
================ ============================================================
|
||||
Supported Support status
|
||||
================ ============================================================
|
||||
atmel-samd ``SAMD21`` stable | ``SAMD51`` stable
|
||||
cxd56 stable
|
||||
esp32s2 beta
|
||||
litex alpha
|
||||
mimxrt10xx alpha
|
||||
nrf stable
|
||||
stm ``F4`` stable | ``others`` beta
|
||||
unix alpha
|
||||
================ ============================================================
|
||||
|
||||
- ``stable`` Highly unlikely to have bugs or missing functionality.
|
||||
- ``beta`` Being actively improved but may be missing functionality and have bugs.
|
||||
- ``alpha`` Will have bugs and missing functionality.
|
||||
|
||||
The remaining port directories not listed above are in the repo to maintain compatibility with the
|
||||
`MicroPython <https://github.com/micropython/micropython>`__ parent project.
|
||||
|
||||
`back to top <#circuitpython>`__
|
||||
`Back to Top <#circuitpython>`__
|
||||
|
||||
.. |Build Status| image:: https://github.com/adafruit/circuitpython/workflows/Build%20CI/badge.svg
|
||||
:target: https://github.com/adafruit/circuitpython/actions?query=branch%3Amain
|
||||
|
75
locale/ID.po
75
locale/ID.po
@ -5,7 +5,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: 2020-10-10 23:51+0000\n"
|
||||
"Last-Translator: oon arfiandwi <oon.arfiandwi@gmail.com>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@ -292,11 +292,21 @@ msgstr "Alamat harus sepanjang %d byte"
|
||||
msgid "Address type out of range"
|
||||
msgstr "Jenis alamat di luar batas"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr "Semua perangkat I2C sedang digunakan"
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr ""
|
||||
@ -413,6 +423,10 @@ msgstr ""
|
||||
"Auto-reload aktif. Silahkan simpan data-data (files) melalui USB untuk "
|
||||
"menjalankannya atau masuk ke REPL untukmenonaktifkan.\n"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
msgid "Below minimum frame rate"
|
||||
@ -422,6 +436,11 @@ msgstr "Di bawah frame rate minimum"
|
||||
msgid "Bit clock and word select must share a clock unit"
|
||||
msgstr "Bit clock dan word harus memiliki kesamaan pada clock unit"
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#, c-format
|
||||
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Bit depth must be multiple of 8."
|
||||
msgstr "Kedalaman bit harus kelipatan 8."
|
||||
@ -793,7 +812,7 @@ msgstr "Mode kendara tidak digunakan saat arah input."
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr "ECB hanya beroperasi pada 16 byte di satu waktu"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr ""
|
||||
|
||||
@ -919,6 +938,7 @@ msgid "File exists"
|
||||
msgstr "File sudah ada"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr ""
|
||||
@ -999,6 +1019,10 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr "Ukuran penyangga salah"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr ""
|
||||
@ -1120,7 +1144,8 @@ msgid "Invalid phase"
|
||||
msgstr "Fase tidak valid"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr "Pin tidak valid"
|
||||
@ -1140,7 +1165,7 @@ msgstr "Pin untuk channel kanan tidak valid"
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1431,6 +1456,10 @@ msgstr ""
|
||||
"Hanya monokrom, 4bpp atau 8bpp yang diindeks, dan 16bpp atau lebih yang "
|
||||
"didukung: %d bpp diberikan"
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr ""
|
||||
@ -2154,6 +2183,10 @@ msgstr ""
|
||||
msgid "buffer too small"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr ""
|
||||
@ -2876,6 +2909,10 @@ msgstr ""
|
||||
msgid "long int not supported in this build"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr ""
|
||||
@ -2910,6 +2947,14 @@ msgstr ""
|
||||
msgid "maximum recursion depth exceeded"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter should be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "memory allocation failed, allocating %u bytes"
|
||||
@ -3214,6 +3259,7 @@ msgstr ""
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3221,6 +3267,8 @@ msgstr ""
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
@ -3343,6 +3391,10 @@ msgstr "memulai ulang software(soft reboot)\n"
|
||||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical/numerical.c
|
||||
msgid "sorted axis can't be longer than 65535"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
@ -3423,6 +3475,7 @@ msgstr ""
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
@ -3473,6 +3526,16 @@ msgstr ""
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3597,6 +3660,10 @@ msgstr ""
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-11-04 21:18+0530\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@ -288,11 +288,21 @@ msgstr ""
|
||||
msgid "Address type out of range"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr ""
|
||||
@ -407,6 +417,10 @@ msgid ""
|
||||
"disable.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
msgid "Below minimum frame rate"
|
||||
@ -780,7 +794,7 @@ msgstr ""
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr ""
|
||||
|
||||
@ -906,6 +920,7 @@ msgid "File exists"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr ""
|
||||
@ -983,6 +998,10 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr ""
|
||||
@ -1104,7 +1123,8 @@ msgid "Invalid phase"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr ""
|
||||
@ -1124,7 +1144,7 @@ msgstr ""
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1409,6 +1429,10 @@ msgid ""
|
||||
"%d bpp given"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr ""
|
||||
@ -2112,6 +2136,10 @@ msgstr ""
|
||||
msgid "buffer too small"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr ""
|
||||
@ -2834,6 +2862,10 @@ msgstr ""
|
||||
msgid "long int not supported in this build"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr ""
|
||||
@ -3179,6 +3211,7 @@ msgstr ""
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3186,6 +3219,8 @@ msgstr ""
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
@ -3392,6 +3427,7 @@ msgstr ""
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
@ -3441,6 +3477,16 @@ msgstr ""
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3565,6 +3611,10 @@ msgstr ""
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
75
locale/cs.po
75
locale/cs.po
@ -5,7 +5,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: 2020-05-24 03:22+0000\n"
|
||||
"Last-Translator: dronecz <mzuzelka@gmail.com>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@ -292,11 +292,21 @@ msgstr ""
|
||||
msgid "Address type out of range"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr ""
|
||||
@ -411,6 +421,10 @@ msgid ""
|
||||
"disable.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
msgid "Below minimum frame rate"
|
||||
@ -420,6 +434,11 @@ msgstr ""
|
||||
msgid "Bit clock and word select must share a clock unit"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#, c-format
|
||||
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Bit depth must be multiple of 8."
|
||||
msgstr ""
|
||||
@ -779,7 +798,7 @@ msgstr ""
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr ""
|
||||
|
||||
@ -905,6 +924,7 @@ msgid "File exists"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr ""
|
||||
@ -982,6 +1002,10 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr ""
|
||||
@ -1103,7 +1127,8 @@ msgid "Invalid phase"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr ""
|
||||
@ -1123,7 +1148,7 @@ msgstr ""
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1408,6 +1433,10 @@ msgid ""
|
||||
"%d bpp given"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr ""
|
||||
@ -2111,6 +2140,10 @@ msgstr ""
|
||||
msgid "buffer too small"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr ""
|
||||
@ -2833,6 +2866,10 @@ msgstr ""
|
||||
msgid "long int not supported in this build"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr ""
|
||||
@ -2867,6 +2904,14 @@ msgstr ""
|
||||
msgid "maximum recursion depth exceeded"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter should be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "memory allocation failed, allocating %u bytes"
|
||||
@ -3170,6 +3215,7 @@ msgstr ""
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3177,6 +3223,8 @@ msgstr ""
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
@ -3299,6 +3347,10 @@ msgstr ""
|
||||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical/numerical.c
|
||||
msgid "sorted axis can't be longer than 65535"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
@ -3379,6 +3431,7 @@ msgstr ""
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
@ -3428,6 +3481,16 @@ msgstr ""
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3552,6 +3615,10 @@ msgstr ""
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
187
locale/de_DE.po
187
locale/de_DE.po
@ -5,7 +5,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: 2020-06-16 18:24+0000\n"
|
||||
"Last-Translator: Andreas Buchen <andreas.buchen@gmail.com>\n"
|
||||
"Language: de_DE\n"
|
||||
@ -73,7 +73,7 @@ msgstr "Der Index %q befindet sich außerhalb des Bereiches"
|
||||
|
||||
#: py/obj.c
|
||||
msgid "%q indices must be integers, not %q"
|
||||
msgstr ""
|
||||
msgstr "%q Indizes müssen Integer sein, nicht %q"
|
||||
|
||||
#: shared-bindings/vectorio/Polygon.c
|
||||
msgid "%q list must be a list"
|
||||
@ -81,7 +81,7 @@ msgstr "%q Liste muss eine Liste sein"
|
||||
|
||||
#: shared-bindings/memorymonitor/AllocationAlarm.c
|
||||
msgid "%q must be >= 0"
|
||||
msgstr ""
|
||||
msgstr "%q muss >= 0 sein"
|
||||
|
||||
#: shared-bindings/_bleio/CharacteristicBuffer.c
|
||||
#: shared-bindings/_bleio/PacketBuffer.c shared-bindings/displayio/Group.c
|
||||
@ -97,11 +97,11 @@ msgstr "%q muss ein Tupel der Länge 2 sein"
|
||||
|
||||
#: shared-bindings/canio/Match.c
|
||||
msgid "%q out of range"
|
||||
msgstr ""
|
||||
msgstr "%q außerhalb des Bereichs"
|
||||
|
||||
#: ports/atmel-samd/common-hal/microcontroller/Pin.c
|
||||
msgid "%q pin invalid"
|
||||
msgstr ""
|
||||
msgstr "%q Pin ungültig"
|
||||
|
||||
#: shared-bindings/fontio/BuiltinFont.c
|
||||
msgid "%q should be an int"
|
||||
@ -117,11 +117,11 @@ msgstr "'%q' Argument erforderlich"
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "'%q' object cannot assign attribute '%q'"
|
||||
msgstr ""
|
||||
msgstr "'%q' Objekt kann das Attribut '%q' nicht zuweisen"
|
||||
|
||||
#: py/proto.c
|
||||
msgid "'%q' object does not support '%q'"
|
||||
msgstr ""
|
||||
msgstr "'%q' Objekt unterstützt '%q' nicht"
|
||||
|
||||
#: py/obj.c
|
||||
msgid "'%q' object does not support item assignment"
|
||||
@ -129,11 +129,11 @@ msgstr ""
|
||||
|
||||
#: py/obj.c
|
||||
msgid "'%q' object does not support item deletion"
|
||||
msgstr ""
|
||||
msgstr "'%q' objekt unterstützt das "
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "'%q' object has no attribute '%q'"
|
||||
msgstr ""
|
||||
msgstr "'%q' Objekt hat kein Attribut '%q'"
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "'%q' object is not an iterator"
|
||||
@ -141,7 +141,7 @@ msgstr ""
|
||||
|
||||
#: py/objtype.c py/runtime.c
|
||||
msgid "'%q' object is not callable"
|
||||
msgstr ""
|
||||
msgstr "'%q' Objekt ist kein callable"
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "'%q' object is not iterable"
|
||||
@ -149,7 +149,7 @@ msgstr ""
|
||||
|
||||
#: py/obj.c
|
||||
msgid "'%q' object is not subscriptable"
|
||||
msgstr ""
|
||||
msgstr "'%q' Objekt hat keine '__getitem__'-Methode (not subscriptable)"
|
||||
|
||||
#: py/emitinlinethumb.c py/emitinlinextensa.c
|
||||
#, c-format
|
||||
@ -280,7 +280,7 @@ msgstr "Ein Hardware Interrupt Kanal wird schon benutzt"
|
||||
|
||||
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
|
||||
msgid "ADC2 is being used by WiFi"
|
||||
msgstr ""
|
||||
msgstr "ADC2 wird vom WiFi benutzt"
|
||||
|
||||
#: shared-bindings/_bleio/Address.c shared-bindings/ipaddress/IPv4Address.c
|
||||
#, c-format
|
||||
@ -291,11 +291,21 @@ msgstr "Die Adresse muss %d Bytes lang sein"
|
||||
msgid "Address type out of range"
|
||||
msgstr "Adresstyp außerhalb des zulässigen Bereichs"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr "Alle I2C-Peripheriegeräte sind in Benutzung"
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr ""
|
||||
@ -346,11 +356,11 @@ msgstr ""
|
||||
#: shared-module/memorymonitor/AllocationAlarm.c
|
||||
#: shared-module/memorymonitor/AllocationSize.c
|
||||
msgid "Already running"
|
||||
msgstr ""
|
||||
msgstr "Läuft bereits"
|
||||
|
||||
#: ports/esp32s2/common-hal/wifi/Radio.c
|
||||
msgid "Already scanning for wifi networks"
|
||||
msgstr ""
|
||||
msgstr "Sucht bereits nach wifi Netzwerken"
|
||||
|
||||
#: ports/cxd56/common-hal/analogio/AnalogIn.c
|
||||
msgid "AnalogIn not supported on given pin"
|
||||
@ -390,7 +400,7 @@ msgstr "Es darf höchstens %d %q spezifiziert werden (nicht %d)"
|
||||
#: shared-module/memorymonitor/AllocationAlarm.c
|
||||
#, c-format
|
||||
msgid "Attempt to allocate %d blocks"
|
||||
msgstr ""
|
||||
msgstr "Versuche %d Blöcke zu allokieren"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Attempted heap allocation when MicroPython VM not running."
|
||||
@ -400,7 +410,7 @@ msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Authentication failure"
|
||||
msgstr ""
|
||||
msgstr "Authentifizierungsfehler"
|
||||
|
||||
#: main.c
|
||||
msgid "Auto-reload is off.\n"
|
||||
@ -414,6 +424,10 @@ msgstr ""
|
||||
"Automatisches Neuladen ist aktiv. Speichere Dateien über USB um sie "
|
||||
"auszuführen oder verbinde dich mit der REPL zum Deaktivieren.\n"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
msgid "Below minimum frame rate"
|
||||
@ -423,6 +437,11 @@ msgstr "Unterhalb der minimalen Frame Rate"
|
||||
msgid "Bit clock and word select must share a clock unit"
|
||||
msgstr "Bit clock und word select müssen eine clock unit teilen"
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#, c-format
|
||||
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Bit depth must be multiple of 8."
|
||||
msgstr "Bit depth muss ein Vielfaches von 8 sein."
|
||||
@ -478,11 +497,11 @@ msgstr "Die Pufferlänge %d ist zu groß. Sie muss kleiner als %d sein"
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
|
||||
msgid "Buffer length must be a multiple of 512"
|
||||
msgstr ""
|
||||
msgstr "Die Pufferlänge muss ein vielfaches von 512 sein"
|
||||
|
||||
#: ports/stm/common-hal/sdioio/SDCard.c
|
||||
msgid "Buffer must be a multiple of 512 bytes"
|
||||
msgstr ""
|
||||
msgstr "Der Puffer muss ein vielfaches von 512 bytes sein"
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
|
||||
msgid "Buffer must be at least length 1"
|
||||
@ -660,7 +679,7 @@ msgstr "Beschädigter raw code"
|
||||
|
||||
#: ports/cxd56/common-hal/camera/Camera.c
|
||||
msgid "Could not initialize Camera"
|
||||
msgstr ""
|
||||
msgstr "Konnte Kamera nicht initialisieren"
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
@ -668,7 +687,7 @@ msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
msgid "Could not initialize SDCard"
|
||||
msgstr ""
|
||||
msgstr "Konnte SDKarte nicht initialisieren"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
@ -701,7 +720,7 @@ msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "Could not set address"
|
||||
msgstr ""
|
||||
msgstr "Konnte Adresse nicht setzen"
|
||||
|
||||
#: ports/stm/common-hal/pwmio/PWMOut.c
|
||||
msgid "Could not start PWM"
|
||||
@ -789,7 +808,7 @@ msgstr "Drive mode wird nicht verwendet, wenn die Richtung input ist."
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr "Die EZB arbeitet jeweils nur mit 16 Bytes"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr ""
|
||||
|
||||
@ -818,7 +837,7 @@ msgstr "Characteristic wird erwartet"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "Expected a DigitalInOut"
|
||||
msgstr ""
|
||||
msgstr "DigitanInOut wird erwartet"
|
||||
|
||||
#: shared-bindings/_bleio/Characteristic.c
|
||||
msgid "Expected a Service"
|
||||
@ -826,7 +845,7 @@ msgstr "Ein Service wird erwartet"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "Expected a UART"
|
||||
msgstr ""
|
||||
msgstr "UART wird erwartet"
|
||||
|
||||
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
|
||||
#: shared-bindings/_bleio/Service.c
|
||||
@ -853,7 +872,7 @@ msgstr "FFT ist nur für ndarrays definiert"
|
||||
|
||||
#: ports/esp32s2/common-hal/socketpool/Socket.c
|
||||
msgid "Failed SSL handshake"
|
||||
msgstr ""
|
||||
msgstr "SSL Handshake fehlgeschlagen"
|
||||
|
||||
#: shared-bindings/ps2io/Ps2.c
|
||||
msgid "Failed sending command."
|
||||
@ -916,18 +935,19 @@ msgid "File exists"
|
||||
msgstr "Datei existiert"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr ""
|
||||
msgstr "Filter zu komplex"
|
||||
|
||||
#: ports/cxd56/common-hal/camera/Camera.c
|
||||
msgid "Format not supported"
|
||||
msgstr ""
|
||||
msgstr "Format nicht unterstützt"
|
||||
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
#, c-format
|
||||
msgid "Framebuffer requires %d bytes"
|
||||
msgstr ""
|
||||
msgstr "Framepuffer benötigt %d bytes"
|
||||
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
msgid "Frequency captured is above capability. Capture Paused."
|
||||
@ -968,7 +988,7 @@ msgstr "Hardware in benutzung, probiere alternative Pins"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Hostname must be between 1 and 253 characters"
|
||||
msgstr ""
|
||||
msgstr "Der Hostname muss zwischen 1 und 253 Zeichen haben"
|
||||
|
||||
#: extmod/vfs_posix_file.c py/objstringio.c
|
||||
msgid "I/O operation on closed file"
|
||||
@ -980,7 +1000,7 @@ msgstr "I2C-Init-Fehler"
|
||||
|
||||
#: shared-bindings/audiobusio/I2SOut.c
|
||||
msgid "I2SOut not available"
|
||||
msgstr ""
|
||||
msgstr "I2SOut nicht verfügbar"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
#, c-format
|
||||
@ -999,6 +1019,10 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr "Inkorrekte Puffergröße"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr ""
|
||||
@ -1026,12 +1050,12 @@ msgstr "Interner Fehler #%d"
|
||||
|
||||
#: shared-bindings/sdioio/SDCard.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
msgstr "Ungültiger %q"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
msgid "Invalid %q pin"
|
||||
msgstr "Ungültiger %q pin"
|
||||
msgstr "Ungültiger %q Pin"
|
||||
|
||||
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
|
||||
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
|
||||
@ -1049,7 +1073,7 @@ msgstr "Ungültige BMP-Datei"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid BSSID"
|
||||
msgstr ""
|
||||
msgstr "Ungültige BSSID"
|
||||
|
||||
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
|
||||
#: ports/stm/common-hal/analogio/AnalogOut.c
|
||||
@ -1100,7 +1124,7 @@ msgstr "Ungültige format chunk size"
|
||||
|
||||
#: ports/esp32s2/common-hal/pwmio/PWMOut.c
|
||||
msgid "Invalid frequency"
|
||||
msgstr ""
|
||||
msgstr "Ungültige Frequenz"
|
||||
|
||||
#: ports/stm/common-hal/pwmio/PWMOut.c
|
||||
msgid "Invalid frequency supplied"
|
||||
@ -1120,7 +1144,8 @@ msgid "Invalid phase"
|
||||
msgstr "Ungültige Phase"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr "Ungültiger Pin"
|
||||
@ -1140,7 +1165,7 @@ msgstr "Ungültiger Pin für rechten Kanal"
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1433,6 +1458,10 @@ msgstr ""
|
||||
"Nur monochrome, indizierte 4bpp oder 8bpp, und 16bpp oder größere BMPs "
|
||||
"unterstützt: %d bpp wurden gegeben"
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr ""
|
||||
@ -1986,14 +2015,16 @@ msgstr "WatchDogTimer läuft aktuell nicht"
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
"WatchDogTimer.mode kann nicht geändert werden, nachdem er auf WatchDogMode."
|
||||
"RESET gesetzt wurde"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr ""
|
||||
msgstr "WatchDogTimer.timeout muss größer als 0 sein"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr ""
|
||||
msgstr "Watchdog timer abgelaufen "
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
@ -2013,11 +2044,11 @@ msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "WiFi password must be between 8 and 63 characters"
|
||||
msgstr ""
|
||||
msgstr "WiFi Passwort muss zwischen 8 und 63 Zeichen lang sein"
|
||||
|
||||
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
|
||||
msgid "Writes not supported on Characteristic"
|
||||
msgstr "Schreiben nicht unterstüzt für die Characteristic"
|
||||
msgstr "Schreiben nicht unterstüzt für diese Charakteristik"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "You are in safe mode: something unanticipated happened.\n"
|
||||
@ -2035,7 +2066,7 @@ msgstr "__init__() sollte None zurückgeben"
|
||||
|
||||
#: py/objtype.c
|
||||
msgid "__init__() should return None, not '%q'"
|
||||
msgstr ""
|
||||
msgstr "__init__() sollte None zurückgeben, nicht '%q'"
|
||||
|
||||
#: py/objobject.c
|
||||
msgid "__new__ arg must be a user-type"
|
||||
@ -2080,12 +2111,12 @@ msgstr "Argument hat falschen Typ"
|
||||
|
||||
#: extmod/ulab/code/linalg/linalg.c
|
||||
msgid "argument must be ndarray"
|
||||
msgstr ""
|
||||
msgstr "Argument muss ein ndarray sein"
|
||||
|
||||
#: py/argcheck.c shared-bindings/_stage/__init__.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c shared-bindings/gamepad/GamePad.c
|
||||
msgid "argument num/types mismatch"
|
||||
msgstr "Anzahl/Type der Argumente passen nicht"
|
||||
msgstr "Anzahl/Typen der Argumente passen nicht"
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "argument should be a '%q' not a '%q'"
|
||||
@ -2168,6 +2199,10 @@ msgstr "Puffersegmente müssen gleich lang sein"
|
||||
msgid "buffer too small"
|
||||
msgstr "Der Puffer ist zu klein"
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr "Tasten müssen digitalio.DigitalInOut sein"
|
||||
@ -2187,7 +2222,7 @@ msgstr "bytes mit mehr als 8 bits werden nicht unterstützt"
|
||||
|
||||
#: py/objarray.c
|
||||
msgid "bytes length not a multiple of item size"
|
||||
msgstr ""
|
||||
msgstr "Byte-Länge ist kein vielfaches der Item-Größe"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "bytes value out of range"
|
||||
@ -2230,7 +2265,7 @@ msgstr "kann keinem Ausdruck zuweisen"
|
||||
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
#: shared-module/_pixelbuf/PixelBuf.c
|
||||
msgid "can't convert %q to %q"
|
||||
msgstr ""
|
||||
msgstr "kann %q nicht zu %q konvertieren"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "can't convert '%q' object to %q implicitly"
|
||||
@ -2238,7 +2273,7 @@ msgstr "Kann '%q' Objekt nicht implizit nach %q konvertieren"
|
||||
|
||||
#: py/obj.c
|
||||
msgid "can't convert to %q"
|
||||
msgstr ""
|
||||
msgstr "kann nicht zu %q konvertieren"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "can't convert to str implicitly"
|
||||
@ -2292,7 +2327,7 @@ msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "can't set 512 block size"
|
||||
msgstr ""
|
||||
msgstr "Kann Blockgröße von 512 nicht setzen"
|
||||
|
||||
#: py/objnamedtuple.c
|
||||
msgid "can't set attribute"
|
||||
@ -2728,11 +2763,11 @@ msgstr "Indizes müssen Integer, Slices oder Boolesche Listen sein"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr ""
|
||||
msgstr "Ausgangswerte müssen iterierbar sein"
|
||||
|
||||
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
|
||||
msgid "initial_value length is wrong"
|
||||
msgstr ""
|
||||
msgstr "Länge von initial_value ist falsch"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
@ -2910,6 +2945,10 @@ msgstr ""
|
||||
msgid "long int not supported in this build"
|
||||
msgstr "long int wird in diesem Build nicht unterstützt"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr "fehlformatierter f-string"
|
||||
@ -2944,6 +2983,14 @@ msgstr ""
|
||||
msgid "maximum recursion depth exceeded"
|
||||
msgstr "maximale Rekursionstiefe überschritten"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter should be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "memory allocation failed, allocating %u bytes"
|
||||
@ -3126,7 +3173,7 @@ msgstr "Objekt nicht iterierbar"
|
||||
|
||||
#: py/obj.c
|
||||
msgid "object of type '%q' has no len()"
|
||||
msgstr ""
|
||||
msgstr "Object vom Typ '%q' hat kein len()"
|
||||
|
||||
#: py/obj.c
|
||||
msgid "object with buffer protocol required"
|
||||
@ -3180,11 +3227,11 @@ msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c
|
||||
msgid "out of range of source"
|
||||
msgstr ""
|
||||
msgstr "Außerhalb des Bereichs der Quelle"
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c
|
||||
msgid "out of range of target"
|
||||
msgstr ""
|
||||
msgstr "Außerhalb des Bereichs des Ziels"
|
||||
|
||||
#: py/objint_mpz.c
|
||||
msgid "overflow converting long int to machine word"
|
||||
@ -3251,6 +3298,7 @@ msgstr "pow() drittes Argument darf nicht 0 sein"
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr "pow () mit 3 Argumenten erfordert Integer"
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3258,6 +3306,8 @@ msgstr "pow () mit 3 Argumenten erfordert Integer"
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
@ -3382,6 +3432,10 @@ msgstr "weicher reboot\n"
|
||||
msgid "sort argument must be an ndarray"
|
||||
msgstr "sortierungs Argument muss ein ndarray sein"
|
||||
|
||||
#: extmod/ulab/code/numerical/numerical.c
|
||||
msgid "sorted axis can't be longer than 65535"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
@ -3396,7 +3450,7 @@ msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c
|
||||
msgid "source palette too large"
|
||||
msgstr ""
|
||||
msgstr "Quell-Palette zu groß"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
@ -3424,7 +3478,7 @@ msgstr "stream operation ist nicht unterstützt"
|
||||
|
||||
#: py/objstrunicode.c
|
||||
msgid "string indices must be integers, not %q"
|
||||
msgstr ""
|
||||
msgstr "String Indizes müssen Integer sein, nicht %q"
|
||||
|
||||
#: py/stream.c
|
||||
msgid "string not supported; use bytes or bytearray"
|
||||
@ -3463,9 +3517,10 @@ msgstr "threshold muss im Intervall 0-65536 liegen"
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr "time.struct_time() nimmt eine 9-Sequenz an"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
msgstr "Das Zeitlimit hat den maximal zulässigen Wert überschritten"
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
@ -3477,11 +3532,11 @@ msgstr "timeout muss >= 0.0 sein"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v1 card"
|
||||
msgstr ""
|
||||
msgstr "Zeitlimit beim warten auf v1 Karte"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v2 card"
|
||||
msgstr ""
|
||||
msgstr "Zeitlimit beim warten auf v2 Karte"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "timestamp out of range for platform time_t"
|
||||
@ -3512,6 +3567,16 @@ msgstr "Tupelindex außerhalb des Bereichs"
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr "tupel/list hat falsche Länge"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3532,7 +3597,7 @@ msgstr "Typ vom Objekt '%q' hat kein Attribut '%q'"
|
||||
|
||||
#: py/objgenerator.c
|
||||
msgid "type object 'generator' has no attribute '__await__'"
|
||||
msgstr ""
|
||||
msgstr "Das Typ-Objekt 'generator' hat kein Attribut '__await__'"
|
||||
|
||||
#: py/objtype.c
|
||||
msgid "type takes 1 or 3 arguments"
|
||||
@ -3577,7 +3642,7 @@ msgstr "unbekannter Konvertierungs specifier %c"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "unknown format code '%c' for object of type '%q'"
|
||||
msgstr ""
|
||||
msgstr "Unbekannter Formatcode '%c' für Objekt vom Typ '%q'"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "unknown type"
|
||||
@ -3638,6 +3703,10 @@ msgstr "value_count muss größer als 0 sein"
|
||||
|
||||
#: extmod/ulab/code/linalg/linalg.c
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr "Vektoren müssen die selbe Länge haben"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
|
75
locale/el.po
75
locale/el.po
@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\n"
|
||||
@ -287,11 +287,21 @@ msgstr ""
|
||||
msgid "Address type out of range"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr ""
|
||||
@ -406,6 +416,10 @@ msgid ""
|
||||
"disable.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
msgid "Below minimum frame rate"
|
||||
@ -415,6 +429,11 @@ msgstr ""
|
||||
msgid "Bit clock and word select must share a clock unit"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#, c-format
|
||||
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Bit depth must be multiple of 8."
|
||||
msgstr ""
|
||||
@ -774,7 +793,7 @@ msgstr ""
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr ""
|
||||
|
||||
@ -900,6 +919,7 @@ msgid "File exists"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr ""
|
||||
@ -977,6 +997,10 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr ""
|
||||
@ -1098,7 +1122,8 @@ msgid "Invalid phase"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr ""
|
||||
@ -1118,7 +1143,7 @@ msgstr ""
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1403,6 +1428,10 @@ msgid ""
|
||||
"%d bpp given"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr ""
|
||||
@ -2106,6 +2135,10 @@ msgstr ""
|
||||
msgid "buffer too small"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr ""
|
||||
@ -2828,6 +2861,10 @@ msgstr ""
|
||||
msgid "long int not supported in this build"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr ""
|
||||
@ -2862,6 +2899,14 @@ msgstr ""
|
||||
msgid "maximum recursion depth exceeded"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter should be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "memory allocation failed, allocating %u bytes"
|
||||
@ -3165,6 +3210,7 @@ msgstr ""
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3172,6 +3218,8 @@ msgstr ""
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
@ -3294,6 +3342,10 @@ msgstr ""
|
||||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical/numerical.c
|
||||
msgid "sorted axis can't be longer than 65535"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
@ -3374,6 +3426,7 @@ msgstr ""
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
@ -3423,6 +3476,16 @@ msgstr ""
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3547,6 +3610,10 @@ msgstr ""
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
137
locale/es.po
137
locale/es.po
@ -7,16 +7,16 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
|
||||
"PO-Revision-Date: 2020-10-09 17:19+0000\n"
|
||||
"Last-Translator: dherrada <dylan.herrada@adafruit.com>\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: 2020-11-15 16:28+0000\n"
|
||||
"Last-Translator: RubenD <rubendariopm14@gmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
"Language: es\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Weblate 4.3-dev\n"
|
||||
"X-Generator: Weblate 4.4-dev\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
@ -33,7 +33,7 @@ msgid ""
|
||||
"https://github.com/adafruit/circuitpython/issues\n"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Reporte un problema con el contenido de su unidad CIRCUITPY en\n"
|
||||
"Presente un problema con el contenido de su unidad CIRCUITPY en\n"
|
||||
"https://github.com/adafruit/circuitpython/issues\n"
|
||||
|
||||
#: py/obj.c
|
||||
@ -168,7 +168,7 @@ msgstr "'%s' espera un registro"
|
||||
#: py/emitinlinethumb.c
|
||||
#, c-format
|
||||
msgid "'%s' expects a special register"
|
||||
msgstr "'%s' espera un carácter"
|
||||
msgstr "'%s' espera un registro especial"
|
||||
|
||||
#: py/emitinlinethumb.c
|
||||
#, c-format
|
||||
@ -239,7 +239,7 @@ msgstr "el objeto 'coroutine' no es un iterador"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "'data' requires at least 2 arguments"
|
||||
msgstr "'data' requiere como minomo 2 argumentos"
|
||||
msgstr "'data' requiere como mínimo 2 argumentos"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "'data' requires integer arguments"
|
||||
@ -255,7 +255,7 @@ msgstr "'return' fuera de una función"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "'yield from' inside async function"
|
||||
msgstr ""
|
||||
msgstr "'yield from' dentro de una función asincrónica"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "'yield' outside function"
|
||||
@ -284,22 +284,32 @@ msgstr "El canal EXTINT ya está siendo utilizado"
|
||||
|
||||
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
|
||||
msgid "ADC2 is being used by WiFi"
|
||||
msgstr ""
|
||||
msgstr "ADC2 está siendo usado por WiFi"
|
||||
|
||||
#: shared-bindings/_bleio/Address.c shared-bindings/ipaddress/IPv4Address.c
|
||||
#, c-format
|
||||
msgid "Address must be %d bytes long"
|
||||
msgstr "La dirección debe ser %d bytes de largo"
|
||||
msgstr "La dirección debe tener %d bytes de largo"
|
||||
|
||||
#: shared-bindings/_bleio/Address.c
|
||||
msgid "Address type out of range"
|
||||
msgstr "Tipo de dirección fuera de rango"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr "Todos los periféricos CAN están en uso"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr "Todos los periféricos I2C están siendo usados"
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr "Todas las unidades PCNT en uso"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr "Todos los FIFOs de RX en uso"
|
||||
@ -347,7 +357,7 @@ msgstr "Ya se encuentra publicando."
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
msgid "Already have all-matches listener"
|
||||
msgstr "Ya se tiene un escucha todas-las-coincidencias"
|
||||
msgstr "Ya se tiene un escucha de todas las coincidencias"
|
||||
|
||||
#: shared-module/memorymonitor/AllocationAlarm.c
|
||||
#: shared-module/memorymonitor/AllocationSize.c
|
||||
@ -370,7 +380,7 @@ msgstr "Funcionalidad AnalogOut no soportada"
|
||||
|
||||
#: shared-bindings/analogio/AnalogOut.c
|
||||
msgid "AnalogOut is only 16 bits. Value must be less than 65536."
|
||||
msgstr "AnalogOut es solo de 16 bits. Value debe ser menos a 65536."
|
||||
msgstr "AnalogOut es solo de 16 bits. El valor debe ser menor que 65536."
|
||||
|
||||
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
|
||||
msgid "AnalogOut not supported on given pin"
|
||||
@ -383,7 +393,7 @@ msgstr "Otro envío ya está activo"
|
||||
|
||||
#: shared-bindings/pulseio/PulseOut.c
|
||||
msgid "Array must contain halfwords (type 'H')"
|
||||
msgstr "Array debe contener media palabra (type 'H')"
|
||||
msgstr "El array debe contener medias palabras (escriba 'H')"
|
||||
|
||||
#: shared-bindings/nvm/ByteArray.c
|
||||
msgid "Array values should be single bytes."
|
||||
@ -420,6 +430,10 @@ msgstr ""
|
||||
"Auto-reload habilitado. Simplemente guarda los archivos via USB para "
|
||||
"ejecutarlos o entra al REPL para desabilitarlos.\n"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr "El periférico no maneja el Baudrate"
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
msgid "Below minimum frame rate"
|
||||
@ -429,6 +443,11 @@ msgstr "Por debajo de taza mínima de refrescamiento"
|
||||
msgid "Bit clock and word select must share a clock unit"
|
||||
msgstr "Bit clock y word select deben compartir una unidad de reloj"
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#, c-format
|
||||
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
|
||||
msgstr "Bit depth tiene que ser de 1 a 6 inclusivo, no %d"
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Bit depth must be multiple of 8."
|
||||
msgstr "Bits depth debe ser múltiplo de 8."
|
||||
@ -794,7 +813,7 @@ msgstr "Modo Drive no se usa cuando la dirección es input."
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr "ECB solo opera sobre 16 bytes a la vez"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr "Fallo ESP-IDF al tomar la memoria"
|
||||
|
||||
@ -920,6 +939,7 @@ msgid "File exists"
|
||||
msgstr "El archivo ya existe"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr "Filtros muy complejos"
|
||||
@ -969,7 +989,7 @@ msgstr "Hardware en uso, pruebe pines alternativos"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Hostname must be between 1 and 253 characters"
|
||||
msgstr ""
|
||||
msgstr "Hostname debe ser entre 1 y 253 caracteres"
|
||||
|
||||
#: extmod/vfs_posix_file.c py/objstringio.c
|
||||
msgid "I/O operation on closed file"
|
||||
@ -1000,6 +1020,10 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr "Tamaño incorrecto del buffer"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr "La entrada está durando mucho tiempo"
|
||||
@ -1121,7 +1145,8 @@ msgid "Invalid phase"
|
||||
msgstr "Fase inválida"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr "Pin inválido"
|
||||
@ -1141,7 +1166,7 @@ msgstr "Pin inválido para canal derecho"
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1432,6 +1457,10 @@ msgstr ""
|
||||
"Solo se admiten BMP monocromáticos, indexados de 4 bpp u 8 bpp y 16 bpp o "
|
||||
"más: %d bpp proporcionados"
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr "Solo un color puede ser transparente a la vez"
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr "Solo se aceptan enteros crudos para ip"
|
||||
@ -1822,15 +1851,15 @@ msgstr "No se pudo encontrar el búfer para UART"
|
||||
|
||||
#: ports/stm/common-hal/busio/UART.c
|
||||
msgid "UART De-init error"
|
||||
msgstr "Error de desinicialización de UARL"
|
||||
msgstr "Error de desinicialización de UART"
|
||||
|
||||
#: ports/stm/common-hal/busio/UART.c
|
||||
msgid "UART Init Error"
|
||||
msgstr "Error de inicialización de UARL"
|
||||
msgstr "Error de inicialización de UART"
|
||||
|
||||
#: ports/stm/common-hal/busio/UART.c
|
||||
msgid "UART Re-init error"
|
||||
msgstr "Error de reinicialización de UARL"
|
||||
msgstr "Error de reinicialización de UART"
|
||||
|
||||
#: ports/stm/common-hal/busio/UART.c
|
||||
msgid "UART write error"
|
||||
@ -2169,6 +2198,10 @@ msgstr "Las secciones del buffer necesitan tener longitud igual"
|
||||
msgid "buffer too small"
|
||||
msgstr "buffer demasiado pequeño"
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr "búfer muy pequeño para los bytes solicitados"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr "los botones necesitan ser digitalio.DigitalInOut"
|
||||
@ -2803,7 +2836,7 @@ msgstr "especificador de formato inválido"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "invalid hostname"
|
||||
msgstr ""
|
||||
msgstr "hostname inválido"
|
||||
|
||||
#: extmod/modussl_axtls.c
|
||||
msgid "invalid key"
|
||||
@ -2901,6 +2934,10 @@ msgstr "variable local referenciada antes de la asignación"
|
||||
msgid "long int not supported in this build"
|
||||
msgstr "long int no soportado en esta compilación"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr "cadena-f mal formada"
|
||||
@ -2935,6 +2972,14 @@ msgstr "max_lenght debe ser > 0"
|
||||
msgid "maximum recursion depth exceeded"
|
||||
msgstr "profundidad máxima de recursión excedida"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter should be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "memory allocation failed, allocating %u bytes"
|
||||
@ -3241,6 +3286,7 @@ msgstr "el 3er argumento de pow() no puede ser 0"
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr "pow() con 3 argumentos requiere enteros"
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3248,6 +3294,8 @@ msgstr "pow() con 3 argumentos requiere enteros"
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
@ -3372,6 +3420,10 @@ msgstr "reinicio suave\n"
|
||||
msgid "sort argument must be an ndarray"
|
||||
msgstr "argumento de ordenado debe ser un ndarray"
|
||||
|
||||
#: extmod/ulab/code/numerical/numerical.c
|
||||
msgid "sorted axis can't be longer than 65535"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr "el arreglo sos debe de forma (n_section, 6)"
|
||||
@ -3452,6 +3504,7 @@ msgstr "limite debe ser en el rango 0-65536"
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr "time.struct_time() toma un sequencio 9"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
@ -3502,6 +3555,16 @@ msgstr "tuple index fuera de rango"
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr "tupla/lista tiene una longitud incorrecta"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3522,7 +3585,7 @@ msgstr "objeto de tipo '%q' no tiene atributo '%q'"
|
||||
|
||||
#: py/objgenerator.c
|
||||
msgid "type object 'generator' has no attribute '__await__'"
|
||||
msgstr ""
|
||||
msgstr "objeto tipo 'generator' no tiene un atributo '__await__'"
|
||||
|
||||
#: py/objtype.c
|
||||
msgid "type takes 1 or 3 arguments"
|
||||
@ -3626,6 +3689,10 @@ msgstr "value_count debe ser > 0"
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr "los vectores deben tener el mismo tamaño"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr "el tiempo de espera del perro guardián debe ser mayor a 0"
|
||||
@ -4005,7 +4072,7 @@ msgstr "zi debe ser una forma (n_section,2)"
|
||||
#~ msgstr "Falló el iniciar borrado de flash, err 0x%04x"
|
||||
|
||||
#~ msgid "Flash write failed"
|
||||
#~ msgstr "Falló la escritura"
|
||||
#~ msgstr "Falló la escritura flash"
|
||||
|
||||
#~ msgid "Flash write failed to start, err 0x%04x"
|
||||
#~ msgstr "Falló el iniciar la escritura de flash, err 0x%04x"
|
||||
@ -4062,7 +4129,7 @@ msgstr "zi debe ser una forma (n_section,2)"
|
||||
#~ msgstr "Sin soporte PulseIn para %q"
|
||||
|
||||
#~ msgid "No hardware support for analog out."
|
||||
#~ msgstr "Sin soporte de hardware para analog out"
|
||||
#~ msgstr "Sin soporte de hardware para salida analógica"
|
||||
|
||||
#~ msgid "Not connected."
|
||||
#~ msgstr "No conectado."
|
||||
@ -4071,24 +4138,24 @@ msgstr "zi debe ser una forma (n_section,2)"
|
||||
#~ msgstr "Solo formato Windows, BMP sin comprimir soportado %d"
|
||||
|
||||
#~ msgid "Only bit maps of 8 bit color or less are supported"
|
||||
#~ msgstr "Solo se admiten bit maps de color de 8 bits o menos"
|
||||
#~ msgstr "Solo se admiten mapas de bits de color de 8 bits o menos"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Only monochrome, indexed 8bpp, and 16bpp or greater BMPs supported: %d "
|
||||
#~ "bpp given"
|
||||
#~ msgstr ""
|
||||
#~ "Solo se admiten BMP monocromos, indexados de 8bpp y 16bpp o superiores:%d "
|
||||
#~ "bppdado"
|
||||
#~ "bpp dado"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "Only slices with step=1 (aka None) are supported"
|
||||
#~ msgstr "solo se admiten segmentos con step=1 (alias None)"
|
||||
#~ msgstr "Solo se admiten segmentos con step=1 (alias None)"
|
||||
|
||||
#~ msgid "Only true color (24 bpp or higher) BMP supported %x"
|
||||
#~ msgstr "Solo color verdadero (24 bpp o superior) BMP admitido %x"
|
||||
|
||||
#~ msgid "Only tx supported on UART1 (GPIO2)."
|
||||
#~ msgstr "Solo tx soportada en UART1 (GPIO2)"
|
||||
#~ msgstr "Solo tx soportada en UART1 (GPIO2)."
|
||||
|
||||
#~ msgid "PWM not supported on pin %d"
|
||||
#~ msgstr "El pin %d no soporta PWM"
|
||||
@ -4103,11 +4170,11 @@ msgstr "zi debe ser una forma (n_section,2)"
|
||||
#~ msgstr "Pines no válidos para SPI"
|
||||
|
||||
#~ msgid "Pixel beyond bounds of buffer"
|
||||
#~ msgstr "Pixel beyond bounds of buffer"
|
||||
#~ msgstr "Píxel fuera de los límites del búfer"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "Range out of bounds"
|
||||
#~ msgstr "address fuera de límites"
|
||||
#~ msgstr "Rango fuera de límites"
|
||||
|
||||
#~ msgid "STA must be active"
|
||||
#~ msgstr "STA debe estar activo"
|
||||
@ -4127,10 +4194,10 @@ msgstr "zi debe ser una forma (n_section,2)"
|
||||
#~ msgstr ""
|
||||
#~ "El heap de CircuitPython estaba corrupto porque el stack era demasiado "
|
||||
#~ "pequeño.\n"
|
||||
#~ "Aumente los límites del tamaño del stacj y presione reset (después de "
|
||||
#~ "Aumente los límites del tamaño del stack y presione reset (después de "
|
||||
#~ "expulsarCIRCUITPY).\n"
|
||||
#~ "Si no cambió el stack, entonces reporte un issue aquí con el contenido "
|
||||
#~ "desu unidad CIRCUITPY:\n"
|
||||
#~ "Si no cambió el stack, entonces reporte un issue aquí con el contenido de "
|
||||
#~ "su unidad CIRCUITPY:\n"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "The microcontroller's power dipped. Please make sure your power supply "
|
||||
@ -4183,7 +4250,7 @@ msgstr "zi debe ser una forma (n_section,2)"
|
||||
#~ "malo ha sucedido.\n"
|
||||
|
||||
#~ msgid "bad GATT role"
|
||||
#~ msgstr "mal GATT role"
|
||||
#~ msgstr "rol de GATT malo"
|
||||
|
||||
#~ msgid "bits must be 8"
|
||||
#~ msgstr "bits debe ser 8"
|
||||
@ -4216,7 +4283,7 @@ msgstr "zi debe ser una forma (n_section,2)"
|
||||
#~ msgstr "no se puede establecer STA config"
|
||||
|
||||
#~ msgid "characteristics includes an object that is not a Characteristic"
|
||||
#~ msgstr "characteristics incluye un objeto que no es una Characteristica"
|
||||
#~ msgstr "characteristics incluye un objeto que no es una Characteristic"
|
||||
|
||||
#~ msgid "color buffer must be a buffer or int"
|
||||
#~ msgstr "color buffer deber ser un buffer o un int"
|
||||
|
@ -5,7 +5,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: 2018-12-20 22:15-0800\n"
|
||||
"Last-Translator: Timothy <me@timothygarcia.ca>\n"
|
||||
"Language-Team: fil\n"
|
||||
@ -289,11 +289,21 @@ msgstr "ang palette ay dapat 32 bytes ang haba"
|
||||
msgid "Address type out of range"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr "Lahat ng I2C peripherals ginagamit"
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr ""
|
||||
@ -411,6 +421,10 @@ msgstr ""
|
||||
"Ang awtomatikong pag re-reload ay ON. i-save lamang ang mga files sa USB "
|
||||
"para patakbuhin sila o pasukin ang REPL para i-disable ito.\n"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
msgid "Below minimum frame rate"
|
||||
@ -420,6 +434,11 @@ msgstr ""
|
||||
msgid "Bit clock and word select must share a clock unit"
|
||||
msgstr "Ang bit clock at word select dapat makibahagi sa isang clock unit"
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#, c-format
|
||||
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Bit depth must be multiple of 8."
|
||||
msgstr "Bit depth ay dapat multiple ng 8."
|
||||
@ -785,7 +804,7 @@ msgstr "Drive mode ay hindi ginagamit kapag ang direksyon ay input."
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr ""
|
||||
|
||||
@ -913,6 +932,7 @@ msgid "File exists"
|
||||
msgstr "Mayroong file"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr ""
|
||||
@ -992,6 +1012,10 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr ""
|
||||
@ -1113,7 +1137,8 @@ msgid "Invalid phase"
|
||||
msgstr "Mali ang phase"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr "Mali ang pin"
|
||||
@ -1133,7 +1158,7 @@ msgstr "Mali ang pin para sa kanang channel"
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1421,6 +1446,10 @@ msgid ""
|
||||
"%d bpp given"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr ""
|
||||
@ -2139,6 +2168,10 @@ msgstr "aarehas na haba dapat ang buffer slices"
|
||||
msgid "buffer too small"
|
||||
msgstr "masyadong maliit ang buffer"
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr ""
|
||||
@ -2877,6 +2910,10 @@ msgstr "local variable na reference bago na i-assign"
|
||||
msgid "long int not supported in this build"
|
||||
msgstr "long int hindi sinusuportahan sa build na ito"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr ""
|
||||
@ -2911,6 +2948,14 @@ msgstr ""
|
||||
msgid "maximum recursion depth exceeded"
|
||||
msgstr "lumagpas ang maximum recursion depth"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter should be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "memory allocation failed, allocating %u bytes"
|
||||
@ -3216,6 +3261,7 @@ msgstr "pow() 3rd argument ay hindi maaring 0"
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr "pow() na may 3 argumento kailangan ng integers"
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3223,6 +3269,8 @@ msgstr "pow() na may 3 argumento kailangan ng integers"
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
@ -3347,6 +3395,10 @@ msgstr "malambot na reboot\n"
|
||||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical/numerical.c
|
||||
msgid "sorted axis can't be longer than 65535"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
@ -3428,6 +3480,7 @@ msgstr "ang threshold ay dapat sa range 0-65536"
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr "time.struct_time() kumukuha ng 9-sequence"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
@ -3478,6 +3531,16 @@ msgstr "indeks ng tuple wala sa sakop"
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr "mali ang haba ng tuple/list"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3602,6 +3665,10 @@ msgstr ""
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
237
locale/fr.po
237
locale/fr.po
@ -7,15 +7,15 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 0.1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
|
||||
"PO-Revision-Date: 2020-10-15 18:17+0000\n"
|
||||
"Last-Translator: Jeff Epler <jepler@gmail.com>\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: 2020-11-15 16:28+0000\n"
|
||||
"Last-Translator: Antonin ENFRUN <antonin.e@me.com>\n"
|
||||
"Language: fr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n > 1;\n"
|
||||
"X-Generator: Weblate 4.3-dev\n"
|
||||
"X-Generator: Weblate 4.4-dev\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
@ -23,7 +23,7 @@ msgid ""
|
||||
"Code done running. Waiting for reload.\n"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Fin d'éxecution du code. En attente de recharge.\n"
|
||||
"Fin d'exécution du code. En attente de rechargement.\n"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
@ -122,39 +122,39 @@ msgstr "'%q' argument requis"
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "'%q' object cannot assign attribute '%q'"
|
||||
msgstr "object '%q' ne peut assigner l'attribut '%q'"
|
||||
msgstr "l'objet '%q' ne peut avoir l'attribut '%q'"
|
||||
|
||||
#: py/proto.c
|
||||
msgid "'%q' object does not support '%q'"
|
||||
msgstr "object '%q' ne supporte pas '%q'"
|
||||
msgstr "l'objet '%q' ne supporte pas '%q'"
|
||||
|
||||
#: py/obj.c
|
||||
msgid "'%q' object does not support item assignment"
|
||||
msgstr "objet '%q' ne supporte pas l'assignement d'objets"
|
||||
msgstr "l'objet '%q' ne supporte pas l'assignement d'objets"
|
||||
|
||||
#: py/obj.c
|
||||
msgid "'%q' object does not support item deletion"
|
||||
msgstr "object '%q' ne supported pas la suppression d'objet"
|
||||
msgstr "l'objet '%q' ne supporte pas la suppression d'objet"
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "'%q' object has no attribute '%q'"
|
||||
msgstr "object '%q' n'as pas d'attribut '%q'"
|
||||
msgstr "l'objet '%q' n'as pas d'attribut '%q'"
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "'%q' object is not an iterator"
|
||||
msgstr "object '%q' n'est pas un itérateur"
|
||||
msgstr "l'objet '%q' n'est pas un itérateur"
|
||||
|
||||
#: py/objtype.c py/runtime.c
|
||||
msgid "'%q' object is not callable"
|
||||
msgstr "object '%q' ne peut pas être appelé"
|
||||
msgstr "l'objet '%q' ne peut pas être appelé"
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "'%q' object is not iterable"
|
||||
msgstr "objet '%q' n'est pas iterable"
|
||||
msgstr "l'objet '%q' n'est pas itérable"
|
||||
|
||||
#: py/obj.c
|
||||
msgid "'%q' object is not subscriptable"
|
||||
msgstr "objet '%q' n'est pas souscriptable"
|
||||
msgstr "l'objet '%q' n'est pas souscriptable"
|
||||
|
||||
#: py/emitinlinethumb.c py/emitinlinextensa.c
|
||||
#, c-format
|
||||
@ -169,7 +169,7 @@ msgstr "'%s' attend un registre"
|
||||
#: py/emitinlinethumb.c
|
||||
#, c-format
|
||||
msgid "'%s' expects a special register"
|
||||
msgstr "'%s' attend un registre special"
|
||||
msgstr "'%s' attend un registre spécial"
|
||||
|
||||
#: py/emitinlinethumb.c
|
||||
#, c-format
|
||||
@ -256,7 +256,7 @@ msgstr "'return' en dehors d'une fonction"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "'yield from' inside async function"
|
||||
msgstr ""
|
||||
msgstr "'yield from' dans une fonction async"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "'yield' outside function"
|
||||
@ -296,11 +296,21 @@ msgstr "L'adresse doit être longue de %d octets"
|
||||
msgid "Address type out of range"
|
||||
msgstr "Type d'adresse hors plage"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr "Tous les périphériques CAN sont utilisés"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr "Tous les périphériques I2C sont utilisés"
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr "Toutes les unités PCNT sont utilisées"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr "Tout les RX FIFOs sont utilisé"
|
||||
@ -346,7 +356,7 @@ msgstr "S'annonce déjà."
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
msgid "Already have all-matches listener"
|
||||
msgstr ""
|
||||
msgstr "Il y a déjà un auditeur all-matches"
|
||||
|
||||
#: shared-module/memorymonitor/AllocationAlarm.c
|
||||
#: shared-module/memorymonitor/AllocationSize.c
|
||||
@ -355,7 +365,7 @@ msgstr "Déjà en cours d'exécution"
|
||||
|
||||
#: ports/esp32s2/common-hal/wifi/Radio.c
|
||||
msgid "Already scanning for wifi networks"
|
||||
msgstr ""
|
||||
msgstr "Déjà à la recherche des réseaux wifi"
|
||||
|
||||
#: ports/cxd56/common-hal/analogio/AnalogIn.c
|
||||
msgid "AnalogIn not supported on given pin"
|
||||
@ -420,6 +430,10 @@ msgstr ""
|
||||
"Auto-chargement activé. Copiez simplement les fichiers en USB pour les "
|
||||
"lancer ou entrez sur REPL pour le désactiver.\n"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr "Baudrate non prise en charge par le périphérique"
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
msgid "Below minimum frame rate"
|
||||
@ -429,6 +443,11 @@ msgstr "Inférieur à la fréquence d'images minimale"
|
||||
msgid "Bit clock and word select must share a clock unit"
|
||||
msgstr "'bit clock' et 'word select' doivent partager une horloge"
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#, c-format
|
||||
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
|
||||
msgstr "Bit depth doit être compris entre 1 et 6 inclus, et non %d"
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Bit depth must be multiple of 8."
|
||||
msgstr "La profondeur de bit doit être un multiple de 8."
|
||||
@ -706,11 +725,11 @@ msgstr "Impossible de redémarrer PWM"
|
||||
|
||||
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
|
||||
msgid "Could not retrieve clock"
|
||||
msgstr ""
|
||||
msgstr "Impossible d’obtenir l’horloge"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "Could not set address"
|
||||
msgstr ""
|
||||
msgstr "Impossible de définir l’adresse"
|
||||
|
||||
#: ports/stm/common-hal/pwmio/PWMOut.c
|
||||
msgid "Could not start PWM"
|
||||
@ -798,7 +817,7 @@ msgstr "Le mode Drive n'est pas utilisé quand la direction est 'input'."
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr "La BCE ne fonctionne que sur 16 octets à la fois"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr "ESP-IDF échec d'allocation de la mémoire"
|
||||
|
||||
@ -862,7 +881,7 @@ msgstr "La FFT est définie pour les ndarrays uniquement"
|
||||
|
||||
#: ports/esp32s2/common-hal/socketpool/Socket.c
|
||||
msgid "Failed SSL handshake"
|
||||
msgstr ""
|
||||
msgstr "Échec du handshake SSL"
|
||||
|
||||
#: shared-bindings/ps2io/Ps2.c
|
||||
msgid "Failed sending command."
|
||||
@ -889,11 +908,11 @@ msgstr "Echec de l'allocation de %d octets du tampon RX"
|
||||
|
||||
#: ports/esp32s2/common-hal/wifi/__init__.c
|
||||
msgid "Failed to allocate Wifi memory"
|
||||
msgstr ""
|
||||
msgstr "Impossible d’allouer la mémoire pour Wifi"
|
||||
|
||||
#: ports/esp32s2/common-hal/wifi/ScannedNetworks.c
|
||||
msgid "Failed to allocate wifi scan memory"
|
||||
msgstr ""
|
||||
msgstr "Impossible d'allouer la mémoire pour le scan wifi"
|
||||
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Failed to connect: internal error"
|
||||
@ -925,18 +944,19 @@ msgid "File exists"
|
||||
msgstr "Le fichier existe"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr ""
|
||||
msgstr "Filtre trop complexe"
|
||||
|
||||
#: ports/cxd56/common-hal/camera/Camera.c
|
||||
msgid "Format not supported"
|
||||
msgstr ""
|
||||
msgstr "Format non supporté"
|
||||
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
#, c-format
|
||||
msgid "Framebuffer requires %d bytes"
|
||||
msgstr ""
|
||||
msgstr "Le framebuffer nécessite %d octets"
|
||||
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
msgid "Frequency captured is above capability. Capture Paused."
|
||||
@ -974,7 +994,7 @@ msgstr "Matériel utilisé, essayez d'autres broches"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Hostname must be between 1 and 253 characters"
|
||||
msgstr ""
|
||||
msgstr "Hostname doit faire entre 1 et 253 caractères"
|
||||
|
||||
#: extmod/vfs_posix_file.c py/objstringio.c
|
||||
msgid "I/O operation on closed file"
|
||||
@ -1005,9 +1025,13 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr "Taille de tampon incorrecte"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr ""
|
||||
msgstr "L'entrée prend trop de temps"
|
||||
|
||||
#: ports/esp32s2/common-hal/neopixel_write/__init__.c py/moduerrno.c
|
||||
msgid "Input/output error"
|
||||
@ -1043,7 +1067,7 @@ msgstr "Broche invalide pour '%q'"
|
||||
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
|
||||
#: ports/stm/common-hal/sdioio/SDCard.c
|
||||
msgid "Invalid %q pin selection"
|
||||
msgstr ""
|
||||
msgstr "Sélection de pin %q invalide"
|
||||
|
||||
#: ports/stm/common-hal/analogio/AnalogIn.c
|
||||
msgid "Invalid ADC Unit value"
|
||||
@ -1126,7 +1150,8 @@ msgid "Invalid phase"
|
||||
msgstr "Phase invalide"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr "Broche invalide"
|
||||
@ -1146,7 +1171,7 @@ msgstr "Broche invalide pour le canal droit"
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1391,11 +1416,11 @@ msgstr "Ne joue pas"
|
||||
|
||||
#: main.c
|
||||
msgid "Not running saved code.\n"
|
||||
msgstr ""
|
||||
msgstr "N'exécute pas le code sauvegardé.\n"
|
||||
|
||||
#: shared-bindings/_bleio/__init__.c
|
||||
msgid "Not settable"
|
||||
msgstr ""
|
||||
msgstr "Non réglable"
|
||||
|
||||
#: shared-bindings/util.c
|
||||
msgid ""
|
||||
@ -1414,11 +1439,11 @@ msgstr "Uniquement 8 ou 16 bit mono avec "
|
||||
|
||||
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
|
||||
msgid "Only IPv4 SOCK_STREAM sockets supported"
|
||||
msgstr ""
|
||||
msgstr "Seules les sockets IPv4 SOCK_STREAM sont prises en charge"
|
||||
|
||||
#: ports/esp32s2/common-hal/wifi/__init__.c
|
||||
msgid "Only IPv4 addresses supported"
|
||||
msgstr ""
|
||||
msgstr "Seules les adresses IPv4 sont prises en charge"
|
||||
|
||||
#: shared-module/displayio/OnDiskBitmap.c
|
||||
#, c-format
|
||||
@ -1437,13 +1462,17 @@ msgstr ""
|
||||
"Prise en charge uniquement des monochromes, 4 bpp ou 8 bpp indexés et 16 bpp "
|
||||
"ou plus : %d bpp fournis"
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr "Une seule couleur peut être transparente à la fois"
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr ""
|
||||
msgstr "IP n'accepte que les entiers bruts"
|
||||
|
||||
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
|
||||
msgid "Out of sockets"
|
||||
msgstr ""
|
||||
msgstr "Plus de sockets"
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Oversample must be multiple of 8."
|
||||
@ -1518,6 +1547,8 @@ msgid ""
|
||||
"Port does not accept PWM carrier. Pass a pin, frequency and duty cycle "
|
||||
"instead"
|
||||
msgstr ""
|
||||
"Ce portage n'accepte pas de PWM carrier. Précisez plutôt pin, frequency et "
|
||||
"duty cycle"
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
|
||||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
@ -1527,6 +1558,8 @@ msgid ""
|
||||
"Port does not accept pins or frequency. Construct and pass a PWMOut Carrier "
|
||||
"instead"
|
||||
msgstr ""
|
||||
"Ce portage n'accepte pas pins ou frequency. Construisez et passez un PWMOut "
|
||||
"Carrier à la place"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "Prefix buffer must be on the heap"
|
||||
@ -1590,7 +1623,7 @@ msgstr "Rafraîchissez trop tôt"
|
||||
|
||||
#: shared-bindings/canio/RemoteTransmissionRequest.c
|
||||
msgid "RemoteTransmissionRequests limited to 8 bytes"
|
||||
msgstr ""
|
||||
msgstr "RemoteTransmissionRequests limité à 8 octets"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "Requested AES mode is unsupported"
|
||||
@ -1606,7 +1639,7 @@ msgstr "L'entrée de ligne 'Row' doit être un digitalio.DigitalInOut"
|
||||
|
||||
#: main.c
|
||||
msgid "Running in safe mode! "
|
||||
msgstr ""
|
||||
msgstr "Tourne en mode sécurisé "
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "SD card CSD format not supported"
|
||||
@ -1620,12 +1653,12 @@ msgstr "SDA ou SCL a besoin d'une résistance de tirage ('pull up')"
|
||||
#: ports/stm/common-hal/sdioio/SDCard.c
|
||||
#, c-format
|
||||
msgid "SDIO GetCardInfo Error %d"
|
||||
msgstr ""
|
||||
msgstr "SDIO GetCardInfo erreur %d"
|
||||
|
||||
#: ports/stm/common-hal/sdioio/SDCard.c
|
||||
#, c-format
|
||||
msgid "SDIO Init Error %d"
|
||||
msgstr ""
|
||||
msgstr "SDIO Init erreur %d"
|
||||
|
||||
#: ports/stm/common-hal/busio/SPI.c
|
||||
msgid "SPI Init Error"
|
||||
@ -1663,11 +1696,11 @@ msgstr "Sérialiseur en cours d'utilisation"
|
||||
|
||||
#: shared-bindings/ssl/SSLContext.c
|
||||
msgid "Server side context cannot have hostname"
|
||||
msgstr ""
|
||||
msgstr "Un contexte niveau serveur ne peut avoir de hostname"
|
||||
|
||||
#: ports/cxd56/common-hal/camera/Camera.c
|
||||
msgid "Size not supported"
|
||||
msgstr ""
|
||||
msgstr "Taille non prise en charge"
|
||||
|
||||
#: shared-bindings/nvm/ByteArray.c
|
||||
msgid "Slice and value different lengths."
|
||||
@ -1682,7 +1715,7 @@ msgstr "Tranches non supportées"
|
||||
|
||||
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
|
||||
msgid "SocketPool can only be used with wifi.radio"
|
||||
msgstr ""
|
||||
msgstr "SocketPool ne s'utilise qu'avec wifi.radio"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "Source and destination buffers must be the same length"
|
||||
@ -1730,7 +1763,7 @@ msgstr ""
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
msgid "The length of rgb_pins must be 6, 12, 18, 24, or 30"
|
||||
msgstr ""
|
||||
msgstr "La taille de rgb_pins doit être 6, 12, 18, 24 ou 30"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
@ -1785,6 +1818,8 @@ msgstr "Le délai est trop long : le délai maximal est de %d secondes"
|
||||
msgid ""
|
||||
"Timer was reserved for internal use - declare PWM pins earlier in the program"
|
||||
msgstr ""
|
||||
"Timer est reservé pour un usage interne - déclarez la broche PWM plus tôt "
|
||||
"dans le programme"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "To exit, please reset the board without "
|
||||
@ -1865,7 +1900,7 @@ msgstr "Impossible d'allouer des tampons pour une conversion signée"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c
|
||||
msgid "Unable to create lock"
|
||||
msgstr ""
|
||||
msgstr "Impossible de créer un verrou"
|
||||
|
||||
#: shared-module/displayio/I2CDisplay.c
|
||||
#, c-format
|
||||
@ -1896,11 +1931,11 @@ msgstr "Type inattendu pour l'uuid nrfx"
|
||||
#: ports/esp32s2/common-hal/socketpool/Socket.c
|
||||
#, c-format
|
||||
msgid "Unhandled ESP TLS error %d %d %x %d"
|
||||
msgstr ""
|
||||
msgstr "Erreur ESP TLS non gérée %d %d %x %d"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Unknown failure"
|
||||
msgstr ""
|
||||
msgstr "Echec inconnu"
|
||||
|
||||
#: ports/nrf/common-hal/_bleio/__init__.c
|
||||
#, c-format
|
||||
@ -2020,7 +2055,7 @@ msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "WiFi password must be between 8 and 63 characters"
|
||||
msgstr ""
|
||||
msgstr "Le mot de passe WiFi doit faire entre 8 et 63 caractères"
|
||||
|
||||
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
|
||||
msgid "Writes not supported on Characteristic"
|
||||
@ -2040,7 +2075,7 @@ msgstr "__init__() doit retourner None"
|
||||
|
||||
#: py/objtype.c
|
||||
msgid "__init__() should return None, not '%q'"
|
||||
msgstr ""
|
||||
msgstr "__init__() doit retourner None, pas '%q'"
|
||||
|
||||
#: py/objobject.c
|
||||
msgid "__new__ arg must be a user-type"
|
||||
@ -2085,7 +2120,7 @@ msgstr "l'argument est d'un mauvais type"
|
||||
|
||||
#: extmod/ulab/code/linalg/linalg.c
|
||||
msgid "argument must be ndarray"
|
||||
msgstr ""
|
||||
msgstr "l'argument doit être un ndarray"
|
||||
|
||||
#: py/argcheck.c shared-bindings/_stage/__init__.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c shared-bindings/gamepad/GamePad.c
|
||||
@ -2173,6 +2208,10 @@ msgstr "les tranches de tampon doivent être de longueurs égales"
|
||||
msgid "buffer too small"
|
||||
msgstr "tampon trop petit"
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr "tampon trop petit pour le nombre d'octets demandé"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr "les boutons doivent être des digitalio.DigitalInOut"
|
||||
@ -2192,7 +2231,7 @@ msgstr "octets > 8 bits non supporté"
|
||||
|
||||
#: py/objarray.c
|
||||
msgid "bytes length not a multiple of item size"
|
||||
msgstr ""
|
||||
msgstr "bytes length n'est pas un multiple de la taille d'un élément"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "bytes value out of range"
|
||||
@ -2234,7 +2273,7 @@ msgstr "ne peut pas assigner à une expression"
|
||||
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
#: shared-module/_pixelbuf/PixelBuf.c
|
||||
msgid "can't convert %q to %q"
|
||||
msgstr ""
|
||||
msgstr "impossible de convertir %q en %q"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "can't convert '%q' object to %q implicitly"
|
||||
@ -2242,7 +2281,7 @@ msgstr "impossible de convertir l'objet '%q' en '%q' implicitement"
|
||||
|
||||
#: py/obj.c
|
||||
msgid "can't convert to %q"
|
||||
msgstr ""
|
||||
msgstr "impossible de convertir en %q"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "can't convert to str implicitly"
|
||||
@ -2520,11 +2559,11 @@ msgstr "les exceptions doivent dériver de 'BaseException'"
|
||||
|
||||
#: shared-bindings/canio/CAN.c
|
||||
msgid "expected '%q' but got '%q'"
|
||||
msgstr ""
|
||||
msgstr "'%q' était attendu, mais reçu '%q'"
|
||||
|
||||
#: shared-bindings/canio/CAN.c
|
||||
msgid "expected '%q' or '%q' but got '%q'"
|
||||
msgstr ""
|
||||
msgstr "'%q' ou '%q' était attendu, mais reçu '%q'"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "expected ':' after format specifier"
|
||||
@ -2741,7 +2780,7 @@ msgstr "les valeurs initiales doivent être itérables"
|
||||
|
||||
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
|
||||
msgid "initial_value length is wrong"
|
||||
msgstr ""
|
||||
msgstr "la longueur de initial_value est incorrecte"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
@ -2818,7 +2857,7 @@ msgstr "spécification de format invalide"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "invalid hostname"
|
||||
msgstr ""
|
||||
msgstr "hostname incorrect"
|
||||
|
||||
#: extmod/modussl_axtls.c
|
||||
msgid "invalid key"
|
||||
@ -2917,6 +2956,10 @@ msgstr "variable locale référencée avant d'être assignée"
|
||||
msgid "long int not supported in this build"
|
||||
msgstr "entiers longs non supportés dans cette build"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr "loopback + silent mode non pris en charge par le périphérique"
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr "f-string mal formé"
|
||||
@ -2945,12 +2988,20 @@ msgstr "max_length doit être 0-%d lorsque fixed_length est %s"
|
||||
|
||||
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
|
||||
msgid "max_length must be > 0"
|
||||
msgstr ""
|
||||
msgstr "max_length doit être > 0"
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "maximum recursion depth exceeded"
|
||||
msgstr "profondeur maximale de récursivité dépassée"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter must be > 0"
|
||||
msgstr "maxiter doit être > 0"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter should be > 0"
|
||||
msgstr "maxiter devrait être > 0"
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "memory allocation failed, allocating %u bytes"
|
||||
@ -3098,7 +3149,7 @@ msgstr "le nombre de points doit être d'au moins 2"
|
||||
|
||||
#: py/obj.c
|
||||
msgid "object '%q' is not a tuple or list"
|
||||
msgstr ""
|
||||
msgstr "l'objet '%q' n'est pas un tuple ou une list"
|
||||
|
||||
#: py/obj.c
|
||||
msgid "object does not support item assignment"
|
||||
@ -3134,7 +3185,7 @@ msgstr "objet non itérable"
|
||||
|
||||
#: py/obj.c
|
||||
msgid "object of type '%q' has no len()"
|
||||
msgstr ""
|
||||
msgstr "len() indéfinie pour un objet de type '%q'"
|
||||
|
||||
#: py/obj.c
|
||||
msgid "object with buffer protocol required"
|
||||
@ -3187,11 +3238,11 @@ msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c
|
||||
msgid "out of range of source"
|
||||
msgstr ""
|
||||
msgstr "dépassement des bornes de source"
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c
|
||||
msgid "out of range of target"
|
||||
msgstr ""
|
||||
msgstr "dépassement des bornes de target"
|
||||
|
||||
#: py/objint_mpz.c
|
||||
msgid "overflow converting long int to machine word"
|
||||
@ -3200,7 +3251,7 @@ msgstr "dépassement de capacité en convertissant un entier long en mot machine
|
||||
#: py/modstruct.c
|
||||
#, c-format
|
||||
msgid "pack expected %d items for packing (got %d)"
|
||||
msgstr ""
|
||||
msgstr "pack attend %d element(s) (%d reçu)"
|
||||
|
||||
#: shared-bindings/_stage/Layer.c shared-bindings/_stage/Text.c
|
||||
msgid "palette must be 32 bytes long"
|
||||
@ -3249,7 +3300,7 @@ msgstr "'pop' d'une entrée PulseIn vide"
|
||||
#: ports/stm/common-hal/pulseio/PulseIn.c py/objdict.c py/objlist.c py/objset.c
|
||||
#: shared-bindings/ps2io/Ps2.c
|
||||
msgid "pop from empty %q"
|
||||
msgstr ""
|
||||
msgstr "pop sur %q vide"
|
||||
|
||||
#: py/objint_mpz.c
|
||||
msgid "pow() 3rd argument cannot be 0"
|
||||
@ -3259,6 +3310,7 @@ msgstr "le 3e argument de pow() ne peut être 0"
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr "pow() avec 3 arguments nécessite des entiers"
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3266,10 +3318,12 @@ msgstr "pow() avec 3 arguments nécessite des entiers"
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
msgstr ""
|
||||
msgstr "bouton boot appuyé lors du démarrage.\n"
|
||||
|
||||
#: ports/atmel-samd/boards/circuitplayground_express/mpconfigboard.h
|
||||
#: ports/atmel-samd/boards/circuitplayground_express_crickit/mpconfigboard.h
|
||||
@ -3277,7 +3331,7 @@ msgstr ""
|
||||
#: ports/atmel-samd/boards/escornabot_makech/mpconfigboard.h
|
||||
#: ports/atmel-samd/boards/meowmeow/mpconfigboard.h
|
||||
msgid "pressing both buttons at start up.\n"
|
||||
msgstr ""
|
||||
msgstr "les deux boutons appuyés lors du démarrage.\n"
|
||||
|
||||
#: extmod/modutimeq.c
|
||||
msgid "queue overflow"
|
||||
@ -3372,7 +3426,7 @@ msgstr "la longueur de sleep ne doit pas être négative"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "slice step can't be zero"
|
||||
msgstr ""
|
||||
msgstr "le pas 'step' de la tranche ne peut être zéro"
|
||||
|
||||
#: py/objslice.c py/sequence.c
|
||||
msgid "slice step cannot be zero"
|
||||
@ -3390,21 +3444,25 @@ msgstr "redémarrage logiciel\n"
|
||||
msgid "sort argument must be an ndarray"
|
||||
msgstr "l'argument de «sort» doit être un ndarray"
|
||||
|
||||
#: extmod/ulab/code/numerical/numerical.c
|
||||
msgid "sorted axis can't be longer than 65535"
|
||||
msgstr "sorted axis ne peut pas dépasser 65535"
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
msgstr "le tableau sos doit être de forme (n_section, 6)"
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos[:, 3] should be all ones"
|
||||
msgstr ""
|
||||
msgstr "sos[:, 3] doivent tous être à un"
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sosfilt requires iterable arguments"
|
||||
msgstr ""
|
||||
msgstr "sosfilt nécessite des argument itératifs"
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c
|
||||
msgid "source palette too large"
|
||||
msgstr ""
|
||||
msgstr "la palette source est trop grande"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
@ -3432,7 +3490,7 @@ msgstr "opération de flux non supportée"
|
||||
|
||||
#: py/objstrunicode.c
|
||||
msgid "string indices must be integers, not %q"
|
||||
msgstr ""
|
||||
msgstr "les indices d'une chaîne doivent être des entiers, pas %q"
|
||||
|
||||
#: py/stream.c
|
||||
msgid "string not supported; use bytes or bytearray"
|
||||
@ -3471,6 +3529,7 @@ msgstr "le seuil doit être dans la gamme 0-65536"
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr "time.struct_time() prend une séquence de longueur 9"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr "le délai d'expiration a dépassé la valeur maximale prise en charge"
|
||||
@ -3485,11 +3544,11 @@ msgstr "'timeout' doit être >= 0.0"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v1 card"
|
||||
msgstr ""
|
||||
msgstr "Délai d’expiration dépassé en attendant une carte v1"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v2 card"
|
||||
msgstr ""
|
||||
msgstr "Délai d’expiration dépassé en attendant une carte v2"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "timestamp out of range for platform time_t"
|
||||
@ -3510,7 +3569,7 @@ msgstr "trop de valeur à dégrouper (%d attendues)"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "trapz is defined for 1D arrays of equal length"
|
||||
msgstr ""
|
||||
msgstr "trapz n'est défini que pour des tableaux 1D de longueur égale"
|
||||
|
||||
#: extmod/ulab/code/linalg/linalg.c
|
||||
msgid "tuple index out of range"
|
||||
@ -3520,6 +3579,16 @@ msgstr "index du tuple hors gamme"
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr "tuple/liste a une mauvaise longueur"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr "twai_driver_install a renvoyé l'erreur esp-idf #%d"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr "twai_start a renvoyé l'erreur esp-idf #%d"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3540,7 +3609,7 @@ msgstr "l'objet de type '%q' n'a pas d'attribut '%q'"
|
||||
|
||||
#: py/objgenerator.c
|
||||
msgid "type object 'generator' has no attribute '__await__'"
|
||||
msgstr ""
|
||||
msgstr "le type 'generator' n'a pas d'attribut '__await__'"
|
||||
|
||||
#: py/objtype.c
|
||||
msgid "type takes 1 or 3 arguments"
|
||||
@ -3644,13 +3713,17 @@ msgstr "'value_count' doit être > 0"
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr "les vecteurs doivent avoir la même longueur"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr "watchdog timeout doit être supérieur à 0"
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
msgid "width must be greater than zero"
|
||||
msgstr ""
|
||||
msgstr "width doit être plus grand que zero"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
@ -3702,15 +3775,15 @@ msgstr "'step' nul"
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "zi must be an ndarray"
|
||||
msgstr ""
|
||||
msgstr "zi doit être ndarray"
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "zi must be of float type"
|
||||
msgstr ""
|
||||
msgstr "zi doit être de type float"
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
msgstr "zi doit être de forme (n_section, 2)"
|
||||
|
||||
#~ msgid "Must provide SCK pin"
|
||||
#~ msgstr "Vous devez fournir un code PIN SCK"
|
||||
|
75
locale/hi.po
75
locale/hi.po
@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\n"
|
||||
@ -287,11 +287,21 @@ msgstr ""
|
||||
msgid "Address type out of range"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr ""
|
||||
@ -406,6 +416,10 @@ msgid ""
|
||||
"disable.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
msgid "Below minimum frame rate"
|
||||
@ -415,6 +429,11 @@ msgstr ""
|
||||
msgid "Bit clock and word select must share a clock unit"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#, c-format
|
||||
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Bit depth must be multiple of 8."
|
||||
msgstr ""
|
||||
@ -774,7 +793,7 @@ msgstr ""
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr ""
|
||||
|
||||
@ -900,6 +919,7 @@ msgid "File exists"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr ""
|
||||
@ -977,6 +997,10 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr ""
|
||||
@ -1098,7 +1122,8 @@ msgid "Invalid phase"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr ""
|
||||
@ -1118,7 +1143,7 @@ msgstr ""
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1403,6 +1428,10 @@ msgid ""
|
||||
"%d bpp given"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr ""
|
||||
@ -2106,6 +2135,10 @@ msgstr ""
|
||||
msgid "buffer too small"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr ""
|
||||
@ -2828,6 +2861,10 @@ msgstr ""
|
||||
msgid "long int not supported in this build"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr ""
|
||||
@ -2862,6 +2899,14 @@ msgstr ""
|
||||
msgid "maximum recursion depth exceeded"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter should be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "memory allocation failed, allocating %u bytes"
|
||||
@ -3165,6 +3210,7 @@ msgstr ""
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3172,6 +3218,8 @@ msgstr ""
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
@ -3294,6 +3342,10 @@ msgstr ""
|
||||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical/numerical.c
|
||||
msgid "sorted axis can't be longer than 65535"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
@ -3374,6 +3426,7 @@ msgstr ""
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
@ -3423,6 +3476,16 @@ msgstr ""
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3547,6 +3610,10 @@ msgstr ""
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: 2018-10-02 16:27+0200\n"
|
||||
"Last-Translator: Enrico Paganin <enrico.paganin@mail.com>\n"
|
||||
"Language-Team: \n"
|
||||
@ -288,11 +288,21 @@ msgstr "la palette deve essere lunga 32 byte"
|
||||
msgid "Address type out of range"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr "Tutte le periferiche I2C sono in uso"
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr ""
|
||||
@ -410,6 +420,10 @@ msgstr ""
|
||||
"L'auto-reload è attivo. Salva i file su USB per eseguirli o entra nel REPL "
|
||||
"per disabilitarlo.\n"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
msgid "Below minimum frame rate"
|
||||
@ -420,6 +434,11 @@ msgid "Bit clock and word select must share a clock unit"
|
||||
msgstr ""
|
||||
"Clock di bit e selezione parola devono condividere la stessa unità di clock"
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#, c-format
|
||||
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Bit depth must be multiple of 8."
|
||||
msgstr "La profondità di bit deve essere multipla di 8."
|
||||
@ -785,7 +804,7 @@ msgstr ""
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr ""
|
||||
|
||||
@ -913,6 +932,7 @@ msgid "File exists"
|
||||
msgstr "File esistente"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr ""
|
||||
@ -992,6 +1012,10 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr ""
|
||||
@ -1115,7 +1139,8 @@ msgid "Invalid phase"
|
||||
msgstr "Fase non valida"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr "Pin non valido"
|
||||
@ -1135,7 +1160,7 @@ msgstr "Pin non valido per il canale destro"
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1426,6 +1451,10 @@ msgid ""
|
||||
"%d bpp given"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr ""
|
||||
@ -2144,6 +2173,10 @@ msgstr "slice del buffer devono essere della stessa lunghezza"
|
||||
msgid "buffer too small"
|
||||
msgstr "buffer troppo piccolo"
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr ""
|
||||
@ -2879,6 +2912,10 @@ msgstr "variabile locale richiamata prima di un assegnamento"
|
||||
msgid "long int not supported in this build"
|
||||
msgstr "long int non supportata in questa build"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr ""
|
||||
@ -2913,6 +2950,14 @@ msgstr ""
|
||||
msgid "maximum recursion depth exceeded"
|
||||
msgstr "profondità massima di ricorsione superata"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter should be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "memory allocation failed, allocating %u bytes"
|
||||
@ -3223,6 +3268,7 @@ msgstr "il terzo argomento di pow() non può essere 0"
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr "pow() con 3 argomenti richiede interi"
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3230,6 +3276,8 @@ msgstr "pow() con 3 argomenti richiede interi"
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
@ -3354,6 +3402,10 @@ msgstr "soft reboot\n"
|
||||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical/numerical.c
|
||||
msgid "sorted axis can't be longer than 65535"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
@ -3435,6 +3487,7 @@ msgstr "la soglia deve essere nell'intervallo 0-65536"
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
@ -3485,6 +3538,16 @@ msgstr "indice della tupla fuori intervallo"
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr "tupla/lista ha la lunghezza sbagliata"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3609,6 +3672,10 @@ msgstr ""
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
113
locale/ja.po
113
locale/ja.po
@ -7,16 +7,16 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
|
||||
"PO-Revision-Date: 2020-09-25 18:20+0000\n"
|
||||
"Last-Translator: Taku Fukada <naninunenor@gmail.com>\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: 2020-11-12 22:51+0000\n"
|
||||
"Last-Translator: sporeball <sporeballdev@gmail.com>\n"
|
||||
"Language-Team: none\n"
|
||||
"Language: ja\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
"X-Generator: Weblate 4.3-dev\n"
|
||||
"X-Generator: Weblate 4.4-dev\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
@ -162,12 +162,12 @@ msgstr "'%s' にはラベルが必要"
|
||||
#: py/emitinlinethumb.c py/emitinlinextensa.c
|
||||
#, c-format
|
||||
msgid "'%s' expects a register"
|
||||
msgstr ""
|
||||
msgstr "'%s'にはレジスタが必要"
|
||||
|
||||
#: py/emitinlinethumb.c
|
||||
#, c-format
|
||||
msgid "'%s' expects a special register"
|
||||
msgstr ""
|
||||
msgstr "'%s'には特別レジスタが必要"
|
||||
|
||||
#: py/emitinlinethumb.c
|
||||
#, c-format
|
||||
@ -192,7 +192,7 @@ msgstr ""
|
||||
#: py/emitinlinethumb.c
|
||||
#, c-format
|
||||
msgid "'%s' expects {r0, r1, ...}"
|
||||
msgstr ""
|
||||
msgstr "'%s'には{r0, r1, ...}が必要"
|
||||
|
||||
#: py/emitinlinextensa.c
|
||||
#, c-format
|
||||
@ -246,7 +246,7 @@ msgstr "'data'には整数の引数が必要"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "'label' requires 1 argument"
|
||||
msgstr ""
|
||||
msgstr "'label'には1つの引数が必要"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "'return' outside function"
|
||||
@ -294,11 +294,21 @@ msgstr "アドレスは、%dバイト長でなければなりません"
|
||||
msgid "Address type out of range"
|
||||
msgstr "address_typeが範囲外"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr "全てのCAN周辺機器が使用中"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr "全てのI2C周辺機器が使用中"
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr "全てのRX FIFOが使用中"
|
||||
@ -415,6 +425,10 @@ msgstr ""
|
||||
"オートリロードがオンです。ファイルをUSB経由で保存するだけで実行できます。REPL"
|
||||
"に入ると無効化します。\n"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
msgid "Below minimum frame rate"
|
||||
@ -424,6 +438,11 @@ msgstr "最低のフレームレート未満"
|
||||
msgid "Bit clock and word select must share a clock unit"
|
||||
msgstr "bit clockとword selectはクロックユニットを共有しなければなりません"
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#, c-format
|
||||
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Bit depth must be multiple of 8."
|
||||
msgstr "ビット深度は8の倍数でなければなりません"
|
||||
@ -787,7 +806,7 @@ msgstr "方向がinputのときドライブモードは使われません"
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr "ECBは一度に16バイトの演算のみを行います"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr ""
|
||||
|
||||
@ -812,19 +831,19 @@ msgstr "%qが必要"
|
||||
#: shared-bindings/_bleio/CharacteristicBuffer.c
|
||||
#: shared-bindings/_bleio/Descriptor.c shared-bindings/_bleio/PacketBuffer.c
|
||||
msgid "Expected a Characteristic"
|
||||
msgstr ""
|
||||
msgstr "Characteristicが必要"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "Expected a DigitalInOut"
|
||||
msgstr ""
|
||||
msgstr "DigitalInOutが必要"
|
||||
|
||||
#: shared-bindings/_bleio/Characteristic.c
|
||||
msgid "Expected a Service"
|
||||
msgstr ""
|
||||
msgstr "Serviceが必要"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "Expected a UART"
|
||||
msgstr ""
|
||||
msgstr "UARTが必要"
|
||||
|
||||
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
|
||||
#: shared-bindings/_bleio/Service.c
|
||||
@ -833,7 +852,7 @@ msgstr "UUIDが必要"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "Expected an Address"
|
||||
msgstr ""
|
||||
msgstr "Addressが必要"
|
||||
|
||||
#: shared-module/_pixelbuf/PixelBuf.c
|
||||
#, c-format
|
||||
@ -877,7 +896,7 @@ msgstr "%dバイトのRXバッファの確保に失敗"
|
||||
|
||||
#: ports/esp32s2/common-hal/wifi/__init__.c
|
||||
msgid "Failed to allocate Wifi memory"
|
||||
msgstr ""
|
||||
msgstr "Wi-Fiのメモリの確保に失敗"
|
||||
|
||||
#: ports/esp32s2/common-hal/wifi/ScannedNetworks.c
|
||||
msgid "Failed to allocate wifi scan memory"
|
||||
@ -913,6 +932,7 @@ msgid "File exists"
|
||||
msgstr "ファイルが存在します"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr ""
|
||||
@ -992,6 +1012,10 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr "バッファサイズが正しくありません"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr ""
|
||||
@ -1042,7 +1066,7 @@ msgstr "不正なBMPファイル"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid BSSID"
|
||||
msgstr ""
|
||||
msgstr "不正なBSSID"
|
||||
|
||||
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
|
||||
#: ports/stm/common-hal/analogio/AnalogOut.c
|
||||
@ -1093,7 +1117,7 @@ msgstr "フォーマットチャンクのサイズが不正"
|
||||
|
||||
#: ports/esp32s2/common-hal/pwmio/PWMOut.c
|
||||
msgid "Invalid frequency"
|
||||
msgstr ""
|
||||
msgstr "不正な周波数"
|
||||
|
||||
#: ports/stm/common-hal/pwmio/PWMOut.c
|
||||
msgid "Invalid frequency supplied"
|
||||
@ -1113,7 +1137,8 @@ msgid "Invalid phase"
|
||||
msgstr "不正なphase"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr "不正なピン"
|
||||
@ -1133,7 +1158,7 @@ msgstr "右チャネルのピンが不正"
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1328,11 +1353,11 @@ msgstr "long integerに対応していません"
|
||||
|
||||
#: ports/esp32s2/common-hal/pwmio/PWMOut.c
|
||||
msgid "No more channels available"
|
||||
msgstr ""
|
||||
msgstr "使えるチャネルがもうありません"
|
||||
|
||||
#: ports/esp32s2/common-hal/pwmio/PWMOut.c
|
||||
msgid "No more timers available"
|
||||
msgstr ""
|
||||
msgstr "使えるタイマーがもうありません"
|
||||
|
||||
#: ports/stm/common-hal/pwmio/PWMOut.c
|
||||
msgid "No more timers available on this pin."
|
||||
@ -1420,6 +1445,10 @@ msgid ""
|
||||
"%d bpp given"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr ""
|
||||
@ -1644,7 +1673,7 @@ msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/camera/Camera.c
|
||||
msgid "Size not supported"
|
||||
msgstr ""
|
||||
msgstr "サイズは対応していません"
|
||||
|
||||
#: shared-bindings/nvm/ByteArray.c
|
||||
msgid "Slice and value different lengths."
|
||||
@ -2131,6 +2160,10 @@ msgstr "バッファのスライスは同じ長さでなければなりません
|
||||
msgid "buffer too small"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr "buttonsはdigitalio.DigitalInOutでなければなりません"
|
||||
@ -2763,7 +2796,7 @@ msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "invalid hostname"
|
||||
msgstr ""
|
||||
msgstr "不正なホスト名"
|
||||
|
||||
#: extmod/modussl_axtls.c
|
||||
msgid "invalid key"
|
||||
@ -2858,6 +2891,10 @@ msgstr ""
|
||||
msgid "long int not supported in this build"
|
||||
msgstr "このビルドはlong intに非対応"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr "不正な形式のf-string"
|
||||
@ -2892,6 +2929,14 @@ msgstr "max_lengthは0より大きくなければなりません"
|
||||
msgid "maximum recursion depth exceeded"
|
||||
msgstr "最大の再帰深度を超えました"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter should be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "memory allocation failed, allocating %u bytes"
|
||||
@ -3197,6 +3242,7 @@ msgstr "pow()の3つ目の引数は0にできません"
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr "pow()の第3引数には整数が必要"
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3204,6 +3250,8 @@ msgstr "pow()の第3引数には整数が必要"
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
@ -3327,6 +3375,10 @@ msgstr "ソフトリブート\n"
|
||||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical/numerical.c
|
||||
msgid "sorted axis can't be longer than 65535"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
@ -3407,6 +3459,7 @@ msgstr "threshouldは0から65536まで"
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr "time.struct_time()は9要素のシーケンスを受け取ります"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr "タイムアウト長は対応する最大値を超えています"
|
||||
@ -3456,6 +3509,16 @@ msgstr ""
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr "タプル/リストの長さが正しくありません"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3580,6 +3643,10 @@ msgstr "value_countは0より大きくなければなりません"
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr "watchdogのtimeoutは0以上でなければなりません"
|
||||
|
75
locale/ko.po
75
locale/ko.po
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: 2020-10-05 12:12+0000\n"
|
||||
"Last-Translator: Michal Čihař <michal@cihar.com>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@ -290,11 +290,21 @@ msgstr ""
|
||||
msgid "Address type out of range"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr "사용중인 모든 I2C주변 기기"
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr ""
|
||||
@ -411,6 +421,10 @@ msgstr ""
|
||||
"자동 새로 고침이 켜져 있습니다. USB를 통해 파일을 저장하여 실행하십시오. 비활"
|
||||
"성화하려면 REPL을 입력하십시오.\n"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
msgid "Below minimum frame rate"
|
||||
@ -420,6 +434,11 @@ msgstr ""
|
||||
msgid "Bit clock and word select must share a clock unit"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#, c-format
|
||||
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Bit depth must be multiple of 8."
|
||||
msgstr ""
|
||||
@ -779,7 +798,7 @@ msgstr ""
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr ""
|
||||
|
||||
@ -905,6 +924,7 @@ msgid "File exists"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr ""
|
||||
@ -982,6 +1002,10 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr ""
|
||||
@ -1103,7 +1127,8 @@ msgid "Invalid phase"
|
||||
msgstr "단계가 잘못되었습니다"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr "핀이 잘못되었습니다"
|
||||
@ -1123,7 +1148,7 @@ msgstr "오른쪽 채널 핀이 잘못되었습니다"
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1408,6 +1433,10 @@ msgid ""
|
||||
"%d bpp given"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr ""
|
||||
@ -2112,6 +2141,10 @@ msgstr ""
|
||||
msgid "buffer too small"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr ""
|
||||
@ -2834,6 +2867,10 @@ msgstr ""
|
||||
msgid "long int not supported in this build"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr ""
|
||||
@ -2868,6 +2905,14 @@ msgstr ""
|
||||
msgid "maximum recursion depth exceeded"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter should be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "memory allocation failed, allocating %u bytes"
|
||||
@ -3171,6 +3216,7 @@ msgstr ""
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3178,6 +3224,8 @@ msgstr ""
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
@ -3300,6 +3348,10 @@ msgstr ""
|
||||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical/numerical.c
|
||||
msgid "sorted axis can't be longer than 65535"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
@ -3380,6 +3432,7 @@ msgstr ""
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
@ -3429,6 +3482,16 @@ msgstr ""
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3553,6 +3616,10 @@ msgstr ""
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
193
locale/nl.po
193
locale/nl.po
@ -5,8 +5,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
|
||||
"PO-Revision-Date: 2020-09-09 16:05+0000\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: 2020-10-27 16:47+0000\n"
|
||||
"Last-Translator: Jelle Jager <jell@jjc.id.au>\n"
|
||||
"Language-Team: none\n"
|
||||
"Language: nl\n"
|
||||
@ -14,7 +14,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Weblate 4.3-dev\n"
|
||||
"X-Generator: Weblate 4.3.2-dev\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
@ -98,7 +98,7 @@ msgstr "%q moet een tuple van lengte 2 zijn"
|
||||
|
||||
#: shared-bindings/canio/Match.c
|
||||
msgid "%q out of range"
|
||||
msgstr ""
|
||||
msgstr "%q buiten bereik"
|
||||
|
||||
#: ports/atmel-samd/common-hal/microcontroller/Pin.c
|
||||
msgid "%q pin invalid"
|
||||
@ -252,7 +252,7 @@ msgstr "'return' buiten de functie"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "'yield from' inside async function"
|
||||
msgstr ""
|
||||
msgstr "'yield from' binnen asynchrone functie"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "'yield' outside function"
|
||||
@ -281,7 +281,7 @@ msgstr "Een hardware interrupt kanaal is al in gebruik"
|
||||
|
||||
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
|
||||
msgid "ADC2 is being used by WiFi"
|
||||
msgstr ""
|
||||
msgstr "ADC2 wordt gebruikt door WiFi"
|
||||
|
||||
#: shared-bindings/_bleio/Address.c shared-bindings/ipaddress/IPv4Address.c
|
||||
#, c-format
|
||||
@ -292,14 +292,24 @@ msgstr "Adres moet %d bytes lang zijn"
|
||||
msgid "Address type out of range"
|
||||
msgstr "Adres type buiten bereik"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr "Alle I2C peripherals zijn in gebruik"
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr ""
|
||||
msgstr "Alle RX FIFO's zijn in gebruik"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/nrf/common-hal/busio/SPI.c
|
||||
msgid "All SPI peripherals are in use"
|
||||
@ -342,7 +352,7 @@ msgstr "Advertising is al bezig."
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
msgid "Already have all-matches listener"
|
||||
msgstr ""
|
||||
msgstr "Heeft al een luisteraar voor 'all-matches'"
|
||||
|
||||
#: shared-module/memorymonitor/AllocationAlarm.c
|
||||
#: shared-module/memorymonitor/AllocationSize.c
|
||||
@ -351,7 +361,7 @@ msgstr "Wordt al uitgevoerd"
|
||||
|
||||
#: ports/esp32s2/common-hal/wifi/Radio.c
|
||||
msgid "Already scanning for wifi networks"
|
||||
msgstr ""
|
||||
msgstr "Zoekt al naar WiFi netwerken"
|
||||
|
||||
#: ports/cxd56/common-hal/analogio/AnalogIn.c
|
||||
msgid "AnalogIn not supported on given pin"
|
||||
@ -399,7 +409,7 @@ msgstr "heap allocatie geprobeerd terwijl MicroPython VM niet draait."
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Authentication failure"
|
||||
msgstr ""
|
||||
msgstr "Authenticatiefout"
|
||||
|
||||
#: main.c
|
||||
msgid "Auto-reload is off.\n"
|
||||
@ -413,6 +423,10 @@ msgstr ""
|
||||
"Auto-herlaad staat aan. Sla bestanden simpelweg op over USB om uit te voeren "
|
||||
"of start REPL om uit te schakelen.\n"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
msgid "Below minimum frame rate"
|
||||
@ -422,6 +436,11 @@ msgstr "Onder de minimum frame rate"
|
||||
msgid "Bit clock and word select must share a clock unit"
|
||||
msgstr "Bit clock en word select moeten een clock eenheid delen"
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#, c-format
|
||||
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Bit depth must be multiple of 8."
|
||||
msgstr "Bit diepte moet een meervoud van 8 zijn."
|
||||
@ -481,7 +500,7 @@ msgstr "Buffer lengte moet een veelvoud van 512 zijn"
|
||||
|
||||
#: ports/stm/common-hal/sdioio/SDCard.c
|
||||
msgid "Buffer must be a multiple of 512 bytes"
|
||||
msgstr "Buffer moet een veelvoud van 512 zijn"
|
||||
msgstr "Buffer moet een veelvoud van 512 bytes zijn"
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
|
||||
msgid "Buffer must be at least length 1"
|
||||
@ -617,7 +636,7 @@ msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "CircuitPython was unable to allocate the heap.\n"
|
||||
msgstr ""
|
||||
msgstr "CircuitPython kon het heap geheugen niet toewijzen.\n"
|
||||
|
||||
#: shared-module/bitbangio/SPI.c
|
||||
msgid "Clock pin init failed."
|
||||
@ -658,7 +677,7 @@ msgstr "Corrupt raw code"
|
||||
|
||||
#: ports/cxd56/common-hal/camera/Camera.c
|
||||
msgid "Could not initialize Camera"
|
||||
msgstr ""
|
||||
msgstr "Kon camera niet initialiseren"
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
@ -695,7 +714,7 @@ msgstr "Kan PWM niet herstarten"
|
||||
|
||||
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
|
||||
msgid "Could not retrieve clock"
|
||||
msgstr ""
|
||||
msgstr "Kon klok niet ophalen"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "Could not set address"
|
||||
@ -787,9 +806,9 @@ msgstr "Drive modus niet gebruikt als de richting input is."
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr "ECB werkt alleen met 16 bytes tegelijkertijd"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr ""
|
||||
msgstr "ESP-IDF geheugen toewijzing mislukt"
|
||||
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/ps2io/Ps2.c
|
||||
@ -850,7 +869,7 @@ msgstr "FFT alleen voor ndarrays gedefineerd"
|
||||
|
||||
#: ports/esp32s2/common-hal/socketpool/Socket.c
|
||||
msgid "Failed SSL handshake"
|
||||
msgstr ""
|
||||
msgstr "SSL handdruk mislukt"
|
||||
|
||||
#: shared-bindings/ps2io/Ps2.c
|
||||
msgid "Failed sending command."
|
||||
@ -877,11 +896,11 @@ msgstr "Mislukt een RX buffer van %d bytes te alloceren"
|
||||
|
||||
#: ports/esp32s2/common-hal/wifi/__init__.c
|
||||
msgid "Failed to allocate Wifi memory"
|
||||
msgstr ""
|
||||
msgstr "Kon WiFi geheugen niet toewijzen"
|
||||
|
||||
#: ports/esp32s2/common-hal/wifi/ScannedNetworks.c
|
||||
msgid "Failed to allocate wifi scan memory"
|
||||
msgstr ""
|
||||
msgstr "Kon WiFi scan geheugen niet toewijzen"
|
||||
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Failed to connect: internal error"
|
||||
@ -893,7 +912,7 @@ msgstr "Verbinding mislukt: timeout"
|
||||
|
||||
#: ports/esp32s2/common-hal/wifi/__init__.c
|
||||
msgid "Failed to init wifi"
|
||||
msgstr ""
|
||||
msgstr "Kon WiFi niet initialiseren"
|
||||
|
||||
#: shared-module/audiomp3/MP3Decoder.c
|
||||
msgid "Failed to parse MP3 file"
|
||||
@ -913,13 +932,14 @@ msgid "File exists"
|
||||
msgstr "Bestand bestaat"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr ""
|
||||
msgstr "Filters zijn te complex"
|
||||
|
||||
#: ports/cxd56/common-hal/camera/Camera.c
|
||||
msgid "Format not supported"
|
||||
msgstr ""
|
||||
msgstr "Formaat wordt niet ondersteund"
|
||||
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
#, c-format
|
||||
@ -963,7 +983,7 @@ msgstr "Hardware in gebruik, probeer alternatieve pinnen"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Hostname must be between 1 and 253 characters"
|
||||
msgstr ""
|
||||
msgstr "Hostnaam moet tussen 1 en 253 karakters zijn"
|
||||
|
||||
#: extmod/vfs_posix_file.c py/objstringio.c
|
||||
msgid "I/O operation on closed file"
|
||||
@ -994,9 +1014,13 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr "Incorrecte buffer grootte"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr ""
|
||||
msgstr "Invoer duurt te lang"
|
||||
|
||||
#: ports/esp32s2/common-hal/neopixel_write/__init__.c py/moduerrno.c
|
||||
msgid "Input/output error"
|
||||
@ -1044,7 +1068,7 @@ msgstr "Ongeldig BMP bestand"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid BSSID"
|
||||
msgstr ""
|
||||
msgstr "Ongeldig BSSID"
|
||||
|
||||
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
|
||||
#: ports/stm/common-hal/analogio/AnalogOut.c
|
||||
@ -1095,7 +1119,7 @@ msgstr "Ongeldig formaat stuk grootte"
|
||||
|
||||
#: ports/esp32s2/common-hal/pwmio/PWMOut.c
|
||||
msgid "Invalid frequency"
|
||||
msgstr ""
|
||||
msgstr "Onjuiste frequentie"
|
||||
|
||||
#: ports/stm/common-hal/pwmio/PWMOut.c
|
||||
msgid "Invalid frequency supplied"
|
||||
@ -1115,7 +1139,8 @@ msgid "Invalid phase"
|
||||
msgstr "Ongeldige fase"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr "Ongeldige pin"
|
||||
@ -1135,7 +1160,7 @@ msgstr "Ongeldige pin voor rechter kanaal"
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1218,7 +1243,7 @@ msgstr "Maximale x waarde indien gespiegeld is %d"
|
||||
|
||||
#: shared-bindings/canio/Message.c
|
||||
msgid "Messages limited to 8 bytes"
|
||||
msgstr ""
|
||||
msgstr "Berichten zijn beperkt tot 8 bytes"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "MicroPython NLR jump failed. Likely memory corruption."
|
||||
@ -1330,11 +1355,11 @@ msgstr "Geen lange integer ondersteuning"
|
||||
|
||||
#: ports/esp32s2/common-hal/pwmio/PWMOut.c
|
||||
msgid "No more channels available"
|
||||
msgstr ""
|
||||
msgstr "Geen kanalen meer beschikbaar"
|
||||
|
||||
#: ports/esp32s2/common-hal/pwmio/PWMOut.c
|
||||
msgid "No more timers available"
|
||||
msgstr ""
|
||||
msgstr "Geen timers meer beschikbaar"
|
||||
|
||||
#: ports/stm/common-hal/pwmio/PWMOut.c
|
||||
msgid "No more timers available on this pin."
|
||||
@ -1342,7 +1367,7 @@ msgstr "Geen timers meer beschikbaar op deze pin."
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "No network with that ssid"
|
||||
msgstr ""
|
||||
msgstr "Geen netwerk met dat SSID gevonden"
|
||||
|
||||
#: shared-module/touchio/TouchIn.c
|
||||
msgid "No pulldown on pin; 1Mohm recommended"
|
||||
@ -1366,7 +1391,7 @@ msgstr "Nordic Soft Device assertion mislukt."
|
||||
|
||||
#: shared-bindings/ipaddress/IPv4Address.c shared-bindings/ipaddress/__init__.c
|
||||
msgid "Not a valid IP string"
|
||||
msgstr ""
|
||||
msgstr "Geen geldige IP string"
|
||||
|
||||
#: ports/nrf/common-hal/_bleio/__init__.c
|
||||
#: shared-bindings/_bleio/CharacteristicBuffer.c
|
||||
@ -1384,7 +1409,7 @@ msgstr "Opgeslagen code wordt niet uitgevoerd.\n"
|
||||
|
||||
#: shared-bindings/_bleio/__init__.c
|
||||
msgid "Not settable"
|
||||
msgstr ""
|
||||
msgstr "Niet instelbaar"
|
||||
|
||||
#: shared-bindings/util.c
|
||||
msgid ""
|
||||
@ -1403,11 +1428,11 @@ msgstr "Alleen 8 of 16 bit mono met "
|
||||
|
||||
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
|
||||
msgid "Only IPv4 SOCK_STREAM sockets supported"
|
||||
msgstr ""
|
||||
msgstr "Alleen IPv4 SOCK_STREAM sockets worden ondersteund"
|
||||
|
||||
#: ports/esp32s2/common-hal/wifi/__init__.c
|
||||
msgid "Only IPv4 addresses supported"
|
||||
msgstr ""
|
||||
msgstr "Alleen IPv4 adressen worden ondersteund"
|
||||
|
||||
#: shared-module/displayio/OnDiskBitmap.c
|
||||
#, c-format
|
||||
@ -1426,13 +1451,17 @@ msgstr ""
|
||||
"Alleen monochrome en 4bpp of 8bpp, en 16bpp of grotere geïndiceerde BMP's "
|
||||
"zijn ondersteund: %d bpp is gegeven"
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr "Er kan maar één kleur per keer transparant zijn"
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr ""
|
||||
msgstr "Alleen raw int ondersteund voor IP"
|
||||
|
||||
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
|
||||
msgid "Out of sockets"
|
||||
msgstr ""
|
||||
msgstr "Geen sockets meer beschikbaar"
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Oversample must be multiple of 8."
|
||||
@ -1506,6 +1535,8 @@ msgid ""
|
||||
"Port does not accept PWM carrier. Pass a pin, frequency and duty cycle "
|
||||
"instead"
|
||||
msgstr ""
|
||||
"Poort ondersteund geen PWM drager. Geef een pin, frequentie en inschakeltijd "
|
||||
"op"
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
|
||||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
@ -1515,6 +1546,8 @@ msgid ""
|
||||
"Port does not accept pins or frequency. Construct and pass a PWMOut Carrier "
|
||||
"instead"
|
||||
msgstr ""
|
||||
"Poort accepteert geen pin of frequentie. Stel een PWMOut Carrier samen en "
|
||||
"geef die op"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "Prefix buffer must be on the heap"
|
||||
@ -1580,7 +1613,7 @@ msgstr "Verversing te snel"
|
||||
|
||||
#: shared-bindings/canio/RemoteTransmissionRequest.c
|
||||
msgid "RemoteTransmissionRequests limited to 8 bytes"
|
||||
msgstr ""
|
||||
msgstr "RemoteTransmissionRequests is beperkt tot 8 bytes"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "Requested AES mode is unsupported"
|
||||
@ -1653,11 +1686,11 @@ msgstr "Serializer in gebruik"
|
||||
|
||||
#: shared-bindings/ssl/SSLContext.c
|
||||
msgid "Server side context cannot have hostname"
|
||||
msgstr ""
|
||||
msgstr "Context aan de serverkant kan geen hostnaam hebben"
|
||||
|
||||
#: ports/cxd56/common-hal/camera/Camera.c
|
||||
msgid "Size not supported"
|
||||
msgstr ""
|
||||
msgstr "Afmeting niet ondersteund"
|
||||
|
||||
#: shared-bindings/nvm/ByteArray.c
|
||||
msgid "Slice and value different lengths."
|
||||
@ -1672,7 +1705,7 @@ msgstr "Slices niet ondersteund"
|
||||
|
||||
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
|
||||
msgid "SocketPool can only be used with wifi.radio"
|
||||
msgstr ""
|
||||
msgstr "SocketPool kan alleen met wifi.radio gebruikt worden"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "Source and destination buffers must be the same length"
|
||||
@ -1720,7 +1753,7 @@ msgstr ""
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
msgid "The length of rgb_pins must be 6, 12, 18, 24, or 30"
|
||||
msgstr ""
|
||||
msgstr "De lengte van rgb_pins moet 6, 12, 18, 24 of 30 zijn"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
@ -1779,7 +1812,7 @@ msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "To exit, please reset the board without "
|
||||
msgstr ""
|
||||
msgstr "Om te beëindigen, reset het bord zonder "
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
msgid "Too many channels in sample."
|
||||
@ -1852,7 +1885,7 @@ msgstr "Niet in staat buffers voor gesigneerde conversie te alloceren"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c
|
||||
msgid "Unable to create lock"
|
||||
msgstr ""
|
||||
msgstr "Kan vergrendeling niet maken"
|
||||
|
||||
#: shared-module/displayio/I2CDisplay.c
|
||||
#, c-format
|
||||
@ -1883,11 +1916,11 @@ msgstr "Onverwacht mrfx uuid type"
|
||||
#: ports/esp32s2/common-hal/socketpool/Socket.c
|
||||
#, c-format
|
||||
msgid "Unhandled ESP TLS error %d %d %x %d"
|
||||
msgstr ""
|
||||
msgstr "Niet behandelde ESP TLS fout %d %d %x %d"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Unknown failure"
|
||||
msgstr ""
|
||||
msgstr "Onbekende fout"
|
||||
|
||||
#: ports/nrf/common-hal/_bleio/__init__.c
|
||||
#, c-format
|
||||
@ -2005,7 +2038,7 @@ msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "WiFi password must be between 8 and 63 characters"
|
||||
msgstr ""
|
||||
msgstr "WiFi wachtwoord moet tussen 8 en 63 karakters bevatten"
|
||||
|
||||
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
|
||||
msgid "Writes not supported on Characteristic"
|
||||
@ -2158,6 +2191,10 @@ msgstr "buffer slices moeten van gelijke grootte zijn"
|
||||
msgid "buffer too small"
|
||||
msgstr "buffer te klein"
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr "buffer te klein voor gevraagde bytes"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr "buttons moeten digitalio.DigitalInOut zijn"
|
||||
@ -2177,7 +2214,7 @@ msgstr "butes > 8 niet ondersteund"
|
||||
|
||||
#: py/objarray.c
|
||||
msgid "bytes length not a multiple of item size"
|
||||
msgstr ""
|
||||
msgstr "bytes lengte is geen veelvoud van itemgrootte"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "bytes value out of range"
|
||||
@ -2495,11 +2532,11 @@ msgstr "uitzonderingen moeten afleiden van BaseException"
|
||||
|
||||
#: shared-bindings/canio/CAN.c
|
||||
msgid "expected '%q' but got '%q'"
|
||||
msgstr ""
|
||||
msgstr "verwachtte '%q' maar ontving '%q'"
|
||||
|
||||
#: shared-bindings/canio/CAN.c
|
||||
msgid "expected '%q' or '%q' but got '%q'"
|
||||
msgstr ""
|
||||
msgstr "verwachtte '%q' of '%q' maar ontving '%q'"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "expected ':' after format specifier"
|
||||
@ -2713,7 +2750,7 @@ msgstr "oorspronkelijke waarden moeten itereerbaar zijn"
|
||||
|
||||
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
|
||||
msgid "initial_value length is wrong"
|
||||
msgstr ""
|
||||
msgstr "lengte van initial_value is onjuist"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
@ -2790,7 +2827,7 @@ msgstr "ongeldige formaatspecificatie"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "invalid hostname"
|
||||
msgstr ""
|
||||
msgstr "onjuiste hostnaam"
|
||||
|
||||
#: extmod/modussl_axtls.c
|
||||
msgid "invalid key"
|
||||
@ -2888,6 +2925,10 @@ msgstr "verwijzing naar een (nog) niet toegewezen lokale variabele"
|
||||
msgid "long int not supported in this build"
|
||||
msgstr "long int wordt niet ondersteund in deze build"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr "onjuist gevormde f-string"
|
||||
@ -2922,6 +2963,14 @@ msgstr "max_length moet >0 zijn"
|
||||
msgid "maximum recursion depth exceeded"
|
||||
msgstr "maximale recursiediepte overschreden"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter should be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "memory allocation failed, allocating %u bytes"
|
||||
@ -3154,11 +3203,11 @@ msgstr "ord() verwacht een teken (char) maar vond een string van lengte %d"
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c
|
||||
msgid "out of range of source"
|
||||
msgstr ""
|
||||
msgstr "buiten bereik van bron"
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c
|
||||
msgid "out of range of target"
|
||||
msgstr ""
|
||||
msgstr "buiten bereik van doel"
|
||||
|
||||
#: py/objint_mpz.c
|
||||
msgid "overflow converting long int to machine word"
|
||||
@ -3167,7 +3216,7 @@ msgstr "overloop bij converteren van long int naar machine word"
|
||||
#: py/modstruct.c
|
||||
#, c-format
|
||||
msgid "pack expected %d items for packing (got %d)"
|
||||
msgstr ""
|
||||
msgstr "pack verwachtte %d elementen (ontving %d)"
|
||||
|
||||
#: shared-bindings/_stage/Layer.c shared-bindings/_stage/Text.c
|
||||
msgid "palette must be 32 bytes long"
|
||||
@ -3226,6 +3275,7 @@ msgstr "derde argument van pow() mag geen 0 zijn"
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr "pow() met 3 argumenten vereist integers"
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3233,10 +3283,12 @@ msgstr "pow() met 3 argumenten vereist integers"
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
msgstr ""
|
||||
msgstr "druk bootknop in bij opstarten.\n"
|
||||
|
||||
#: ports/atmel-samd/boards/circuitplayground_express/mpconfigboard.h
|
||||
#: ports/atmel-samd/boards/circuitplayground_express_crickit/mpconfigboard.h
|
||||
@ -3244,7 +3296,7 @@ msgstr ""
|
||||
#: ports/atmel-samd/boards/escornabot_makech/mpconfigboard.h
|
||||
#: ports/atmel-samd/boards/meowmeow/mpconfigboard.h
|
||||
msgid "pressing both buttons at start up.\n"
|
||||
msgstr ""
|
||||
msgstr "druk beide knoppen in bij opstarten.\n"
|
||||
|
||||
#: extmod/modutimeq.c
|
||||
msgid "queue overflow"
|
||||
@ -3357,6 +3409,10 @@ msgstr "zachte herstart\n"
|
||||
msgid "sort argument must be an ndarray"
|
||||
msgstr "sorteerargument moet een ndarray zijn"
|
||||
|
||||
#: extmod/ulab/code/numerical/numerical.c
|
||||
msgid "sorted axis can't be longer than 65535"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr "sos array moet vorm (n_section, 6) hebben"
|
||||
@ -3371,7 +3427,7 @@ msgstr "sosfilt vereist itereerbare argumenten"
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c
|
||||
msgid "source palette too large"
|
||||
msgstr ""
|
||||
msgstr "bronpalet te groot"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
@ -3437,6 +3493,7 @@ msgstr "drempelwaarde moet in het bereik 0-65536 liggen"
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr "time.struct_time() accepteert een 9-rij"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr "time-outduur is groter dan de ondersteunde maximale waarde"
|
||||
@ -3486,6 +3543,16 @@ msgstr "tuple index buiten bereik"
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr "tuple of lijst heeft onjuiste lengte"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3506,7 +3573,7 @@ msgstr "objecttype '%q' heeft geen attribuut '%q'"
|
||||
|
||||
#: py/objgenerator.c
|
||||
msgid "type object 'generator' has no attribute '__await__'"
|
||||
msgstr ""
|
||||
msgstr "het type object 'generator' heeft geen attribuut '__await__'"
|
||||
|
||||
#: py/objtype.c
|
||||
msgid "type takes 1 or 3 arguments"
|
||||
@ -3610,13 +3677,17 @@ msgstr "value_count moet groter dan 0 zijn"
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr "vectoren moeten van gelijke lengte zijn"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr "watchdog time-out moet groter zijn dan 0"
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
msgid "width must be greater than zero"
|
||||
msgstr ""
|
||||
msgstr "breedte moet groter dan nul zijn"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
|
107
locale/pl.po
107
locale/pl.po
@ -6,8 +6,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
|
||||
"PO-Revision-Date: 2020-09-29 01:39+0000\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: 2020-11-11 19:13+0000\n"
|
||||
"Last-Translator: Maciej Stankiewicz <tawezik@gmail.com>\n"
|
||||
"Language-Team: pl\n"
|
||||
"Language: pl\n"
|
||||
@ -16,7 +16,7 @@ msgstr ""
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
|
||||
"|| n%100>=20) ? 1 : 2;\n"
|
||||
"X-Generator: Weblate 4.3-dev\n"
|
||||
"X-Generator: Weblate 4.4-dev\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
@ -76,7 +76,7 @@ msgstr "%q poza zakresem"
|
||||
|
||||
#: py/obj.c
|
||||
msgid "%q indices must be integers, not %q"
|
||||
msgstr ""
|
||||
msgstr "%q indeksy muszą być liczbami typu int, a nie %q"
|
||||
|
||||
#: shared-bindings/vectorio/Polygon.c
|
||||
msgid "%q list must be a list"
|
||||
@ -104,7 +104,7 @@ msgstr "%q poza zakresem"
|
||||
|
||||
#: ports/atmel-samd/common-hal/microcontroller/Pin.c
|
||||
msgid "%q pin invalid"
|
||||
msgstr ""
|
||||
msgstr "nieprawidłowy pin %q"
|
||||
|
||||
#: shared-bindings/fontio/BuiltinFont.c
|
||||
msgid "%q should be an int"
|
||||
@ -254,7 +254,7 @@ msgstr "'return' poza funkcją"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "'yield from' inside async function"
|
||||
msgstr ""
|
||||
msgstr "'yield from' wewnątrz funkcji asynchronicznej"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "'yield' outside function"
|
||||
@ -283,7 +283,7 @@ msgstr "Kanał przerwań sprzętowych w użyciu"
|
||||
|
||||
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
|
||||
msgid "ADC2 is being used by WiFi"
|
||||
msgstr ""
|
||||
msgstr "ADC2 jest używany przez WiFi"
|
||||
|
||||
#: shared-bindings/_bleio/Address.c shared-bindings/ipaddress/IPv4Address.c
|
||||
#, c-format
|
||||
@ -294,11 +294,21 @@ msgstr "Adres musi mieć %d bajtów"
|
||||
msgid "Address type out of range"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr "Wszystkie peryferia I2C w użyciu"
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr ""
|
||||
@ -415,6 +425,10 @@ msgstr ""
|
||||
"Samo-przeładowywanie włączone. Po prostu zapisz pliki przez USB aby je "
|
||||
"uruchomić, albo wejdź w konsolę aby wyłączyć.\n"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
msgid "Below minimum frame rate"
|
||||
@ -424,6 +438,11 @@ msgstr ""
|
||||
msgid "Bit clock and word select must share a clock unit"
|
||||
msgstr "Zegar bitowy i wybór słowa muszą współdzielić jednostkę zegara"
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#, c-format
|
||||
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Bit depth must be multiple of 8."
|
||||
msgstr "Głębia musi być wielokrotnością 8."
|
||||
@ -787,7 +806,7 @@ msgstr "Tryb sterowania nieużywany w trybie wejścia."
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr "ECB działa tylko na 16 bajtach naraz"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr ""
|
||||
|
||||
@ -913,6 +932,7 @@ msgid "File exists"
|
||||
msgstr "Plik istnieje"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr ""
|
||||
@ -992,6 +1012,10 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr "Niewłaściwa wielkość bufora"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr ""
|
||||
@ -1019,7 +1043,7 @@ msgstr "Błąd wewnętrzny #%d"
|
||||
|
||||
#: shared-bindings/sdioio/SDCard.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
msgstr "Nieprawidłowe %q"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
@ -1093,7 +1117,7 @@ msgstr "Zła wielkość fragmentu formatu"
|
||||
|
||||
#: ports/esp32s2/common-hal/pwmio/PWMOut.c
|
||||
msgid "Invalid frequency"
|
||||
msgstr ""
|
||||
msgstr "Nieprawidłowa częstotliwość"
|
||||
|
||||
#: ports/stm/common-hal/pwmio/PWMOut.c
|
||||
msgid "Invalid frequency supplied"
|
||||
@ -1113,7 +1137,8 @@ msgid "Invalid phase"
|
||||
msgstr "Zła faza"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr "Zła nóżka"
|
||||
@ -1133,7 +1158,7 @@ msgstr "Zła nóżka dla prawego kanału"
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1191,7 +1216,7 @@ msgstr ""
|
||||
|
||||
#: shared-module/displayio/Group.c
|
||||
msgid "Layer must be a Group or TileGrid subclass."
|
||||
msgstr "Layer musi dziedziczyć z Group albo TileGrid"
|
||||
msgstr "Layer musi dziedziczyć z Group albo TileGrid."
|
||||
|
||||
#: py/objslice.c
|
||||
msgid "Length must be an int"
|
||||
@ -1329,7 +1354,7 @@ msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/pwmio/PWMOut.c
|
||||
msgid "No more channels available"
|
||||
msgstr ""
|
||||
msgstr "Brak dostępnych kanałów"
|
||||
|
||||
#: ports/esp32s2/common-hal/pwmio/PWMOut.c
|
||||
msgid "No more timers available"
|
||||
@ -1419,6 +1444,10 @@ msgid ""
|
||||
"%d bpp given"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr "W danym momencie przezroczysty może być tylko jeden kolor"
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr ""
|
||||
@ -1486,7 +1515,7 @@ msgstr "Oraz moduły w systemie plików\n"
|
||||
|
||||
#: shared-module/vectorio/Polygon.c
|
||||
msgid "Polygon needs at least 3 points"
|
||||
msgstr ""
|
||||
msgstr "Wielokąt musi mieć co najmniej 3 punkty"
|
||||
|
||||
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
|
||||
msgid ""
|
||||
@ -1798,7 +1827,7 @@ msgstr ""
|
||||
|
||||
#: ports/stm/common-hal/busio/UART.c
|
||||
msgid "UART write error"
|
||||
msgstr ""
|
||||
msgstr "Błąd zapisu UART"
|
||||
|
||||
#: shared-module/usb_hid/Device.c
|
||||
msgid "USB Busy"
|
||||
@ -1995,7 +2024,7 @@ msgstr "__init__() powinien zwracać None"
|
||||
|
||||
#: py/objtype.c
|
||||
msgid "__init__() should return None, not '%q'"
|
||||
msgstr ""
|
||||
msgstr "__init__() powinno zwrócić None, a nie '%q'"
|
||||
|
||||
#: py/objobject.c
|
||||
msgid "__new__ arg must be a user-type"
|
||||
@ -2128,6 +2157,10 @@ msgstr "fragmenty bufora muszą mieć tę samą długość"
|
||||
msgid "buffer too small"
|
||||
msgstr "zbyt mały bufor"
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr "buttons musi być digitalio.DigitalInOut"
|
||||
@ -2851,6 +2884,10 @@ msgstr "zmienna lokalna użyta przed przypisaniem"
|
||||
msgid "long int not supported in this build"
|
||||
msgstr "long int jest nieobsługiwany"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr ""
|
||||
@ -2885,6 +2922,14 @@ msgstr "max_length musi być > 0"
|
||||
msgid "maximum recursion depth exceeded"
|
||||
msgstr "przekroczono dozwoloną głębokość rekurencji"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter should be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "memory allocation failed, allocating %u bytes"
|
||||
@ -3022,11 +3067,11 @@ msgstr "nie dość argumentów przy formatowaniu"
|
||||
|
||||
#: extmod/ulab/code/poly/poly.c
|
||||
msgid "number of arguments must be 2, or 3"
|
||||
msgstr ""
|
||||
msgstr "liczba argumentów musi wynosić 2 lub 3"
|
||||
|
||||
#: extmod/ulab/code/ulab_create.c
|
||||
msgid "number of points must be at least 2"
|
||||
msgstr ""
|
||||
msgstr "liczba punktów musi wynosić co najmniej 2"
|
||||
|
||||
#: py/obj.c
|
||||
msgid "object '%q' is not a tuple or list"
|
||||
@ -3189,6 +3234,7 @@ msgstr "trzeci argument pow() nie może być 0"
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr "trzyargumentowe pow() wymaga liczb całkowitych"
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3196,6 +3242,8 @@ msgstr "trzyargumentowe pow() wymaga liczb całkowitych"
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
@ -3319,6 +3367,10 @@ msgstr "programowy reset\n"
|
||||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical/numerical.c
|
||||
msgid "sorted axis can't be longer than 65535"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
@ -3333,7 +3385,7 @@ msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c
|
||||
msgid "source palette too large"
|
||||
msgstr ""
|
||||
msgstr "źródłowa paleta jest zbyt duża"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
@ -3399,6 +3451,7 @@ msgstr "threshold musi być w zakresie 0-65536"
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr "time.struct_time() wymaga 9-elementowej sekwencji"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
@ -3448,6 +3501,16 @@ msgstr "indeks krotki poza zakresem"
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr "krotka/lista ma złą długość"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3572,6 +3635,10 @@ msgstr "value_count musi być > 0"
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr "wektory muszą mieć identyczną długość"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
@ -5,8 +5,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
|
||||
"PO-Revision-Date: 2020-10-16 17:01+0000\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: 2020-11-18 00:28+0000\n"
|
||||
"Last-Translator: Wellington Terumi Uemura <wellingtonuemura@gmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
"Language: pt_BR\n"
|
||||
@ -14,7 +14,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n > 1;\n"
|
||||
"X-Generator: Weblate 4.3.1-dev\n"
|
||||
"X-Generator: Weblate 4.4-dev\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
@ -296,11 +296,21 @@ msgstr "O endereço deve ter %d bytes de comprimento"
|
||||
msgid "Address type out of range"
|
||||
msgstr "O tipo do endereço está fora do alcance"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr "Todos os periféricos CAN estão em uso"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr "Todos os periféricos I2C estão em uso"
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr "Todas as unidades PCNT estão em uso"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr "Todos os FIFOs RX estão em uso"
|
||||
@ -419,6 +429,10 @@ msgstr ""
|
||||
"O recarregamento automático está ativo. Simplesmente salve os arquivos via "
|
||||
"USB para executá-los ou digite REPL para desativar.\n"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr "O Baudrate não é suportado pelo periférico"
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
msgid "Below minimum frame rate"
|
||||
@ -430,6 +444,11 @@ msgstr ""
|
||||
"O clock de bits e a seleção de palavras devem compartilhar uma unidade de "
|
||||
"clock"
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#, c-format
|
||||
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
|
||||
msgstr "A profundidade dos bits deve ser de 1 até 6 inclusive, porém não %d"
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Bit depth must be multiple of 8."
|
||||
msgstr "A profundidade de bits deve ser o múltiplo de 8."
|
||||
@ -796,7 +815,7 @@ msgstr "O modo do controlador não é usado quando a direção for inserida."
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr "O BCE opera apenas com 16 bytes por vez"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr "Houve uma falha na alocação da memória ESP-IDF"
|
||||
|
||||
@ -922,6 +941,7 @@ msgid "File exists"
|
||||
msgstr "Arquivo já existe"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr "Os filtros são muito complexos"
|
||||
@ -1003,6 +1023,10 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr "O tamanho do buffer está incorreto"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr "A inicialização falhou devido à falta de memória"
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr "A entrada está demorando demais"
|
||||
@ -1124,7 +1148,8 @@ msgid "Invalid phase"
|
||||
msgstr "Fase Inválida"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr "Pino inválido"
|
||||
@ -1144,7 +1169,7 @@ msgstr "Pino inválido para canal direito"
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1434,6 +1459,10 @@ msgstr ""
|
||||
"São compatíveis apenas os BMPs monocromáticos, indexados em 4bpp ou 8bpp e "
|
||||
"16bpp ou superior: determinado %d bpp"
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr "Apenas uma cor pode ser transparente de cada vez"
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr "Apenas o int bruto é compatível para o ip"
|
||||
@ -2177,6 +2206,10 @@ msgstr "as fatias do buffer devem ter o mesmo comprimento"
|
||||
msgid "buffer too small"
|
||||
msgstr "o buffer é muito pequeno"
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr "o buffer é pequeno demais para os bytes requisitados"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr "os botões devem ser digitalio.DigitalInOut"
|
||||
@ -2912,6 +2945,10 @@ msgstr "a variável local referenciada antes da atribuição"
|
||||
msgid "long int not supported in this build"
|
||||
msgstr "o long int não é suportado nesta compilação"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr "o loopback + o modo silencioso não é suportado pelo periférico"
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr "f-string malformado"
|
||||
@ -2946,6 +2983,14 @@ msgstr "max_length deve ser > 0"
|
||||
msgid "maximum recursion depth exceeded"
|
||||
msgstr "a recursão máxima da profundidade foi excedida"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter must be > 0"
|
||||
msgstr "maxiter deve ser > 0"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter should be > 0"
|
||||
msgstr "maxiter pode ser > 0"
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "memory allocation failed, allocating %u bytes"
|
||||
@ -3256,6 +3301,7 @@ msgstr "O terceiro argumento pow() não pode ser 0"
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr "o pow() com 3 argumentos requer números inteiros"
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3263,6 +3309,8 @@ msgstr "o pow() com 3 argumentos requer números inteiros"
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
@ -3387,6 +3435,10 @@ msgstr "reinicialização soft\n"
|
||||
msgid "sort argument must be an ndarray"
|
||||
msgstr "o argumento da classificação deve ser um ndarray"
|
||||
|
||||
#: extmod/ulab/code/numerical/numerical.c
|
||||
msgid "sorted axis can't be longer than 65535"
|
||||
msgstr "o eixo ordenado não pode ser maior do que 65535"
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr "o sos da matriz deve estar na forma (n_section, 6)"
|
||||
@ -3467,6 +3519,7 @@ msgstr "Limite deve estar no alcance de 0-65536"
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr "time.struct_time() leva uma sequência com 9"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr "a duração do tempo limite excedeu o valor máximo suportado"
|
||||
@ -3516,6 +3569,16 @@ msgstr "o índice da tupla está fora do intervalo"
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr "a tupla/lista está com tamanho incorreto"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr "o twai_driver_install retornou um erro esp-idf #%d"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr "o twai_start retornou um erro esp-idf #%d"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3640,6 +3703,10 @@ msgstr "o value_count deve ser > 0"
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr "os vetores devem ter os mesmos comprimentos"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr "o watchdog não foi inicializado"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr "o tempo limite do watchdog deve ser maior que 0"
|
||||
|
91
locale/sv.po
91
locale/sv.po
@ -5,8 +5,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
|
||||
"PO-Revision-Date: 2020-10-14 18:12+0000\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: 2020-11-15 16:28+0000\n"
|
||||
"Last-Translator: Jonny Bergdahl <jonny@bergdahl.it>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: sv\n"
|
||||
@ -14,7 +14,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Weblate 4.3-dev\n"
|
||||
"X-Generator: Weblate 4.4-dev\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
@ -292,11 +292,21 @@ msgstr "Adressen måste vara %d byte lång"
|
||||
msgid "Address type out of range"
|
||||
msgstr "Adresstyp utanför intervallet"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr "All I2C-kringutrustning används"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr "All I2C-kringutrustning används"
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr "Alla PCNT-enheter används"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr "Alla RX FIFO i bruk"
|
||||
@ -410,8 +420,12 @@ msgid ""
|
||||
"Auto-reload is on. Simply save files over USB to run them or enter REPL to "
|
||||
"disable.\n"
|
||||
msgstr ""
|
||||
"Autoladdning är på. Spara bara filer via USB för att köra dem eller ange "
|
||||
"REPL för att inaktivera.\n"
|
||||
"Autoladdning är på. Spara filer via USB för att köra dem eller ange REPL för "
|
||||
"att inaktivera.\n"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr "Baudrate stöds inte av kringutrustning"
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
@ -422,6 +436,11 @@ msgstr "Under minsta bildfrekvens"
|
||||
msgid "Bit clock and word select must share a clock unit"
|
||||
msgstr "Bitklocka och ordval måste dela en klockenhet"
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#, c-format
|
||||
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
|
||||
msgstr "Bitdjup måste vara inom 1 till 6, inte %d"
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Bit depth must be multiple of 8."
|
||||
msgstr "Bitdjup måste vara multipel av 8."
|
||||
@ -494,7 +513,7 @@ msgstr "Bufferten är för stor och kan inte allokeras"
|
||||
#: shared-bindings/_bleio/PacketBuffer.c
|
||||
#, c-format
|
||||
msgid "Buffer too short by %d bytes"
|
||||
msgstr "Buffert år %d bytes för kort"
|
||||
msgstr "Buffert är %d bytes för kort"
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c
|
||||
@ -787,7 +806,7 @@ msgstr "Drivläge används inte när riktning är input."
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr "ECB arbetar endast på 16 byte åt gången"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr "ESP-IDF-minnetilldelning misslyckades"
|
||||
|
||||
@ -913,6 +932,7 @@ msgid "File exists"
|
||||
msgstr "Filen finns redan"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr "Filter för komplexa"
|
||||
@ -961,7 +981,7 @@ msgstr "Hårdvaran används redan, prova alternativa pinnar"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Hostname must be between 1 and 253 characters"
|
||||
msgstr ""
|
||||
msgstr "Hostname måste vara mellan 1 och 253 tecken"
|
||||
|
||||
#: extmod/vfs_posix_file.c py/objstringio.c
|
||||
msgid "I/O operation on closed file"
|
||||
@ -992,6 +1012,10 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr "Fel buffertstorlek"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr "Indata tar för lång tid"
|
||||
@ -1113,7 +1137,8 @@ msgid "Invalid phase"
|
||||
msgstr "Ogiltig fas"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr "Ogiltig pinne"
|
||||
@ -1133,7 +1158,7 @@ msgstr "Ogiltig pinne för höger kanal"
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1424,6 +1449,10 @@ msgstr ""
|
||||
"Endast monokrom, indexerad 4 bpp eller 8 bpp och 16 bpp eller högre BMP: er "
|
||||
"stöds: %d bpp angiven"
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr "Bara en färg kan vara genomskinlig i taget"
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr "Endast raw int stöds för ip"
|
||||
@ -2155,6 +2184,10 @@ msgstr "buffertsegmenten måste vara lika långa"
|
||||
msgid "buffer too small"
|
||||
msgstr "buffert för liten"
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr "buffert för liten för begärd längd"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr "buttons måste vara digitalio.DigitalInOut"
|
||||
@ -2202,7 +2235,7 @@ msgstr "kan bara ha upp till 4 parametrar att Xtensa assembly"
|
||||
|
||||
#: py/persistentcode.c
|
||||
msgid "can only save bytecode"
|
||||
msgstr "kan bara spara bytekod"
|
||||
msgstr "kan bara spara bytecode"
|
||||
|
||||
#: py/objtype.c
|
||||
msgid "can't add special method to already-subclassed class"
|
||||
@ -2787,7 +2820,7 @@ msgstr "ogiltig formatspecificerare"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "invalid hostname"
|
||||
msgstr ""
|
||||
msgstr "Ogiltigt värdnamn"
|
||||
|
||||
#: extmod/modussl_axtls.c
|
||||
msgid "invalid key"
|
||||
@ -2885,6 +2918,10 @@ msgstr "lokal variabel refererad före tilldelning"
|
||||
msgid "long int not supported in this build"
|
||||
msgstr "long int stöds inte i denna build"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr "loopback + tyst läge stöds inte av kringutrustning"
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr "f-sträng har felaktigt format"
|
||||
@ -2919,6 +2956,14 @@ msgstr "max_length måste vara > 0"
|
||||
msgid "maximum recursion depth exceeded"
|
||||
msgstr "maximal rekursionsdjup överskriden"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter must be > 0"
|
||||
msgstr "maxiter måste vara > 0"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter should be > 0"
|
||||
msgstr "maxiter bör vara > 0"
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "memory allocation failed, allocating %u bytes"
|
||||
@ -3223,6 +3268,7 @@ msgstr "pow() 3: e argument kan inte vara 0"
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr "pow() med 3 argument kräver heltal"
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3230,6 +3276,8 @@ msgstr "pow() med 3 argument kräver heltal"
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
@ -3354,6 +3402,10 @@ msgstr "mjuk omstart\n"
|
||||
msgid "sort argument must be an ndarray"
|
||||
msgstr "argumentet sort måste vara en ndarray"
|
||||
|
||||
#: extmod/ulab/code/numerical/numerical.c
|
||||
msgid "sorted axis can't be longer than 65535"
|
||||
msgstr "sorterad axel kan inte vara längre än 65535"
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr "sos array måste ha form (n_section, 6)"
|
||||
@ -3434,6 +3486,7 @@ msgstr "tröskelvärdet måste ligga i intervallet 0-65536"
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr "time.struct_time() kräver en 9-sekvens"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr "timeout-längd överskred det maximala värde som stöds"
|
||||
@ -3483,6 +3536,16 @@ msgstr "tupelindex utanför intervallet"
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr "tupel/lista har fel längd"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr "twai_driver_install returnerade esp-idf-fel #%d"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr "twai_start returnerade esp-idf-fel #%d"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3607,6 +3670,10 @@ msgstr "value_count måste vara > 0"
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr "vektorer måste ha samma längd"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr "watchdog timeout måste vara större än 0"
|
||||
|
@ -6,8 +6,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: circuitpython-cn\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
|
||||
"PO-Revision-Date: 2020-10-13 17:11+0000\n"
|
||||
"POT-Creation-Date: 2020-11-10 15:30+0530\n"
|
||||
"PO-Revision-Date: 2020-11-19 01:28+0000\n"
|
||||
"Last-Translator: hexthat <hexthat@gmail.com>\n"
|
||||
"Language-Team: Chinese Hanyu Pinyin\n"
|
||||
"Language: zh_Latn_pinyin\n"
|
||||
@ -15,7 +15,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
"X-Generator: Weblate 4.3-dev\n"
|
||||
"X-Generator: Weblate 4.4-dev\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
@ -294,11 +294,21 @@ msgstr "Dìzhǐ bìxū shì %d zì jié zhǎng"
|
||||
msgid "Address type out of range"
|
||||
msgstr "Dìzhǐ lèixíng chāochū fànwéi"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "All CAN peripherals are in use"
|
||||
msgstr "suǒ yǒu CAN wài shè dōu zài shǐ yòng zhōng"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "All I2C peripherals are in use"
|
||||
msgstr "Suǒyǒu I2C wàiwéi qì zhèngzài shǐyòng"
|
||||
|
||||
#: ports/esp32s2/common-hal/countio/Counter.c
|
||||
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "All PCNT units in use"
|
||||
msgstr "suǒ yǒu zhèng zài shǐ yòng zhōng de PCNT dān yuán"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "All RX FIFOs in use"
|
||||
msgstr "Suǒyǒu shǐyòng zhōng de RX FIFO"
|
||||
@ -415,6 +425,10 @@ msgstr ""
|
||||
"Zìdòng chóngxīn jiāzài. Zhǐ xū tōngguò USB bǎocún wénjiàn lái yùnxíng tāmen "
|
||||
"huò shūrù REPL jìnyòng.\n"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "Baudrate not supported by peripheral"
|
||||
msgstr "wài shè bù zhī chí de bō tè lā tè"
|
||||
|
||||
#: shared-module/displayio/Display.c
|
||||
#: shared-module/framebufferio/FramebufferDisplay.c
|
||||
msgid "Below minimum frame rate"
|
||||
@ -424,6 +438,11 @@ msgstr "Dī yú zuìdī zhèng sùlǜ"
|
||||
msgid "Bit clock and word select must share a clock unit"
|
||||
msgstr "Bǐtè shízhōng hé dānzì xuǎnzé bìxū gòngxiǎng shízhōng dānwèi"
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#, c-format
|
||||
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
|
||||
msgstr "wèi shēn dù bì xū bāo hán 1 dào 6, ér bù shì %d"
|
||||
|
||||
#: shared-bindings/audiobusio/PDMIn.c
|
||||
msgid "Bit depth must be multiple of 8."
|
||||
msgstr "Bǐtè shēndù bìxū shì 8 bèi yǐshàng."
|
||||
@ -785,7 +804,7 @@ msgstr "Fāngxiàng shūrù shí qūdòng móshì méiyǒu shǐyòng."
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr "ECB yí cì zhǐ shǐ yòng 16 gè zì jié"
|
||||
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/SPI.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "ESP-IDF memory allocation failed"
|
||||
msgstr "ESP-IDF nèicún fēnpèi shībài"
|
||||
|
||||
@ -911,6 +930,7 @@ msgid "File exists"
|
||||
msgstr "Wénjiàn cúnzài"
|
||||
|
||||
#: ports/atmel-samd/common-hal/canio/Listener.c
|
||||
#: ports/esp32s2/common-hal/canio/Listener.c
|
||||
#: ports/stm/common-hal/canio/Listener.c
|
||||
msgid "Filters too complex"
|
||||
msgstr "guò lǜ qì tài fù zá"
|
||||
@ -959,7 +979,7 @@ msgstr "Shǐyòng de yìngjiàn, qǐng chángshì qítā yǐn jiǎo"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Hostname must be between 1 and 253 characters"
|
||||
msgstr ""
|
||||
msgstr "zhǔ jī míng bì xū jiè yú 1 hé 253 gè zì fú zhī jiān"
|
||||
|
||||
#: extmod/vfs_posix_file.c py/objstringio.c
|
||||
msgid "I/O operation on closed file"
|
||||
@ -990,6 +1010,10 @@ msgstr ""
|
||||
msgid "Incorrect buffer size"
|
||||
msgstr "Huǎnchōng qū dàxiǎo bù zhèngquè"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "Initialization failed due to lack of memory"
|
||||
msgstr "yóu yú nèi cún bù zú, chū shǐ huà shī bài"
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
msgid "Input taking too long"
|
||||
msgstr "Shūrù shíjiānguò zhǎng"
|
||||
@ -1111,7 +1135,8 @@ msgid "Invalid phase"
|
||||
msgstr "Jiēduàn wúxiào"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
|
||||
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
|
||||
#: shared-module/rgbmatrix/RGBMatrix.c
|
||||
msgid "Invalid pin"
|
||||
msgstr "Wúxiào de yǐn jiǎo"
|
||||
@ -1131,7 +1156,7 @@ msgstr "Yòuxián tōngdào yǐn jiǎo wúxiào"
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/esp32s2/common-hal/canio/CAN.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
@ -1421,6 +1446,10 @@ msgstr ""
|
||||
"Jǐn zhīchí dān sè, suǒyǐn wéi 4bpp huò 8bpp yǐjí 16bpp huò gèng gāo de BMP: "
|
||||
"Gěi chū %d bpp"
|
||||
|
||||
#: shared-module/displayio/ColorConverter.c
|
||||
msgid "Only one color can be transparent at a time"
|
||||
msgstr "Yīcì zhǐ néng yǒuyī zhǒng yánsè shì tòumíng de"
|
||||
|
||||
#: shared-bindings/ipaddress/__init__.c
|
||||
msgid "Only raw int supported for ip"
|
||||
msgstr "Ip jǐn zhīchí raw int"
|
||||
@ -2147,6 +2176,10 @@ msgstr "huǎnchōng qū qiēpiàn bìxū chángdù xiāngděng"
|
||||
msgid "buffer too small"
|
||||
msgstr "huǎnchōng qū tài xiǎo"
|
||||
|
||||
#: shared-bindings/socketpool/Socket.c
|
||||
msgid "buffer too small for requested bytes"
|
||||
msgstr "huǎn chōng qū tài xiǎo, duì yú qǐng qiú de zì jié"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr "ànniǔ bìxū shì digitalio.DigitalInOut"
|
||||
@ -2779,7 +2812,7 @@ msgstr "wúxiào de géshì biāozhù"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "invalid hostname"
|
||||
msgstr ""
|
||||
msgstr "wú xiào zhǔ jī míng"
|
||||
|
||||
#: extmod/modussl_axtls.c
|
||||
msgid "invalid key"
|
||||
@ -2875,6 +2908,10 @@ msgstr "fùzhí qián yǐnyòng de júbù biànliàng"
|
||||
msgid "long int not supported in this build"
|
||||
msgstr "cǐ bǎnběn bù zhīchí zhǎng zhěngshù"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
msgid "loopback + silent mode not supported by peripheral"
|
||||
msgstr "Wài shè bù zhī chí huán huí + jìng yīn mó shì"
|
||||
|
||||
#: py/parse.c
|
||||
msgid "malformed f-string"
|
||||
msgstr "jīxíng de f-string"
|
||||
@ -2909,6 +2946,14 @@ msgstr "Max_length bìxū > 0"
|
||||
msgid "maximum recursion depth exceeded"
|
||||
msgstr "chāochū zuìdà dìguī shēndù"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter must be > 0"
|
||||
msgstr "maxiter bì xū > 0"
|
||||
|
||||
#: extmod/ulab/code/approx/approx.c
|
||||
msgid "maxiter should be > 0"
|
||||
msgstr "maxiter yìng wéi > 0"
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "memory allocation failed, allocating %u bytes"
|
||||
@ -3212,6 +3257,7 @@ msgstr "pow() 3 cān shǔ bùnéng wéi 0"
|
||||
msgid "pow() with 3 arguments requires integers"
|
||||
msgstr "pow() yǒu 3 cānshù xūyào zhěngshù"
|
||||
|
||||
#: ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/adafruit_metro_esp32s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
|
||||
@ -3219,6 +3265,8 @@ msgstr "pow() yǒu 3 cānshù xūyào zhěngshù"
|
||||
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wroom/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/targett_module_clip_wrover/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
|
||||
#: ports/esp32s2/boards/unexpectedmaker_feathers2_prerelease/mpconfigboard.h
|
||||
msgid "pressing boot button at start up.\n"
|
||||
@ -3277,7 +3325,7 @@ msgstr "yòubiān bìxū shì ndarray huò biāoliàng"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "rsplit(None,n)"
|
||||
msgstr "Rchāifēn(wú ,N)"
|
||||
msgstr "Rchāifēn(wú,N)"
|
||||
|
||||
#: shared-bindings/audiocore/RawSample.c
|
||||
msgid ""
|
||||
@ -3343,6 +3391,10 @@ msgstr "ruǎn chóngqǐ\n"
|
||||
msgid "sort argument must be an ndarray"
|
||||
msgstr "páixù cānshù bìxū shì ndarray"
|
||||
|
||||
#: extmod/ulab/code/numerical/numerical.c
|
||||
msgid "sorted axis can't be longer than 65535"
|
||||
msgstr "pái xù zhóu bù néng chāo guò 65535"
|
||||
|
||||
#: extmod/ulab/code/filter/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr "sos shùzǔ de xíngzhuàng bìxū wèi (n_section, 6)"
|
||||
@ -3423,6 +3475,7 @@ msgstr "yùzhí bìxū zài fànwéi 0-65536"
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr "time.struct_time() xūyào 9 xùliè"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr "chāoshí shíjiān chāoguò zuìdà zhīchí zhí"
|
||||
@ -3472,6 +3525,16 @@ msgstr "yuán zǔ suǒyǐn chāochū fànwéi"
|
||||
msgid "tuple/list has wrong length"
|
||||
msgstr "yuán zǔ/lièbiǎo chángdù cuòwù"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_driver_install returned esp-idf error #%d"
|
||||
msgstr "twai_driver_install fǎn huí esp-idf cuò wù #%d"
|
||||
|
||||
#: ports/esp32s2/common-hal/canio/CAN.c
|
||||
#, c-format
|
||||
msgid "twai_start returned esp-idf error #%d"
|
||||
msgstr "twai_start fǎn huí esp -idf cuò wù #%d"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
|
||||
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
|
||||
@ -3596,6 +3659,10 @@ msgstr "zhí jìshù bìxū wèi > 0"
|
||||
msgid "vectors must have same lengths"
|
||||
msgstr "xiàngliàng bìxū jùyǒu xiāngtóng de chángdù"
|
||||
|
||||
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog not initialized"
|
||||
msgstr "wèi chū shǐ huà jiān shì qì"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr "kān mén gǒu chāoshí bìxū dàyú 0"
|
||||
|
@ -197,6 +197,7 @@ endif
|
||||
|
||||
|
||||
LDFLAGS = $(CFLAGS) -nostartfiles -Wl,-nostdlib -Wl,-T,$(GENERATED_LD_FILE) -Wl,-Map=$@.map -Wl,-cref -Wl,-gc-sections -specs=nano.specs
|
||||
LDFLAGS += -flto=$(shell $(NPROC))
|
||||
LIBS := -lgcc -lc
|
||||
|
||||
# Use toolchain libm if we're not using our own.
|
||||
|
@ -12,14 +12,14 @@
|
||||
|
||||
#define BOARD_HAS_CRYSTAL 1
|
||||
|
||||
#define DEFAULT_I2C_BUS_SDA (&pin_PB02)
|
||||
#define DEFAULT_I2C_BUS_SCL (&pin_PB03)
|
||||
#define DEFAULT_I2C_BUS_SCL (&pin_PA16)
|
||||
#define DEFAULT_I2C_BUS_SDA (&pin_PA17)
|
||||
#define DEFAULT_UART_BUS_RX (&pin_PB20)
|
||||
#define DEFAULT_UART_BUS_TX (&pin_PB21)
|
||||
#define DEFAULT_SPI_BUS_MISO (&pin_PB23)
|
||||
#define DEFAULT_UART_BUS_TX (&pin_PB24)
|
||||
#define DEFAULT_UART_BUS_RX (&pin_PB25)
|
||||
#define DEFAULT_SPI_BUS_MOSI (&pin_PC27)
|
||||
#define DEFAULT_SPI_BUS_SCK (&pin_PC28)
|
||||
#define MICROPY_HW_LED_STATUS (&pin_PA15)
|
||||
#define MICROPY_HW_LED_STATUS (&pin_PA23)
|
||||
#define MICROPY_HW_LED_RX (&pin_PC05)
|
||||
#define MICROPY_HW_LED_TX (&pin_PC06)
|
||||
|
||||
|
@ -1,64 +1,70 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PB08) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_PB09) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A10), MP_ROM_PTR(&pin_PC00) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A11), MP_ROM_PTR(&pin_PC01) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_PA04) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A3), MP_ROM_PTR(&pin_PA06) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A4), MP_ROM_PTR(&pin_PA07) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_PB00) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A6), MP_ROM_PTR(&pin_PB01) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A7), MP_ROM_PTR(&pin_PB05) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A8), MP_ROM_PTR(&pin_PB06) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A9), MP_ROM_PTR(&pin_PB07) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_PC10) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_PC11) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D10), MP_ROM_PTR(&pin_PA14) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D11), MP_ROM_PTR(&pin_PA13) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_PB14) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_PB15) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D4), MP_ROM_PTR(&pin_PC20) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D5), MP_ROM_PTR(&pin_PC21) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D6), MP_ROM_PTR(&pin_PA12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D7), MP_ROM_PTR(&pin_PB31) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D8), MP_ROM_PTR(&pin_PA16) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D9), MP_ROM_PTR(&pin_PA17) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA04) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_PA06) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A10), MP_ROM_PTR(&pin_PB07) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A11), MP_ROM_PTR(&pin_PC00) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_PA07) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A3), MP_ROM_PTR(&pin_PB08) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A4), MP_ROM_PTR(&pin_PB09) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_PC02) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A6), MP_ROM_PTR(&pin_PC03) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A7), MP_ROM_PTR(&pin_PB04) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A8), MP_ROM_PTR(&pin_PB05) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A9), MP_ROM_PTR(&pin_PB06) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_PB31) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_PC16) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D10), MP_ROM_PTR(&pin_PC13) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D11), MP_ROM_PTR(&pin_PA14) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D12), MP_ROM_PTR(&pin_PA15) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_PB12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D14), MP_ROM_PTR(&pin_PB13) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_PC17) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_PC18) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D4), MP_ROM_PTR(&pin_PC19) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D5), MP_ROM_PTR(&pin_PC20) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D6), MP_ROM_PTR(&pin_PC21) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D7), MP_ROM_PTR(&pin_PB18) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D8), MP_ROM_PTR(&pin_PB19) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D9), MP_ROM_PTR(&pin_PC12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_DAC0), MP_ROM_PTR(&pin_PA02) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_DAC1), MP_ROM_PTR(&pin_PA05) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_ESP01_EN), MP_ROM_PTR(&pin_PC03) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_ESP01_EN), MP_ROM_PTR(&pin_PC15) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_E5), MP_ROM_PTR(&pin_PC15) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_ESP01_GPIO0), MP_ROM_PTR(&pin_PA18) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART3_RTS), MP_ROM_PTR(&pin_PA18) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_E3), MP_ROM_PTR(&pin_PA18) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_ESP01_GPIO2), MP_ROM_PTR(&pin_PA19) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART3_CTS), MP_ROM_PTR(&pin_PA19) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_ESP01_RESET), MP_ROM_PTR(&pin_PC02) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_ESP01_RX), MP_ROM_PTR(&pin_PB21) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART3_RX), MP_ROM_PTR(&pin_PB21) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_ESP01_TX), MP_ROM_PTR(&pin_PB20) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART3_TX), MP_ROM_PTR(&pin_PB20) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C_SCL), MP_ROM_PTR(&pin_PB03) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_PB03) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C_SDA), MP_ROM_PTR(&pin_PB02) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_PB02) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_E4), MP_ROM_PTR(&pin_PA19) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_ESP01_RESET), MP_ROM_PTR(&pin_PC14) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_E6), MP_ROM_PTR(&pin_PC14) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_ESP01_RX), MP_ROM_PTR(&pin_PA12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART3_RX), MP_ROM_PTR(&pin_PA12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C3_SCL), MP_ROM_PTR(&pin_PA12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_E2), MP_ROM_PTR(&pin_PA12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_ESP01_TX), MP_ROM_PTR(&pin_PA13) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART3_TX), MP_ROM_PTR(&pin_PA13) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C3_SDA), MP_ROM_PTR(&pin_PA13) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_E1), MP_ROM_PTR(&pin_PA13) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C1_SCL), MP_ROM_PTR(&pin_PA16) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_PA16) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C1_SDA), MP_ROM_PTR(&pin_PA17) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_PA17) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2S_FS_0), MP_ROM_PTR(&pin_PA20) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2S_FS_1), MP_ROM_PTR(&pin_PA23) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2S_MCK_0), MP_ROM_PTR(&pin_PB17) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2S_MCK_1), MP_ROM_PTR(&pin_PB13) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2S_SCK_0), MP_ROM_PTR(&pin_PB16) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2S_SCK_1), MP_ROM_PTR(&pin_PB12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2S_SDI), MP_ROM_PTR(&pin_PA22) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2S_SDO), MP_ROM_PTR(&pin_PA21) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED_B), MP_ROM_PTR(&pin_PA15) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED_STATUS), MP_ROM_PTR(&pin_PA15) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED_G), MP_ROM_PTR(&pin_PB18) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED_R), MP_ROM_PTR(&pin_PB19) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED_B), MP_ROM_PTR(&pin_PA23) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED_STATUS), MP_ROM_PTR(&pin_PA23) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED_G), MP_ROM_PTR(&pin_PB15) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED_R), MP_ROM_PTR(&pin_PB14) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED_RX), MP_ROM_PTR(&pin_PC05) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED_TX), MP_ROM_PTR(&pin_PC06) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_RS485_RE), MP_ROM_PTR(&pin_PC15) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_RS485_RX), MP_ROM_PTR(&pin_PC13) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_RS485_TE), MP_ROM_PTR(&pin_PC14) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_RS485_TX), MP_ROM_PTR(&pin_PC12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_RS485_RE), MP_ROM_PTR(&pin_PB01) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_RS485_RX), MP_ROM_PTR(&pin_PB03) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_RS485_TE), MP_ROM_PTR(&pin_PB00) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_RS485_TX), MP_ROM_PTR(&pin_PB02) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPI_MISO), MP_ROM_PTR(&pin_PB23) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_PB23) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPI_MOSI), MP_ROM_PTR(&pin_PC27) },
|
||||
@ -67,14 +73,16 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_PC28) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPI_SS), MP_ROM_PTR(&pin_PB22) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SS), MP_ROM_PTR(&pin_PB22) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART1_CTS), MP_ROM_PTR(&pin_PC19) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART1_RTS), MP_ROM_PTR(&pin_PC18) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART1_RX), MP_ROM_PTR(&pin_PC17) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART1_TX), MP_ROM_PTR(&pin_PC16) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART2_RX), MP_ROM_PTR(&pin_PB25) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_PB25) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART2_TX), MP_ROM_PTR(&pin_PB24) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_PB24) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART1_CTS), MP_ROM_PTR(&pin_PC25) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART1_RTS), MP_ROM_PTR(&pin_PC24) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART1_RX), MP_ROM_PTR(&pin_PB24) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART1_TX), MP_ROM_PTR(&pin_PB25) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART2_RX), MP_ROM_PTR(&pin_PB20) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_PB20) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C2_SCL), MP_ROM_PTR(&pin_PB20) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART2_TX), MP_ROM_PTR(&pin_PB21) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_PB21) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C2_SDA), MP_ROM_PTR(&pin_PB21) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
|
||||
|
@ -12,11 +12,15 @@ EXTERNAL_FLASH_DEVICE_COUNT = 1
|
||||
EXTERNAL_FLASH_DEVICES = "GD25Q32C"
|
||||
LONGINT_IMPL = MPZ
|
||||
|
||||
CIRCUITPY_FULLBUILD = 0
|
||||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_COUNTIO = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 1
|
||||
CIRCUITPY_VECTORIO = 0
|
||||
CIRCUITPY_DISPLAYIO = 0
|
||||
CIRCUITPY_TOUCHIO = 0
|
||||
CIRCUITPY_ROTARYIO = 0
|
||||
|
||||
CFLAGS_INLINE_LIMIT = 60
|
||||
|
||||
|
@ -4,17 +4,17 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_PB11) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_PA12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_PB10) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D30), MP_ROM_PTR(&pin_PA30) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D31), MP_ROM_PTR(&pin_PA31) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D26), MP_ROM_PTR(&pin_PA30) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D27), MP_ROM_PTR(&pin_PA31) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_PA17) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_PA07) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_OVTEMP), MP_ROM_PTR(&pin_PA07) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_PA16) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_PA08) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_PA09) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_PA11) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_PA11) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SAT_RESET), MP_ROM_PTR(&pin_PA11) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_PA10) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_PA10) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SAT_PWR_ENABLE), MP_ROM_PTR(&pin_PA10) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_PA19) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_INT_IMU_OBC), MP_ROM_PTR(&pin_PA19) },
|
||||
@ -22,10 +22,17 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_PWRMON_SDA), MP_ROM_PTR(&pin_PA04) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_PWRMON_SCL), MP_ROM_PTR(&pin_PA05) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_PWRMON_ALERT), MP_ROM_PTR(&pin_PB03) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PB09) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_PB02) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_V_3V3_MEAS), MP_ROM_PTR(&pin_PB09) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_V_5V_MEAS), MP_ROM_PTR(&pin_PB02) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_FLASH_SCK), MP_ROM_PTR(&pin_PA23) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_FLASH_MOSI), MP_ROM_PTR(&pin_PA22) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_FLASH_MISO), MP_ROM_PTR(&pin_PA21) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_FLASH_CS), MP_ROM_PTR(&pin_PA20) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_PA06) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_PA06) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C_MONITOR), MP_ROM_PTR(&board_i2c_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
|
||||
};
|
||||
|
@ -26,12 +26,16 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_D7), MP_ROM_PTR(&pin_PB07) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D8), MP_ROM_PTR(&pin_PB06) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D9), MP_ROM_PTR(&pin_PB30) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D10), MP_ROM_PTR(&pin_PA12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D11), MP_ROM_PTR(&pin_PA15) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D12), MP_ROM_PTR(&pin_PB00) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_PA08) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D32), MP_ROM_PTR(&pin_PA30) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D33), MP_ROM_PTR(&pin_PA31) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SD_CS), MP_ROM_PTR(&pin_PB22) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_INT_IMU), MP_ROM_PTR(&pin_PA12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SAT_POWER), MP_ROM_PTR(&pin_PA15) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_OVTEMP), MP_ROM_PTR(&pin_PB00) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_PA08) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
|
||||
|
@ -33,6 +33,10 @@
|
||||
#define DEFAULT_UART_BUS_RX (&pin_PA11)
|
||||
#define DEFAULT_UART_BUS_TX (&pin_PA10)
|
||||
|
||||
// These pins are connected to the external crystal.
|
||||
#define IGNORE_PIN_PA00 1
|
||||
#define IGNORE_PIN_PA01 1
|
||||
|
||||
// USB is always used internally so skip the pin objects for it.
|
||||
#define IGNORE_PIN_PA24 1
|
||||
#define IGNORE_PIN_PA25 1
|
||||
|
@ -97,7 +97,8 @@ void board_init(void) {
|
||||
&pin_PA01, // busy_pin
|
||||
false, // busy_state
|
||||
5, // seconds_per_frame
|
||||
false); // chip_select (don't always toggle chip select)
|
||||
false, // chip_select (don't always toggle chip select)
|
||||
false); // grayscale
|
||||
}
|
||||
|
||||
bool board_requests_safe_mode(void) {
|
||||
|
@ -35,9 +35,6 @@
|
||||
#define IGNORE_PIN_PA12 1
|
||||
#define IGNORE_PIN_PA15 1
|
||||
#define IGNORE_PIN_PA16 1
|
||||
#define IGNORE_PIN_PA21 1
|
||||
#define IGNORE_PIN_PA22 1
|
||||
#define IGNORE_PIN_PA23 1
|
||||
#define IGNORE_PIN_PA27 1
|
||||
#define IGNORE_PIN_PA28 1
|
||||
|
||||
|
@ -16,8 +16,6 @@
|
||||
|
||||
#define IGNORE_PIN_PA27 1
|
||||
#define IGNORE_PIN_PA28 1
|
||||
#define IGNORE_PIN_PA30 1
|
||||
#define IGNORE_PIN_PA31 1
|
||||
|
||||
#define IGNORE_PIN_PB01 1
|
||||
#define IGNORE_PIN_PB02 1
|
||||
|
@ -1,14 +1,18 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA08) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_PA10) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_PA09) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A3), MP_ROM_PTR(&pin_PA11) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A4), MP_ROM_PTR(&pin_PA02) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_PA04) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A6), MP_ROM_PTR(&pin_PA03) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A7), MP_ROM_PTR(&pin_PA05) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED), MP_ROM_PTR(&pin_PA07) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BOOST_EN), MP_ROM_PTR(&pin_PA14) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_VEXT_SELECT), MP_ROM_PTR(&pin_PA15) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA06) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_PA06) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_PA08) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A3), MP_ROM_PTR(&pin_PA10) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A4), MP_ROM_PTR(&pin_PA09) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_PA11) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A6), MP_ROM_PTR(&pin_PA02) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A7), MP_ROM_PTR(&pin_PA03) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A8), MP_ROM_PTR(&pin_PA04) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_PA16) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_PA08) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_PA10) },
|
||||
@ -19,8 +23,10 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_D9), MP_ROM_PTR(&pin_PA19) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D10), MP_ROM_PTR(&pin_PA22) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D11), MP_ROM_PTR(&pin_PA23) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D14), MP_ROM_PTR(&pin_PA03) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D15), MP_ROM_PTR(&pin_PA05) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D12), MP_ROM_PTR(&pin_PA31) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_PA30) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D14), MP_ROM_PTR(&pin_PA02) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D15), MP_ROM_PTR(&pin_PA03) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_PA09) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_PA08) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_PA22) },
|
||||
|
@ -44,26 +44,36 @@
|
||||
#include "hpl/pm/hpl_pm_base.h"
|
||||
#endif
|
||||
|
||||
#define HAVE_ANALOGOUT ( \
|
||||
(defined(PIN_PA02) && !defined(IGNORE_PA02)) || \
|
||||
(defined(SAM_D5X_E5X) && defined(PIN_PA05) && !defined(IGNORE_PA05)) \
|
||||
)
|
||||
|
||||
void common_hal_analogio_analogout_construct(analogio_analogout_obj_t* self,
|
||||
const mcu_pin_obj_t *pin) {
|
||||
#if defined(SAMD21) && !defined(PIN_PA02)
|
||||
#if !HAVE_ANALOGOUT
|
||||
mp_raise_NotImplementedError(translate("No DAC on chip"));
|
||||
#else
|
||||
if (pin->number != PIN_PA02
|
||||
#ifdef SAM_D5X_E5X
|
||||
&& pin->number != PIN_PA05
|
||||
|
||||
int channel = -1;
|
||||
|
||||
#if defined(PIN_PA02) && !defined(IGNORE_PIN_PA02)
|
||||
if (pin->number != PIN_PA02) {
|
||||
channel = 0;
|
||||
}
|
||||
#endif
|
||||
) {
|
||||
#if defined(PIN_PA05) && defined(PIN_PA05) && !defined(IGNORE_PIN_PA05)
|
||||
if (pin->number != PIN_PA05) {
|
||||
channel = 1;
|
||||
}
|
||||
#endif
|
||||
|
||||
if(channel == -1) {
|
||||
mp_raise_ValueError(translate("AnalogOut not supported on given pin"));
|
||||
return;
|
||||
}
|
||||
|
||||
self->channel = 0;
|
||||
#ifdef SAM_D5X_E5X
|
||||
if (pin->number == PIN_PA05) {
|
||||
self->channel = 1;
|
||||
}
|
||||
#endif
|
||||
self->channel = channel;
|
||||
|
||||
#ifdef SAM_D5X_E5X
|
||||
hri_mclk_set_APBDMASK_DAC_bit(MCLK);
|
||||
@ -105,11 +115,15 @@ void common_hal_analogio_analogout_construct(analogio_analogout_obj_t* self,
|
||||
}
|
||||
|
||||
bool common_hal_analogio_analogout_deinited(analogio_analogout_obj_t *self) {
|
||||
#if !HAVE_ANALOGOUT
|
||||
return false;
|
||||
#else
|
||||
return self->deinited;
|
||||
#endif
|
||||
}
|
||||
|
||||
void common_hal_analogio_analogout_deinit(analogio_analogout_obj_t *self) {
|
||||
#if (defined(SAMD21) && defined(PIN_PA02)) || defined(SAM_D5X_E5X)
|
||||
#if HAVE_ANALOGOUT
|
||||
if (common_hal_analogio_analogout_deinited(self)) {
|
||||
return;
|
||||
}
|
||||
@ -130,12 +144,11 @@ void common_hal_analogio_analogout_deinit(analogio_analogout_obj_t *self) {
|
||||
|
||||
void common_hal_analogio_analogout_set_value(analogio_analogout_obj_t *self,
|
||||
uint16_t value) {
|
||||
#if defined(SAMD21) && !defined(PIN_PA02)
|
||||
return;
|
||||
#endif
|
||||
#if HAVE_ANALOGOUT
|
||||
// Input is 16 bit so make sure and set LEFTADJ to 1 so it takes the top
|
||||
// bits. This is currently done in asf4_conf/*/hpl_dac_config.h.
|
||||
dac_sync_write(&self->descriptor, self->channel, &value, 1);
|
||||
#endif
|
||||
}
|
||||
|
||||
void analogout_reset(void) {
|
||||
@ -143,7 +156,7 @@ void analogout_reset(void) {
|
||||
// if it was enabled, so do that instead if AudioOut is enabled.
|
||||
#if CIRCUITPY_AUDIOIO
|
||||
audioout_reset();
|
||||
#else
|
||||
#elif HAVE_ANALOGOUT
|
||||
#ifdef SAMD21
|
||||
while (DAC->STATUS.reg & DAC_STATUS_SYNCBUSY) {}
|
||||
#endif
|
||||
|
@ -326,7 +326,7 @@ static void setup_dma(audiobusio_pdmin_obj_t* self, uint32_t length,
|
||||
// higher sample rate than specified. Then after the audio is
|
||||
// recorded, a more expensive filter non-real-time filter could be
|
||||
// used to down-sample and low-pass.
|
||||
uint16_t sinc_filter [OVERSAMPLING] = {
|
||||
const uint16_t sinc_filter [OVERSAMPLING] = {
|
||||
0, 2, 9, 21, 39, 63, 94, 132,
|
||||
179, 236, 302, 379, 467, 565, 674, 792,
|
||||
920, 1055, 1196, 1341, 1487, 1633, 1776, 1913,
|
||||
|
@ -129,7 +129,8 @@ bool common_hal_displayio_parallelbus_begin_transaction(mp_obj_t obj) {
|
||||
return true;
|
||||
}
|
||||
|
||||
void common_hal_displayio_parallelbus_send(mp_obj_t obj, display_byte_type_t byte_type, display_chip_select_behavior_t chip_select, uint8_t *data, uint32_t data_length) {
|
||||
void common_hal_displayio_parallelbus_send(mp_obj_t obj, display_byte_type_t byte_type,
|
||||
display_chip_select_behavior_t chip_select, const uint8_t *data, uint32_t data_length) {
|
||||
displayio_parallelbus_obj_t* self = MP_OBJ_TO_PTR(obj);
|
||||
common_hal_digitalio_digitalinout_set_value(&self->command, byte_type == DISPLAY_DATA);
|
||||
uint32_t* clear_write = (uint32_t*) &self->write_group->OUTCLR.reg;
|
||||
|
@ -223,9 +223,11 @@ bool common_hal_mcu_pin_is_free(const mcu_pin_obj_t* pin) {
|
||||
#ifdef MICROPY_HW_NEOPIXEL
|
||||
if (pin == MICROPY_HW_NEOPIXEL) {
|
||||
// Special case for Metro M0 where the NeoPixel is also SWCLK
|
||||
#ifndef IGNORE_PIN_PA30
|
||||
if (MICROPY_HW_NEOPIXEL == &pin_PA30 && DSU->STATUSB.bit.DBGPRES == 1) {
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
return !neopixel_in_use;
|
||||
}
|
||||
#endif
|
||||
|
@ -275,120 +275,119 @@ STATIC const mp_rom_map_elem_t mcu_pin_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_PB31), MP_ROM_PTR(&pin_PB31) },
|
||||
#endif
|
||||
|
||||
// These are SAMD51 specific so we assume we want them in RAM
|
||||
#if defined(PIN_PC00)
|
||||
#if defined(PIN_PC00) && !defined(IGNORE_PIN_PC00)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC00), MP_ROM_PTR(&pin_PC00) },
|
||||
#endif
|
||||
#if defined(PIN_PC01)
|
||||
#if defined(PIN_PC01) && !defined(IGNORE_PIN_PC01)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC01), MP_ROM_PTR(&pin_PC01) },
|
||||
#endif
|
||||
#if defined(PIN_PC02)
|
||||
#if defined(PIN_PC02) && !defined(IGNORE_PIN_PC02)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC02), MP_ROM_PTR(&pin_PC02) },
|
||||
#endif
|
||||
#if defined(PIN_PC03)
|
||||
#if defined(PIN_PC03) && !defined(IGNORE_PIN_PC03)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC03), MP_ROM_PTR(&pin_PC03) },
|
||||
#endif
|
||||
#if defined(PIN_PC04)
|
||||
#if defined(PIN_PC04) && !defined(IGNORE_PIN_PC04)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC04), MP_ROM_PTR(&pin_PC04) },
|
||||
#endif
|
||||
#if defined(PIN_PC05)
|
||||
#if defined(PIN_PC05) && !defined(IGNORE_PIN_PC05)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC05), MP_ROM_PTR(&pin_PC05) },
|
||||
#endif
|
||||
#if defined(PIN_PC06)
|
||||
#if defined(PIN_PC06) && !defined(IGNORE_PIN_PC06)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC06), MP_ROM_PTR(&pin_PC06) },
|
||||
#endif
|
||||
#if defined(PIN_PC07)
|
||||
#if defined(PIN_PC07) && !defined(IGNORE_PIN_PC07)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC07), MP_ROM_PTR(&pin_PC07) },
|
||||
#endif
|
||||
#if defined(PIN_PC10)
|
||||
#if defined(PIN_PC10) && !defined(IGNORE_PIN_PC10)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC10), MP_ROM_PTR(&pin_PC10) },
|
||||
#endif
|
||||
#if defined(PIN_PC11)
|
||||
#if defined(PIN_PC11) && !defined(IGNORE_PIN_PC11)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC11), MP_ROM_PTR(&pin_PC11) },
|
||||
#endif
|
||||
#if defined(PIN_PC12)
|
||||
#if defined(PIN_PC12) && !defined(IGNORE_PIN_PC12)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC12), MP_ROM_PTR(&pin_PC12) },
|
||||
#endif
|
||||
#if defined(PIN_PC13)
|
||||
#if defined(PIN_PC13) && !defined(IGNORE_PIN_PC13)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC13), MP_ROM_PTR(&pin_PC13) },
|
||||
#endif
|
||||
#if defined(PIN_PC14)
|
||||
#if defined(PIN_PC14) && !defined(IGNORE_PIN_PC14)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC14), MP_ROM_PTR(&pin_PC14) },
|
||||
#endif
|
||||
#if defined(PIN_PC15)
|
||||
#if defined(PIN_PC15) && !defined(IGNORE_PIN_PC15)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC15), MP_ROM_PTR(&pin_PC15) },
|
||||
#endif
|
||||
#if defined(PIN_PC16)
|
||||
#if defined(PIN_PC16) && !defined(IGNORE_PIN_PC16)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC16), MP_ROM_PTR(&pin_PC16) },
|
||||
#endif
|
||||
#if defined(PIN_PC17)
|
||||
#if defined(PIN_PC17) && !defined(IGNORE_PIN_PC17)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC17), MP_ROM_PTR(&pin_PC17) },
|
||||
#endif
|
||||
#if defined(PIN_PC18)
|
||||
#if defined(PIN_PC18) && !defined(IGNORE_PIN_PC18)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC18), MP_ROM_PTR(&pin_PC18) },
|
||||
#endif
|
||||
#if defined(PIN_PC19)
|
||||
#if defined(PIN_PC19) && !defined(IGNORE_PIN_PC19)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC19), MP_ROM_PTR(&pin_PC19) },
|
||||
#endif
|
||||
#if defined(PIN_PC20)
|
||||
#if defined(PIN_PC20) && !defined(IGNORE_PIN_PC20)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC20), MP_ROM_PTR(&pin_PC20) },
|
||||
#endif
|
||||
#if defined(PIN_PC21)
|
||||
#if defined(PIN_PC21) && !defined(IGNORE_PIN_PC21)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC21), MP_ROM_PTR(&pin_PC21) },
|
||||
#endif
|
||||
#if defined(PIN_PC22)
|
||||
#if defined(PIN_PC22) && !defined(IGNORE_PIN_PC22)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC22), MP_ROM_PTR(&pin_PC22) },
|
||||
#endif
|
||||
#if defined(PIN_PC23)
|
||||
#if defined(PIN_PC23) && !defined(IGNORE_PIN_PC23)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC23), MP_ROM_PTR(&pin_PC23) },
|
||||
#endif
|
||||
#if defined(PIN_PC24)
|
||||
#if defined(PIN_PC24) && !defined(IGNORE_PIN_PC24)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC24), MP_ROM_PTR(&pin_PC24) },
|
||||
#endif
|
||||
#if defined(PIN_PC25)
|
||||
#if defined(PIN_PC25) && !defined(IGNORE_PIN_PC25)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC25), MP_ROM_PTR(&pin_PC25) },
|
||||
#endif
|
||||
#if defined(PIN_PC26)
|
||||
#if defined(PIN_PC26) && !defined(IGNORE_PIN_PC26)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC26), MP_ROM_PTR(&pin_PC26) },
|
||||
#endif
|
||||
#if defined(PIN_PC27)
|
||||
#if defined(PIN_PC27) && !defined(IGNORE_PIN_PC27)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC27), MP_ROM_PTR(&pin_PC27) },
|
||||
#endif
|
||||
#if defined(PIN_PC28)
|
||||
#if defined(PIN_PC28) && !defined(IGNORE_PIN_PC28)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC28), MP_ROM_PTR(&pin_PC28) },
|
||||
#endif
|
||||
#if defined(PIN_PC30)
|
||||
#if defined(PIN_PC30) && !defined(IGNORE_PIN_PC30)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC30), MP_ROM_PTR(&pin_PC30) },
|
||||
#endif
|
||||
#if defined(PIN_PC31)
|
||||
#if defined(PIN_PC31) && !defined(IGNORE_PIN_PC31)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PC31), MP_ROM_PTR(&pin_PC31) },
|
||||
#endif
|
||||
|
||||
#if defined(PIN_PD00)
|
||||
#if defined(PIN_PD00) && !defined(IGNORE_PIN_PD00)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PD00), MP_ROM_PTR(&pin_PD00) },
|
||||
#endif
|
||||
#if defined(PIN_PD01)
|
||||
#if defined(PIN_PD01) && !defined(IGNORE_PIN_PD01)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PD01), MP_ROM_PTR(&pin_PD01) },
|
||||
#endif
|
||||
#if defined(PIN_PD08)
|
||||
#if defined(PIN_PD08) && !defined(IGNORE_PIN_PD08)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PD08), MP_ROM_PTR(&pin_PD08) },
|
||||
#endif
|
||||
#if defined(PIN_PD09)
|
||||
#if defined(PIN_PD09) && !defined(IGNORE_PIN_PD09)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PD09), MP_ROM_PTR(&pin_PD09) },
|
||||
#endif
|
||||
#if defined(PIN_PD10)
|
||||
#if defined(PIN_PD10) && !defined(IGNORE_PIN_PD10)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PD10), MP_ROM_PTR(&pin_PD10) },
|
||||
#endif
|
||||
#if defined(PIN_PD11)
|
||||
#if defined(PIN_PD11) && !defined(IGNORE_PIN_PD11)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PD11), MP_ROM_PTR(&pin_PD11) },
|
||||
#endif
|
||||
#if defined(PIN_PD12)
|
||||
#if defined(PIN_PD12) && !defined(IGNORE_PIN_PD12)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PD12), MP_ROM_PTR(&pin_PD12) },
|
||||
#endif
|
||||
#if defined(PIN_PD20)
|
||||
#if defined(PIN_PD20) && !defined(IGNORE_PIN_PD20)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PD20), MP_ROM_PTR(&pin_PD20) },
|
||||
#endif
|
||||
#if defined(PIN_PD21)
|
||||
#if defined(PIN_PD21) && !defined(IGNORE_PIN_PD21)
|
||||
{ MP_ROM_QSTR(MP_QSTR_PD21), MP_ROM_PTR(&pin_PD21) },
|
||||
#endif
|
||||
};
|
||||
|
@ -47,6 +47,7 @@
|
||||
// MICROPY_PY_UJSON depends on MICROPY_PY_IO
|
||||
#define MICROPY_PY_IO (0)
|
||||
#define MICROPY_PY_REVERSE_SPECIAL_METHODS (0)
|
||||
#define MICROPY_PY_UBINASCII (0)
|
||||
#define MICROPY_PY_UJSON (0)
|
||||
#define MICROPY_PY_COLLECTIONS_ORDEREDDICT (0)
|
||||
#define MICROPY_PY_UERRNO_LIST \
|
||||
|
@ -98,8 +98,12 @@ void reset_to_bootloader(void) {
|
||||
}
|
||||
}
|
||||
|
||||
supervisor_allocation _fixed_stack;
|
||||
|
||||
supervisor_allocation* port_fixed_stack(void) {
|
||||
return NULL;
|
||||
_fixed_stack.ptr = port_stack_get_limit();
|
||||
_fixed_stack.length = (port_stack_get_top() - port_stack_get_limit()) * sizeof(uint32_t);
|
||||
return &_fixed_stack;
|
||||
}
|
||||
|
||||
uint32_t *port_stack_get_limit(void) {
|
||||
|
@ -188,6 +188,7 @@ SRC_C += \
|
||||
lib/utils/pyexec.c \
|
||||
lib/utils/stdout_helpers.c \
|
||||
lib/utils/sys_stdio_mphal.c \
|
||||
peripherals/pcnt.c \
|
||||
peripherals/pins.c \
|
||||
peripherals/rmt.c \
|
||||
supervisor/shared/memory.c
|
||||
|
@ -30,18 +30,20 @@ Connect these pins using a [USB adapter](https://www.adafruit.com/product/4090)
|
||||
|
||||
## Building and flashing ##
|
||||
|
||||
Before building or flashing the ESP32-S2, you must [install the esp-idf](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/index.html). This must be re-done ever time the esp-idf is updated, but not every time you build. Run `cd ports/esp32s2` from `circuitpython/` to move to the esp32s2 port root, and run:
|
||||
Before building or flashing the ESP32-S2, you must [install the esp-idf](https://docs.espressif.com/projects/esp-idf/en/latest/esp32s2/get-started/index.html). This must be re-done every time the esp-idf is updated, but not every time you build. Run `cd ports/esp32s2` from `circuitpython/` to move to the esp32s2 port root, and run:
|
||||
|
||||
```
|
||||
./esp-idf/install.sh
|
||||
```
|
||||
|
||||
Additionally, any time you open a new bash environment for building or flashing, you must add the esp-idf tools to your path:
|
||||
After this initial installation, you must add the esp-idf tools to your path. You must also do this **any time you open a new bash environment for building or flashing**:
|
||||
|
||||
```
|
||||
. esp-idf/export.sh
|
||||
```
|
||||
|
||||
When Circuitpython updates the ESP-IDF to a new release, you may need to run this installation process again. The exact commands used may also vary based on your bash environment.
|
||||
|
||||
Building boards such as the Saola is typically done through `make flash`. The default port is `tty.SLAB_USBtoUART`, which will only work on certain Mac setups. On most machines, both Mac and Linux, you will need to set the port yourself by running `ls /dev/tty.usb*` and selecting the one that only appears when your development board is plugged in. An example make command with the port setting is as follows:
|
||||
|
||||
```
|
||||
|
169
ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/board.c
Normal file
169
ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/board.c
Normal file
@ -0,0 +1,169 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "boards/board.h"
|
||||
#include "mpconfigboard.h"
|
||||
#include "shared-bindings/busio/SPI.h"
|
||||
#include "shared-bindings/displayio/FourWire.h"
|
||||
#include "shared-bindings/microcontroller/Pin.h"
|
||||
#include "shared-module/displayio/__init__.h"
|
||||
#include "supervisor/shared/board.h"
|
||||
|
||||
#define DELAY 0x80
|
||||
|
||||
// This is an ILO373 control chip. The display is a 2.9" grayscale EInk.
|
||||
|
||||
const uint8_t display_start_sequence[] = {
|
||||
0x01, 5, 0x03, 0x00, 0x2b, 0x2b, 0x13, // power setting
|
||||
0x06, 3, 0x17, 0x17, 0x17, // booster soft start
|
||||
0x04, DELAY, 200, // power on and wait 200 ms
|
||||
0x00, 1, 0x7f, // panel setting
|
||||
0x50, 1, 0x97, // CDI setting
|
||||
0x30, 1, 0x3c, // PLL set to 50 Hx (M = 7, N = 4)
|
||||
0x61, 3, 0x80, 0x01, 0x28, // Resolution
|
||||
0x82, DELAY | 1, 0x12, 50, // VCM DC and delay 50ms
|
||||
|
||||
// Look up tables for voltage sequence for pixel transition
|
||||
// Common voltage
|
||||
0x20, 0x2a,
|
||||
0x00, 0x0a, 0x00, 0x00, 0x00, 0x01,
|
||||
0x60, 0x14, 0x14, 0x00, 0x00, 0x01,
|
||||
0x00, 0x14, 0x00, 0x00, 0x00, 0x01,
|
||||
0x00, 0x13, 0x0a, 0x01, 0x00, 0x01,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
|
||||
// White to white
|
||||
0x21, 0x2a,
|
||||
0x40, 0x0a, 0x00, 0x00, 0x00, 0x01,
|
||||
0x90, 0x14, 0x14, 0x00, 0x00, 0x01,
|
||||
0x10, 0x14, 0x0a, 0x00, 0x00, 0x01,
|
||||
0xa0, 0x13, 0x01, 0x00, 0x00, 0x01,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
|
||||
// Black to white
|
||||
0x22, 0x2a,
|
||||
0x40, 0x0a, 0x00, 0x00, 0x00, 0x01,
|
||||
0x90, 0x14, 0x14, 0x00, 0x00, 0x01,
|
||||
0x00, 0x14, 0x0a, 0x00, 0x00, 0x01,
|
||||
0x99, 0x0c, 0x01, 0x03, 0x04, 0x01,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
|
||||
// White to black
|
||||
0x23, 0x2a,
|
||||
0x40, 0x0a, 0x00, 0x00, 0x00, 0x01,
|
||||
0x90, 0x14, 0x14, 0x00, 0x00, 0x01,
|
||||
0x00, 0x14, 0x0a, 0x00, 0x00, 0x01,
|
||||
0x99, 0x0b, 0x04, 0x04, 0x01, 0x01,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
|
||||
// Black to black
|
||||
0x24, 0x2a,
|
||||
0x80, 0x0a, 0x00, 0x00, 0x00, 0x01,
|
||||
0x90, 0x14, 0x14, 0x00, 0x00, 0x01,
|
||||
0x20, 0x14, 0x0a, 0x00, 0x00, 0x01,
|
||||
0x50, 0x13, 0x01, 0x00, 0x00, 0x01,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
};
|
||||
|
||||
const uint8_t display_stop_sequence[] = {
|
||||
0x50, 0x01, 0x17, // CDI Setting
|
||||
0x82, 0x01, 0x00, // VCM DC to -0.1V
|
||||
0x02, 0x00 // Power off
|
||||
};
|
||||
|
||||
void board_init(void) {
|
||||
// USB
|
||||
common_hal_never_reset_pin(&pin_GPIO19);
|
||||
common_hal_never_reset_pin(&pin_GPIO20);
|
||||
|
||||
// Debug UART
|
||||
common_hal_never_reset_pin(&pin_GPIO43);
|
||||
common_hal_never_reset_pin(&pin_GPIO44);
|
||||
|
||||
busio_spi_obj_t* spi = &displays[0].fourwire_bus.inline_bus;
|
||||
common_hal_busio_spi_construct(spi, &pin_GPIO36, &pin_GPIO35, NULL);
|
||||
common_hal_busio_spi_never_reset(spi);
|
||||
|
||||
displayio_fourwire_obj_t* bus = &displays[0].fourwire_bus;
|
||||
bus->base.type = &displayio_fourwire_type;
|
||||
common_hal_displayio_fourwire_construct(bus,
|
||||
spi,
|
||||
&pin_GPIO7, // EPD_DC Command or data
|
||||
&pin_GPIO8, // EPD_CS Chip select
|
||||
&pin_GPIO6, // EPD_RST Reset
|
||||
4000000, // Baudrate
|
||||
0, // Polarity
|
||||
0); // Phase
|
||||
|
||||
displayio_epaperdisplay_obj_t* display = &displays[0].epaper_display;
|
||||
display->base.type = &displayio_epaperdisplay_type;
|
||||
common_hal_displayio_epaperdisplay_construct(
|
||||
display,
|
||||
bus,
|
||||
display_start_sequence, sizeof(display_start_sequence),
|
||||
display_stop_sequence, sizeof(display_stop_sequence),
|
||||
296, // width
|
||||
128, // height
|
||||
160, // ram_width
|
||||
296, // ram_height
|
||||
0, // colstart
|
||||
0, // rowstart
|
||||
270, // rotation
|
||||
NO_COMMAND, // set_column_window_command
|
||||
NO_COMMAND, // set_row_window_command
|
||||
NO_COMMAND, // set_current_column_command
|
||||
NO_COMMAND, // set_current_row_command
|
||||
0x10, // write_black_ram_command
|
||||
false, // black_bits_inverted
|
||||
0x13, // write_color_ram_command
|
||||
false, // color_bits_inverted
|
||||
0x000000, // highlight_color
|
||||
0x12, // refresh_display_command
|
||||
1.0, // refresh_time
|
||||
&pin_GPIO5, // busy_pin
|
||||
false, // busy_state
|
||||
5.0, // seconds_per_frame
|
||||
false, // always_toggle_chip_select
|
||||
true); // grayscale
|
||||
}
|
||||
|
||||
bool board_requests_safe_mode(void) {
|
||||
return false;
|
||||
}
|
||||
|
||||
void reset_board(void) {
|
||||
|
||||
}
|
@ -0,0 +1,45 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2019 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
//Micropython setup
|
||||
|
||||
#define MICROPY_HW_BOARD_NAME "MagTag"
|
||||
#define MICROPY_HW_MCU_NAME "ESP32S2"
|
||||
|
||||
#define MICROPY_HW_NEOPIXEL (&pin_GPIO1)
|
||||
|
||||
#define CIRCUITPY_BOOT_BUTTON (&pin_GPIO0)
|
||||
|
||||
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing boot button at start up.\n")
|
||||
|
||||
#define AUTORESET_DELAY_MS 500
|
||||
|
||||
#define DEFAULT_I2C_BUS_SCL (&pin_GPIO34)
|
||||
#define DEFAULT_I2C_BUS_SDA (&pin_GPIO33)
|
||||
|
||||
#define DEFAULT_SPI_BUS_SCK (&pin_GPIO36)
|
||||
#define DEFAULT_SPI_BUS_MOSI (&pin_GPIO35)
|
||||
#define DEFAULT_SPI_BUS_MISO (&pin_GPIO37)
|
@ -0,0 +1,17 @@
|
||||
USB_VID = 0x239A
|
||||
USB_PID = 0x80E6
|
||||
USB_PRODUCT = "MagTag"
|
||||
USB_MANUFACTURER = "Adafruit"
|
||||
|
||||
INTERNAL_FLASH_FILESYSTEM = 1
|
||||
LONGINT_IMPL = MPZ
|
||||
|
||||
# The default queue depth of 16 overflows on release builds,
|
||||
# so increase it to 32.
|
||||
CFLAGS += -DCFG_TUD_TASK_QUEUE_SZ=32
|
||||
|
||||
CIRCUITPY_ESP_FLASH_MODE=dio
|
||||
CIRCUITPY_ESP_FLASH_FREQ=40m
|
||||
CIRCUITPY_ESP_FLASH_SIZE=4MB
|
||||
|
||||
CIRCUITPY_MODULE=wrover
|
45
ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/pins.c
Normal file
45
ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/pins.c
Normal file
@ -0,0 +1,45 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "shared-module/displayio/__init__.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_D10), MP_ROM_PTR(&pin_GPIO10) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_AD1), MP_ROM_PTR(&pin_GPIO18) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_GPIO13) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPEAKER), MP_ROM_PTR(&pin_GPIO17) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPEAKER_ENABLE), MP_ROM_PTR(&pin_GPIO16) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_EPD_BUSY), MP_ROM_PTR(&pin_GPIO5) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_EPD_RESET), MP_ROM_PTR(&pin_GPIO6) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_EPD_DC), MP_ROM_PTR(&pin_GPIO7) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_EPD_CS), MP_ROM_PTR(&pin_GPIO8) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_A), MP_ROM_PTR(&pin_GPIO15) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_B), MP_ROM_PTR(&pin_GPIO14) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_C), MP_ROM_PTR(&pin_GPIO12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON_D), MP_ROM_PTR(&pin_GPIO11) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_LIGHT), MP_ROM_PTR(&pin_GPIO3) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_VOLTAGE_MONITOR), MP_ROM_PTR(&pin_GPIO4) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_BATTERY), MP_ROM_PTR(&pin_GPIO4) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_GPIO33) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_GPIO34) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_CS), MP_ROM_PTR(&pin_GPIO8) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_GPIO35) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_GPIO36) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_GPIO37) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL_POWER), MP_ROM_PTR(&pin_GPIO21) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_GPIO1) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_DISPLAY), MP_ROM_PTR(&displays[0].epaper_display)}
|
||||
};
|
||||
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);
|
33
ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/sdkconfig
Normal file
33
ports/esp32s2/boards/adafruit_magtag_2.9_grayscale/sdkconfig
Normal file
@ -0,0 +1,33 @@
|
||||
CONFIG_ESP32S2_SPIRAM_SUPPORT=y
|
||||
|
||||
#
|
||||
# SPI RAM config
|
||||
#
|
||||
# CONFIG_SPIRAM_TYPE_AUTO is not set
|
||||
CONFIG_SPIRAM_TYPE_ESPPSRAM16=y
|
||||
# CONFIG_SPIRAM_TYPE_ESPPSRAM32 is not set
|
||||
# CONFIG_SPIRAM_TYPE_ESPPSRAM64 is not set
|
||||
CONFIG_SPIRAM_SIZE=2097152
|
||||
|
||||
#
|
||||
# PSRAM clock and cs IO for ESP32S2
|
||||
#
|
||||
CONFIG_DEFAULT_PSRAM_CLK_IO=30
|
||||
CONFIG_DEFAULT_PSRAM_CS_IO=26
|
||||
# end of PSRAM clock and cs IO for ESP32S2
|
||||
|
||||
# CONFIG_SPIRAM_FETCH_INSTRUCTIONS is not set
|
||||
# CONFIG_SPIRAM_RODATA is not set
|
||||
# CONFIG_SPIRAM_SPEED_80M is not set
|
||||
CONFIG_SPIRAM_SPEED_40M=y
|
||||
# CONFIG_SPIRAM_SPEED_26M is not set
|
||||
# CONFIG_SPIRAM_SPEED_20M is not set
|
||||
CONFIG_SPIRAM=y
|
||||
CONFIG_SPIRAM_BOOT_INIT=y
|
||||
# CONFIG_SPIRAM_IGNORE_NOTFOUND is not set
|
||||
CONFIG_SPIRAM_USE_MEMMAP=y
|
||||
# CONFIG_SPIRAM_USE_CAPS_ALLOC is not set
|
||||
# CONFIG_SPIRAM_USE_MALLOC is not set
|
||||
CONFIG_SPIRAM_MEMTEST=y
|
||||
# CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY is not set
|
||||
# end of SPI RAM config
|
@ -2,41 +2,65 @@
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_GPIO17) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_GPIO18) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_GPIO1) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A3), MP_ROM_PTR(&pin_GPIO2) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A4), MP_ROM_PTR(&pin_GPIO3) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_GPIO4) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO17), MP_ROM_PTR(&pin_GPIO17) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_GPIO18) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO18), MP_ROM_PTR(&pin_GPIO18) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_GPIO1) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO1), MP_ROM_PTR(&pin_GPIO1) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A3), MP_ROM_PTR(&pin_GPIO2) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO2), MP_ROM_PTR(&pin_GPIO2) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A4), MP_ROM_PTR(&pin_GPIO3) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO3), MP_ROM_PTR(&pin_GPIO3) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_GPIO4) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO4), MP_ROM_PTR(&pin_GPIO4) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_GPIO5) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_GPIO5) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_GPIO6) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO5), MP_ROM_PTR(&pin_GPIO5) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_GPIO6) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_GPIO7) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_GPIO8) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D4), MP_ROM_PTR(&pin_GPIO9) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D5), MP_ROM_PTR(&pin_GPIO10) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D6), MP_ROM_PTR(&pin_GPIO11) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D7), MP_ROM_PTR(&pin_GPIO12) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D8), MP_ROM_PTR(&pin_GPIO13) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D9), MP_ROM_PTR(&pin_GPIO14) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D10), MP_ROM_PTR(&pin_GPIO15) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D11), MP_ROM_PTR(&pin_GPIO16) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D12), MP_ROM_PTR(&pin_GPIO21) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_GPIO42) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO6), MP_ROM_PTR(&pin_GPIO6) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO7), MP_ROM_PTR(&pin_GPIO7) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO8), MP_ROM_PTR(&pin_GPIO8) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO9), MP_ROM_PTR(&pin_GPIO9) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO10), MP_ROM_PTR(&pin_GPIO10) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO11), MP_ROM_PTR(&pin_GPIO11) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO12), MP_ROM_PTR(&pin_GPIO12) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO13), MP_ROM_PTR(&pin_GPIO13) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO14), MP_ROM_PTR(&pin_GPIO14) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO15), MP_ROM_PTR(&pin_GPIO15) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO16), MP_ROM_PTR(&pin_GPIO16) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO21), MP_ROM_PTR(&pin_GPIO21) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SDA),MP_ROM_PTR(&pin_GPIO33) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO33),MP_ROM_PTR(&pin_GPIO33) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCL),MP_ROM_PTR(&pin_GPIO34) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO34),MP_ROM_PTR(&pin_GPIO34) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_GPIO36) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO36), MP_ROM_PTR(&pin_GPIO36) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MOSI),MP_ROM_PTR(&pin_GPIO35) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO35),MP_ROM_PTR(&pin_GPIO35) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MISO),MP_ROM_PTR(&pin_GPIO37) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO37),MP_ROM_PTR(&pin_GPIO37) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO42), MP_ROM_PTR(&pin_GPIO42) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LED), MP_ROM_PTR(&pin_GPIO42) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_GPIO45) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_IO45), MP_ROM_PTR(&pin_GPIO45) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_DEBUG_RX), MP_ROM_PTR(&pin_GPIO38) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_DEBUG_TX), MP_ROM_PTR(&pin_GPIO37) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_GPIO36) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MOSI),MP_ROM_PTR(&pin_GPIO35) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MISO),MP_ROM_PTR(&pin_GPIO37) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
|
||||
|
@ -11,7 +11,7 @@ LONGINT_IMPL = MPZ
|
||||
CFLAGS += -DCFG_TUD_TASK_QUEUE_SZ=32
|
||||
|
||||
CIRCUITPY_ESP_FLASH_MODE=dio
|
||||
CIRCUITPY_ESP_FLASH_FREQ=40m
|
||||
CIRCUITPY_ESP_FLASH_FREQ=80m
|
||||
CIRCUITPY_ESP_FLASH_SIZE=4MB
|
||||
|
||||
CIRCUITPY_MODULE=wrover
|
||||
|
@ -25,7 +25,6 @@
|
||||
*/
|
||||
|
||||
//Micropython setup
|
||||
|
||||
#define MICROPY_HW_BOARD_NAME "microS2"
|
||||
#define MICROPY_HW_MCU_NAME "ESP32S2"
|
||||
|
||||
@ -33,8 +32,20 @@
|
||||
#define MICROPY_HW_BUTTON (&pin_GPIO0)
|
||||
#define MICROPY_HW_NEOPIXEL (&pin_GPIO33)
|
||||
|
||||
// Default bus pins
|
||||
#define DEFAULT_I2C_BUS_SCL (&pin_GPIO1)
|
||||
#define DEFAULT_I2C_BUS_SDA (&pin_GPIO2)
|
||||
|
||||
#define DEFAULT_SPI_BUS_SCK (&pin_GPIO36)
|
||||
#define DEFAULT_SPI_BUS_MOSI (&pin_GPIO35)
|
||||
#define DEFAULT_SPI_BUS_MISO (&pin_GPIO37)
|
||||
|
||||
#define DEFAULT_UART_BUS_TX (&pin_GPIO43)
|
||||
#define DEFAULT_UART_BUS_RX (&pin_GPIO44)
|
||||
|
||||
#define CIRCUITPY_BOOT_BUTTON (&pin_GPIO0)
|
||||
|
||||
// Explanation of how a user got into safe mode.
|
||||
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing boot button at start up.\n")
|
||||
|
||||
#define AUTORESET_DELAY_MS 500
|
||||
|
51
ports/esp32s2/boards/targett_module_clip_wroom/board.c
Normal file
51
ports/esp32s2/boards/targett_module_clip_wroom/board.c
Normal file
@ -0,0 +1,51 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "boards/board.h"
|
||||
#include "mpconfigboard.h"
|
||||
#include "shared-bindings/microcontroller/Pin.h"
|
||||
|
||||
void board_init(void) {
|
||||
// USB
|
||||
common_hal_never_reset_pin(&pin_GPIO19);
|
||||
common_hal_never_reset_pin(&pin_GPIO20);
|
||||
|
||||
// Debug UART
|
||||
common_hal_never_reset_pin(&pin_GPIO43);
|
||||
common_hal_never_reset_pin(&pin_GPIO44);
|
||||
|
||||
// Crystal
|
||||
common_hal_never_reset_pin(&pin_GPIO15);
|
||||
common_hal_never_reset_pin(&pin_GPIO16);
|
||||
}
|
||||
|
||||
bool board_requests_safe_mode(void) {
|
||||
return false;
|
||||
}
|
||||
|
||||
void reset_board(void) {
|
||||
|
||||
}
|
@ -0,0 +1,40 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2019 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
//Micropython setup
|
||||
|
||||
//Essentially the same as the Saola board but without the neopixel
|
||||
|
||||
#define MICROPY_HW_BOARD_NAME "Targett Module Clip w/Wroom"
|
||||
#define MICROPY_HW_MCU_NAME "ESP32S2"
|
||||
|
||||
//#define MICROPY_HW_NEOPIXEL (&pin_GPIO18)
|
||||
|
||||
#define CIRCUITPY_BOOT_BUTTON (&pin_GPIO0)
|
||||
|
||||
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing boot button at start up.\n")
|
||||
|
||||
#define AUTORESET_DELAY_MS 500
|
@ -0,0 +1,17 @@
|
||||
USB_VID = 0x1209
|
||||
USB_PID = 0x3252
|
||||
USB_PRODUCT = "Targett Module Clip w/Wroom"
|
||||
USB_MANUFACTURER = "Targett"
|
||||
|
||||
INTERNAL_FLASH_FILESYSTEM = 1
|
||||
LONGINT_IMPL = MPZ
|
||||
|
||||
# The default queue depth of 16 overflows on release builds,
|
||||
# so increase it to 32.
|
||||
CFLAGS += -DCFG_TUD_TASK_QUEUE_SZ=32
|
||||
|
||||
CIRCUITPY_ESP_FLASH_MODE=dio
|
||||
CIRCUITPY_ESP_FLASH_FREQ=40m
|
||||
CIRCUITPY_ESP_FLASH_SIZE=4MB
|
||||
|
||||
CIRCUITPY_MODULE=wroom
|
48
ports/esp32s2/boards/targett_module_clip_wroom/pins.c
Normal file
48
ports/esp32s2/boards/targett_module_clip_wroom/pins.c
Normal file
@ -0,0 +1,48 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO0), MP_ROM_PTR(&pin_GPIO0) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO1), MP_ROM_PTR(&pin_GPIO1) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO2), MP_ROM_PTR(&pin_GPIO2) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO3), MP_ROM_PTR(&pin_GPIO3) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO4), MP_ROM_PTR(&pin_GPIO4) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO5), MP_ROM_PTR(&pin_GPIO5) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO6), MP_ROM_PTR(&pin_GPIO6) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO7), MP_ROM_PTR(&pin_GPIO7) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO8), MP_ROM_PTR(&pin_GPIO8) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO9), MP_ROM_PTR(&pin_GPIO9) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO10), MP_ROM_PTR(&pin_GPIO10) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO11), MP_ROM_PTR(&pin_GPIO11) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO12), MP_ROM_PTR(&pin_GPIO12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO13), MP_ROM_PTR(&pin_GPIO13) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO14), MP_ROM_PTR(&pin_GPIO14) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO15), MP_ROM_PTR(&pin_GPIO15) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO16), MP_ROM_PTR(&pin_GPIO16) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO17), MP_ROM_PTR(&pin_GPIO17) },
|
||||
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO18), MP_ROM_PTR(&pin_GPIO18) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO19), MP_ROM_PTR(&pin_GPIO19) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO20), MP_ROM_PTR(&pin_GPIO20) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO21), MP_ROM_PTR(&pin_GPIO21) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO26), MP_ROM_PTR(&pin_GPIO26) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO33), MP_ROM_PTR(&pin_GPIO33) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO34), MP_ROM_PTR(&pin_GPIO34) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO35), MP_ROM_PTR(&pin_GPIO35) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO36), MP_ROM_PTR(&pin_GPIO36) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO37), MP_ROM_PTR(&pin_GPIO37) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO38), MP_ROM_PTR(&pin_GPIO38) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO39), MP_ROM_PTR(&pin_GPIO39) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO40), MP_ROM_PTR(&pin_GPIO40) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO41), MP_ROM_PTR(&pin_GPIO41) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO42), MP_ROM_PTR(&pin_GPIO42) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_GPIO43) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO43), MP_ROM_PTR(&pin_GPIO43) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_GPIO44) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO44), MP_ROM_PTR(&pin_GPIO44) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO45), MP_ROM_PTR(&pin_GPIO45) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO46), MP_ROM_PTR(&pin_GPIO46) },
|
||||
|
||||
//{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_GPIO18) },
|
||||
};
|
||||
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);
|
51
ports/esp32s2/boards/targett_module_clip_wrover/board.c
Normal file
51
ports/esp32s2/boards/targett_module_clip_wrover/board.c
Normal file
@ -0,0 +1,51 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "boards/board.h"
|
||||
#include "mpconfigboard.h"
|
||||
#include "shared-bindings/microcontroller/Pin.h"
|
||||
|
||||
void board_init(void) {
|
||||
// USB
|
||||
common_hal_never_reset_pin(&pin_GPIO19);
|
||||
common_hal_never_reset_pin(&pin_GPIO20);
|
||||
|
||||
// Debug UART
|
||||
common_hal_never_reset_pin(&pin_GPIO43);
|
||||
common_hal_never_reset_pin(&pin_GPIO44);
|
||||
|
||||
//Crystal
|
||||
common_hal_never_reset_pin(&pin_GPIO15);
|
||||
common_hal_never_reset_pin(&pin_GPIO16);
|
||||
}
|
||||
|
||||
bool board_requests_safe_mode(void) {
|
||||
return false;
|
||||
}
|
||||
|
||||
void reset_board(void) {
|
||||
|
||||
}
|
@ -0,0 +1,40 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2019 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
//Micropython setup
|
||||
|
||||
//Same setup as the Saola board but with no Neopixel on board
|
||||
|
||||
#define MICROPY_HW_BOARD_NAME "Targett Module Clip w/Wrover"
|
||||
#define MICROPY_HW_MCU_NAME "ESP32S2"
|
||||
|
||||
//#define MICROPY_HW_NEOPIXEL (&pin_GPIO18)
|
||||
|
||||
#define CIRCUITPY_BOOT_BUTTON (&pin_GPIO0)
|
||||
|
||||
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing boot button at start up.\n")
|
||||
|
||||
#define AUTORESET_DELAY_MS 500
|
@ -0,0 +1,17 @@
|
||||
USB_VID = 0x1209
|
||||
USB_PID = 0x3253
|
||||
USB_PRODUCT = "Targett Module Clip w/Wrover"
|
||||
USB_MANUFACTURER = "Targett"
|
||||
|
||||
INTERNAL_FLASH_FILESYSTEM = 1
|
||||
LONGINT_IMPL = MPZ
|
||||
|
||||
# The default queue depth of 16 overflows on release builds,
|
||||
# so increase it to 32.
|
||||
CFLAGS += -DCFG_TUD_TASK_QUEUE_SZ=32
|
||||
|
||||
CIRCUITPY_ESP_FLASH_MODE=dio
|
||||
CIRCUITPY_ESP_FLASH_FREQ=40m
|
||||
CIRCUITPY_ESP_FLASH_SIZE=4MB
|
||||
|
||||
CIRCUITPY_MODULE=wrover
|
48
ports/esp32s2/boards/targett_module_clip_wrover/pins.c
Normal file
48
ports/esp32s2/boards/targett_module_clip_wrover/pins.c
Normal file
@ -0,0 +1,48 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO0), MP_ROM_PTR(&pin_GPIO0) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO1), MP_ROM_PTR(&pin_GPIO1) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO2), MP_ROM_PTR(&pin_GPIO2) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO3), MP_ROM_PTR(&pin_GPIO3) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO4), MP_ROM_PTR(&pin_GPIO4) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO5), MP_ROM_PTR(&pin_GPIO5) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO6), MP_ROM_PTR(&pin_GPIO6) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO7), MP_ROM_PTR(&pin_GPIO7) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO8), MP_ROM_PTR(&pin_GPIO8) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO9), MP_ROM_PTR(&pin_GPIO9) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO10), MP_ROM_PTR(&pin_GPIO10) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO11), MP_ROM_PTR(&pin_GPIO11) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO12), MP_ROM_PTR(&pin_GPIO12) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO13), MP_ROM_PTR(&pin_GPIO13) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO14), MP_ROM_PTR(&pin_GPIO14) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO15), MP_ROM_PTR(&pin_GPIO15) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO16), MP_ROM_PTR(&pin_GPIO16) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO17), MP_ROM_PTR(&pin_GPIO17) },
|
||||
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO18), MP_ROM_PTR(&pin_GPIO18) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO19), MP_ROM_PTR(&pin_GPIO19) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO20), MP_ROM_PTR(&pin_GPIO20) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO21), MP_ROM_PTR(&pin_GPIO21) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO26), MP_ROM_PTR(&pin_GPIO26) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO33), MP_ROM_PTR(&pin_GPIO33) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO34), MP_ROM_PTR(&pin_GPIO34) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO35), MP_ROM_PTR(&pin_GPIO35) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO36), MP_ROM_PTR(&pin_GPIO36) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO37), MP_ROM_PTR(&pin_GPIO37) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO38), MP_ROM_PTR(&pin_GPIO38) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO39), MP_ROM_PTR(&pin_GPIO39) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO40), MP_ROM_PTR(&pin_GPIO40) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO41), MP_ROM_PTR(&pin_GPIO41) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO42), MP_ROM_PTR(&pin_GPIO42) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_GPIO43) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO43), MP_ROM_PTR(&pin_GPIO43) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_GPIO44) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO44), MP_ROM_PTR(&pin_GPIO44) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO45), MP_ROM_PTR(&pin_GPIO45) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO46), MP_ROM_PTR(&pin_GPIO46) },
|
||||
|
||||
//{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_GPIO18) },
|
||||
};
|
||||
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);
|
33
ports/esp32s2/boards/targett_module_clip_wrover/sdkconfig
Normal file
33
ports/esp32s2/boards/targett_module_clip_wrover/sdkconfig
Normal file
@ -0,0 +1,33 @@
|
||||
CONFIG_ESP32S2_SPIRAM_SUPPORT=y
|
||||
|
||||
#
|
||||
# SPI RAM config
|
||||
#
|
||||
# CONFIG_SPIRAM_TYPE_AUTO is not set
|
||||
CONFIG_SPIRAM_TYPE_ESPPSRAM16=y
|
||||
# CONFIG_SPIRAM_TYPE_ESPPSRAM32 is not set
|
||||
# CONFIG_SPIRAM_TYPE_ESPPSRAM64 is not set
|
||||
CONFIG_SPIRAM_SIZE=2097152
|
||||
|
||||
#
|
||||
# PSRAM clock and cs IO for ESP32S2
|
||||
#
|
||||
CONFIG_DEFAULT_PSRAM_CLK_IO=30
|
||||
CONFIG_DEFAULT_PSRAM_CS_IO=26
|
||||
# end of PSRAM clock and cs IO for ESP32S2
|
||||
|
||||
# CONFIG_SPIRAM_FETCH_INSTRUCTIONS is not set
|
||||
# CONFIG_SPIRAM_RODATA is not set
|
||||
# CONFIG_SPIRAM_SPEED_80M is not set
|
||||
CONFIG_SPIRAM_SPEED_40M=y
|
||||
# CONFIG_SPIRAM_SPEED_26M is not set
|
||||
# CONFIG_SPIRAM_SPEED_20M is not set
|
||||
CONFIG_SPIRAM=y
|
||||
CONFIG_SPIRAM_BOOT_INIT=y
|
||||
# CONFIG_SPIRAM_IGNORE_NOTFOUND is not set
|
||||
CONFIG_SPIRAM_USE_MEMMAP=y
|
||||
# CONFIG_SPIRAM_USE_CAPS_ALLOC is not set
|
||||
# CONFIG_SPIRAM_USE_MALLOC is not set
|
||||
CONFIG_SPIRAM_MEMTEST=y
|
||||
# CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY is not set
|
||||
# end of SPI RAM config
|
@ -37,3 +37,13 @@
|
||||
|
||||
// #define MICROPY_HW_APA102_MOSI (&pin_GPIO40)
|
||||
// #define MICROPY_HW_APA102_SCK (&pin_GPIO45)
|
||||
|
||||
#define DEFAULT_I2C_BUS_SCL (&pin_GPIO9)
|
||||
#define DEFAULT_I2C_BUS_SDA (&pin_GPIO8)
|
||||
|
||||
#define DEFAULT_SPI_BUS_SCK (&pin_GPIO36)
|
||||
#define DEFAULT_SPI_BUS_MOSI (&pin_GPIO35)
|
||||
#define DEFAULT_SPI_BUS_MISO (&pin_GPIO37)
|
||||
|
||||
#define DEFAULT_UART_BUS_RX (&pin_GPIO44)
|
||||
#define DEFAULT_UART_BUS_TX (&pin_GPIO43)
|
||||
|
@ -46,11 +46,11 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_GPIO43) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_GPIO43) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_GPIO38) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_GPIO38) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO38), MP_ROM_PTR(&pin_GPIO38) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D21), MP_ROM_PTR(&pin_GPIO38) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_GPIO33) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_GPIO33) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO33), MP_ROM_PTR(&pin_GPIO33) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D20), MP_ROM_PTR(&pin_GPIO33) },
|
||||
|
||||
|
@ -357,6 +357,9 @@ bool common_hal_busio_spi_transfer(busio_spi_obj_t *self, const uint8_t *data_ou
|
||||
} else {
|
||||
hal->dma_enabled = 0;
|
||||
burst_length = sizeof(hal->hw->data_buf);
|
||||
// When switching to non-DMA, we need to make sure DMA is off. Otherwise,
|
||||
// the S2 will transmit zeroes instead of our data.
|
||||
spi_ll_txdma_disable(hal->hw);
|
||||
}
|
||||
|
||||
// This rounds up.
|
||||
|
295
ports/esp32s2/common-hal/canio/CAN.c
Normal file
295
ports/esp32s2/common-hal/canio/CAN.c
Normal file
@ -0,0 +1,295 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 Jeff Epler for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#include "py/runtime.h"
|
||||
#include "py/mperrno.h"
|
||||
|
||||
#include "common-hal/canio/CAN.h"
|
||||
#include "shared-bindings/microcontroller/Pin.h"
|
||||
#include "shared-bindings/util.h"
|
||||
#include "supervisor/port.h"
|
||||
|
||||
#include "hal/twai_types.h"
|
||||
|
||||
STATIC bool reserved_can;
|
||||
|
||||
twai_timing_config_t get_t_config(int baudrate) {
|
||||
switch(baudrate) {
|
||||
case 1000000:
|
||||
{
|
||||
// TWAI_TIMING_CONFIG_abc expands to a C designated initializer list
|
||||
// { .brp = 4, ...}. This is only acceptable to the compiler as an
|
||||
// initializer and 'return TWAI_TIMING_CONFIG_1MBITS()` is not valid.
|
||||
// Instead, introduce a temporary, named variable and return it.
|
||||
twai_timing_config_t t_config = TWAI_TIMING_CONFIG_1MBITS();
|
||||
return t_config;
|
||||
}
|
||||
case 800000:
|
||||
{
|
||||
twai_timing_config_t t_config = TWAI_TIMING_CONFIG_800KBITS();
|
||||
return t_config;
|
||||
}
|
||||
case 500000:
|
||||
{
|
||||
twai_timing_config_t t_config = TWAI_TIMING_CONFIG_500KBITS();
|
||||
return t_config;
|
||||
}
|
||||
case 250000:
|
||||
{
|
||||
twai_timing_config_t t_config = TWAI_TIMING_CONFIG_250KBITS();
|
||||
return t_config;
|
||||
}
|
||||
case 125000:
|
||||
{
|
||||
twai_timing_config_t t_config = TWAI_TIMING_CONFIG_125KBITS();
|
||||
return t_config;
|
||||
}
|
||||
case 100000:
|
||||
{
|
||||
twai_timing_config_t t_config = TWAI_TIMING_CONFIG_100KBITS();
|
||||
return t_config;
|
||||
}
|
||||
case 50000:
|
||||
{
|
||||
twai_timing_config_t t_config = TWAI_TIMING_CONFIG_50KBITS();
|
||||
return t_config;
|
||||
}
|
||||
case 25000:
|
||||
{
|
||||
twai_timing_config_t t_config = TWAI_TIMING_CONFIG_25KBITS();
|
||||
return t_config;
|
||||
}
|
||||
case 20000:
|
||||
{
|
||||
twai_timing_config_t t_config = TWAI_TIMING_CONFIG_20KBITS();
|
||||
return t_config;
|
||||
}
|
||||
case 16000:
|
||||
{
|
||||
twai_timing_config_t t_config = TWAI_TIMING_CONFIG_16KBITS();
|
||||
return t_config;
|
||||
}
|
||||
case 12500:
|
||||
{
|
||||
twai_timing_config_t t_config = TWAI_TIMING_CONFIG_12_5KBITS();
|
||||
return t_config;
|
||||
}
|
||||
case 10000:
|
||||
{
|
||||
twai_timing_config_t t_config = TWAI_TIMING_CONFIG_10KBITS();
|
||||
return t_config;
|
||||
}
|
||||
case 5000:
|
||||
{
|
||||
twai_timing_config_t t_config = TWAI_TIMING_CONFIG_5KBITS();
|
||||
return t_config;
|
||||
}
|
||||
case 1000:
|
||||
{
|
||||
twai_timing_config_t t_config = TWAI_TIMING_CONFIG_1KBITS();
|
||||
return t_config;
|
||||
}
|
||||
default:
|
||||
mp_raise_ValueError(translate("Baudrate not supported by peripheral"));
|
||||
}
|
||||
}
|
||||
|
||||
void common_hal_canio_can_construct(canio_can_obj_t *self, mcu_pin_obj_t *tx, mcu_pin_obj_t *rx, int baudrate, bool loopback, bool silent)
|
||||
{
|
||||
#define DIV_ROUND(a, b) (((a) + (b)/2) / (b))
|
||||
#define DIV_ROUND_UP(a, b) (((a) + (b) - 1) / (b))
|
||||
if (reserved_can) {
|
||||
mp_raise_ValueError(translate("All CAN peripherals are in use"));
|
||||
}
|
||||
|
||||
if (loopback && silent) {
|
||||
mp_raise_ValueError(translate("loopback + silent mode not supported by peripheral"));
|
||||
}
|
||||
|
||||
twai_timing_config_t t_config = get_t_config(baudrate);
|
||||
twai_general_config_t g_config = TWAI_GENERAL_CONFIG_DEFAULT(-1, -1, TWAI_MODE_NORMAL);
|
||||
g_config.tx_io = tx->number;
|
||||
g_config.rx_io = rx->number;
|
||||
if (loopback) {
|
||||
g_config.mode = TWAI_MODE_NO_ACK;
|
||||
}
|
||||
if (silent) {
|
||||
g_config.mode = TWAI_MODE_LISTEN_ONLY;
|
||||
}
|
||||
|
||||
twai_filter_config_t f_config = TWAI_FILTER_CONFIG_ACCEPT_ALL();
|
||||
|
||||
esp_err_t result = twai_driver_install(&g_config, &t_config, &f_config);
|
||||
if (result == ESP_ERR_NO_MEM) {
|
||||
mp_raise_msg(&mp_type_MemoryError, translate("ESP-IDF memory allocation failed"));
|
||||
} else if (result == ESP_ERR_INVALID_ARG) {
|
||||
mp_raise_ValueError(translate("Invalid pins"));
|
||||
} else if (result != ESP_OK) {
|
||||
mp_raise_OSError_msg_varg(translate("twai_driver_install returned esp-idf error #%d"), (int)result);
|
||||
}
|
||||
|
||||
result = twai_start();
|
||||
if (result != ESP_OK) {
|
||||
mp_raise_OSError_msg_varg(translate("twai_start returned esp-idf error #%d"), (int)result);
|
||||
}
|
||||
|
||||
self->silent = silent;
|
||||
self->loopback = loopback;
|
||||
self->baudrate = baudrate;
|
||||
self->tx_pin = tx;
|
||||
self->rx_pin = rx;
|
||||
|
||||
claim_pin(tx);
|
||||
claim_pin(rx);
|
||||
|
||||
reserved_can = true;
|
||||
}
|
||||
|
||||
bool common_hal_canio_can_loopback_get(canio_can_obj_t *self)
|
||||
{
|
||||
return self->loopback;
|
||||
}
|
||||
|
||||
int common_hal_canio_can_baudrate_get(canio_can_obj_t *self)
|
||||
{
|
||||
return self->baudrate;
|
||||
}
|
||||
|
||||
int common_hal_canio_can_transmit_error_count_get(canio_can_obj_t *self)
|
||||
{
|
||||
twai_status_info_t info;
|
||||
twai_get_status_info(&info);
|
||||
return info.tx_error_counter;
|
||||
}
|
||||
|
||||
int common_hal_canio_can_receive_error_count_get(canio_can_obj_t *self)
|
||||
{
|
||||
twai_status_info_t info;
|
||||
twai_get_status_info(&info);
|
||||
return info.rx_error_counter;
|
||||
}
|
||||
|
||||
canio_bus_state_t common_hal_canio_can_state_get(canio_can_obj_t *self) {
|
||||
twai_status_info_t info;
|
||||
twai_get_status_info(&info);
|
||||
if (info.state == TWAI_STATE_BUS_OFF || info.state == TWAI_STATE_RECOVERING) {
|
||||
return BUS_STATE_OFF;
|
||||
}
|
||||
if (info.tx_error_counter > 127 || info.rx_error_counter > 127) {
|
||||
return BUS_STATE_ERROR_PASSIVE;
|
||||
}
|
||||
if (info.tx_error_counter > 96 || info.rx_error_counter > 96) {
|
||||
return BUS_STATE_ERROR_WARNING;
|
||||
}
|
||||
return BUS_STATE_ERROR_ACTIVE;
|
||||
}
|
||||
|
||||
static void can_restart(void) {
|
||||
twai_status_info_t info;
|
||||
twai_get_status_info(&info);
|
||||
if (info.state != TWAI_STATE_BUS_OFF) {
|
||||
return;
|
||||
}
|
||||
twai_initiate_recovery();
|
||||
// wait 100ms (hard coded for now) for bus to recover
|
||||
uint64_t deadline = port_get_raw_ticks(NULL) + 100;
|
||||
do {
|
||||
twai_get_status_info(&info);
|
||||
} while (port_get_raw_ticks(NULL) < deadline && (info.state == TWAI_STATE_BUS_OFF || info.state == TWAI_STATE_RECOVERING));
|
||||
}
|
||||
|
||||
void canio_maybe_auto_restart(canio_can_obj_t *self) {
|
||||
if (self->auto_restart) can_restart();
|
||||
}
|
||||
|
||||
void common_hal_canio_can_restart(canio_can_obj_t *self) {
|
||||
if (!common_hal_canio_can_auto_restart_get(self)) {
|
||||
can_restart();
|
||||
}
|
||||
}
|
||||
|
||||
bool common_hal_canio_can_auto_restart_get(canio_can_obj_t *self) {
|
||||
return self->auto_restart;
|
||||
}
|
||||
|
||||
void common_hal_canio_can_auto_restart_set(canio_can_obj_t *self, bool value) {
|
||||
self->auto_restart = value;
|
||||
canio_maybe_auto_restart(self);
|
||||
}
|
||||
|
||||
void common_hal_canio_can_send(canio_can_obj_t *self, mp_obj_t message_in)
|
||||
{
|
||||
canio_maybe_auto_restart(self);
|
||||
canio_message_obj_t *message = message_in;
|
||||
bool rtr = message->base.type == &canio_remote_transmission_request_type;
|
||||
twai_message_t message_out = {
|
||||
.extd = message->extended,
|
||||
.rtr = rtr,
|
||||
.self = self->loopback,
|
||||
.identifier = message->id,
|
||||
.data_length_code = message->size,
|
||||
};
|
||||
if (!rtr) {
|
||||
memcpy(message_out.data, message->data, message->size);
|
||||
}
|
||||
// Allow transmission to occur in background
|
||||
twai_transmit(&message_out, 0);
|
||||
}
|
||||
|
||||
bool common_hal_canio_can_silent_get(canio_can_obj_t *self) {
|
||||
return self->silent;
|
||||
}
|
||||
|
||||
bool common_hal_canio_can_deinited(canio_can_obj_t *self) {
|
||||
return !self->tx_pin;
|
||||
}
|
||||
|
||||
void common_hal_canio_can_check_for_deinit(canio_can_obj_t *self) {
|
||||
if (common_hal_canio_can_deinited(self)) {
|
||||
raise_deinited_error();
|
||||
}
|
||||
}
|
||||
|
||||
void common_hal_canio_can_deinit(canio_can_obj_t *self)
|
||||
{
|
||||
if (self->tx_pin) {
|
||||
(void)twai_stop();
|
||||
(void)twai_driver_uninstall();
|
||||
reset_pin_number(self->tx_pin->number);
|
||||
reset_pin_number(self->rx_pin->number);
|
||||
reserved_can = false;
|
||||
}
|
||||
self->tx_pin = NULL;
|
||||
self->rx_pin = NULL;
|
||||
}
|
||||
|
||||
void common_hal_canio_reset(void) {
|
||||
(void)twai_stop();
|
||||
(void)twai_driver_uninstall();
|
||||
reserved_can = false;
|
||||
}
|
49
ports/esp32s2/common-hal/canio/CAN.h
Normal file
49
ports/esp32s2/common-hal/canio/CAN.h
Normal file
@ -0,0 +1,49 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 Jeff Epler for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "py/obj.h"
|
||||
#include "shared-bindings/canio/__init__.h"
|
||||
#include "shared-bindings/canio/CAN.h"
|
||||
#include "common-hal/microcontroller/Pin.h"
|
||||
#include "common-hal/canio/__init__.h"
|
||||
#include "shared-module/canio/Message.h"
|
||||
|
||||
#include "driver/twai.h"
|
||||
|
||||
#define FILTER_BANK_COUNT (28)
|
||||
|
||||
typedef struct canio_can_obj {
|
||||
mp_obj_base_t base;
|
||||
int baudrate;
|
||||
const mcu_pin_obj_t *rx_pin;
|
||||
const mcu_pin_obj_t *tx_pin;
|
||||
bool loopback:1;
|
||||
bool silent:1;
|
||||
bool auto_restart:1;
|
||||
bool fifo_in_use:1;
|
||||
} canio_can_obj_t;
|
182
ports/esp32s2/common-hal/canio/Listener.c
Normal file
182
ports/esp32s2/common-hal/canio/Listener.c
Normal file
@ -0,0 +1,182 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 Jeff Epler for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include <math.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "py/obj.h"
|
||||
#include "py/runtime.h"
|
||||
|
||||
#include "common-hal/canio/__init__.h"
|
||||
#include "common-hal/canio/Listener.h"
|
||||
#include "shared-bindings/canio/Listener.h"
|
||||
#include "shared-bindings/util.h"
|
||||
#include "supervisor/shared/tick.h"
|
||||
#include "supervisor/shared/safe_mode.h"
|
||||
|
||||
#include "hal/twai_ll.h"
|
||||
|
||||
// IDE = "extended ID" flag of packet header. We always add this bit to the
|
||||
// mask because a match is always for just one kind of address length
|
||||
#define FILTER16_IDE (1<<3)
|
||||
#define FILTER32_IDE (1<<2)
|
||||
|
||||
// Work around a problem reported at
|
||||
// https://github.com/espressif/esp-idf/issues/6020 where
|
||||
// twai_ll_set_acc_filter does not work under -Os optimization
|
||||
__attribute__((optimize("O0")))
|
||||
__attribute__((noinline))
|
||||
static void canio_set_acc_filter(twai_dev_t* hw, uint32_t code, uint32_t mask, bool single_filter)
|
||||
{
|
||||
uint32_t code_swapped = __builtin_bswap32(code);
|
||||
uint32_t mask_swapped = __builtin_bswap32(mask);
|
||||
for (int i = 0; i < 4; i++) {
|
||||
hw->acceptance_filter.acr[i].val = ((code_swapped >> (i * 8)) & 0xFF);
|
||||
hw->acceptance_filter.amr[i].val = ((mask_swapped >> (i * 8)) & 0xFF);
|
||||
}
|
||||
hw->mode_reg.afm = single_filter;
|
||||
}
|
||||
|
||||
STATIC void install_standard_filter(canio_listener_obj_t *self, canio_match_obj_t *match) {
|
||||
canio_set_acc_filter(&TWAI, match->id << 21, ~(match->mask << 21), true);
|
||||
self->extended = false;
|
||||
self->standard = true;
|
||||
}
|
||||
|
||||
STATIC void install_extended_filter(canio_listener_obj_t *self, canio_match_obj_t *match) {
|
||||
canio_set_acc_filter(&TWAI, match->id << 3, ~(match->mask << 3), true);
|
||||
self->extended = true;
|
||||
self->standard = false;
|
||||
}
|
||||
|
||||
STATIC void install_all_match_filter(canio_listener_obj_t *self) {
|
||||
canio_set_acc_filter(&TWAI, 0u, ~0u, true);
|
||||
self->extended = true;
|
||||
self->standard = true;
|
||||
}
|
||||
|
||||
__attribute__((noinline,optimize("O0")))
|
||||
void set_filters(canio_listener_obj_t *self, size_t nmatch, canio_match_obj_t **matches) {
|
||||
twai_ll_enter_reset_mode(&TWAI);
|
||||
|
||||
if (!nmatch) {
|
||||
install_all_match_filter(self);
|
||||
} else {
|
||||
canio_match_obj_t *match = matches[0];
|
||||
if (match->extended) {
|
||||
install_extended_filter(self, match);
|
||||
} else {
|
||||
install_standard_filter(self, match);
|
||||
}
|
||||
}
|
||||
|
||||
twai_ll_exit_reset_mode(&TWAI);
|
||||
}
|
||||
|
||||
|
||||
void common_hal_canio_listener_construct(canio_listener_obj_t *self, canio_can_obj_t *can, size_t nmatch, canio_match_obj_t **matches, float timeout) {
|
||||
if (can->fifo_in_use) {
|
||||
mp_raise_ValueError(translate("All RX FIFOs in use"));
|
||||
}
|
||||
if (nmatch > 1) {
|
||||
mp_raise_ValueError(translate("Filters too complex"));
|
||||
}
|
||||
|
||||
// Nothing can fail now so it's safe to assign self->can
|
||||
can->fifo_in_use = 1;
|
||||
self->can = can;
|
||||
self->pending = false;
|
||||
|
||||
set_filters(self, nmatch, matches);
|
||||
self->extended = self->standard = true;
|
||||
|
||||
common_hal_canio_listener_set_timeout(self, timeout);
|
||||
}
|
||||
|
||||
void common_hal_canio_listener_set_timeout(canio_listener_obj_t *self, float timeout) {
|
||||
self->timeout_ms = (int)MICROPY_FLOAT_C_FUN(ceil)(timeout * 1000);
|
||||
}
|
||||
|
||||
float common_hal_canio_listener_get_timeout(canio_listener_obj_t *self) {
|
||||
return self->timeout_ms / 1000.0f;
|
||||
}
|
||||
|
||||
void common_hal_canio_listener_check_for_deinit(canio_listener_obj_t *self) {
|
||||
if (!self->can) {
|
||||
raise_deinited_error();
|
||||
}
|
||||
common_hal_canio_can_check_for_deinit(self->can);
|
||||
}
|
||||
|
||||
// The API has no peek method so we must receive a packet into a holding area
|
||||
// and then we can say that we have 1 message pending
|
||||
int common_hal_canio_listener_in_waiting(canio_listener_obj_t *self) {
|
||||
while (!self->pending && twai_receive(&self->message_in, 0) == ESP_OK) {
|
||||
if (self->message_in.extd && self->extended) {
|
||||
self->pending = true;
|
||||
}
|
||||
if (!self->message_in.extd && self->standard) {
|
||||
self->pending = true;
|
||||
}
|
||||
}
|
||||
return self->pending;
|
||||
}
|
||||
|
||||
mp_obj_t common_hal_canio_listener_receive(canio_listener_obj_t *self) {
|
||||
if (!common_hal_canio_listener_in_waiting(self)) {
|
||||
uint64_t deadline = supervisor_ticks_ms64() + self->timeout_ms;
|
||||
do {
|
||||
if (supervisor_ticks_ms64() > deadline) {
|
||||
return NULL;
|
||||
}
|
||||
} while (!common_hal_canio_listener_in_waiting(self));
|
||||
}
|
||||
|
||||
bool rtr = self->message_in.rtr;
|
||||
|
||||
int dlc = self->message_in.data_length_code;
|
||||
canio_message_obj_t *message = m_new_obj(canio_message_obj_t);
|
||||
message->base.type = rtr ? &canio_remote_transmission_request_type : &canio_message_type;
|
||||
message->extended = self->message_in.extd;
|
||||
message->id = self->message_in.identifier;
|
||||
message->size = dlc;
|
||||
|
||||
if (!rtr) {
|
||||
MP_STATIC_ASSERT(sizeof(self->message_in.data) == sizeof(message->data));
|
||||
memcpy(message->data, self->message_in.data, sizeof(message->data));
|
||||
}
|
||||
|
||||
self->pending = false;
|
||||
|
||||
return message;
|
||||
}
|
||||
|
||||
void common_hal_canio_listener_deinit(canio_listener_obj_t *self) {
|
||||
if (self->can) {
|
||||
self->can->fifo_in_use = false;
|
||||
}
|
||||
self->can = NULL;
|
||||
}
|
40
ports/esp32s2/common-hal/canio/Listener.h
Normal file
40
ports/esp32s2/common-hal/canio/Listener.h
Normal file
@ -0,0 +1,40 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 Jeff Epler for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "common-hal/canio/CAN.h"
|
||||
#include "shared-module/canio/Match.h"
|
||||
|
||||
typedef struct canio_listener_obj {
|
||||
mp_obj_base_t base;
|
||||
canio_can_obj_t *can;
|
||||
bool extended:1;
|
||||
bool standard:1;
|
||||
bool pending:1;
|
||||
twai_message_t message_in;
|
||||
uint32_t timeout_ms;
|
||||
} canio_listener_obj_t;
|
25
ports/esp32s2/common-hal/canio/__init__.c
Normal file
25
ports/esp32s2/common-hal/canio/__init__.c
Normal file
@ -0,0 +1,25 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 Jeff Epler for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
27
ports/esp32s2/common-hal/canio/__init__.h
Normal file
27
ports/esp32s2/common-hal/canio/__init__.h
Normal file
@ -0,0 +1,27 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 Jeff Epler for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#pragma once
|
84
ports/esp32s2/common-hal/countio/Counter.c
Normal file
84
ports/esp32s2/common-hal/countio/Counter.c
Normal file
@ -0,0 +1,84 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 microDev
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "common-hal/countio/Counter.h"
|
||||
#include "common-hal/microcontroller/Pin.h"
|
||||
|
||||
#include "py/runtime.h"
|
||||
#include "supervisor/shared/translate.h"
|
||||
|
||||
void common_hal_countio_counter_construct(countio_counter_obj_t* self,
|
||||
const mcu_pin_obj_t* pin) {
|
||||
claim_pin(pin);
|
||||
|
||||
// Prepare configuration for the PCNT unit
|
||||
const pcnt_config_t pcnt_config = {
|
||||
// Set PCNT input signal and control GPIOs
|
||||
.pulse_gpio_num = pin->number,
|
||||
.ctrl_gpio_num = PCNT_PIN_NOT_USED,
|
||||
.channel = PCNT_CHANNEL_0,
|
||||
// What to do on the positive / negative edge of pulse input?
|
||||
.pos_mode = PCNT_COUNT_INC, // Count up on the positive edge
|
||||
.neg_mode = PCNT_COUNT_DIS, // Keep the counter value on the negative edge
|
||||
};
|
||||
|
||||
// Initialize PCNT unit
|
||||
const int8_t unit = peripherals_pcnt_init(pcnt_config);
|
||||
if (unit == -1) {
|
||||
mp_raise_RuntimeError(translate("All PCNT units in use"));
|
||||
}
|
||||
|
||||
self->pin = pin->number;
|
||||
self->unit = (pcnt_unit_t)unit;
|
||||
}
|
||||
|
||||
bool common_hal_countio_counter_deinited(countio_counter_obj_t* self) {
|
||||
return self->unit == PCNT_UNIT_MAX;
|
||||
}
|
||||
|
||||
void common_hal_countio_counter_deinit(countio_counter_obj_t* self) {
|
||||
if (common_hal_countio_counter_deinited(self)) {
|
||||
return;
|
||||
}
|
||||
reset_pin_number(self->pin);
|
||||
peripherals_pcnt_deinit(&self->unit);
|
||||
}
|
||||
|
||||
mp_int_t common_hal_countio_counter_get_count(countio_counter_obj_t* self) {
|
||||
int16_t count;
|
||||
pcnt_get_counter_value(self->unit, &count);
|
||||
return count+self->count;
|
||||
}
|
||||
|
||||
void common_hal_countio_counter_set_count(countio_counter_obj_t* self,
|
||||
mp_int_t new_count) {
|
||||
self->count = new_count;
|
||||
pcnt_counter_clear(self->unit);
|
||||
}
|
||||
|
||||
void common_hal_countio_counter_reset(countio_counter_obj_t* self) {
|
||||
common_hal_countio_counter_set_count(self, 0);
|
||||
}
|
40
ports/esp32s2/common-hal/countio/Counter.h
Normal file
40
ports/esp32s2/common-hal/countio/Counter.h
Normal file
@ -0,0 +1,40 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 microDev
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef MICROPY_INCLUDED_ESP32S2_COMMON_HAL_COUNTIO_COUNTER_H
|
||||
#define MICROPY_INCLUDED_ESP32S2_COMMON_HAL_COUNTIO_COUNTER_H
|
||||
|
||||
#include "py/obj.h"
|
||||
#include "peripherals/pcnt.h"
|
||||
|
||||
typedef struct {
|
||||
mp_obj_base_t base;
|
||||
uint8_t pin;
|
||||
mp_int_t count;
|
||||
pcnt_unit_t unit;
|
||||
} countio_counter_obj_t;
|
||||
|
||||
#endif // MICROPY_INCLUDED_ESP32S2_COMMON_HAL_COUNTIO_COUNT_H
|
1
ports/esp32s2/common-hal/countio/__init__.c
Normal file
1
ports/esp32s2/common-hal/countio/__init__.c
Normal file
@ -0,0 +1 @@
|
||||
//No countio module functions
|
@ -57,7 +57,8 @@ bool common_hal_displayio_parallelbus_begin_transaction(mp_obj_t obj) {
|
||||
return false;
|
||||
}
|
||||
|
||||
void common_hal_displayio_parallelbus_send(mp_obj_t obj, display_byte_type_t byte_type, display_chip_select_behavior_t chip_select, uint8_t *data, uint32_t data_length) {
|
||||
void common_hal_displayio_parallelbus_send(mp_obj_t obj, display_byte_type_t byte_type,
|
||||
display_chip_select_behavior_t chip_select, const uint8_t *data, uint32_t data_length) {
|
||||
|
||||
}
|
||||
|
||||
|
@ -85,6 +85,17 @@ const mcu_processor_obj_t common_hal_mcu_processor_obj = {
|
||||
},
|
||||
};
|
||||
|
||||
#if CIRCUITPY_WATCHDOG
|
||||
// The singleton watchdog.WatchDogTimer object.
|
||||
watchdog_watchdogtimer_obj_t common_hal_mcu_watchdogtimer_obj = {
|
||||
.base = {
|
||||
.type = &watchdog_watchdogtimer_type,
|
||||
},
|
||||
.timeout = 0.0f,
|
||||
.mode = WATCHDOGMODE_NONE,
|
||||
};
|
||||
#endif
|
||||
|
||||
// This maps MCU pin names to pin objects.
|
||||
STATIC const mp_rom_map_elem_t mcu_pin_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_GPIO0), MP_ROM_PTR(&pin_GPIO0) },
|
||||
|
@ -125,4 +125,6 @@ void common_hal_neopixel_write (const digitalio_digitalinout_obj_t* digitalinout
|
||||
|
||||
// Free channel again
|
||||
esp32s2_peripherals_free_rmt(config.channel);
|
||||
// Swap pin back to GPIO mode
|
||||
gpio_set_direction(digitalinout->pin->number, GPIO_MODE_OUTPUT);
|
||||
}
|
||||
|
@ -77,7 +77,9 @@ void pulsein_reset(void) {
|
||||
for (size_t i = 0; i < RMT_CHANNEL_MAX; i++) {
|
||||
handles[i] = NULL;
|
||||
}
|
||||
supervisor_disable_tick();
|
||||
if (refcount != 0) {
|
||||
supervisor_disable_tick();
|
||||
}
|
||||
refcount = 0;
|
||||
}
|
||||
|
||||
@ -122,8 +124,10 @@ void common_hal_pulseio_pulsein_construct(pulseio_pulsein_obj_t* self, const mcu
|
||||
|
||||
// start RMT RX, and enable ticks so the core doesn't turn off.
|
||||
rmt_rx_start(channel, true);
|
||||
supervisor_enable_tick();
|
||||
refcount++;
|
||||
if (refcount == 1) {
|
||||
supervisor_enable_tick();
|
||||
}
|
||||
}
|
||||
|
||||
bool common_hal_pulseio_pulsein_deinited(pulseio_pulsein_obj_t* self) {
|
||||
|
86
ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
Normal file
86
ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
Normal file
@ -0,0 +1,86 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 microDev
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "common-hal/rotaryio/IncrementalEncoder.h"
|
||||
#include "common-hal/microcontroller/Pin.h"
|
||||
|
||||
#include "py/runtime.h"
|
||||
#include "supervisor/shared/translate.h"
|
||||
|
||||
void common_hal_rotaryio_incrementalencoder_construct(rotaryio_incrementalencoder_obj_t* self,
|
||||
const mcu_pin_obj_t* pin_a, const mcu_pin_obj_t* pin_b) {
|
||||
claim_pin(pin_a);
|
||||
claim_pin(pin_b);
|
||||
|
||||
// Prepare configuration for the PCNT unit
|
||||
const pcnt_config_t pcnt_config = {
|
||||
// Set PCNT input signal and control GPIOs
|
||||
.pulse_gpio_num = pin_a->number,
|
||||
.ctrl_gpio_num = pin_b->number,
|
||||
.channel = PCNT_CHANNEL_0,
|
||||
// What to do on the positive / negative edge of pulse input?
|
||||
.pos_mode = PCNT_COUNT_DEC, // Count up on the positive edge
|
||||
.neg_mode = PCNT_COUNT_INC, // Keep the counter value on the negative edge
|
||||
// What to do when control input is low or high?
|
||||
.lctrl_mode = PCNT_MODE_REVERSE, // Reverse counting direction if low
|
||||
.hctrl_mode = PCNT_MODE_KEEP, // Keep the primary counter mode if high
|
||||
};
|
||||
|
||||
// Initialize PCNT unit
|
||||
const int8_t unit = peripherals_pcnt_init(pcnt_config);
|
||||
if (unit == -1) {
|
||||
mp_raise_RuntimeError(translate("All PCNT units in use"));
|
||||
}
|
||||
|
||||
self->pin_a = pin_a->number;
|
||||
self->pin_b = pin_b->number;
|
||||
self->unit = (pcnt_unit_t)unit;
|
||||
}
|
||||
|
||||
bool common_hal_rotaryio_incrementalencoder_deinited(rotaryio_incrementalencoder_obj_t* self) {
|
||||
return self->unit == PCNT_UNIT_MAX;
|
||||
}
|
||||
|
||||
void common_hal_rotaryio_incrementalencoder_deinit(rotaryio_incrementalencoder_obj_t* self) {
|
||||
if (common_hal_rotaryio_incrementalencoder_deinited(self)) {
|
||||
return;
|
||||
}
|
||||
reset_pin_number(self->pin_a);
|
||||
reset_pin_number(self->pin_b);
|
||||
peripherals_pcnt_deinit(&self->unit);
|
||||
}
|
||||
|
||||
mp_int_t common_hal_rotaryio_incrementalencoder_get_position(rotaryio_incrementalencoder_obj_t* self) {
|
||||
int16_t count;
|
||||
pcnt_get_counter_value(self->unit, &count);
|
||||
return (count/2)+self->position;
|
||||
}
|
||||
|
||||
void common_hal_rotaryio_incrementalencoder_set_position(rotaryio_incrementalencoder_obj_t* self,
|
||||
mp_int_t new_position) {
|
||||
self->position = new_position;
|
||||
pcnt_counter_clear(self->unit);
|
||||
}
|
40
ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.h
Normal file
40
ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.h
Normal file
@ -0,0 +1,40 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 microDev
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef MICROPY_INCLUDED_ESP32S2_COMMON_HAL_ROTARYIO_INCREMENTALENCODER_H
|
||||
#define MICROPY_INCLUDED_ESP32S2_COMMON_HAL_ROTARYIO_INCREMENTALENCODER_H
|
||||
|
||||
#include "py/obj.h"
|
||||
#include "peripherals/pcnt.h"
|
||||
|
||||
typedef struct {
|
||||
mp_obj_base_t base;
|
||||
uint8_t pin_a, pin_b;
|
||||
mp_int_t position;
|
||||
pcnt_unit_t unit;
|
||||
} rotaryio_incrementalencoder_obj_t;
|
||||
|
||||
#endif // MICROPY_INCLUDED_ESP32S2_COMMON_HAL_ROTARYIO_INCREMENTALENCODER_H
|
1
ports/esp32s2/common-hal/rotaryio/__init__.c
Normal file
1
ports/esp32s2/common-hal/rotaryio/__init__.c
Normal file
@ -0,0 +1 @@
|
||||
// No rotaryio module functions.
|
@ -79,15 +79,15 @@ mp_uint_t common_hal_socketpool_socket_send(socketpool_socket_obj_t* self, const
|
||||
|
||||
mp_uint_t common_hal_socketpool_socket_recv_into(socketpool_socket_obj_t* self, const uint8_t* buf, mp_uint_t len) {
|
||||
size_t received = 0;
|
||||
ssize_t last_read = 1;
|
||||
int status = 0;
|
||||
uint64_t start_ticks = supervisor_ticks_ms64();
|
||||
int sockfd;
|
||||
esp_err_t err = esp_tls_get_conn_sockfd(self->tcp, &sockfd);
|
||||
if (err != ESP_OK) {
|
||||
mp_raise_OSError(MP_EBADF);
|
||||
}
|
||||
while (received < len &&
|
||||
last_read > 0 &&
|
||||
while (received == 0 &&
|
||||
status >= 0 &&
|
||||
(self->timeout_ms == 0 || supervisor_ticks_ms64() - start_ticks <= self->timeout_ms) &&
|
||||
!mp_hal_is_interrupted()) {
|
||||
RUN_BACKGROUND_TASKS;
|
||||
@ -95,27 +95,25 @@ mp_uint_t common_hal_socketpool_socket_recv_into(socketpool_socket_obj_t* self,
|
||||
if (available == 0) {
|
||||
// This reads the raw socket buffer and is used for non-TLS connections
|
||||
// and between encrypted TLS blocks.
|
||||
int status = lwip_ioctl(sockfd, FIONREAD, &available);
|
||||
if (status < 0) {
|
||||
last_read = status;
|
||||
break;
|
||||
}
|
||||
status = lwip_ioctl(sockfd, FIONREAD, &available);
|
||||
}
|
||||
size_t remaining = len - received;
|
||||
if (available > remaining) {
|
||||
available = remaining;
|
||||
}
|
||||
if (available > 0) {
|
||||
last_read = esp_tls_conn_read(self->tcp, (void*) buf + received, available);
|
||||
received += last_read;
|
||||
status = esp_tls_conn_read(self->tcp, (void*) buf + received, available);
|
||||
if (status > 0) {
|
||||
received += status;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (last_read == 0) {
|
||||
if (received == 0) {
|
||||
// socket closed
|
||||
common_hal_socketpool_socket_close(self);
|
||||
}
|
||||
if (last_read < 0) {
|
||||
if (status < 0) {
|
||||
mp_raise_BrokenPipeError();
|
||||
}
|
||||
return received;
|
||||
|
96
ports/esp32s2/common-hal/touchio/TouchIn.c
Normal file
96
ports/esp32s2/common-hal/touchio/TouchIn.c
Normal file
@ -0,0 +1,96 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 microDev
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "shared-bindings/touchio/TouchIn.h"
|
||||
#include "py/runtime.h"
|
||||
|
||||
#include "driver/touch_pad.h"
|
||||
|
||||
static uint16_t get_raw_reading(touchio_touchin_obj_t *self) {
|
||||
uint32_t touch_value;
|
||||
touch_pad_read_raw_data((touch_pad_t)self->pin->touch_channel, &touch_value);
|
||||
if (touch_value > UINT16_MAX) {
|
||||
return UINT16_MAX;
|
||||
}
|
||||
return touch_value;
|
||||
}
|
||||
|
||||
void common_hal_touchio_touchin_construct(touchio_touchin_obj_t* self,
|
||||
const mcu_pin_obj_t *pin) {
|
||||
if (pin->touch_channel == TOUCH_PAD_MAX) {
|
||||
mp_raise_ValueError(translate("Invalid pin"));
|
||||
}
|
||||
claim_pin(pin);
|
||||
|
||||
touch_pad_init();
|
||||
touch_pad_config((touch_pad_t)pin->touch_channel);
|
||||
|
||||
touch_pad_set_fsm_mode(TOUCH_FSM_MODE_TIMER);
|
||||
touch_pad_fsm_start();
|
||||
|
||||
// wait for "raw data" to reset
|
||||
mp_hal_delay_ms(10);
|
||||
|
||||
// Initial values for pins will vary, depending on what peripherals the pins
|
||||
// share on-chip.
|
||||
|
||||
// Set a "touched" threshold not too far above the initial value.
|
||||
// For simple finger touch, the values may vary as much as a factor of two,
|
||||
// but for touches using fruit or other objects, the difference is much less.
|
||||
|
||||
self->pin = pin;
|
||||
self->threshold = get_raw_reading(self) + 100;
|
||||
}
|
||||
|
||||
bool common_hal_touchio_touchin_deinited(touchio_touchin_obj_t* self) {
|
||||
return self->pin == NULL;
|
||||
}
|
||||
|
||||
void common_hal_touchio_touchin_deinit(touchio_touchin_obj_t* self) {
|
||||
if (common_hal_touchio_touchin_deinited(self)) {
|
||||
return;
|
||||
}
|
||||
touch_pad_deinit();
|
||||
reset_pin_number(self->pin->touch_channel);
|
||||
self->pin = NULL;
|
||||
}
|
||||
|
||||
bool common_hal_touchio_touchin_get_value(touchio_touchin_obj_t *self) {
|
||||
uint16_t reading = get_raw_reading(self);
|
||||
return reading > self->threshold;
|
||||
}
|
||||
|
||||
uint16_t common_hal_touchio_touchin_get_raw_value(touchio_touchin_obj_t *self) {
|
||||
return get_raw_reading(self);
|
||||
}
|
||||
|
||||
uint16_t common_hal_touchio_touchin_get_threshold(touchio_touchin_obj_t *self) {
|
||||
return self->threshold;
|
||||
}
|
||||
|
||||
void common_hal_touchio_touchin_set_threshold(touchio_touchin_obj_t *self, uint16_t new_threshold) {
|
||||
self->threshold = new_threshold;
|
||||
}
|
42
ports/esp32s2/common-hal/touchio/TouchIn.h
Normal file
42
ports/esp32s2/common-hal/touchio/TouchIn.h
Normal file
@ -0,0 +1,42 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 microDev
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef MICROPY_INCLUDED_ESP32S2_COMMON_HAL_TOUCHIO_TOUCHIN_H
|
||||
#define MICROPY_INCLUDED_ESP32S2_COMMON_HAL_TOUCHIO_TOUCHIN_H
|
||||
|
||||
#include "common-hal/microcontroller/Pin.h"
|
||||
|
||||
#include "py/obj.h"
|
||||
|
||||
typedef struct {
|
||||
mp_obj_base_t base;
|
||||
const mcu_pin_obj_t * pin;
|
||||
uint16_t threshold;
|
||||
} touchio_touchin_obj_t;
|
||||
|
||||
void touchin_reset(void);
|
||||
|
||||
#endif // MICROPY_INCLUDED_ESP32S2_COMMON_HAL_TOUCHIO_TOUCHIN_H
|
1
ports/esp32s2/common-hal/touchio/__init__.c
Normal file
1
ports/esp32s2/common-hal/touchio/__init__.c
Normal file
@ -0,0 +1 @@
|
||||
// No touchio module functions.
|
1
ports/esp32s2/common-hal/watchdog/WatchDogMode.c
Normal file
1
ports/esp32s2/common-hal/watchdog/WatchDogMode.c
Normal file
@ -0,0 +1 @@
|
||||
// No watchdog module functions.
|
93
ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
Normal file
93
ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
Normal file
@ -0,0 +1,93 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 microDev
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "py/runtime.h"
|
||||
#include "common-hal/watchdog/WatchDogTimer.h"
|
||||
|
||||
#include "shared-bindings/watchdog/__init__.h"
|
||||
#include "shared-bindings/microcontroller/__init__.h"
|
||||
|
||||
#include "esp_task_wdt.h"
|
||||
|
||||
void esp_task_wdt_isr_user_handler(void) {
|
||||
mp_obj_exception_clear_traceback(MP_OBJ_FROM_PTR(&mp_watchdog_timeout_exception));
|
||||
MP_STATE_VM(mp_pending_exception) = &mp_watchdog_timeout_exception;
|
||||
#if MICROPY_ENABLE_SCHEDULER
|
||||
if (MP_STATE_VM(sched_state) == MP_SCHED_IDLE) {
|
||||
MP_STATE_VM(sched_state) = MP_SCHED_PENDING;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void common_hal_watchdog_feed(watchdog_watchdogtimer_obj_t *self) {
|
||||
if (esp_task_wdt_reset() != ESP_OK) {
|
||||
mp_raise_RuntimeError(translate("watchdog not initialized"));
|
||||
}
|
||||
}
|
||||
|
||||
void common_hal_watchdog_deinit(watchdog_watchdogtimer_obj_t *self) {
|
||||
if (esp_task_wdt_deinit() == ESP_OK) {
|
||||
self->mode = WATCHDOGMODE_NONE;
|
||||
}
|
||||
}
|
||||
|
||||
void watchdog_reset(void) {
|
||||
common_hal_watchdog_deinit(&common_hal_mcu_watchdogtimer_obj);
|
||||
}
|
||||
|
||||
static void wdt_config(watchdog_watchdogtimer_obj_t *self) {
|
||||
// enable panic hanler in WATCHDOGMODE_RESET mode
|
||||
// initialize Task Watchdog Timer (TWDT)
|
||||
if (esp_task_wdt_init((uint32_t)self->timeout, (self->mode == WATCHDOGMODE_RESET)) != ESP_OK) {
|
||||
mp_raise_RuntimeError(translate("Initialization failed due to lack of memory"));
|
||||
}
|
||||
esp_task_wdt_add(NULL);
|
||||
}
|
||||
|
||||
mp_float_t common_hal_watchdog_get_timeout(watchdog_watchdogtimer_obj_t *self) {
|
||||
return self->timeout;
|
||||
}
|
||||
|
||||
void common_hal_watchdog_set_timeout(watchdog_watchdogtimer_obj_t *self, mp_float_t new_timeout) {
|
||||
if ((uint64_t)new_timeout > UINT32_MAX) {
|
||||
mp_raise_ValueError(translate("timeout duration exceeded the maximum supported value"));
|
||||
}
|
||||
if ((uint32_t)self->timeout != (uint32_t)new_timeout) {
|
||||
self->timeout = new_timeout;
|
||||
wdt_config(self);
|
||||
}
|
||||
}
|
||||
|
||||
watchdog_watchdogmode_t common_hal_watchdog_get_mode(watchdog_watchdogtimer_obj_t *self) {
|
||||
return self->mode;
|
||||
}
|
||||
|
||||
void common_hal_watchdog_set_mode(watchdog_watchdogtimer_obj_t *self, watchdog_watchdogmode_t new_mode) {
|
||||
if (self->mode != new_mode) {
|
||||
self->mode = new_mode;
|
||||
wdt_config(self);
|
||||
}
|
||||
}
|
43
ports/esp32s2/common-hal/watchdog/WatchDogTimer.h
Normal file
43
ports/esp32s2/common-hal/watchdog/WatchDogTimer.h
Normal file
@ -0,0 +1,43 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 microDev
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef MICROPY_INCLUDED_ESP32S2_COMMON_HAL_WATCHDOG_WATCHDOGTIMER_H
|
||||
#define MICROPY_INCLUDED_ESP32S2_COMMON_HAL_WATCHDOG_WATCHDOGTIMER_H
|
||||
|
||||
#include "py/obj.h"
|
||||
#include "shared-bindings/watchdog/WatchDogMode.h"
|
||||
#include "shared-bindings/watchdog/WatchDogTimer.h"
|
||||
|
||||
struct _watchdog_watchdogtimer_obj_t {
|
||||
mp_obj_base_t base;
|
||||
mp_float_t timeout;
|
||||
watchdog_watchdogmode_t mode;
|
||||
};
|
||||
|
||||
// This needs to be called in order to disable the watchdog
|
||||
void watchdog_reset(void);
|
||||
|
||||
#endif // MICROPY_INCLUDED_ESP32S2_COMMON_HAL_WATCHDOG_WATCHDOGTIMER_H
|
1
ports/esp32s2/common-hal/watchdog/__init__.c
Normal file
1
ports/esp32s2/common-hal/watchdog/__init__.c
Normal file
@ -0,0 +1 @@
|
||||
// No watchdog module functions.
|
@ -25,6 +25,7 @@
|
||||
*/
|
||||
|
||||
#include "shared-bindings/wifi/Radio.h"
|
||||
#include "shared-bindings/wifi/Network.h"
|
||||
|
||||
#include <string.h>
|
||||
|
||||
@ -38,6 +39,8 @@
|
||||
#include "components/esp_wifi/include/esp_wifi.h"
|
||||
#include "components/lwip/include/apps/ping/ping_sock.h"
|
||||
|
||||
#define MAC_ADDRESS_LENGTH 6
|
||||
|
||||
static void start_station(wifi_radio_obj_t *self) {
|
||||
if (self->sta_mode) {
|
||||
return;
|
||||
@ -50,6 +53,8 @@ static void start_station(wifi_radio_obj_t *self) {
|
||||
}
|
||||
esp_wifi_set_mode(next_mode);
|
||||
|
||||
self->sta_mode = 1;
|
||||
|
||||
esp_wifi_set_config(WIFI_MODE_STA, &self->sta_config);
|
||||
}
|
||||
|
||||
@ -67,14 +72,14 @@ void common_hal_wifi_radio_set_enabled(wifi_radio_obj_t *self, bool enabled) {
|
||||
return;
|
||||
}
|
||||
if (!self->started && enabled) {
|
||||
// esp_wifi_start() would default to soft-AP, thus setting it to station
|
||||
ESP_ERROR_CHECK(esp_wifi_set_mode(WIFI_MODE_STA));
|
||||
ESP_ERROR_CHECK(esp_wifi_start());
|
||||
self->started = true;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
#define MAC_ADDRESS_LENGTH 6
|
||||
|
||||
mp_obj_t common_hal_wifi_radio_get_mac_address(wifi_radio_obj_t *self) {
|
||||
uint8_t mac[MAC_ADDRESS_LENGTH];
|
||||
esp_wifi_get_mac(ESP_IF_WIFI_STA, mac);
|
||||
@ -162,13 +167,66 @@ wifi_radio_error_t common_hal_wifi_radio_connect(wifi_radio_obj_t *self, uint8_t
|
||||
return WIFI_RADIO_ERROR_NONE;
|
||||
}
|
||||
|
||||
mp_obj_t common_hal_wifi_radio_get_ap_info(wifi_radio_obj_t *self) {
|
||||
if (!esp_netif_is_netif_up(self->netif)) {
|
||||
return mp_const_none;
|
||||
}
|
||||
|
||||
// Make sure the interface is in STA mode
|
||||
if (!self->sta_mode){
|
||||
return mp_const_none;
|
||||
}
|
||||
|
||||
wifi_network_obj_t *ap_info = m_new_obj(wifi_network_obj_t);
|
||||
ap_info->base.type = &wifi_network_type;
|
||||
// From esp_wifi.h, the possible return values (typos theirs):
|
||||
// ESP_OK: succeed
|
||||
// ESP_ERR_WIFI_CONN: The station interface don't initialized
|
||||
// ESP_ERR_WIFI_NOT_CONNECT: The station is in disconnect status
|
||||
if (esp_wifi_sta_get_ap_info(&self->ap_info.record) != ESP_OK){
|
||||
return mp_const_none;
|
||||
} else {
|
||||
memcpy(&ap_info->record, &self->ap_info.record, sizeof(wifi_ap_record_t));
|
||||
return MP_OBJ_FROM_PTR(ap_info);
|
||||
}
|
||||
}
|
||||
|
||||
mp_obj_t common_hal_wifi_radio_get_ipv4_gateway(wifi_radio_obj_t *self) {
|
||||
if (!esp_netif_is_netif_up(self->netif)) {
|
||||
return mp_const_none;
|
||||
}
|
||||
esp_netif_get_ip_info(self->netif, &self->ip_info);
|
||||
return common_hal_ipaddress_new_ipv4address(self->ip_info.gw.addr);
|
||||
}
|
||||
|
||||
mp_obj_t common_hal_wifi_radio_get_ipv4_subnet(wifi_radio_obj_t *self) {
|
||||
if (!esp_netif_is_netif_up(self->netif)) {
|
||||
return mp_const_none;
|
||||
}
|
||||
esp_netif_get_ip_info(self->netif, &self->ip_info);
|
||||
return common_hal_ipaddress_new_ipv4address(self->ip_info.netmask.addr);
|
||||
}
|
||||
|
||||
mp_obj_t common_hal_wifi_radio_get_ipv4_address(wifi_radio_obj_t *self) {
|
||||
if (!esp_netif_is_netif_up(self->netif)) {
|
||||
return mp_const_none;
|
||||
}
|
||||
esp_netif_ip_info_t ip_info;
|
||||
esp_netif_get_ip_info(self->netif, &ip_info);
|
||||
return common_hal_ipaddress_new_ipv4address(ip_info.ip.addr);
|
||||
esp_netif_get_ip_info(self->netif, &self->ip_info);
|
||||
return common_hal_ipaddress_new_ipv4address(self->ip_info.ip.addr);
|
||||
}
|
||||
|
||||
mp_obj_t common_hal_wifi_radio_get_ipv4_dns(wifi_radio_obj_t *self) {
|
||||
if (!esp_netif_is_netif_up(self->netif)) {
|
||||
return mp_const_none;
|
||||
}
|
||||
|
||||
esp_netif_get_dns_info(self->netif, ESP_NETIF_DNS_MAIN, &self->dns_info);
|
||||
|
||||
// dns_info is of type esp_netif_dns_info_t, which is just ever so slightly
|
||||
// different than esp_netif_ip_info_t used for
|
||||
// common_hal_wifi_radio_get_ipv4_address (includes both ipv4 and 6),
|
||||
// so some extra jumping is required to get to the actual address
|
||||
return common_hal_ipaddress_new_ipv4address(self->dns_info.ip.u_addr.ip4.addr);
|
||||
}
|
||||
|
||||
mp_int_t common_hal_wifi_radio_ping(wifi_radio_obj_t *self, mp_obj_t ip_address, mp_float_t timeout) {
|
||||
|
@ -32,6 +32,7 @@
|
||||
#include "components/esp_event/include/esp_event.h"
|
||||
|
||||
#include "shared-bindings/wifi/ScannedNetworks.h"
|
||||
#include "shared-bindings/wifi/Network.h"
|
||||
|
||||
// Event bits for the Radio event group.
|
||||
#define WIFI_SCAN_DONE_BIT BIT0
|
||||
@ -46,6 +47,9 @@ typedef struct {
|
||||
StaticEventGroup_t event_group;
|
||||
EventGroupHandle_t event_group_handle;
|
||||
wifi_config_t sta_config;
|
||||
wifi_network_obj_t ap_info;
|
||||
esp_netif_ip_info_t ip_info;
|
||||
esp_netif_dns_info_t dns_info;
|
||||
esp_netif_t *netif;
|
||||
bool started;
|
||||
bool ap_mode;
|
||||
|
@ -88,18 +88,28 @@ static void event_handler(void* arg, esp_event_base_t event_base,
|
||||
}
|
||||
}
|
||||
|
||||
static bool wifi_inited;
|
||||
static bool wifi_inited, wifi_ever_inited;
|
||||
|
||||
void common_hal_wifi_init(void) {
|
||||
wifi_inited = true;
|
||||
common_hal_wifi_radio_obj.base.type = &wifi_radio_type;
|
||||
|
||||
ESP_ERROR_CHECK(esp_netif_init());
|
||||
ESP_ERROR_CHECK(esp_event_loop_create_default());
|
||||
if (!wifi_ever_inited) {
|
||||
ESP_ERROR_CHECK(esp_netif_init());
|
||||
ESP_ERROR_CHECK(esp_event_loop_create_default());
|
||||
}
|
||||
wifi_ever_inited = true;
|
||||
|
||||
wifi_radio_obj_t* self = &common_hal_wifi_radio_obj;
|
||||
self->netif = esp_netif_create_default_wifi_sta();
|
||||
|
||||
// Even though we just called esp_netif_create_default_wifi_sta,
|
||||
// station mode isn't actually ready for use until esp_wifi_set_mode()
|
||||
// is called and the configuration is loaded via esp_wifi_set_config().
|
||||
// Set both convienence flags to false so it's not forgotten.
|
||||
self->sta_mode = 0;
|
||||
self->ap_mode = 0;
|
||||
|
||||
self->event_group_handle = xEventGroupCreateStatic(&self->event_group);
|
||||
ESP_ERROR_CHECK(esp_event_handler_instance_register(WIFI_EVENT,
|
||||
ESP_EVENT_ANY_ID,
|
||||
@ -137,7 +147,6 @@ void wifi_reset(void) {
|
||||
ESP_ERROR_CHECK(esp_wifi_deinit());
|
||||
esp_netif_destroy(radio->netif);
|
||||
radio->netif = NULL;
|
||||
ESP_ERROR_CHECK(esp_netif_deinit());
|
||||
}
|
||||
|
||||
void ipaddress_ipaddress_to_esp_idf(mp_obj_t ip_address, ip_addr_t* esp_ip_address) {
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit 8bc19ba893e5544d571a753d82b44a84799b94b1
|
||||
Subproject commit d06744f5efc382c61cbad8758107cec308feef09
|
@ -135,6 +135,7 @@ CONFIG_COMPILER_STACK_CHECK_MODE_NONE=y
|
||||
# CONFIG_COMPILER_STACK_CHECK_MODE_ALL is not set
|
||||
# CONFIG_COMPILER_WARN_WRITE_STRINGS is not set
|
||||
# CONFIG_COMPILER_DISABLE_GCC8_WARNINGS is not set
|
||||
# CONFIG_COMPILER_DUMP_RTL_FILES is not set
|
||||
# end of Compiler options
|
||||
|
||||
#
|
||||
@ -263,6 +264,11 @@ CONFIG_ESP32S2_ALLOW_RTC_FAST_MEM_AS_HEAP=y
|
||||
# CONFIG_PM_ENABLE is not set
|
||||
# end of Power Management
|
||||
|
||||
#
|
||||
# ADC-Calibration
|
||||
#
|
||||
# end of ADC-Calibration
|
||||
|
||||
#
|
||||
# Common ESP-related
|
||||
#
|
||||
@ -332,12 +338,13 @@ CONFIG_ESP_TIMER_IMPL_SYSTIMER=y
|
||||
#
|
||||
# Wi-Fi
|
||||
#
|
||||
CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=10
|
||||
CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=32
|
||||
CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=4
|
||||
CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=8
|
||||
# CONFIG_ESP32_WIFI_STATIC_TX_BUFFER is not set
|
||||
CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER=y
|
||||
CONFIG_ESP32_WIFI_TX_BUFFER_TYPE=1
|
||||
CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER_NUM=32
|
||||
CONFIG_ESP32_WIFI_CACHE_TX_BUFFER_NUM=16
|
||||
CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER_NUM=16
|
||||
# CONFIG_ESP32_WIFI_CSI_ENABLED is not set
|
||||
CONFIG_ESP32_WIFI_AMPDU_TX_ENABLED=y
|
||||
CONFIG_ESP32_WIFI_TX_BA_WIN=6
|
||||
@ -401,6 +408,7 @@ CONFIG_FREERTOS_QUEUE_REGISTRY_SIZE=0
|
||||
# CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS is not set
|
||||
CONFIG_FREERTOS_CHECK_MUTEX_GIVEN_BY_OWNER=y
|
||||
# CONFIG_FREERTOS_CHECK_PORT_CRITICAL_COMPLIANCE is not set
|
||||
# CONFIG_FREERTOS_PLACE_FUNCTIONS_INTO_FLASH is not set
|
||||
CONFIG_FREERTOS_DEBUG_OCDAWARE=y
|
||||
# end of FreeRTOS
|
||||
|
||||
@ -439,7 +447,7 @@ CONFIG_LWIP_DNS_SUPPORT_MDNS_QUERIES=y
|
||||
# CONFIG_LWIP_L2_TO_L3_COPY is not set
|
||||
# CONFIG_LWIP_IRAM_OPTIMIZATION is not set
|
||||
CONFIG_LWIP_TIMERS_ONDEMAND=y
|
||||
CONFIG_LWIP_MAX_SOCKETS=10
|
||||
CONFIG_LWIP_MAX_SOCKETS=4
|
||||
# CONFIG_LWIP_USE_ONLY_LWIP_SELECT is not set
|
||||
# CONFIG_LWIP_SO_LINGER is not set
|
||||
CONFIG_LWIP_SO_REUSE=y
|
||||
@ -459,6 +467,9 @@ CONFIG_LWIP_TCPIP_RECVMBOX_SIZE=32
|
||||
CONFIG_LWIP_DHCP_DOES_ARP_CHECK=y
|
||||
# CONFIG_LWIP_DHCP_RESTORE_LAST_IP is not set
|
||||
|
||||
#
|
||||
# CONFIG_FREERTOS_PLACE_FUNCTIONS_INTO_FLASH is not set
|
||||
|
||||
#
|
||||
# DHCP server
|
||||
#
|
||||
@ -474,15 +485,15 @@ CONFIG_LWIP_LOOPBACK_MAX_PBUFS=8
|
||||
#
|
||||
# TCP
|
||||
#
|
||||
CONFIG_LWIP_MAX_ACTIVE_TCP=16
|
||||
CONFIG_LWIP_MAX_LISTENING_TCP=16
|
||||
CONFIG_LWIP_MAX_ACTIVE_TCP=4
|
||||
CONFIG_LWIP_MAX_LISTENING_TCP=4
|
||||
CONFIG_LWIP_TCP_MAXRTX=12
|
||||
CONFIG_LWIP_TCP_SYNMAXRTX=6
|
||||
CONFIG_LWIP_TCP_MSS=1440
|
||||
CONFIG_LWIP_TCP_TMR_INTERVAL=250
|
||||
CONFIG_LWIP_TCP_MSL=60000
|
||||
CONFIG_LWIP_TCP_SND_BUF_DEFAULT=5744
|
||||
CONFIG_LWIP_TCP_WND_DEFAULT=5744
|
||||
CONFIG_LWIP_TCP_SND_BUF_DEFAULT=2880
|
||||
CONFIG_LWIP_TCP_WND_DEFAULT=2880
|
||||
CONFIG_LWIP_TCP_RECVMBOX_SIZE=6
|
||||
CONFIG_LWIP_TCP_QUEUE_OOSEQ=y
|
||||
# CONFIG_LWIP_TCP_SACK_OUT is not set
|
||||
@ -505,6 +516,8 @@ CONFIG_LWIP_TCPIP_TASK_AFFINITY_NO_AFFINITY=y
|
||||
# CONFIG_LWIP_TCPIP_TASK_AFFINITY_CPU0 is not set
|
||||
CONFIG_LWIP_TCPIP_TASK_AFFINITY=0x7FFFFFFF
|
||||
# CONFIG_LWIP_PPP_SUPPORT is not set
|
||||
CONFIG_LWIP_IPV6_MEMP_NUM_ND6_QUEUE=3
|
||||
CONFIG_LWIP_IPV6_ND6_NUM_NEIGHBORS=5
|
||||
# CONFIG_LWIP_SLIP_SUPPORT is not set
|
||||
|
||||
#
|
||||
@ -552,8 +565,10 @@ CONFIG_MBEDTLS_INTERNAL_MEM_ALLOC=y
|
||||
# CONFIG_MBEDTLS_CUSTOM_MEM_ALLOC is not set
|
||||
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y
|
||||
CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=16384
|
||||
CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
|
||||
# CONFIG_MBEDTLS_DYNAMIC_BUFFER is not set
|
||||
CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=2048
|
||||
CONFIG_MBEDTLS_DYNAMIC_BUFFER=y
|
||||
CONFIG_MBEDTLS_DYNAMIC_FREE_PEER_CERT=y
|
||||
CONFIG_MBEDTLS_DYNAMIC_FREE_CONFIG_DATA=y
|
||||
# CONFIG_MBEDTLS_DEBUG is not set
|
||||
|
||||
#
|
||||
@ -706,6 +721,7 @@ CONFIG_SPI_FLASH_YIELD_DURING_ERASE=y
|
||||
CONFIG_SPI_FLASH_ERASE_YIELD_DURATION_MS=20
|
||||
CONFIG_SPI_FLASH_ERASE_YIELD_TICKS=1
|
||||
CONFIG_SPI_FLASH_WRITE_CHUNK_SIZE=8192
|
||||
# CONFIG_SPI_FLASH_SIZE_OVERRIDE is not set
|
||||
|
||||
#
|
||||
# Auto-detect flash chips
|
||||
@ -824,8 +840,8 @@ CONFIG_TCP_MAXRTX=12
|
||||
CONFIG_TCP_SYNMAXRTX=6
|
||||
CONFIG_TCP_MSS=1440
|
||||
CONFIG_TCP_MSL=60000
|
||||
CONFIG_TCP_SND_BUF_DEFAULT=5744
|
||||
CONFIG_TCP_WND_DEFAULT=5744
|
||||
CONFIG_TCP_SND_BUF_DEFAULT=2880
|
||||
CONFIG_TCP_WND_DEFAULT=2880
|
||||
CONFIG_TCP_RECVMBOX_SIZE=6
|
||||
CONFIG_TCP_QUEUE_OOSEQ=y
|
||||
# CONFIG_ESP_TCP_KEEP_CONNECTION_WHEN_IP_CHANGES is not set
|
||||
|
@ -16,14 +16,20 @@ LONGINT_IMPL = MPZ
|
||||
CIRCUITPY_FULL_BUILD = 1
|
||||
CIRCUITPY_AUDIOBUSIO = 0
|
||||
CIRCUITPY_AUDIOIO = 0
|
||||
CIRCUITPY_COUNTIO = 0
|
||||
CIRCUITPY_CANIO = 1
|
||||
CIRCUITPY_COUNTIO = 1
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_ROTARYIO = 0
|
||||
CIRCUITPY_ROTARYIO = 1
|
||||
CIRCUITPY_NVM = 0
|
||||
# We don't have enough endpoints to include MIDI.
|
||||
CIRCUITPY_USB_MIDI = 0
|
||||
CIRCUITPY_WIFI = 1
|
||||
CIRCUITPY_WATCHDOG ?= 1
|
||||
CIRCUITPY_ESPIDF = 1
|
||||
|
||||
ifndef CIRCUITPY_TOUCHIO_USE_NATIVE
|
||||
CIRCUITPY_TOUCHIO_USE_NATIVE = 1
|
||||
endif
|
||||
|
||||
CIRCUITPY_MODULE ?= none
|
||||
|
68
ports/esp32s2/peripherals/pcnt.c
Normal file
68
ports/esp32s2/peripherals/pcnt.c
Normal file
@ -0,0 +1,68 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 microDev
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "peripherals/pcnt.h"
|
||||
|
||||
#define PCNT_UNIT_ACTIVE 1
|
||||
#define PCNT_UNIT_INACTIVE 0
|
||||
|
||||
static uint8_t pcnt_unit_state[4];
|
||||
|
||||
void peripherals_pcnt_reset(void) {
|
||||
for (uint8_t i = 0; i<=3; i++) {
|
||||
pcnt_unit_state[i] = PCNT_UNIT_INACTIVE;
|
||||
}
|
||||
}
|
||||
|
||||
int peripherals_pcnt_init(pcnt_config_t pcnt_config) {
|
||||
// Look for available pcnt unit
|
||||
for (uint8_t i = 0; i<=3; i++) {
|
||||
if (pcnt_unit_state[i] == PCNT_UNIT_INACTIVE) {
|
||||
pcnt_config.unit = (pcnt_unit_t)i;
|
||||
pcnt_unit_state[i] = PCNT_UNIT_ACTIVE;
|
||||
break;
|
||||
} else if (i == 3) {
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
// Initialize PCNT unit
|
||||
pcnt_unit_config(&pcnt_config);
|
||||
|
||||
// Initialize PCNT's counter
|
||||
pcnt_counter_pause(pcnt_config.unit);
|
||||
pcnt_counter_clear(pcnt_config.unit);
|
||||
|
||||
// Everything is set up, now go to counting
|
||||
pcnt_counter_resume(pcnt_config.unit);
|
||||
|
||||
return pcnt_config.unit;
|
||||
}
|
||||
|
||||
void peripherals_pcnt_deinit(pcnt_unit_t* unit) {
|
||||
pcnt_unit_state[*unit] = PCNT_UNIT_INACTIVE;
|
||||
*unit = PCNT_UNIT_MAX;
|
||||
}
|
36
ports/esp32s2/peripherals/pcnt.h
Normal file
36
ports/esp32s2/peripherals/pcnt.h
Normal file
@ -0,0 +1,36 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 microDev
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef MICROPY_INCLUDED_ESP32S2_PERIPHERALS_PCNT_HANDLER_H
|
||||
#define MICROPY_INCLUDED_ESP32S2_PERIPHERALS_PCNT_HANDLER_H
|
||||
|
||||
#include "driver/pcnt.h"
|
||||
|
||||
extern int peripherals_pcnt_init(pcnt_config_t pcnt_config);
|
||||
extern void peripherals_pcnt_deinit(pcnt_unit_t* unit);
|
||||
extern void peripherals_pcnt_reset(void);
|
||||
|
||||
#endif // MICROPY_INCLUDED_ESP32S2_PERIPHERALS_PCNT_HANDLER_H
|
@ -29,55 +29,58 @@
|
||||
#define NO_ADC 0
|
||||
#define NO_ADC_CHANNEL ADC_CHANNEL_MAX
|
||||
|
||||
#define NO_TOUCH_CHANNEL TOUCH_PAD_MAX
|
||||
|
||||
// This macro is used to simplify pin definition in boards/<board>/pins.c
|
||||
#define PIN(p_name, p_number, p_adc_index, p_adc_channel) \
|
||||
#define PIN(p_name, p_number, p_adc_index, p_adc_channel, p_touch_channel) \
|
||||
const mcu_pin_obj_t pin_## p_name = { \
|
||||
PIN_PREFIX_VALUES \
|
||||
.number = p_number, \
|
||||
.adc_index = p_adc_index, \
|
||||
.adc_channel = p_adc_channel, \
|
||||
.touch_channel = p_touch_channel, \
|
||||
}
|
||||
|
||||
PIN(GPIO0, 0, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO1, 1, ADC_UNIT_1, ADC_CHANNEL_0);
|
||||
PIN(GPIO2, 2, ADC_UNIT_1, ADC_CHANNEL_1);
|
||||
PIN(GPIO3, 3, ADC_UNIT_1, ADC_CHANNEL_2);
|
||||
PIN(GPIO4, 4, ADC_UNIT_1, ADC_CHANNEL_3);
|
||||
PIN(GPIO5, 5, ADC_UNIT_1, ADC_CHANNEL_4);
|
||||
PIN(GPIO6, 6, ADC_UNIT_1, ADC_CHANNEL_5);
|
||||
PIN(GPIO7, 7, ADC_UNIT_1, ADC_CHANNEL_6);
|
||||
PIN(GPIO8, 8, ADC_UNIT_1, ADC_CHANNEL_7);
|
||||
PIN(GPIO9, 9, ADC_UNIT_1, ADC_CHANNEL_8);
|
||||
PIN(GPIO10, 10, ADC_UNIT_1, ADC_CHANNEL_9);
|
||||
PIN(GPIO11, 11, ADC_UNIT_2, ADC_CHANNEL_0);
|
||||
PIN(GPIO12, 12, ADC_UNIT_2, ADC_CHANNEL_1);
|
||||
PIN(GPIO13, 13, ADC_UNIT_2, ADC_CHANNEL_2);
|
||||
PIN(GPIO14, 14, ADC_UNIT_2, ADC_CHANNEL_3);
|
||||
PIN(GPIO15, 15, ADC_UNIT_2, ADC_CHANNEL_4);
|
||||
PIN(GPIO16, 16, ADC_UNIT_2, ADC_CHANNEL_5);
|
||||
PIN(GPIO17, 17, ADC_UNIT_2, ADC_CHANNEL_6);
|
||||
PIN(GPIO18, 18, ADC_UNIT_2, ADC_CHANNEL_7);
|
||||
PIN(GPIO19, 19, ADC_UNIT_2, ADC_CHANNEL_8);
|
||||
PIN(GPIO20, 20, ADC_UNIT_2, ADC_CHANNEL_9);
|
||||
PIN(GPIO21, 21, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO26, 26, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO27, 27, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO28, 28, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO29, 29, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO30, 30, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO31, 31, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO32, 32, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO33, 33, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO34, 34, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO35, 35, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO36, 36, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO37, 37, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO38, 38, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO39, 39, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO40, 40, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO41, 41, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO42, 42, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO43, 43, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO44, 44, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO45, 45, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO46, 46, NO_ADC, NO_ADC_CHANNEL);
|
||||
PIN(GPIO0, 0, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO1, 1, ADC_UNIT_1, ADC_CHANNEL_0, TOUCH_PAD_NUM1);
|
||||
PIN(GPIO2, 2, ADC_UNIT_1, ADC_CHANNEL_1, TOUCH_PAD_NUM2);
|
||||
PIN(GPIO3, 3, ADC_UNIT_1, ADC_CHANNEL_2, TOUCH_PAD_NUM3);
|
||||
PIN(GPIO4, 4, ADC_UNIT_1, ADC_CHANNEL_3, TOUCH_PAD_NUM4);
|
||||
PIN(GPIO5, 5, ADC_UNIT_1, ADC_CHANNEL_4, TOUCH_PAD_NUM5);
|
||||
PIN(GPIO6, 6, ADC_UNIT_1, ADC_CHANNEL_5, TOUCH_PAD_NUM6);
|
||||
PIN(GPIO7, 7, ADC_UNIT_1, ADC_CHANNEL_6, TOUCH_PAD_NUM7);
|
||||
PIN(GPIO8, 8, ADC_UNIT_1, ADC_CHANNEL_7, TOUCH_PAD_NUM8);
|
||||
PIN(GPIO9, 9, ADC_UNIT_1, ADC_CHANNEL_8, TOUCH_PAD_NUM9);
|
||||
PIN(GPIO10, 10, ADC_UNIT_1, ADC_CHANNEL_9, TOUCH_PAD_NUM10);
|
||||
PIN(GPIO11, 11, ADC_UNIT_2, ADC_CHANNEL_0, TOUCH_PAD_NUM11);
|
||||
PIN(GPIO12, 12, ADC_UNIT_2, ADC_CHANNEL_1, TOUCH_PAD_NUM12);
|
||||
PIN(GPIO13, 13, ADC_UNIT_2, ADC_CHANNEL_2, TOUCH_PAD_NUM13);
|
||||
PIN(GPIO14, 14, ADC_UNIT_2, ADC_CHANNEL_3, TOUCH_PAD_NUM14);
|
||||
PIN(GPIO15, 15, ADC_UNIT_2, ADC_CHANNEL_4, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO16, 16, ADC_UNIT_2, ADC_CHANNEL_5, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO17, 17, ADC_UNIT_2, ADC_CHANNEL_6, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO18, 18, ADC_UNIT_2, ADC_CHANNEL_7, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO19, 19, ADC_UNIT_2, ADC_CHANNEL_8, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO20, 20, ADC_UNIT_2, ADC_CHANNEL_9, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO21, 21, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO26, 26, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO27, 27, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO28, 28, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO29, 29, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO30, 30, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO31, 31, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO32, 32, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO33, 33, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO34, 34, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO35, 35, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO36, 36, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO37, 37, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO38, 38, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO39, 39, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO40, 40, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO41, 41, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO42, 42, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO43, 43, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO44, 44, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO45, 45, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
PIN(GPIO46, 46, NO_ADC, NO_ADC_CHANNEL, NO_TOUCH_CHANNEL);
|
||||
|
@ -37,12 +37,14 @@
|
||||
|
||||
#include "components/hal/include/hal/gpio_types.h"
|
||||
#include "components/hal/include/hal/adc_types.h"
|
||||
#include "components/hal/include/hal/touch_sensor_types.h"
|
||||
|
||||
typedef struct {
|
||||
PIN_PREFIX_FIELDS
|
||||
gpio_num_t number;
|
||||
uint8_t adc_index:2;
|
||||
uint8_t adc_channel:6;
|
||||
uint8_t touch_channel;
|
||||
} mcu_pin_obj_t;
|
||||
|
||||
extern const mcu_pin_obj_t pin_GPIO0;
|
||||
|
35
ports/esp32s2/supervisor/esp_port.h
Normal file
35
ports/esp32s2/supervisor/esp_port.h
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2019 Lucian Copeland for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef MICROPY_INCLUDED_ESP32S2_SUPERVISOR_PORT_H
|
||||
#define MICROPY_INCLUDED_ESP32S2_SUPERVISOR_PORT_H
|
||||
|
||||
#include "freertos/FreeRTOS.h"
|
||||
#include "freertos/task.h"
|
||||
|
||||
extern TaskHandle_t sleeping_circuitpython_task;
|
||||
|
||||
#endif // MICROPY_INCLUDED_ESP32S2_SUPERVISOR_PORT_H
|
@ -30,6 +30,8 @@
|
||||
#include "supervisor/port.h"
|
||||
#include "boards/board.h"
|
||||
#include "modules/module.h"
|
||||
#include "py/runtime.h"
|
||||
#include "supervisor/esp_port.h"
|
||||
|
||||
#include "freertos/FreeRTOS.h"
|
||||
#include "freertos/task.h"
|
||||
@ -41,12 +43,14 @@
|
||||
#include "common-hal/busio/UART.h"
|
||||
#include "common-hal/pulseio/PulseIn.h"
|
||||
#include "common-hal/pwmio/PWMOut.h"
|
||||
#include "common-hal/watchdog/WatchDogTimer.h"
|
||||
#include "common-hal/wifi/__init__.h"
|
||||
#include "supervisor/memory.h"
|
||||
#include "supervisor/shared/tick.h"
|
||||
#include "shared-bindings/rtc/__init__.h"
|
||||
|
||||
#include "peripherals/rmt.h"
|
||||
#include "peripherals/pcnt.h"
|
||||
#include "components/heap/include/esp_heap_caps.h"
|
||||
#include "components/soc/soc/esp32s2/include/soc/cache_memory.h"
|
||||
|
||||
@ -115,10 +119,18 @@ void reset_port(void) {
|
||||
uart_reset();
|
||||
#endif
|
||||
|
||||
#if defined(CIRCUITPY_COUNTIO) || defined(CIRCUITPY_ROTARYIO)
|
||||
peripherals_pcnt_reset();
|
||||
#endif
|
||||
|
||||
#if CIRCUITPY_RTC
|
||||
rtc_reset();
|
||||
#endif
|
||||
|
||||
#if CIRCUITPY_WATCHDOG
|
||||
watchdog_reset();
|
||||
#endif
|
||||
|
||||
#if CIRCUITPY_WIFI
|
||||
wifi_reset();
|
||||
#endif
|
||||
@ -148,7 +160,18 @@ uint32_t *port_stack_get_limit(void) {
|
||||
}
|
||||
|
||||
uint32_t *port_stack_get_top(void) {
|
||||
return port_stack_get_limit() + CONFIG_ESP_MAIN_TASK_STACK_SIZE / (sizeof(uint32_t) / sizeof(StackType_t));
|
||||
// The sizeof-arithmetic is so that the pointer arithmetic is done on units
|
||||
// of uint32_t instead of units of StackType_t. StackType_t is an alias
|
||||
// for a byte sized type.
|
||||
//
|
||||
// The main stack is bigger than CONFIG_ESP_MAIN_TASK_STACK_SIZE -- an
|
||||
// "extra" size is added to it (TASK_EXTRA_STACK_SIZE). This total size is
|
||||
// available as ESP_TASK_MAIN_STACK. Presumably TASK_EXTRA_STACK_SIZE is
|
||||
// additional stack that can be used by the esp-idf runtime. But what's
|
||||
// important for us is that some very outermost stack frames, such as
|
||||
// pyexec_friendly_repl, could lie inside the "extra" area and be invisible
|
||||
// to the garbage collector.
|
||||
return port_stack_get_limit() + ESP_TASK_MAIN_STACK / (sizeof(uint32_t) / sizeof(StackType_t));
|
||||
}
|
||||
|
||||
supervisor_allocation _fixed_stack;
|
||||
@ -168,14 +191,14 @@ uint32_t port_get_saved_word(void) {
|
||||
}
|
||||
|
||||
uint64_t port_get_raw_ticks(uint8_t* subticks) {
|
||||
struct timeval tv_now;
|
||||
gettimeofday(&tv_now, NULL);
|
||||
// convert usec back to ticks
|
||||
uint64_t all_subticks = (uint64_t)(tv_now.tv_usec * 2) / 71;
|
||||
// Convert microseconds to subticks of 1/32768 seconds
|
||||
// 32768/1000000 = 64/15625 in lowest terms
|
||||
// this arithmetic overflows after 570 years
|
||||
int64_t all_subticks = esp_timer_get_time() * 512 / 15625;
|
||||
if (subticks != NULL) {
|
||||
*subticks = all_subticks % 32;
|
||||
}
|
||||
return (uint64_t)tv_now.tv_sec * 1024L + all_subticks / 32;
|
||||
return all_subticks / 32;
|
||||
}
|
||||
|
||||
// Enable 1/1024 second tick.
|
||||
@ -188,25 +211,28 @@ void port_disable_tick(void) {
|
||||
esp_timer_stop(_tick_timer);
|
||||
}
|
||||
|
||||
TickType_t sleep_time_set;
|
||||
TickType_t sleep_time_duration;
|
||||
|
||||
void port_interrupt_after_ticks(uint32_t ticks) {
|
||||
sleep_time_set = xTaskGetTickCount();
|
||||
sleep_time_duration = ticks / portTICK_PERIOD_MS;
|
||||
// esp_sleep_enable_timer_wakeup(uint64_t time_in_us)
|
||||
sleep_time_duration = (ticks * 100)/1024;
|
||||
sleeping_circuitpython_task = xTaskGetCurrentTaskHandle();
|
||||
}
|
||||
|
||||
void port_sleep_until_interrupt(void) {
|
||||
// FreeRTOS delay here maybe.
|
||||
// Light sleep shuts down BLE and wifi.
|
||||
// esp_light_sleep_start()
|
||||
|
||||
uint32_t NotifyValue = 0;
|
||||
|
||||
if (sleep_time_duration == 0) {
|
||||
return;
|
||||
}
|
||||
vTaskDelayUntil(&sleep_time_set, sleep_time_duration);
|
||||
xTaskNotifyWait(0x01,0x01,&NotifyValue,
|
||||
sleep_time_duration );
|
||||
if (NotifyValue == 1) {
|
||||
sleeping_circuitpython_task = NULL;
|
||||
mp_handle_pending();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Wrap main in app_main that the IDF expects.
|
||||
extern void main(void);
|
||||
void app_main(void) {
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user