Merge remote-tracking branch 'upstream/master' into stm32-LSE-startup-fix
This commit is contained in:
commit
a0977cac7b
24
.github/workflows/pre-commit.yml
vendored
Normal file
24
.github/workflows/pre-commit.yml
vendored
Normal file
@ -0,0 +1,24 @@
|
||||
# SPDX-FileCopyrightText: Copyright (c) 2019 Anthony Sottile
|
||||
#
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
name: pre-commit
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
push:
|
||||
branches: [master]
|
||||
|
||||
jobs:
|
||||
pre-commit:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- uses: actions/setup-python@v1
|
||||
- name: set PY
|
||||
run: echo "::set-env name=PY::$(python -c 'import hashlib, sys;print(hashlib.sha256(sys.version.encode()+sys.executable.encode()).hexdigest())')"
|
||||
- uses: actions/cache@v1
|
||||
with:
|
||||
path: ~/.cache/pre-commit
|
||||
key: pre-commit|${{ env.PY }}|${{ hashFiles('.pre-commit-config.yaml') }}
|
||||
- uses: pre-commit/action@v1.1.0
|
13
.pre-commit-config.yaml
Normal file
13
.pre-commit-config.yaml
Normal file
@ -0,0 +1,13 @@
|
||||
# SPDX-FileCopyrightText: 2020 Diego Elio Pettenò
|
||||
#
|
||||
# SPDX-License-Identifier: Unlicense
|
||||
|
||||
repos:
|
||||
- repo: https://github.com/pre-commit/pre-commit-hooks
|
||||
rev: v2.3.0
|
||||
hooks:
|
||||
- id: check-yaml
|
||||
- id: end-of-file-fixer
|
||||
exclude: '^(tests/.*\.exp|tests/cmdline/.*|tests/.*/data/.*)'
|
||||
- id: trailing-whitespace
|
||||
exclude: '^(tests/.*\.exp|tests/cmdline/.*|tests/.*/data/.*)'
|
@ -1,3 +1,9 @@
|
||||
<!--
|
||||
SPDX-FileCopyrightText: 2014 Coraline Ada Ehmke
|
||||
SPDX-FileCopyrightText: 2019 Kattni Rembor for Adafruit Industries
|
||||
|
||||
SPDX-License-Identifier: CC-BY-4.0
|
||||
-->
|
||||
# Adafruit Community Code of Conduct
|
||||
|
||||
## Our Pledge
|
||||
|
21
Makefile
21
Makefile
@ -202,22 +202,37 @@ pseudoxml:
|
||||
@echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
|
||||
|
||||
# phony target so we always run
|
||||
.PHONY: all-source
|
||||
all-source:
|
||||
|
||||
locale/circuitpython.pot: all-source
|
||||
find $(TRANSLATE_SOURCES) -iname "*.c" -print | (LC_ALL=C sort) | xgettext -f- -L C -s --add-location=file --keyword=translate -o circuitpython.pot -p locale
|
||||
|
||||
# Historically, `make translate` updated the .pot file and ran msgmerge.
|
||||
# However, this was a frequent source of merge conflicts. Weblate can perform
|
||||
# msgmerge, so make translate merely update the translation template file.
|
||||
.PHONY: translate
|
||||
translate: locale/circuitpython.pot
|
||||
|
||||
# Note that normally we rely on weblate to perform msgmerge. This reduces the
|
||||
# chance of a merge conflict between developer changes (that only add and
|
||||
# remove source strings) and weblate changes (that only add and remove
|
||||
# translated strings from po files). However, in case this is legitimately
|
||||
# needed we preserve a rule to do it.
|
||||
.PHONY: msgmerge
|
||||
msgmerge:
|
||||
for po in $(shell ls locale/*.po); do msgmerge -U $$po -s --no-fuzzy-matching --add-location=file locale/circuitpython.pot; done
|
||||
|
||||
merge-translate:
|
||||
git merge HEAD 1>&2 2> /dev/null; test $$? -eq 128
|
||||
rm locale/*~ || true
|
||||
git checkout --ours -- locale/*
|
||||
git checkout --theirs -- locale/*
|
||||
make translate
|
||||
|
||||
check-translate: locale/circuitpython.pot $(wildcard locale/*.po)
|
||||
$(PYTHON) tools/check_translations.py $^
|
||||
.PHONY: check-translate
|
||||
check-translate:
|
||||
find $(TRANSLATE_SOURCES) -iname "*.c" -print | (LC_ALL=C sort) | xgettext -f- -L C -s --add-location=file --keyword=translate -o circuitpython.pot.tmp -p locale
|
||||
$(PYTHON) tools/check_translations.py locale/circuitpython.pot.tmp locale/circuitpython.pot; status=$$?; rm -f locale/circuitpython.pot.tmp; exit $$status
|
||||
|
||||
stubs:
|
||||
@mkdir -p circuitpython-stubs
|
||||
|
@ -244,4 +244,3 @@ void wiz_recv_ignore(uint8_t sn, uint16_t len)
|
||||
ptr += len;
|
||||
setSn_RX_RD(sn,ptr);
|
||||
}
|
||||
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit cf61d728e70b9ec57e5711b40540793a89296f5d
|
||||
Subproject commit 0394801933f6e68a5bc7cdb0da76c7884e8cf70a
|
@ -8,5 +8,3 @@ int __signbitd(double x)
|
||||
} y = { x };
|
||||
return y.i>>63;
|
||||
}
|
||||
|
||||
|
||||
|
@ -25,4 +25,3 @@ $(BUILD)/memzip-files.c: $(shell find ${MEMZIP_DIR} -type f)
|
||||
@$(ECHO) "Creating $@"
|
||||
$(Q)$(PYTHON) $(MAKE_MEMZIP) --zip-file $(BUILD)/memzip-files.zip --c-file $@ $(MEMZIP_DIR)
|
||||
```
|
||||
|
||||
|
@ -16,4 +16,3 @@ mp_lexer_t *mp_lexer_new_from_file(const char *filename)
|
||||
|
||||
return mp_lexer_new_from_str_len(qstr_from_str(filename), (const char *)data, (mp_uint_t)len, 0);
|
||||
}
|
||||
|
||||
|
@ -76,4 +76,3 @@ def main():
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
||||
|
@ -385,4 +385,3 @@ WCHAR ff_wtoupper ( /* Returns upper converted character */
|
||||
|
||||
return chr;
|
||||
}
|
||||
|
||||
|
@ -15,4 +15,3 @@ You can get the latest version using Git, by pulling from
|
||||
|
||||
Patches are welcome. Patches that turn this from tinytest to hugetest
|
||||
will not be applied. If you want a huge test framework, use CUnit.
|
||||
|
||||
|
@ -474,4 +474,3 @@ tinytest_set_test_skipped_(void)
|
||||
if (cur_test_outcome==OK)
|
||||
cur_test_outcome = SKIP;
|
||||
}
|
||||
|
||||
|
74
locale/ID.po
74
locale/ID.po
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-27 11:55-0400\n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\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"
|
||||
@ -885,7 +885,7 @@ msgstr ""
|
||||
msgid "Invalid DAC pin supplied"
|
||||
msgstr ""
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/stm/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Invalid I2C pin selection"
|
||||
msgstr ""
|
||||
|
||||
@ -975,7 +975,8 @@ msgstr "Pin untuk channel kanan tidak valid"
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.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
|
||||
msgid "Invalid pins"
|
||||
msgstr "Pin-pin tidak valid"
|
||||
@ -1372,7 +1373,8 @@ msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr ""
|
||||
"Berjalan di mode aman(safe mode)! tidak menjalankan kode yang tersimpan.\n"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
msgstr "SDA atau SCL membutuhkan pull up"
|
||||
|
||||
@ -1667,6 +1669,26 @@ msgstr ""
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "PERINGATAN: Nama file kode anda mempunyai dua ekstensi\n"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer cannot be deinitialized once mode is set to RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer is not currently running"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr ""
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
msgid ""
|
||||
@ -2109,6 +2131,14 @@ msgstr ""
|
||||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
msgstr ""
|
||||
@ -2241,6 +2271,14 @@ msgstr ""
|
||||
msgid "filesystem must provide mount method"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr ""
|
||||
@ -2294,6 +2332,10 @@ msgstr "fungsi diharapkan setidaknya %d argumen, hanya mendapatkan %d"
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr "fungsi mendapatkan nilai ganda untuk argumen '%q'"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "function has the same sign at the ends of interval"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr ""
|
||||
@ -2380,6 +2422,10 @@ msgstr ""
|
||||
msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
msgstr "inline assembler harus sebuah fungsi"
|
||||
@ -2424,6 +2470,10 @@ msgstr ""
|
||||
msgid "integer required"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "interp is defined for 1D arrays of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
@ -3054,6 +3104,10 @@ msgstr ""
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr ""
|
||||
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
msgstr ""
|
||||
@ -3208,6 +3262,10 @@ msgstr ""
|
||||
msgid "value_count must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
msgstr ""
|
||||
@ -3220,6 +3278,10 @@ msgstr ""
|
||||
msgid "wrong index type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong input type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "wrong number of arguments"
|
||||
msgstr ""
|
||||
@ -3232,6 +3294,10 @@ msgstr ""
|
||||
msgid "wrong operand type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong output type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c
|
||||
msgid "x value out of bounds"
|
||||
msgstr ""
|
||||
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-27 20:51-0500\n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\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"
|
||||
@ -874,7 +874,7 @@ msgstr ""
|
||||
msgid "Invalid DAC pin supplied"
|
||||
msgstr ""
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/stm/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Invalid I2C pin selection"
|
||||
msgstr ""
|
||||
|
||||
@ -964,7 +964,8 @@ msgstr ""
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.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
|
||||
msgid "Invalid pins"
|
||||
msgstr ""
|
||||
@ -1356,7 +1357,8 @@ msgstr ""
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
msgstr ""
|
||||
|
||||
@ -1650,6 +1652,26 @@ msgstr ""
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer cannot be deinitialized once mode is set to RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer is not currently running"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr ""
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
msgid ""
|
||||
@ -2085,6 +2107,14 @@ msgstr ""
|
||||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
msgstr ""
|
||||
@ -2217,6 +2247,14 @@ msgstr ""
|
||||
msgid "filesystem must provide mount method"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr ""
|
||||
@ -2270,6 +2308,10 @@ msgstr ""
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "function has the same sign at the ends of interval"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr ""
|
||||
@ -2356,6 +2398,10 @@ msgstr ""
|
||||
msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
msgstr ""
|
||||
@ -2400,6 +2446,10 @@ msgstr ""
|
||||
msgid "integer required"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "interp is defined for 1D arrays of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
@ -3029,6 +3079,10 @@ msgstr ""
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr ""
|
||||
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
msgstr ""
|
||||
@ -3182,6 +3236,10 @@ msgstr ""
|
||||
msgid "value_count must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
msgstr ""
|
||||
@ -3194,6 +3252,10 @@ msgstr ""
|
||||
msgid "wrong index type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong input type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "wrong number of arguments"
|
||||
msgstr ""
|
||||
@ -3206,6 +3268,10 @@ msgstr ""
|
||||
msgid "wrong operand type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong output type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c
|
||||
msgid "x value out of bounds"
|
||||
msgstr ""
|
||||
|
74
locale/cs.po
74
locale/cs.po
@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-27 20:51-0500\n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\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"
|
||||
@ -882,7 +882,7 @@ msgstr ""
|
||||
msgid "Invalid DAC pin supplied"
|
||||
msgstr ""
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/stm/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Invalid I2C pin selection"
|
||||
msgstr ""
|
||||
|
||||
@ -972,7 +972,8 @@ msgstr ""
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.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
|
||||
msgid "Invalid pins"
|
||||
msgstr ""
|
||||
@ -1364,7 +1365,8 @@ msgstr ""
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
msgstr ""
|
||||
|
||||
@ -1658,6 +1660,26 @@ msgstr ""
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer cannot be deinitialized once mode is set to RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer is not currently running"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr ""
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
msgid ""
|
||||
@ -2093,6 +2115,14 @@ msgstr ""
|
||||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
msgstr ""
|
||||
@ -2225,6 +2255,14 @@ msgstr ""
|
||||
msgid "filesystem must provide mount method"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr ""
|
||||
@ -2278,6 +2316,10 @@ msgstr ""
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "function has the same sign at the ends of interval"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr ""
|
||||
@ -2364,6 +2406,10 @@ msgstr ""
|
||||
msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
msgstr ""
|
||||
@ -2408,6 +2454,10 @@ msgstr ""
|
||||
msgid "integer required"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "interp is defined for 1D arrays of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
@ -3037,6 +3087,10 @@ msgstr ""
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr ""
|
||||
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
msgstr ""
|
||||
@ -3190,6 +3244,10 @@ msgstr ""
|
||||
msgid "value_count must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
msgstr ""
|
||||
@ -3202,6 +3260,10 @@ msgstr ""
|
||||
msgid "wrong index type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong input type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "wrong number of arguments"
|
||||
msgstr ""
|
||||
@ -3214,6 +3276,10 @@ msgstr ""
|
||||
msgid "wrong operand type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong output type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c
|
||||
msgid "x value out of bounds"
|
||||
msgstr ""
|
||||
|
@ -7,9 +7,9 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-27 20:51-0500\n"
|
||||
"PO-Revision-Date: 2020-05-23 16:13+0000\n"
|
||||
"Last-Translator: Timon <timon@skerutsch.de>\n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"PO-Revision-Date: 2020-05-29 17:42+0000\n"
|
||||
"Last-Translator: Thomas Friehoff <thomas.friehoff@googlemail.com>\n"
|
||||
"Language-Team: German <https://later.unpythonic.net/projects/circuitpython/"
|
||||
"circuitpython-master/de/>\n"
|
||||
"Language: de_DE\n"
|
||||
@ -383,7 +383,7 @@ msgstr "Bit depth muss ein Vielfaches von 8 sein."
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c
|
||||
msgid "Both RX and TX required for flow control"
|
||||
msgstr ""
|
||||
msgstr "Sowohl RX als auch TX sind zu Flusssteuerung erforderlich"
|
||||
|
||||
#: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "Both pins must support hardware interrupts"
|
||||
@ -652,7 +652,7 @@ msgstr "DAC Kanal Intialisierungs Fehler"
|
||||
|
||||
#: ports/stm/common-hal/analogio/AnalogOut.c
|
||||
msgid "DAC Device Init Error"
|
||||
msgstr "DAC Device Init Error"
|
||||
msgstr "DAC Device Initialisierungs-Fehler"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
msgid "DAC already in use"
|
||||
@ -901,7 +901,7 @@ msgstr "Ungültige BMP-Datei"
|
||||
msgid "Invalid DAC pin supplied"
|
||||
msgstr "Ungültiger DAC-Pin angegeben"
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/stm/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Invalid I2C pin selection"
|
||||
msgstr "Ungültige I2C-Pinauswahl"
|
||||
|
||||
@ -991,7 +991,8 @@ msgstr "Ungültiger Pin für rechten Kanal"
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.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
|
||||
msgid "Invalid pins"
|
||||
msgstr "Ungültige Pins"
|
||||
@ -1275,7 +1276,7 @@ msgstr "Pin hat keine ADC Funktionalität"
|
||||
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
msgid "Pin is input only"
|
||||
msgstr ""
|
||||
msgstr "Pin kann nur als Eingang verwendet werden"
|
||||
|
||||
#: ports/atmel-samd/common-hal/countio/Counter.c
|
||||
msgid "Pin must support hardware interrupts"
|
||||
@ -1396,7 +1397,8 @@ msgstr "Sicherheitsmodus aktiv! Automatisches Neuladen ist deaktiviert.\n"
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Sicherheitsmodus aktiv! Gespeicherter Code wird nicht ausgeführt\n"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
msgstr "SDA oder SCL brauchen pull up"
|
||||
|
||||
@ -1709,6 +1711,26 @@ msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr ""
|
||||
"WARNUNG: Der Dateiname deines Programms hat zwei Dateityperweiterungen\n"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer cannot be deinitialized once mode is set to RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer is not currently running"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr ""
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
msgid ""
|
||||
@ -2163,6 +2185,14 @@ msgstr "Eingabearray konnte nicht aus der Form übertragen werden"
|
||||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr "Vandermonde-Matrix konnte nicht invertiert werden"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
msgstr "ddof muss kleiner als die Länge des Datensatzes sein"
|
||||
@ -2297,6 +2327,14 @@ msgstr "Die Datei muss eine im Byte-Modus geöffnete Datei sein"
|
||||
msgid "filesystem must provide mount method"
|
||||
msgstr "Das Dateisystem muss eine Mount-Methode bereitstellen"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr "Das erste Argument muss iterierbar sein"
|
||||
@ -2350,6 +2388,10 @@ msgstr "Funktion erwartet maximal %d Argumente, aber hat %d erhalten"
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr "Funktion hat mehrere Werte für Argument '%q'"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "function has the same sign at the ends of interval"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr "Die Funktion ist nur für Skalare und Ndarrays implementiert"
|
||||
@ -2437,6 +2479,10 @@ msgstr "Indizes müssen Integer sein"
|
||||
msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr "Indizes müssen Integer, Slices oder Boolesche Listen sein"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
msgstr "inline assembler muss eine function sein"
|
||||
@ -2481,6 +2527,10 @@ msgstr "int() arg 2 muss >= 2 und <= 36 sein"
|
||||
msgid "integer required"
|
||||
msgstr "integer erforderlich"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "interp is defined for 1D arrays of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
@ -2965,7 +3015,7 @@ msgstr "die ersuchte Länge ist %d, aber das Objekt hat eine Länge von %d"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "return annotation must be an identifier"
|
||||
msgstr "return annotation muss ein identifier sein"
|
||||
msgstr "Rückgabewert-Beschreibung muss ein Identifier sein"
|
||||
|
||||
#: py/emitnative.c
|
||||
msgid "return expected '%q' but got '%q'"
|
||||
@ -3123,6 +3173,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/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
msgstr "Das Zeitlimit muss 0,0-100,0 Sekunden betragen"
|
||||
@ -3280,6 +3334,10 @@ msgstr "Wert muss in %d Byte(s) passen"
|
||||
msgid "value_count must be > 0"
|
||||
msgstr "value_count muss größer als 0 sein"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
msgstr "Fenster muss <= Intervall sein"
|
||||
@ -3292,6 +3350,10 @@ msgstr "falscher Argumenttyp"
|
||||
msgid "wrong index type"
|
||||
msgstr "falscher Indextyp"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong input type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "wrong number of arguments"
|
||||
msgstr "falsche Anzahl an Argumenten"
|
||||
@ -3304,6 +3366,10 @@ msgstr "falsche Anzahl zu entpackender Werte"
|
||||
msgid "wrong operand type"
|
||||
msgstr "falscher Operandentyp"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong output type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c
|
||||
msgid "x value out of bounds"
|
||||
msgstr "x Wert außerhalb der Grenzen"
|
||||
|
@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-27 11:55-0400\n"
|
||||
"POT-Creation-Date: 2020-06-01 08:56-0500\n"
|
||||
"PO-Revision-Date: 2018-07-27 11:55-0700\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
@ -874,7 +874,7 @@ msgstr ""
|
||||
msgid "Invalid DAC pin supplied"
|
||||
msgstr ""
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/stm/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Invalid I2C pin selection"
|
||||
msgstr ""
|
||||
|
||||
@ -964,7 +964,8 @@ msgstr ""
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.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
|
||||
msgid "Invalid pins"
|
||||
msgstr ""
|
||||
@ -1356,7 +1357,8 @@ msgstr ""
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
msgstr ""
|
||||
|
||||
@ -2085,6 +2087,14 @@ msgstr ""
|
||||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
msgstr ""
|
||||
@ -2217,6 +2227,14 @@ msgstr ""
|
||||
msgid "filesystem must provide mount method"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr ""
|
||||
@ -2270,6 +2288,10 @@ msgstr ""
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "function has the same sign at the ends of interval"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr ""
|
||||
@ -2356,6 +2378,10 @@ msgstr ""
|
||||
msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
msgstr ""
|
||||
@ -2400,6 +2426,10 @@ msgstr ""
|
||||
msgid "integer required"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "interp is defined for 1D arrays of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
@ -3194,6 +3224,10 @@ msgstr ""
|
||||
msgid "wrong index type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong input type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "wrong number of arguments"
|
||||
msgstr ""
|
||||
@ -3206,6 +3240,10 @@ msgstr ""
|
||||
msgid "wrong operand type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong output type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c
|
||||
msgid "x value out of bounds"
|
||||
msgstr ""
|
||||
|
@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-27 11:55-0400\n"
|
||||
"POT-Creation-Date: 2020-06-01 08:56-0500\n"
|
||||
"PO-Revision-Date: 2020-03-30 22:11+0000\n"
|
||||
"Last-Translator: Tannewt <devnull@unpythonic.net>\n"
|
||||
"Language-Team: English <https://later.unpythonic.net/projects/circuitpython/"
|
||||
@ -883,7 +883,7 @@ msgstr ""
|
||||
msgid "Invalid DAC pin supplied"
|
||||
msgstr ""
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/stm/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Invalid I2C pin selection"
|
||||
msgstr ""
|
||||
|
||||
@ -973,7 +973,8 @@ msgstr "Belay that! Invalid pin for starboard-side channel"
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.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
|
||||
msgid "Invalid pins"
|
||||
msgstr ""
|
||||
@ -1365,7 +1366,8 @@ msgstr "Runnin' in safe mode! Auto-reload be off.\n"
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Runnin' in safe mode! Nay runnin' saved code.\n"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
msgstr ""
|
||||
|
||||
@ -2094,6 +2096,14 @@ msgstr ""
|
||||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
msgstr ""
|
||||
@ -2226,6 +2236,14 @@ msgstr ""
|
||||
msgid "filesystem must provide mount method"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr ""
|
||||
@ -2279,6 +2297,10 @@ msgstr ""
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "function has the same sign at the ends of interval"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr ""
|
||||
@ -2365,6 +2387,10 @@ msgstr ""
|
||||
msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
msgstr ""
|
||||
@ -2409,6 +2435,10 @@ msgstr ""
|
||||
msgid "integer required"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "interp is defined for 1D arrays of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
@ -3203,6 +3233,10 @@ msgstr ""
|
||||
msgid "wrong index type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong input type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "wrong number of arguments"
|
||||
msgstr ""
|
||||
@ -3215,6 +3249,10 @@ msgstr ""
|
||||
msgid "wrong operand type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong output type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c
|
||||
msgid "x value out of bounds"
|
||||
msgstr ""
|
||||
|
74
locale/es.po
74
locale/es.po
@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-27 11:55-0400\n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"PO-Revision-Date: 2020-05-17 20:56+0000\n"
|
||||
"Last-Translator: Jeff Epler <jepler@gmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
@ -883,7 +883,7 @@ msgstr "Archivo BMP inválido"
|
||||
msgid "Invalid DAC pin supplied"
|
||||
msgstr ""
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/stm/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Invalid I2C pin selection"
|
||||
msgstr ""
|
||||
|
||||
@ -973,7 +973,8 @@ msgstr "Pin inválido para canal derecho"
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.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
|
||||
msgid "Invalid pins"
|
||||
msgstr "pines inválidos"
|
||||
@ -1374,7 +1375,8 @@ msgstr "Ejecutando en modo seguro! La auto-recarga esta deshabilitada.\n"
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Ejecutando en modo seguro! No se esta ejecutando el código guardado.\n"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
msgstr "SDA o SCL necesitan una pull up"
|
||||
|
||||
@ -1669,6 +1671,26 @@ msgstr ""
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "ADVERTENCIA: El nombre de archivo de tu código tiene dos extensiones\n"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer cannot be deinitialized once mode is set to RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer is not currently running"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr ""
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
msgid ""
|
||||
@ -2116,6 +2138,14 @@ msgstr ""
|
||||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
msgstr ""
|
||||
@ -2250,6 +2280,14 @@ msgstr "el archivo deberia ser una archivo abierto en modo byte"
|
||||
msgid "filesystem must provide mount method"
|
||||
msgstr "sistema de archivos debe proporcionar método de montaje"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr ""
|
||||
@ -2303,6 +2341,10 @@ msgstr "la función esperaba minimo %d argumentos, tiene %d"
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr "la función tiene múltiples valores para el argumento '%q'"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "function has the same sign at the ends of interval"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr ""
|
||||
@ -2389,6 +2431,10 @@ msgstr "indices deben ser enteros"
|
||||
msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
msgstr "ensamblador en línea debe ser una función"
|
||||
@ -2433,6 +2479,10 @@ msgstr "int() arg 2 debe ser >= 2 y <= 36"
|
||||
msgid "integer required"
|
||||
msgstr "Entero requerido"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "interp is defined for 1D arrays of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
@ -3072,6 +3122,10 @@ 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/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
msgstr ""
|
||||
@ -3225,6 +3279,10 @@ msgstr ""
|
||||
msgid "value_count must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
msgstr ""
|
||||
@ -3237,6 +3295,10 @@ msgstr ""
|
||||
msgid "wrong index type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong input type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "wrong number of arguments"
|
||||
msgstr "numero erroneo de argumentos"
|
||||
@ -3249,6 +3311,10 @@ msgstr "numero erroneo de valores a descomprimir"
|
||||
msgid "wrong operand type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong output type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c
|
||||
#, fuzzy
|
||||
msgid "x value out of bounds"
|
||||
|
@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-27 11:55-0400\n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"PO-Revision-Date: 2018-12-20 22:15-0800\n"
|
||||
"Last-Translator: Timothy <me@timothygarcia.ca>\n"
|
||||
"Language-Team: fil\n"
|
||||
@ -890,7 +890,7 @@ msgstr "Mali ang BMP file"
|
||||
msgid "Invalid DAC pin supplied"
|
||||
msgstr ""
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/stm/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Invalid I2C pin selection"
|
||||
msgstr ""
|
||||
|
||||
@ -980,7 +980,8 @@ msgstr "Mali ang pin para sa kanang channel"
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.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
|
||||
msgid "Invalid pins"
|
||||
msgstr "Mali ang pins"
|
||||
@ -1379,7 +1380,8 @@ msgstr "Tumatakbo sa safe mode! Awtomatikong pag re-reload ay OFF.\n"
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Tumatakbo sa safe mode! Hindi tumatakbo ang nai-save na code.\n"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
msgstr "Kailangan ng pull up resistors ang SDA o SCL"
|
||||
|
||||
@ -1677,6 +1679,26 @@ msgstr ""
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "BABALA: Ang pangalan ng file ay may dalawang extension\n"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer cannot be deinitialized once mode is set to RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer is not currently running"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr ""
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
msgid ""
|
||||
@ -2125,6 +2147,14 @@ msgstr ""
|
||||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
msgstr ""
|
||||
@ -2262,6 +2292,14 @@ msgstr "file ay dapat buksan sa byte mode"
|
||||
msgid "filesystem must provide mount method"
|
||||
msgstr "ang filesystem dapat mag bigay ng mount method"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr ""
|
||||
@ -2315,6 +2353,10 @@ msgstr "function na inaasahang %d ang argumento, ngunit %d ang nakuha"
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr "ang function ay nakakuha ng maraming values para sa argument '%q'"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "function has the same sign at the ends of interval"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr ""
|
||||
@ -2402,6 +2444,10 @@ msgstr "ang mga indeks ay dapat na integer"
|
||||
msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
msgstr "inline assembler ay dapat na function"
|
||||
@ -2446,6 +2492,10 @@ msgstr "int() arg 2 ay dapat >=2 at <= 36"
|
||||
msgid "integer required"
|
||||
msgstr "kailangan ng int"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "interp is defined for 1D arrays of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
@ -3084,6 +3134,10 @@ 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/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
msgstr ""
|
||||
@ -3238,6 +3292,10 @@ msgstr ""
|
||||
msgid "value_count must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
msgstr ""
|
||||
@ -3250,6 +3308,10 @@ msgstr ""
|
||||
msgid "wrong index type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong input type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "wrong number of arguments"
|
||||
msgstr "mali ang bilang ng argumento"
|
||||
@ -3262,6 +3324,10 @@ msgstr "maling number ng value na i-unpack"
|
||||
msgid "wrong operand type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong output type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c
|
||||
#, fuzzy
|
||||
msgid "x value out of bounds"
|
||||
|
88
locale/fr.po
88
locale/fr.po
@ -8,8 +8,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 0.1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-27 11:55-0400\n"
|
||||
"PO-Revision-Date: 2020-05-26 19:37+0000\n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"PO-Revision-Date: 2020-06-02 19:50+0000\n"
|
||||
"Last-Translator: Jeff Epler <jepler@gmail.com>\n"
|
||||
"Language-Team: French <https://later.unpythonic.net/projects/circuitpython/"
|
||||
"circuitpython-master/fr/>\n"
|
||||
@ -190,12 +190,12 @@ msgstr "l'objet '%s' n'est pas un itérateur"
|
||||
#: py/objtype.c py/runtime.c
|
||||
#, c-format
|
||||
msgid "'%s' object is not callable"
|
||||
msgstr "objet '%s' n'est pas appelable"
|
||||
msgstr "l'objet '%s' n'est pas appelable"
|
||||
|
||||
#: py/runtime.c
|
||||
#, c-format
|
||||
msgid "'%s' object is not iterable"
|
||||
msgstr "objet '%s' n'est pas itérable"
|
||||
msgstr "l'objet '%s' n'est pas itérable"
|
||||
|
||||
#: py/obj.c
|
||||
#, c-format
|
||||
@ -388,7 +388,7 @@ msgstr "La profondeur de bit doit être un multiple de 8."
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c
|
||||
msgid "Both RX and TX required for flow control"
|
||||
msgstr ""
|
||||
msgstr "RX et TX requis pour le contrôle de flux"
|
||||
|
||||
#: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "Both pins must support hardware interrupts"
|
||||
@ -905,7 +905,7 @@ msgstr "Fichier BMP invalide"
|
||||
msgid "Invalid DAC pin supplied"
|
||||
msgstr "Broche DAC non valide fournie"
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/stm/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Invalid I2C pin selection"
|
||||
msgstr "Sélection de broches I2C non valide"
|
||||
|
||||
@ -995,7 +995,8 @@ msgstr "Broche invalide pour le canal droit"
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.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
|
||||
msgid "Invalid pins"
|
||||
msgstr "Broches invalides"
|
||||
@ -1281,7 +1282,7 @@ msgstr "La broche ne peut être utilisée pour l'ADC"
|
||||
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
msgid "Pin is input only"
|
||||
msgstr ""
|
||||
msgstr "La broche est entrée uniquement"
|
||||
|
||||
#: ports/atmel-samd/common-hal/countio/Counter.c
|
||||
msgid "Pin must support hardware interrupts"
|
||||
@ -1400,7 +1401,8 @@ msgstr "Mode sans-échec ! Auto-chargement désactivé.\n"
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Mode sans-échec ! Le code sauvegardé n'est pas éxecuté.\n"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
msgstr "SDA ou SCL a besoin d'une résistance de tirage ('pull up')"
|
||||
|
||||
@ -1711,6 +1713,30 @@ msgstr "La lecture de la tension a expiré"
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "ATTENTION : le nom de fichier de votre code a deux extensions\n"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer cannot be deinitialized once mode is set to RESET"
|
||||
msgstr ""
|
||||
"WatchDogTimer ne peut pas être désinitialisé une fois que le mode est réglé "
|
||||
"sur RESET"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer is not currently running"
|
||||
msgstr "WatchDogTimer n'est pas en cours d'exécution"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
"WatchDogTimer.mode ne peut pas être changé une fois réglé pour WatchDogMode."
|
||||
"RESET"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr "WatchDogTimer.timeout doit être supérieur à 0"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr ""
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
msgid ""
|
||||
@ -2163,6 +2189,14 @@ msgstr "n'a pas pu diffuser le tableau d'entrée à partir de la forme"
|
||||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr "n'a pas pu inverser la matrice Vandermonde"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr "les données doivent être les objets iterables"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr "les données doivent être de longueur égale"
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
msgstr "ddof doit être inférieur à la longueur de l'ensemble de données"
|
||||
@ -2299,6 +2333,14 @@ msgstr "le fichier doit être un fichier ouvert en mode 'byte'"
|
||||
msgid "filesystem must provide mount method"
|
||||
msgstr "le system de fichier doit fournir une méthode 'mount'"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr "le premier argument doit être un appelable"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr "le premier argument doit être une fonction"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr "le premier argument doit être un itérable"
|
||||
@ -2352,6 +2394,10 @@ msgstr "la fonction attendait au plus %d arguments, reçu %d"
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr "la fonction a reçu plusieurs valeurs pour l'argument '%q'"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "function has the same sign at the ends of interval"
|
||||
msgstr "la fonction a le même signe aux extrémités de l’intervalle"
|
||||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr ""
|
||||
@ -2440,6 +2486,10 @@ msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr ""
|
||||
"les indices doivent être des entiers, des tranches ou des listes booléennes"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr "les valeurs initiales doivent être itérables"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
msgstr "l'assembleur doit être une fonction"
|
||||
@ -2484,6 +2534,10 @@ msgstr "l'argument 2 de int() doit être >=2 et <=36"
|
||||
msgid "integer required"
|
||||
msgstr "entier requis"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "interp is defined for 1D arrays of equal length"
|
||||
msgstr "interp est défini pour les tableaux 1D de longueur égale"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
@ -3125,6 +3179,10 @@ 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/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"
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
msgstr "le délai doit être compris entre 0.0 et 100.0 secondes"
|
||||
@ -3278,6 +3336,10 @@ msgstr "la valeur doit tenir dans %d octet(s)"
|
||||
msgid "value_count must be > 0"
|
||||
msgstr "'value_count' doit être > 0"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr "watchdog timeout doit être supérieur à 0"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
msgstr "la fenêtre doit être <= intervalle"
|
||||
@ -3290,6 +3352,10 @@ msgstr "type d'argument incorrect"
|
||||
msgid "wrong index type"
|
||||
msgstr "type d'index incorrect"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong input type"
|
||||
msgstr "type d'entrée incorrect"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "wrong number of arguments"
|
||||
msgstr "mauvais nombres d'arguments"
|
||||
@ -3302,6 +3368,10 @@ msgstr "mauvais nombre de valeurs à dégrouper"
|
||||
msgid "wrong operand type"
|
||||
msgstr "type d'opérande incorrect"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong output type"
|
||||
msgstr "type de sortie incorrect"
|
||||
|
||||
#: shared-module/displayio/Shape.c
|
||||
msgid "x value out of bounds"
|
||||
msgstr "valeur x hors limites"
|
||||
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-27 11:55-0400\n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"PO-Revision-Date: 2018-10-02 16:27+0200\n"
|
||||
"Last-Translator: Enrico Paganin <enrico.paganin@mail.com>\n"
|
||||
"Language-Team: \n"
|
||||
@ -890,7 +890,7 @@ msgstr "File BMP non valido"
|
||||
msgid "Invalid DAC pin supplied"
|
||||
msgstr ""
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/stm/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Invalid I2C pin selection"
|
||||
msgstr ""
|
||||
|
||||
@ -982,7 +982,8 @@ msgstr "Pin non valido per il canale destro"
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.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
|
||||
msgid "Invalid pins"
|
||||
msgstr "Pin non validi"
|
||||
@ -1388,7 +1389,8 @@ msgstr "Modalità sicura in esecuzione! Auto-reload disattivato.\n"
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Modalità sicura in esecuzione! Codice salvato non in esecuzione.\n"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
msgstr "SDA o SCL necessitano un pull-up"
|
||||
|
||||
@ -1686,6 +1688,26 @@ msgstr ""
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "ATTENZIONE: Il nome del sorgente ha due estensioni\n"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer cannot be deinitialized once mode is set to RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer is not currently running"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr ""
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
msgid ""
|
||||
@ -2127,6 +2149,14 @@ msgstr ""
|
||||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
msgstr ""
|
||||
@ -2263,6 +2293,14 @@ msgstr ""
|
||||
msgid "filesystem must provide mount method"
|
||||
msgstr "il filesystem deve fornire un metodo di mount"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr ""
|
||||
@ -2316,6 +2354,10 @@ msgstr "la funzione prevede al massimo %d argmoneti, ma ne ha ricevuti %d"
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr "la funzione ha ricevuto valori multipli per l'argomento '%q'"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "function has the same sign at the ends of interval"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr ""
|
||||
@ -2403,6 +2445,10 @@ msgstr "gli indici devono essere interi"
|
||||
msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
msgstr "inline assembler deve essere una funzione"
|
||||
@ -2447,6 +2493,10 @@ msgstr "il secondo argomanto di int() deve essere >= 2 e <= 36"
|
||||
msgid "integer required"
|
||||
msgstr "intero richiesto"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "interp is defined for 1D arrays of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
@ -3091,6 +3141,10 @@ msgstr "la soglia deve essere nell'intervallo 0-65536"
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr ""
|
||||
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
msgstr ""
|
||||
@ -3245,6 +3299,10 @@ msgstr ""
|
||||
msgid "value_count must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
msgstr ""
|
||||
@ -3257,6 +3315,10 @@ msgstr ""
|
||||
msgid "wrong index type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong input type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "wrong number of arguments"
|
||||
msgstr "numero di argomenti errato"
|
||||
@ -3269,6 +3331,10 @@ msgstr "numero di valori da scompattare non corretto"
|
||||
msgid "wrong operand type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong output type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c
|
||||
#, fuzzy
|
||||
msgid "x value out of bounds"
|
||||
|
74
locale/ko.po
74
locale/ko.po
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-27 11:55-0400\n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"PO-Revision-Date: 2019-05-06 14:22-0700\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@ -878,7 +878,7 @@ msgstr ""
|
||||
msgid "Invalid DAC pin supplied"
|
||||
msgstr ""
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/stm/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Invalid I2C pin selection"
|
||||
msgstr ""
|
||||
|
||||
@ -968,7 +968,8 @@ msgstr "오른쪽 채널 핀이 잘못되었습니다"
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.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
|
||||
msgid "Invalid pins"
|
||||
msgstr "핀이 유효하지 않습니다"
|
||||
@ -1360,7 +1361,8 @@ msgstr ""
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
msgstr ""
|
||||
|
||||
@ -1655,6 +1657,26 @@ msgstr ""
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer cannot be deinitialized once mode is set to RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer is not currently running"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr ""
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
msgid ""
|
||||
@ -2090,6 +2112,14 @@ msgstr ""
|
||||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
msgstr ""
|
||||
@ -2222,6 +2252,14 @@ msgstr ""
|
||||
msgid "filesystem must provide mount method"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr ""
|
||||
@ -2275,6 +2313,10 @@ msgstr ""
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "function has the same sign at the ends of interval"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr ""
|
||||
@ -2361,6 +2403,10 @@ msgstr ""
|
||||
msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
msgstr ""
|
||||
@ -2405,6 +2451,10 @@ msgstr ""
|
||||
msgid "integer required"
|
||||
msgstr "정수가 필요합니다"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "interp is defined for 1D arrays of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
@ -3034,6 +3084,10 @@ msgstr ""
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr ""
|
||||
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
msgstr ""
|
||||
@ -3187,6 +3241,10 @@ msgstr ""
|
||||
msgid "value_count must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
msgstr ""
|
||||
@ -3199,6 +3257,10 @@ msgstr ""
|
||||
msgid "wrong index type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong input type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "wrong number of arguments"
|
||||
msgstr ""
|
||||
@ -3211,6 +3273,10 @@ msgstr ""
|
||||
msgid "wrong operand type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong output type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c
|
||||
msgid "x value out of bounds"
|
||||
msgstr ""
|
||||
|
88
locale/nl.po
88
locale/nl.po
@ -7,9 +7,9 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-27 20:51-0500\n"
|
||||
"PO-Revision-Date: 2020-05-25 13:52+0000\n"
|
||||
"Last-Translator: Dustin Watts <dustin_watts@yahoo.com>\n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"PO-Revision-Date: 2020-06-02 19:50+0000\n"
|
||||
"Last-Translator: _fonzlate <vooralfred@gmail.com>\n"
|
||||
"Language-Team: none\n"
|
||||
"Language: nl\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@ -380,7 +380,7 @@ msgstr "Bit diepte moet een meervoud van 8 zijn."
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c
|
||||
msgid "Both RX and TX required for flow control"
|
||||
msgstr ""
|
||||
msgstr "RX en TX zijn beide vereist voor stroomregeling"
|
||||
|
||||
#: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "Both pins must support hardware interrupts"
|
||||
@ -894,7 +894,7 @@ msgstr "Ongeldig BMP bestand"
|
||||
msgid "Invalid DAC pin supplied"
|
||||
msgstr "Ongeldige DAC pin opgegeven"
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/stm/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Invalid I2C pin selection"
|
||||
msgstr "Ongeldige I2C pin selectie"
|
||||
|
||||
@ -984,7 +984,8 @@ msgstr "Ongeldige pin voor rechter kanaal"
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.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
|
||||
msgid "Invalid pins"
|
||||
msgstr "Ongeldige pinnen"
|
||||
@ -1269,7 +1270,7 @@ msgstr "Pin heeft geen ADC mogelijkheden"
|
||||
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
msgid "Pin is input only"
|
||||
msgstr ""
|
||||
msgstr "Pin kan alleen voor invoer gebruikt worden"
|
||||
|
||||
#: ports/atmel-samd/common-hal/countio/Counter.c
|
||||
msgid "Pin must support hardware interrupts"
|
||||
@ -1390,7 +1391,8 @@ msgstr "Draaiende in veilige modus! Auto-herlaad is uit.\n"
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Draaiende in veilige modus! Opgeslagen code wordt niet uitgevoerd.\n"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
msgstr "SDA of SCL hebben een pullup nodig"
|
||||
|
||||
@ -1694,6 +1696,30 @@ msgstr "Voltage lees time-out"
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "WAARSCHUWING: De bestandsnaam van de code heeft twee extensies\n"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer cannot be deinitialized once mode is set to RESET"
|
||||
msgstr ""
|
||||
"WatchDogTimer kan niet worden gedeïnitialiseerd zodra de modus in ingesteld "
|
||||
"op RESET"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer is not currently running"
|
||||
msgstr "WatchDogTimer is momenteel niet actief"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
"WatchDogTimer.mode kan niet worden gewijzigd zodra de modus is ingesteld op "
|
||||
"WatchDogMode.RESET"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr "WatchDogTimer.timeout moet groter dan 0 zijn"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr "Watchdog-timer verstreken."
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
msgid ""
|
||||
@ -1769,7 +1795,7 @@ msgstr "argsort argument moet een ndarray zijn"
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "argument has wrong type"
|
||||
msgstr "argument heeft het verkeerde type"
|
||||
msgstr "argument heeft onjuist type"
|
||||
|
||||
#: py/argcheck.c shared-bindings/_stage/__init__.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c shared-bindings/gamepad/GamePad.c
|
||||
@ -2136,6 +2162,14 @@ msgstr "kon de invoerarray niet vanuit vorm uitzenden"
|
||||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr "kon de Vandermonde matrix niet omkeren"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr "data moet itereerbaar zijn"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr "data moet van gelijke lengte zijn"
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
msgstr "ddof kleiner dan de lengte van de data set"
|
||||
@ -2270,6 +2304,14 @@ msgstr "bestand moet een bestand zijn geopend in byte modus"
|
||||
msgid "filesystem must provide mount method"
|
||||
msgstr "bestandssysteem moet een mount methode bieden"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr "eerste argument moet een aanroepbare (callable) zijn"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr "eerste argument moet een functie zijn"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr "eerst argument moet een iterabel zijn"
|
||||
@ -2323,6 +2365,10 @@ msgstr "functie verwachtte op zijn meest %d argumenten, maar kreeg %d"
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr "functie kreeg meedere waarden voor argument '%q'"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "function has the same sign at the ends of interval"
|
||||
msgstr "functie heeft hetzelfde teken aan beide uiteinden van het interval"
|
||||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr "funtie is alleen geïmplementeerd voor scalars en ndarrays"
|
||||
@ -2410,6 +2456,10 @@ msgstr "indices moeten integers zijn"
|
||||
msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr "indices moeten integers, segmenten (slices) of Boolean lijsten zijn"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr "oorspronkelijke waarden moeten itereerbaar zijn"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
msgstr "inline assembler moet een functie zijn"
|
||||
@ -2454,6 +2504,10 @@ msgstr "int() argument 2 moet >=2 en <= 36 zijn"
|
||||
msgid "integer required"
|
||||
msgstr "integer vereist"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "interp is defined for 1D arrays of equal length"
|
||||
msgstr "interp is gedefinieerd for eendimensionale arrays van gelijke lengte"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
@ -3089,6 +3143,10 @@ 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/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr "time-outduur is groter dan de ondersteunde maximale waarde"
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
msgstr "timeout moet tussen 0.0 en 100.0 seconden zijn"
|
||||
@ -3242,6 +3300,10 @@ msgstr "waarde moet in %d byte(s) passen"
|
||||
msgid "value_count must be > 0"
|
||||
msgstr "value_count moet groter dan 0 zijn"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr "watchdog time-out moet groter zijn dan 0"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
msgstr "window moet <= interval zijn"
|
||||
@ -3254,6 +3316,10 @@ msgstr "onjuist argumenttype"
|
||||
msgid "wrong index type"
|
||||
msgstr "onjuist indextype"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong input type"
|
||||
msgstr "onjuist invoertype"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "wrong number of arguments"
|
||||
msgstr "onjuist aantal argumenten"
|
||||
@ -3266,6 +3332,10 @@ msgstr "verkeerd aantal waarden om uit te pakken"
|
||||
msgid "wrong operand type"
|
||||
msgstr "verkeerd operandtype"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong output type"
|
||||
msgstr "onjuist uitvoer type"
|
||||
|
||||
#: shared-module/displayio/Shape.c
|
||||
msgid "x value out of bounds"
|
||||
msgstr "x-waarde buiten bereik"
|
||||
|
74
locale/pl.po
74
locale/pl.po
@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-27 11:55-0400\n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"PO-Revision-Date: 2019-03-19 18:37-0700\n"
|
||||
"Last-Translator: Radomir Dopieralski <circuitpython@sheep.art.pl>\n"
|
||||
"Language-Team: pl\n"
|
||||
@ -879,7 +879,7 @@ msgstr "Zły BMP"
|
||||
msgid "Invalid DAC pin supplied"
|
||||
msgstr ""
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/stm/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Invalid I2C pin selection"
|
||||
msgstr ""
|
||||
|
||||
@ -969,7 +969,8 @@ msgstr "Zła nóżka dla prawego kanału"
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.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
|
||||
msgid "Invalid pins"
|
||||
msgstr "Złe nóżki"
|
||||
@ -1361,7 +1362,8 @@ msgstr "Uruchomiony tryb bezpieczeństwa! Samo-przeładowanie wyłączone.\n"
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Uruchomiony tryb bezpieczeństwa! Zapisany kod nie jest uruchamiany.\n"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
msgstr "SDA lub SCL wymagają podciągnięcia"
|
||||
|
||||
@ -1655,6 +1657,26 @@ msgstr ""
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "UWAGA: Nazwa pliku ma dwa rozszerzenia\n"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer cannot be deinitialized once mode is set to RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer is not currently running"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr ""
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
msgid ""
|
||||
@ -2093,6 +2115,14 @@ msgstr ""
|
||||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
msgstr ""
|
||||
@ -2226,6 +2256,14 @@ msgstr "file musi być otwarte w trybie bajtowym"
|
||||
msgid "filesystem must provide mount method"
|
||||
msgstr "system plików musi mieć metodę mount"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr ""
|
||||
@ -2279,6 +2317,10 @@ msgstr "funkcja bierze najwyżej %d argumentów, jest %d"
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr "funkcja dostała wiele wartości dla argumentu '%q'"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "function has the same sign at the ends of interval"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr ""
|
||||
@ -2365,6 +2407,10 @@ msgstr "indeksy muszą być całkowite"
|
||||
msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
msgstr "wtrącony asembler musi być funkcją"
|
||||
@ -2409,6 +2455,10 @@ msgstr "argument 2 do int() busi być pomiędzy 2 a 36"
|
||||
msgid "integer required"
|
||||
msgstr "wymagana liczba całkowita"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "interp is defined for 1D arrays of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
@ -3040,6 +3090,10 @@ 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/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
msgstr ""
|
||||
@ -3193,6 +3247,10 @@ msgstr ""
|
||||
msgid "value_count must be > 0"
|
||||
msgstr "value_count musi być > 0"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
msgstr ""
|
||||
@ -3205,6 +3263,10 @@ msgstr ""
|
||||
msgid "wrong index type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong input type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "wrong number of arguments"
|
||||
msgstr "zła liczba argumentów"
|
||||
@ -3217,6 +3279,10 @@ msgstr "zła liczba wartości do rozpakowania"
|
||||
msgid "wrong operand type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong output type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c
|
||||
msgid "x value out of bounds"
|
||||
msgstr "x poza zakresem"
|
||||
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-27 11:55-0400\n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"PO-Revision-Date: 2018-10-02 21:14-0000\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
@ -883,7 +883,7 @@ msgstr "Arquivo BMP inválido"
|
||||
msgid "Invalid DAC pin supplied"
|
||||
msgstr ""
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/stm/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Invalid I2C pin selection"
|
||||
msgstr ""
|
||||
|
||||
@ -975,7 +975,8 @@ msgstr "Pino inválido para canal direito"
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.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
|
||||
msgid "Invalid pins"
|
||||
msgstr "Pinos inválidos"
|
||||
@ -1373,7 +1374,8 @@ msgstr "Rodando em modo seguro! Atualização automática está desligada.\n"
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Rodando em modo seguro! Não está executando o código salvo.\n"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
msgstr "SDA ou SCL precisa de um pull up"
|
||||
|
||||
@ -1668,6 +1670,26 @@ msgstr ""
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "AVISO: Seu arquivo de código tem duas extensões\n"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer cannot be deinitialized once mode is set to RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer is not currently running"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr ""
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
msgid ""
|
||||
@ -2106,6 +2128,14 @@ msgstr ""
|
||||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
msgstr ""
|
||||
@ -2239,6 +2269,14 @@ msgstr ""
|
||||
msgid "filesystem must provide mount method"
|
||||
msgstr "sistema de arquivos deve fornecer método de montagem"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr ""
|
||||
@ -2292,6 +2330,10 @@ msgstr "função esperada na maioria dos %d argumentos, obteve %d"
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "function has the same sign at the ends of interval"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr ""
|
||||
@ -2378,6 +2420,10 @@ msgstr ""
|
||||
msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
msgstr ""
|
||||
@ -2422,6 +2468,10 @@ msgstr ""
|
||||
msgid "integer required"
|
||||
msgstr "inteiro requerido"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "interp is defined for 1D arrays of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
@ -3052,6 +3102,10 @@ msgstr "Limite deve estar no alcance de 0-65536"
|
||||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr ""
|
||||
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
msgstr ""
|
||||
@ -3206,6 +3260,10 @@ msgstr ""
|
||||
msgid "value_count must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
msgstr ""
|
||||
@ -3218,6 +3276,10 @@ msgstr ""
|
||||
msgid "wrong index type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong input type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "wrong number of arguments"
|
||||
msgstr ""
|
||||
@ -3230,6 +3292,10 @@ msgstr ""
|
||||
msgid "wrong operand type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong output type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c
|
||||
msgid "x value out of bounds"
|
||||
msgstr ""
|
||||
|
89
locale/sv.po
89
locale/sv.po
@ -7,8 +7,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-27 11:55-0400\n"
|
||||
"PO-Revision-Date: 2020-05-20 18:32+0000\n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"PO-Revision-Date: 2020-06-02 21:42+0000\n"
|
||||
"Last-Translator: Jonny Bergdahl <jonny@bergdahl.it>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: sv\n"
|
||||
@ -33,7 +33,7 @@ msgid ""
|
||||
"https://github.com/adafruit/circuitpython/issues\n"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Skapa ett ärende med innehållet i din CIRCUITPY på\n"
|
||||
"Vänligen skapa ett ärende med innehållet i din CIRCUITPY-enhet på\n"
|
||||
"https://github.com/adafruit/circuitpython/issues\n"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
@ -42,7 +42,7 @@ msgid ""
|
||||
"To exit, please reset the board without "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"För att avsluta, resetta kortet utan "
|
||||
"För att avsluta, gör reset på kortet utan "
|
||||
|
||||
#: py/obj.c
|
||||
msgid " File \"%q\""
|
||||
@ -108,7 +108,7 @@ msgstr "'%q' argument krävs"
|
||||
#: py/emitinlinethumb.c py/emitinlinextensa.c
|
||||
#, c-format
|
||||
msgid "'%s' expects a label"
|
||||
msgstr "'%s' förväntar sig en etikett"
|
||||
msgstr "'%s' förväntar sig en label"
|
||||
|
||||
#: py/emitinlinethumb.c py/emitinlinextensa.c
|
||||
#, c-format
|
||||
@ -380,7 +380,7 @@ msgstr "Bitdjupet måste vara multipel av 8."
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c
|
||||
msgid "Both RX and TX required for flow control"
|
||||
msgstr ""
|
||||
msgstr "Både RX och TX krävs för handskakning"
|
||||
|
||||
#: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c
|
||||
msgid "Both pins must support hardware interrupts"
|
||||
@ -893,7 +893,7 @@ msgstr "Ogiltig BMP-fil"
|
||||
msgid "Invalid DAC pin supplied"
|
||||
msgstr "Ogiltig DAC-pinne angiven"
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/stm/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Invalid I2C pin selection"
|
||||
msgstr "Ogiltigt val av I2C-pinne"
|
||||
|
||||
@ -983,7 +983,8 @@ msgstr "Ogiltig pinne för höger kanal"
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.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
|
||||
msgid "Invalid pins"
|
||||
msgstr "Ogiltiga pinnar"
|
||||
@ -1267,7 +1268,7 @@ msgstr "Pinnen har inte ADC-funktionalitet"
|
||||
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
msgid "Pin is input only"
|
||||
msgstr ""
|
||||
msgstr "Pinnen är enbart ingång"
|
||||
|
||||
#: ports/atmel-samd/common-hal/countio/Counter.c
|
||||
msgid "Pin must support hardware interrupts"
|
||||
@ -1387,7 +1388,8 @@ msgstr "Kör i säkert läge! Autoladdning är avstängd.\n"
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Kör i säkert läge! Sparad kod körs inte.\n"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
msgstr "SDA eller SCL behöver en pullup"
|
||||
|
||||
@ -1691,6 +1693,27 @@ msgstr "Avläsning av spänning tog för lång tid"
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "VARNING: Ditt filnamn för kod har två tillägg\n"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer cannot be deinitialized once mode is set to RESET"
|
||||
msgstr "WatchDogTimer kan inte avinitialiseras när läget är inställt på RESET"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer is not currently running"
|
||||
msgstr "WatchDogTimer körs för närvarande inte"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
"WatchDogTimer.mode kan inte ändras när den är inställd på WatchDogMode.RESET"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr "WatchDogTimer.timeout måste vara större än 0"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr "Watchdog-timern har löpt ut."
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
msgid ""
|
||||
@ -2133,6 +2156,14 @@ msgstr "Kan inte sända indatamatris från form"
|
||||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr "kan inte invertera Vandermonde-matris"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr "data måste vara itererbar"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr "data måste vara av samma längd"
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
msgstr "ddof måste vara mindre än längden på datauppsättningen"
|
||||
@ -2268,6 +2299,14 @@ msgstr "filen måste vara en fil som öppnats i byte-läge"
|
||||
msgid "filesystem must provide mount method"
|
||||
msgstr "filsystemet måste tillhandahålla mount-metod"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr "första argumentet måste vara en callable"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr "första argumentet måste vara en funktion"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr "första argumentet måste vara en iterable"
|
||||
@ -2321,6 +2360,10 @@ msgstr "funktionen förväntar som mest %d argument, fick %d"
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr "funktionen fick flera värden för argumentet '%q'"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "function has the same sign at the ends of interval"
|
||||
msgstr "funktionen har samma teckenvärden vid slutet av intervall"
|
||||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr "funktionen är endast implementerad för scalar och ndarray"
|
||||
@ -2407,6 +2450,10 @@ msgstr "index måste vara heltal"
|
||||
msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr "index måste vara heltal, slices, eller Boolean-listor"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr "initialvärden måste vara iterable"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
msgstr "inline assembler måste vara en funktion"
|
||||
@ -2451,6 +2498,10 @@ msgstr "int() arg 2 måste vara >= 2 och <= 36"
|
||||
msgid "integer required"
|
||||
msgstr "heltal krävs"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "interp is defined for 1D arrays of equal length"
|
||||
msgstr "interp är definierad för 1D-matriser med samma längd"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
@ -3086,6 +3137,10 @@ 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/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"
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
msgstr "timeout måste vara 0.0-100.0 sekunder"
|
||||
@ -3166,7 +3221,7 @@ msgstr "oväntat nyckelordsargument '%q'"
|
||||
|
||||
#: py/lexer.c
|
||||
msgid "unicode name escapes"
|
||||
msgstr "unicode name escapes"
|
||||
msgstr "unicode-namn flyr"
|
||||
|
||||
#: py/parse.c
|
||||
msgid "unindent does not match any outer indentation level"
|
||||
@ -3239,6 +3294,10 @@ msgstr "värdet måste passa i %d byte(s)"
|
||||
msgid "value_count must be > 0"
|
||||
msgstr "value_count måste vara > 0"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr "watchdog timeout måste vara större än 0"
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
msgstr "window måste vara <= interval"
|
||||
@ -3251,6 +3310,10 @@ msgstr "fel typ av argument"
|
||||
msgid "wrong index type"
|
||||
msgstr "fel indextyp"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong input type"
|
||||
msgstr "fel indatatyp"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "wrong number of arguments"
|
||||
msgstr "fel antal argument"
|
||||
@ -3263,6 +3326,10 @@ msgstr "fel antal värden för att packa upp"
|
||||
msgid "wrong operand type"
|
||||
msgstr "fel operandtyp"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong output type"
|
||||
msgstr "fel utdatatyp"
|
||||
|
||||
#: shared-module/displayio/Shape.c
|
||||
msgid "x value out of bounds"
|
||||
msgstr "x-värde utanför intervall"
|
||||
|
@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: circuitpython-cn\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-27 11:55-0400\n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"PO-Revision-Date: 2019-04-13 10:10-0700\n"
|
||||
"Last-Translator: hexthat\n"
|
||||
"Language-Team: Chinese Hanyu Pinyin\n"
|
||||
@ -887,7 +887,7 @@ msgstr "Wúxiào de BMP wénjiàn"
|
||||
msgid "Invalid DAC pin supplied"
|
||||
msgstr "Tí gōng liǎo wúxiào de DAC yǐn jiǎo"
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/stm/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Invalid I2C pin selection"
|
||||
msgstr "Wúxiào de I2C yǐn jiǎo xuǎnzé"
|
||||
|
||||
@ -977,7 +977,8 @@ msgstr "Yòuxián tōngdào yǐn jiǎo wúxiào"
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.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
|
||||
msgid "Invalid pins"
|
||||
msgstr "Wúxiào de yǐn jiǎo"
|
||||
@ -1375,7 +1376,8 @@ msgstr "Zài ānquán móshì xià yùnxíng! Zìdòng chóngxīn jiāzài yǐ g
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Zài ānquán móshì xià yùnxíng! Bù yùnxíng yǐ bǎocún de dàimǎ.\n"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
msgstr "SDA huò SCL xūyào lādòng"
|
||||
|
||||
@ -1678,6 +1680,26 @@ msgstr ""
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "Jǐnggào: Nǐ de dàimǎ wénjiàn míng yǒu liǎng gè kuòzhǎn míng\n"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer cannot be deinitialized once mode is set to RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer is not currently running"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr ""
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
msgid ""
|
||||
@ -2121,6 +2143,14 @@ msgstr ""
|
||||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
msgstr ""
|
||||
@ -2254,6 +2284,14 @@ msgstr "wénjiàn bìxū shì zài zì jié móshì xià dǎkāi de wénjiàn"
|
||||
msgid "filesystem must provide mount method"
|
||||
msgstr "wénjiàn xìtǒng bìxū tígōng guà zài fāngfǎ"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr ""
|
||||
@ -2307,6 +2345,10 @@ msgstr "hánshù yùjì zuìduō %d cānshù, huòdé %d"
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr "hánshù huòdé cānshù '%q' de duōchóng zhí"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "function has the same sign at the ends of interval"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr ""
|
||||
@ -2393,6 +2435,10 @@ msgstr "suǒyǐn bìxū shì zhěngshù"
|
||||
msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr ""
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
msgstr "nèi lián jíhé bìxū shì yīgè hánshù"
|
||||
@ -2437,6 +2483,10 @@ msgstr "zhěngshù() cānshù 2 bìxū > = 2 qiě <= 36"
|
||||
msgid "integer required"
|
||||
msgstr "xūyào zhěngshù"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "interp is defined for 1D arrays of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
@ -3070,6 +3120,10 @@ 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/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
msgstr "Chāo shí shíjiān bìxū wèi 0.0 Dào 100.0 Miǎo"
|
||||
@ -3223,6 +3277,10 @@ msgstr "Zhí bìxū fúhé %d zì jié"
|
||||
msgid "value_count must be > 0"
|
||||
msgstr "zhí jìshù bìxū wèi > 0"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
msgstr "Chuāngkǒu bìxū shì <= jiàngé"
|
||||
@ -3235,6 +3293,10 @@ msgstr ""
|
||||
msgid "wrong index type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong input type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "wrong number of arguments"
|
||||
msgstr "cānshù shù cuòwù"
|
||||
@ -3247,6 +3309,10 @@ msgstr "wúfǎ jiě bāo de zhí shù"
|
||||
msgid "wrong operand type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "wrong output type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c
|
||||
msgid "x value out of bounds"
|
||||
msgstr "x zhí chāochū biānjiè"
|
||||
|
@ -15,4 +15,3 @@ CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_VECTORIO = 0
|
||||
|
||||
|
@ -12,4 +12,3 @@ EXTERNAL_FLASH_DEVICES = GD25Q16C
|
||||
LONGINT_IMPL = MPZ
|
||||
|
||||
CIRCUITPY_VECTORIO = 1
|
||||
|
||||
|
@ -18,4 +18,3 @@ CIRCUITPY_AUDIOIO = 0
|
||||
|
||||
# Too much flash for Korean translations
|
||||
CIRCUITPY_VECTORIO = 0
|
||||
|
||||
|
@ -23,6 +23,3 @@
|
||||
// Enable the use of 2 displays
|
||||
|
||||
#define CIRCUITPY_DISPLAY_LIMIT (2)
|
||||
|
||||
|
||||
|
||||
|
@ -29,4 +29,3 @@
|
||||
// USB is always used.
|
||||
#define IGNORE_PIN_PA24 1
|
||||
#define IGNORE_PIN_PA25 1
|
||||
|
||||
|
@ -12,4 +12,3 @@ LONGINT_IMPL = NONE
|
||||
CIRCUITPY_FULL_BUILD = 0
|
||||
|
||||
SUPEROPT_GC = 0
|
||||
|
||||
|
@ -37,4 +37,3 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
|
||||
};
|
||||
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);
|
||||
|
||||
|
@ -150,4 +150,3 @@ void common_hal_neopixel_write(const digitalio_digitalinout_obj_t* digitalinout,
|
||||
mp_hal_enable_all_interrupts();
|
||||
|
||||
}
|
||||
|
||||
|
@ -38,4 +38,3 @@
|
||||
#define DEFAULT_UART_BUS_TX (&pin_UART2_TXD)
|
||||
|
||||
#define MICROPY_PY_REVERSE_SPECIAL_METHODS (1)
|
||||
|
||||
|
1
ports/cxd56/mkspk/.gitignore
vendored
1
ports/cxd56/mkspk/.gitignore
vendored
@ -1,3 +1,2 @@
|
||||
/mkspk
|
||||
/mkspk.exe
|
||||
|
||||
|
@ -29,6 +29,8 @@
|
||||
#include <sys/boardctl.h>
|
||||
#include <sys/time.h>
|
||||
|
||||
#include <cxd56_rtc.h>
|
||||
|
||||
#include "sched/sched.h"
|
||||
|
||||
#include "boards/board.h"
|
||||
@ -45,7 +47,8 @@
|
||||
safe_mode_t port_init(void) {
|
||||
boardctl(BOARDIOC_INIT, 0);
|
||||
|
||||
board_init();
|
||||
// Wait until RTC is available
|
||||
while (g_rtc_enabled == false);
|
||||
|
||||
if (board_requests_safe_mode()) {
|
||||
return USER_SAFE_MODE;
|
||||
@ -121,14 +124,10 @@ void board_timerhook(void)
|
||||
}
|
||||
|
||||
uint64_t port_get_raw_ticks(uint8_t* subticks) {
|
||||
struct timeval tv;
|
||||
gettimeofday(&tv, NULL);
|
||||
long computed_subticks = tv.tv_usec * 1024 * 32 / 1000000;
|
||||
if (subticks != NULL) {
|
||||
*subticks = computed_subticks % 32;
|
||||
}
|
||||
uint64_t count = cxd56_rtc_count();
|
||||
*subticks = count % 32;
|
||||
|
||||
return tv.tv_sec * 1024 + computed_subticks / 32;
|
||||
return count / 32;
|
||||
}
|
||||
|
||||
// Enable 1/1024 second tick.
|
||||
@ -147,4 +146,3 @@ void port_interrupt_after_ticks(uint32_t ticks) {
|
||||
void port_sleep_until_interrupt(void) {
|
||||
// TODO: Implement sleep.
|
||||
}
|
||||
|
||||
|
@ -35,4 +35,3 @@ bool common_hal_get_serial_connected(void) {
|
||||
bool common_hal_get_serial_bytes_available(void) {
|
||||
return (bool) serial_bytes_available();
|
||||
}
|
||||
|
||||
|
@ -121,4 +121,3 @@ mp_uint_t supervisor_flash_write_blocks(const uint8_t *src, uint32_t lba, uint32
|
||||
|
||||
void supervisor_flash_release_cache(void) {
|
||||
}
|
||||
|
||||
|
@ -88,4 +88,3 @@ void init_usb_hardware(void) {
|
||||
usb_device_stack,
|
||||
&usb_device_taskdef);
|
||||
}
|
||||
|
||||
|
@ -35,4 +35,3 @@ bool common_hal_get_serial_connected(void) {
|
||||
bool common_hal_get_serial_bytes_available(void) {
|
||||
return (bool) serial_bytes_available();
|
||||
}
|
||||
|
||||
|
@ -348,4 +348,3 @@ mp_uint_t supervisor_flash_write_blocks(const uint8_t *src, uint32_t lba, uint32
|
||||
|
||||
void supervisor_flash_release_cache(void) {
|
||||
}
|
||||
|
||||
|
@ -68,7 +68,6 @@ safe_mode_t port_init(void) {
|
||||
irq_setmask(0);
|
||||
irq_setie(1);
|
||||
tick_init();
|
||||
board_init();
|
||||
return NO_SAFE_MODE;
|
||||
}
|
||||
|
||||
|
@ -33,7 +33,6 @@ void board_init(void) {
|
||||
// SWD Pins
|
||||
common_hal_never_reset_pin(&pin_GPIO_AD_13); //SWDIO
|
||||
common_hal_never_reset_pin(&pin_GPIO_AD_12); //SWCLK
|
||||
common_hal_never_reset_pin(&pin_GPIO_AD_09); //SWO
|
||||
// FLEX flash
|
||||
common_hal_never_reset_pin(&pin_GPIO_SD_12);
|
||||
common_hal_never_reset_pin(&pin_GPIO_SD_11);
|
||||
|
@ -7,6 +7,10 @@
|
||||
|
||||
#define BOARD_FLASH_SIZE (16 * 1024 * 1024)
|
||||
|
||||
#define DEFAULT_SPI_BUS_SCK (&pin_GPIO_AD_06)
|
||||
#define DEFAULT_SPI_BUS_MOSI (&pin_GPIO_AD_04)
|
||||
#define DEFAULT_SPI_BUS_MISO (&pin_GPIO_AD_03)
|
||||
|
||||
#define DEFAULT_I2C_BUS_SCL (&pin_GPIO_02)
|
||||
#define DEFAULT_I2C_BUS_SDA (&pin_GPIO_01)
|
||||
|
||||
|
@ -4,9 +4,7 @@
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_GPIO_09) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_GPIO_09) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_GPIO_10) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_GPIO_10) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_GPIO_AD_05) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_GPIO_AD_06) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D4), MP_ROM_PTR(&pin_GPIO_08) },
|
||||
@ -20,9 +18,7 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D12), MP_ROM_PTR(&pin_GPIO_AD_03) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_GPIO_AD_06) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D14), MP_ROM_PTR(&pin_GPIO_01) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_GPIO_01) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D15), MP_ROM_PTR(&pin_GPIO_02) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_GPIO_02) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_GPIO_AD_07) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_GPIO_AD_09) },
|
||||
@ -31,6 +27,16 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A4), MP_ROM_PTR(&pin_GPIO_AD_01) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_GPIO_AD_02) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_GPIO_09) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_GPIO_10) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_GPIO_AD_04) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_GPIO_AD_03) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_GPIO_AD_06) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_GPIO_01) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_GPIO_02) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_USER_LED), MP_ROM_PTR(&pin_GPIO_11) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_USER_SW), MP_ROM_PTR(&pin_GPIO_SD_05) },
|
||||
|
||||
|
@ -33,7 +33,6 @@ void board_init(void) {
|
||||
// SWD Pins
|
||||
common_hal_never_reset_pin(&pin_GPIO_AD_B0_00);//SWDIO
|
||||
common_hal_never_reset_pin(&pin_GPIO_AD_B0_01);//SWCLK
|
||||
common_hal_never_reset_pin(&pin_GPIO_AD_B0_04);//SWO
|
||||
|
||||
// FLEX flash
|
||||
common_hal_never_reset_pin(&pin_GPIO_SD_B1_06);
|
||||
|
@ -33,7 +33,6 @@ void board_init(void) {
|
||||
// SWD Pins
|
||||
common_hal_never_reset_pin(&pin_GPIO_AD_B0_06);//SWDIO
|
||||
common_hal_never_reset_pin(&pin_GPIO_AD_B0_07);//SWCLK
|
||||
common_hal_never_reset_pin(&pin_GPIO_AD_B0_10);//SWO
|
||||
|
||||
// FLEX flash
|
||||
common_hal_never_reset_pin(&pin_GPIO_SD_B1_00);
|
||||
|
@ -27,15 +27,32 @@
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#include "shared-bindings/microcontroller/Pin.h"
|
||||
#include "shared-bindings/microcontroller/__init__.h"
|
||||
#include "shared-bindings/busio/I2C.h"
|
||||
#include "py/mperrno.h"
|
||||
#include "py/runtime.h"
|
||||
#include "periph.h"
|
||||
|
||||
#include "fsl_lpi2c.h"
|
||||
#include "fsl_gpio.h"
|
||||
|
||||
#define I2C_CLOCK_FREQ (CLOCK_GetFreq(kCLOCK_Usb1PllClk) / 8 / (1+CLOCK_GetDiv(kCLOCK_Lpi2cDiv)))
|
||||
#define IOMUXC_SW_MUX_CTL_PAD_MUX_MODE_ALT5 5U
|
||||
|
||||
//arrays use 0 based numbering: I2C1 is stored at index 0
|
||||
#define MAX_I2C 4
|
||||
STATIC bool reserved_i2c[MAX_I2C];
|
||||
STATIC bool never_reset_i2c[MAX_I2C];
|
||||
|
||||
void i2c_reset(void) {
|
||||
for(uint i = 0; i < MP_ARRAY_SIZE(mcu_i2c_banks); i++) {
|
||||
if (!never_reset_i2c[i]) {
|
||||
reserved_i2c[i] = false;
|
||||
LPI2C_MasterDeinit(mcu_i2c_banks[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void config_periph_pin(const mcu_periph_obj_t *periph) {
|
||||
IOMUXC_SetPinMux(
|
||||
@ -56,11 +73,49 @@ static void config_periph_pin(const mcu_periph_obj_t *periph) {
|
||||
| IOMUXC_SW_PAD_CTL_PAD_SRE(0));
|
||||
}
|
||||
|
||||
static void i2c_check_pin_config(const mcu_pin_obj_t *pin, uint32_t pull)
|
||||
{
|
||||
IOMUXC_SetPinConfig(0, 0, 0, 0, pin->cfg_reg,
|
||||
IOMUXC_SW_PAD_CTL_PAD_HYS(1)
|
||||
| IOMUXC_SW_PAD_CTL_PAD_PUS(0) // Pulldown
|
||||
| IOMUXC_SW_PAD_CTL_PAD_PUE(pull) // 0=nopull (keeper), 1=pull
|
||||
| IOMUXC_SW_PAD_CTL_PAD_PKE(1)
|
||||
| IOMUXC_SW_PAD_CTL_PAD_ODE(0)
|
||||
| IOMUXC_SW_PAD_CTL_PAD_SPEED(2)
|
||||
| IOMUXC_SW_PAD_CTL_PAD_DSE(1)
|
||||
| IOMUXC_SW_PAD_CTL_PAD_SRE(0));
|
||||
}
|
||||
|
||||
void common_hal_busio_i2c_construct(busio_i2c_obj_t *self,
|
||||
const mcu_pin_obj_t *scl, const mcu_pin_obj_t *sda, uint32_t frequency, uint32_t timeout) {
|
||||
|
||||
const uint32_t sda_count = sizeof(mcu_i2c_sda_list) / sizeof(mcu_periph_obj_t);
|
||||
const uint32_t scl_count = sizeof(mcu_i2c_scl_list) / sizeof(mcu_periph_obj_t);
|
||||
#if CIRCUITPY_REQUIRE_I2C_PULLUPS
|
||||
// Test that the pins are in a high state. (Hopefully indicating they are pulled up.)
|
||||
IOMUXC_SetPinMux(sda->mux_reg, IOMUXC_SW_MUX_CTL_PAD_MUX_MODE_ALT5, 0, 0, 0, 0);
|
||||
IOMUXC_SetPinMux(scl->mux_reg, IOMUXC_SW_MUX_CTL_PAD_MUX_MODE_ALT5, 0, 0, 0, 0);
|
||||
i2c_check_pin_config(sda, 1);
|
||||
i2c_check_pin_config(scl, 1);
|
||||
const gpio_pin_config_t check_config = { kGPIO_DigitalInput, 0, kGPIO_NoIntmode };
|
||||
GPIO_PinInit(sda->gpio, sda->number, &check_config);
|
||||
GPIO_PinInit(scl->gpio, scl->number, &check_config);
|
||||
|
||||
common_hal_mcu_delay_us(10);
|
||||
|
||||
i2c_check_pin_config(sda, 0);
|
||||
i2c_check_pin_config(scl, 0);
|
||||
|
||||
// We must pull up within 3us to achieve 400khz.
|
||||
common_hal_mcu_delay_us(3);
|
||||
|
||||
if( !GPIO_PinRead(sda->gpio, sda->number) || !GPIO_PinRead(scl->gpio, scl->number)) {
|
||||
common_hal_reset_pin(sda);
|
||||
common_hal_reset_pin(scl);
|
||||
mp_raise_RuntimeError(translate("SDA or SCL needs a pull up"));
|
||||
}
|
||||
#endif
|
||||
|
||||
const uint32_t sda_count = MP_ARRAY_SIZE(mcu_i2c_sda_list);
|
||||
const uint32_t scl_count = MP_ARRAY_SIZE(mcu_i2c_scl_list);
|
||||
|
||||
for (uint32_t i = 0; i < sda_count; ++i) {
|
||||
if (mcu_i2c_sda_list[i].pin != sda)
|
||||
@ -73,21 +128,21 @@ void common_hal_busio_i2c_construct(busio_i2c_obj_t *self,
|
||||
if (mcu_i2c_scl_list[j].bank_idx != mcu_i2c_sda_list[i].bank_idx)
|
||||
continue;
|
||||
|
||||
self->sda_pin = &mcu_i2c_sda_list[i];
|
||||
self->scl_pin = &mcu_i2c_scl_list[j];
|
||||
self->sda = &mcu_i2c_sda_list[i];
|
||||
self->scl = &mcu_i2c_scl_list[j];
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if(self->sda_pin == NULL || self->scl_pin == NULL) {
|
||||
mp_raise_ValueError(translate("Invalid I2C pin selection"));
|
||||
if(self->sda == NULL || self->scl == NULL) {
|
||||
mp_raise_ValueError(translate("Invalid pins"));
|
||||
} else {
|
||||
self->i2c = mcu_i2c_banks[self->sda_pin->bank_idx - 1];
|
||||
self->i2c = mcu_i2c_banks[self->sda->bank_idx - 1];
|
||||
}
|
||||
|
||||
config_periph_pin(self->sda_pin);
|
||||
config_periph_pin(self->scl_pin);
|
||||
config_periph_pin(self->sda);
|
||||
config_periph_pin(self->scl);
|
||||
|
||||
lpi2c_master_config_t config = { 0 };
|
||||
LPI2C_MasterGetDefaultConfig(&config);
|
||||
@ -96,34 +151,35 @@ void common_hal_busio_i2c_construct(busio_i2c_obj_t *self,
|
||||
|
||||
LPI2C_MasterInit(self->i2c, &config, I2C_CLOCK_FREQ);
|
||||
|
||||
#if CIRCUITPY_REQUIRE_I2C_PULLUPS
|
||||
// if (!gpio_get_pin_level(sda->number) || !gpio_get_pin_level(scl->number)) {
|
||||
// reset_pin_number(sda->number);
|
||||
// reset_pin_number(scl->number);
|
||||
// mp_raise_RuntimeError(translate("SDA or SCL needs a pull up"));
|
||||
// }
|
||||
#endif
|
||||
claim_pin(self->sda->pin);
|
||||
claim_pin(self->scl->pin);
|
||||
}
|
||||
|
||||
claim_pin(self->sda_pin->pin);
|
||||
claim_pin(self->scl_pin->pin);
|
||||
void common_hal_busio_i2c_never_reset(busio_i2c_obj_t *self) {
|
||||
never_reset_i2c[self->sda->bank_idx - 1] = true;
|
||||
|
||||
common_hal_never_reset_pin(self->sda->pin);
|
||||
common_hal_never_reset_pin(self->scl->pin);
|
||||
}
|
||||
|
||||
bool common_hal_busio_i2c_deinited(busio_i2c_obj_t *self) {
|
||||
return self->sda_pin == NULL;
|
||||
return self->sda == NULL;
|
||||
}
|
||||
|
||||
void common_hal_busio_i2c_deinit(busio_i2c_obj_t *self) {
|
||||
if (common_hal_busio_i2c_deinited(self)) {
|
||||
return;
|
||||
}
|
||||
reserved_i2c[self->sda->bank_idx - 1] = false;
|
||||
never_reset_i2c[self->sda->bank_idx - 1] = false;
|
||||
|
||||
LPI2C_MasterDeinit(self->i2c);
|
||||
|
||||
// reset_pin_number(self->sda_pin);
|
||||
// reset_pin_number(self->scl_pin);
|
||||
common_hal_reset_pin(self->sda->pin);
|
||||
common_hal_reset_pin(self->scl->pin);
|
||||
|
||||
self->sda_pin = NULL;
|
||||
self->scl_pin = NULL;
|
||||
self->sda = NULL;
|
||||
self->scl = NULL;
|
||||
}
|
||||
|
||||
bool common_hal_busio_i2c_probe(busio_i2c_obj_t *self, uint8_t addr) {
|
||||
@ -183,10 +239,3 @@ uint8_t common_hal_busio_i2c_read(busio_i2c_obj_t *self, uint16_t addr,
|
||||
|
||||
return MP_EIO;
|
||||
}
|
||||
|
||||
void common_hal_busio_i2c_never_reset(busio_i2c_obj_t *self) {
|
||||
// never_reset_sercom(self->i2c_desc.device.hw);
|
||||
//
|
||||
// never_reset_pin_number(self->scl_pin);
|
||||
// never_reset_pin_number(self->sda_pin);
|
||||
}
|
||||
|
@ -37,8 +37,8 @@ typedef struct {
|
||||
mp_obj_base_t base;
|
||||
LPI2C_Type *i2c;
|
||||
bool has_lock;
|
||||
const mcu_periph_obj_t *scl_pin;
|
||||
const mcu_periph_obj_t *sda_pin;
|
||||
const mcu_periph_obj_t *scl;
|
||||
const mcu_periph_obj_t *sda;
|
||||
} busio_i2c_obj_t;
|
||||
|
||||
#endif // MICROPY_INCLUDED_MIMXRT10XX_COMMON_HAL_BUSIO_I2C_H
|
||||
|
@ -25,6 +25,8 @@
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "shared-bindings/microcontroller/Pin.h"
|
||||
#include "shared-bindings/microcontroller/__init__.h"
|
||||
#include "shared-bindings/busio/SPI.h"
|
||||
#include "py/mperrno.h"
|
||||
#include "py/runtime.h"
|
||||
@ -34,6 +36,8 @@
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#define LPSPI_MASTER_CLK_FREQ (CLOCK_GetFreq(kCLOCK_Usb1PllPfd0Clk) / (CLOCK_GetDiv(kCLOCK_LpspiDiv) + 1))
|
||||
|
||||
//arrays use 0 based numbering: SPI1 is stored at index 0
|
||||
#define MAX_SPI 4
|
||||
STATIC bool reserved_spi[MAX_SPI];
|
||||
@ -58,11 +62,12 @@ STATIC void config_periph_pin(const mcu_periph_obj_t *periph) {
|
||||
| IOMUXC_SW_PAD_CTL_PAD_SRE(0));
|
||||
}
|
||||
|
||||
#define LPSPI_MASTER_CLK_FREQ (CLOCK_GetFreq(kCLOCK_Usb1PllPfd0Clk) / (CLOCK_GetDiv(kCLOCK_LpspiDiv) + 1))
|
||||
|
||||
void spi_reset(void) {
|
||||
for (int i = 0; i < MAX_SPI; i++) {
|
||||
for (uint i = 0; i < MP_ARRAY_SIZE(mcu_spi_banks); i++) {
|
||||
if (!never_reset_spi[i]) {
|
||||
reserved_spi[i] = false;
|
||||
LPSPI_Deinit(mcu_spi_banks[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -192,7 +197,14 @@ void common_hal_busio_spi_construct(busio_spi_obj_t *self,
|
||||
}
|
||||
|
||||
void common_hal_busio_spi_never_reset(busio_spi_obj_t *self) {
|
||||
// TODO
|
||||
never_reset_spi[self->clock->bank_idx - 1] = true;
|
||||
common_hal_never_reset_pin(self->clock->pin);
|
||||
if (self->mosi != NULL) {
|
||||
common_hal_never_reset_pin(self->mosi->pin);
|
||||
}
|
||||
if (self->miso != NULL) {
|
||||
common_hal_never_reset_pin(self->miso->pin);
|
||||
}
|
||||
}
|
||||
|
||||
bool common_hal_busio_spi_deinited(busio_spi_obj_t *self) {
|
||||
@ -203,8 +215,20 @@ void common_hal_busio_spi_deinit(busio_spi_obj_t *self) {
|
||||
if (common_hal_busio_spi_deinited(self)) {
|
||||
return;
|
||||
}
|
||||
LPSPI_Deinit(self->spi);
|
||||
reserved_spi[self->clock->bank_idx - 1] = false;
|
||||
never_reset_spi[self->clock->bank_idx - 1] = false;
|
||||
|
||||
common_hal_reset_pin(self->clock->pin);
|
||||
if (self->mosi != NULL) {
|
||||
common_hal_reset_pin(self->mosi->pin);
|
||||
}
|
||||
if (self->miso != NULL) {
|
||||
common_hal_reset_pin(self->miso->pin);
|
||||
}
|
||||
self->clock = NULL;
|
||||
self->mosi = NULL;
|
||||
self->miso = NULL;
|
||||
}
|
||||
|
||||
bool common_hal_busio_spi_configure(busio_spi_obj_t *self,
|
||||
|
@ -25,6 +25,7 @@
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "shared-bindings/microcontroller/Pin.h"
|
||||
#include "shared-bindings/microcontroller/__init__.h"
|
||||
#include "shared-bindings/busio/UART.h"
|
||||
|
||||
@ -73,6 +74,13 @@ void LPUART_UserCallback(LPUART_Type *base, lpuart_handle_t *handle, status_t st
|
||||
}
|
||||
}
|
||||
|
||||
void uart_reset(void) {
|
||||
for(uint i = 0; i < MP_ARRAY_SIZE(mcu_uart_banks); i++) {
|
||||
reserved_uart[i] = false;
|
||||
LPUART_Deinit(mcu_uart_banks[i]);
|
||||
}
|
||||
}
|
||||
|
||||
void common_hal_busio_uart_construct(busio_uart_obj_t *self,
|
||||
const mcu_pin_obj_t * tx, const mcu_pin_obj_t * rx,
|
||||
const mcu_pin_obj_t * rts, const mcu_pin_obj_t * cts,
|
||||
@ -278,13 +286,21 @@ void common_hal_busio_uart_deinit(busio_uart_obj_t *self) {
|
||||
if (common_hal_busio_uart_deinited(self)) {
|
||||
return;
|
||||
}
|
||||
if (self->rx) {
|
||||
reserved_uart[self->rx->bank_idx - 1] = false;
|
||||
} else {
|
||||
reserved_uart[self->tx->bank_idx - 1] = false;
|
||||
}
|
||||
|
||||
LPUART_Deinit(self->uart);
|
||||
|
||||
gc_free(self->ringbuf);
|
||||
|
||||
// reset_pin_number(self->rx);
|
||||
// reset_pin_number(self->tx);
|
||||
if (self->rx) {
|
||||
common_hal_reset_pin(self->rx->pin);
|
||||
}
|
||||
if (self->tx) {
|
||||
common_hal_reset_pin(self->tx->pin);
|
||||
}
|
||||
|
||||
self->rx = NULL;
|
||||
self->tx = NULL;
|
||||
|
@ -5,6 +5,7 @@
|
||||
*
|
||||
* Copyright (c) 2016 Scott Shawcroft for Adafruit Industries
|
||||
* Copyright (c) 2019 Artur Pacholec
|
||||
* Copyright (c) 2020 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
|
||||
|
@ -29,7 +29,7 @@
|
||||
#include "py/mphal.h"
|
||||
#include "mimxrt10xx/periph.h"
|
||||
|
||||
LPI2C_Type *mcu_i2c_banks[] = { LPI2C1, LPI2C2 };
|
||||
LPI2C_Type *mcu_i2c_banks[2] = { LPI2C1, LPI2C2 };
|
||||
|
||||
const mcu_periph_obj_t mcu_i2c_sda_list[8] = {
|
||||
PERIPH_PIN(1, 0, kIOMUXC_LPI2C1_SDA_SELECT_INPUT, 0, &pin_GPIO_AD_13),
|
||||
@ -55,7 +55,7 @@ const mcu_periph_obj_t mcu_i2c_scl_list[8] = {
|
||||
PERIPH_PIN(2, 3, kIOMUXC_LPI2C2_SCL_SELECT_INPUT, 3, &pin_GPIO_10),
|
||||
};
|
||||
|
||||
LPSPI_Type *mcu_spi_banks[] = { LPSPI1, LPSPI2 };
|
||||
LPSPI_Type *mcu_spi_banks[2] = { LPSPI1, LPSPI2 };
|
||||
|
||||
const mcu_periph_obj_t mcu_spi_sck_list[4] = {
|
||||
PERIPH_PIN(1, 0, kIOMUXC_LPSPI1_SCK_SELECT_INPUT, 0, &pin_GPIO_AD_06),
|
||||
@ -81,7 +81,7 @@ const mcu_periph_obj_t mcu_spi_miso_list[4] = {
|
||||
PERIPH_PIN(2, 1, kIOMUXC_LPSPI2_SDI_SELECT_INPUT, 1, &pin_GPIO_SD_09),
|
||||
};
|
||||
|
||||
LPUART_Type *mcu_uart_banks[] = { LPUART1, LPUART2, LPUART3, LPUART4 };
|
||||
LPUART_Type *mcu_uart_banks[4] = { LPUART1, LPUART2, LPUART3, LPUART4 };
|
||||
|
||||
const mcu_periph_obj_t mcu_uart_rx_list[9] = {
|
||||
PERIPH_PIN(1, 2, kIOMUXC_LPUART1_RXD_SELECT_INPUT, 0, &pin_GPIO_SD_11),
|
||||
|
@ -27,13 +27,19 @@
|
||||
#ifndef MICROPY_INCLUDED_MIMXRT10XX_PERIPHERALS_MIMXRT1011_PERIPH_H
|
||||
#define MICROPY_INCLUDED_MIMXRT10XX_PERIPHERALS_MIMXRT1011_PERIPH_H
|
||||
|
||||
LPI2C_Type *mcu_i2c_banks[2];
|
||||
|
||||
extern const mcu_periph_obj_t mcu_i2c_sda_list[8];
|
||||
extern const mcu_periph_obj_t mcu_i2c_scl_list[8];
|
||||
|
||||
LPSPI_Type *mcu_spi_banks[2];
|
||||
|
||||
extern const mcu_periph_obj_t mcu_spi_sck_list[4];
|
||||
extern const mcu_periph_obj_t mcu_spi_mosi_list[4];
|
||||
extern const mcu_periph_obj_t mcu_spi_miso_list[4];
|
||||
|
||||
LPUART_Type *mcu_uart_banks[4];
|
||||
|
||||
extern const mcu_periph_obj_t mcu_uart_rx_list[9];
|
||||
extern const mcu_periph_obj_t mcu_uart_tx_list[9];
|
||||
extern const mcu_periph_obj_t mcu_uart_rts_list[4];
|
||||
|
@ -30,7 +30,7 @@
|
||||
#include "py/mphal.h"
|
||||
#include "mimxrt10xx/periph.h"
|
||||
|
||||
LPI2C_Type *mcu_i2c_banks[] = { LPI2C1, LPI2C2, LPI2C3, LPI2C4 };
|
||||
LPI2C_Type *mcu_i2c_banks[4] = { LPI2C1, LPI2C2, LPI2C3, LPI2C4 };
|
||||
|
||||
const mcu_periph_obj_t mcu_i2c_sda_list[8] = {
|
||||
PERIPH_PIN(1, 6, kIOMUXC_LPI2C1_SDA_SELECT_INPUT, 0, &pin_GPIO_EMC_03),
|
||||
@ -60,7 +60,7 @@ const mcu_periph_obj_t mcu_i2c_scl_list[8] = {
|
||||
PERIPH_PIN(4, 3, kIOMUXC_LPI2C4_SCL_SELECT_INPUT, 1, &pin_GPIO_SD_B1_02),
|
||||
};
|
||||
|
||||
LPSPI_Type *mcu_spi_banks[] = { LPSPI1, LPSPI2, LPSPI3, LPSPI4 };
|
||||
LPSPI_Type *mcu_spi_banks[4] = { LPSPI1, LPSPI2, LPSPI3, LPSPI4 };
|
||||
|
||||
const mcu_periph_obj_t mcu_spi_sck_list[8] = {
|
||||
PERIPH_PIN(1, 4, kIOMUXC_LPSPI1_SCK_SELECT_INPUT, 0, &pin_GPIO_SD_B0_02),
|
||||
@ -104,7 +104,7 @@ const mcu_periph_obj_t mcu_spi_miso_list[8] = {
|
||||
PERIPH_PIN(4, 4, kIOMUXC_LPSPI2_SDI_SELECT_INPUT, 1, &pin_GPIO_EMC_35),
|
||||
};
|
||||
|
||||
LPUART_Type *mcu_uart_banks[] = { LPUART1, LPUART2, LPUART3, LPUART4, LPUART5, LPUART6, LPUART7, LPUART8 };
|
||||
LPUART_Type *mcu_uart_banks[8] = { LPUART1, LPUART2, LPUART3, LPUART4, LPUART5, LPUART6, LPUART7, LPUART8 };
|
||||
|
||||
const mcu_periph_obj_t mcu_uart_rx_list[16] = {
|
||||
PERIPH_PIN(1, 2, 0, 0, &pin_GPIO_AD_B0_07),
|
||||
|
@ -28,13 +28,19 @@
|
||||
#ifndef MICROPY_INCLUDED_MIMXRT10XX_PERIPHERALS_MIMXRT1021_PERIPH_H
|
||||
#define MICROPY_INCLUDED_MIMXRT10XX_PERIPHERALS_MIMXRT1021_PERIPH_H
|
||||
|
||||
LPI2C_Type *mcu_i2c_banks[4];
|
||||
|
||||
extern const mcu_periph_obj_t mcu_i2c_sda_list[8];
|
||||
extern const mcu_periph_obj_t mcu_i2c_scl_list[8];
|
||||
|
||||
LPSPI_Type *mcu_spi_banks[4];
|
||||
|
||||
extern const mcu_periph_obj_t mcu_spi_sck_list[8];
|
||||
extern const mcu_periph_obj_t mcu_spi_mosi_list[8];
|
||||
extern const mcu_periph_obj_t mcu_spi_miso_list[8];
|
||||
|
||||
LPUART_Type *mcu_uart_banks[8];
|
||||
|
||||
extern const mcu_periph_obj_t mcu_uart_rx_list[16];
|
||||
extern const mcu_periph_obj_t mcu_uart_tx_list[16];
|
||||
extern const mcu_periph_obj_t mcu_uart_rts_list[10];
|
||||
|
@ -29,7 +29,7 @@
|
||||
#include "py/mphal.h"
|
||||
#include "mimxrt10xx/periph.h"
|
||||
|
||||
LPI2C_Type *mcu_i2c_banks[] = { LPI2C1, LPI2C2, LPI2C3, LPI2C4 };
|
||||
LPI2C_Type *mcu_i2c_banks[4] = { LPI2C1, LPI2C2, LPI2C3, LPI2C4 };
|
||||
|
||||
const mcu_periph_obj_t mcu_i2c_sda_list[9] = {
|
||||
PERIPH_PIN(1, 2, kIOMUXC_LPI2C1_SDA_SELECT_INPUT, 0, &pin_GPIO_SD_B1_05),
|
||||
@ -61,7 +61,7 @@ const mcu_periph_obj_t mcu_i2c_scl_list[9] = {
|
||||
PERIPH_PIN(4, 0, kIOMUXC_LPI2C4_SCL_SELECT_INPUT, 1, &pin_GPIO_AD_B0_12),
|
||||
};
|
||||
|
||||
LPSPI_Type *mcu_spi_banks[] = { LPSPI1, LPSPI2, LPSPI3, LPSPI4 };
|
||||
LPSPI_Type *mcu_spi_banks[4] = { LPSPI1, LPSPI2, LPSPI3, LPSPI4 };
|
||||
|
||||
const mcu_periph_obj_t mcu_spi_sck_list[8] = {
|
||||
PERIPH_PIN(1, 3, kIOMUXC_LPSPI1_SCK_SELECT_INPUT, 0, &pin_GPIO_EMC_27),
|
||||
@ -105,7 +105,7 @@ const mcu_periph_obj_t mcu_spi_miso_list[8] = {
|
||||
PERIPH_PIN(4, 1, kIOMUXC_LPSPI4_SDI_SELECT_INPUT, 1, &pin_GPIO_B1_05),
|
||||
};
|
||||
|
||||
LPUART_Type *mcu_uart_banks[] = { LPUART1, LPUART2, LPUART3, LPUART4, LPUART5, LPUART6, LPUART7, LPUART8 };
|
||||
LPUART_Type *mcu_uart_banks[8] = { LPUART1, LPUART2, LPUART3, LPUART4, LPUART5, LPUART6, LPUART7, LPUART8 };
|
||||
|
||||
const mcu_periph_obj_t mcu_uart_rx_list[18] = {
|
||||
PERIPH_PIN(1, 2, 0, 0, &pin_GPIO_AD_B0_13),
|
||||
|
@ -27,13 +27,19 @@
|
||||
#ifndef MICROPY_INCLUDED_MIMXRT10XX_PERIPHERALS_MIMXRT1011_PERIPH_H
|
||||
#define MICROPY_INCLUDED_MIMXRT10XX_PERIPHERALS_MIMXRT1011_PERIPH_H
|
||||
|
||||
LPI2C_Type *mcu_i2c_banks[4];
|
||||
|
||||
extern const mcu_periph_obj_t mcu_i2c_sda_list[9];
|
||||
extern const mcu_periph_obj_t mcu_i2c_scl_list[9];
|
||||
|
||||
LPSPI_Type *mcu_spi_banks[4];
|
||||
|
||||
extern const mcu_periph_obj_t mcu_spi_sck_list[8];
|
||||
extern const mcu_periph_obj_t mcu_spi_mosi_list[8];
|
||||
extern const mcu_periph_obj_t mcu_spi_miso_list[8];
|
||||
|
||||
LPUART_Type *mcu_uart_banks[8];
|
||||
|
||||
extern const mcu_periph_obj_t mcu_uart_rx_list[18];
|
||||
extern const mcu_periph_obj_t mcu_uart_tx_list[18];
|
||||
extern const mcu_periph_obj_t mcu_uart_rts_list[9];
|
||||
|
@ -254,4 +254,3 @@ mp_uint_t supervisor_flash_write_blocks(const uint8_t *src, uint32_t lba, uint32
|
||||
|
||||
void supervisor_flash_release_cache(void) {
|
||||
}
|
||||
|
||||
|
@ -257,8 +257,8 @@ safe_mode_t port_init(void) {
|
||||
// enabled. It won't occur very often so it'll be low overhead.
|
||||
NVIC_EnableIRQ(SNVS_HP_WRAPPER_IRQn);
|
||||
|
||||
// Reset everything into a known state before board_init.
|
||||
reset_port();
|
||||
// Note that `reset_port` CANNOT GO HERE, unlike other ports, because `board_init` hasn't been
|
||||
// run yet, which uses `never_reset` to protect critical pins from being reset by `reset_port`.
|
||||
|
||||
if (board_requests_safe_mode()) {
|
||||
return USER_SAFE_MODE;
|
||||
|
@ -90,4 +90,3 @@ void serial_write_substring(const char *text, uint32_t len) {
|
||||
|
||||
LPUART_WriteBlocking(uart_instance, (uint8_t*)text, len);
|
||||
}
|
||||
|
||||
|
@ -136,6 +136,7 @@ SRC_NRFX = $(addprefix nrfx/,\
|
||||
drivers/src/nrfx_gpiote.c \
|
||||
drivers/src/nrfx_rtc.c \
|
||||
drivers/src/nrfx_nvmc.c \
|
||||
drivers/src/nrfx_wdt.c \
|
||||
)
|
||||
|
||||
ifdef EXTERNAL_FLASH_DEVICES
|
||||
|
@ -3894,4 +3894,3 @@
|
||||
* @}
|
||||
* @}
|
||||
*/
|
||||
|
||||
|
@ -3927,4 +3927,3 @@
|
||||
* @}
|
||||
* @}
|
||||
*/
|
||||
|
||||
|
@ -70,20 +70,6 @@ SECTIONS
|
||||
_etext = .; /* define a global symbol at end of code */
|
||||
} >FLASH_FIRMWARE
|
||||
|
||||
/*
|
||||
.ARM.extab :
|
||||
{
|
||||
*(.ARM.extab* .gnu.linkonce.armextab.*)
|
||||
} >FLASH_FIRMWARE
|
||||
|
||||
.ARM :
|
||||
{
|
||||
__exidx_start = .;
|
||||
*(.ARM.exidx*)
|
||||
__exidx_end = .;
|
||||
} >FLASH_FIRMWARE
|
||||
*/
|
||||
|
||||
/* used by the startup to initialize data */
|
||||
_sidata = .;
|
||||
|
||||
@ -147,6 +133,14 @@ SECTIONS
|
||||
. = ALIGN(4);
|
||||
} >RAM
|
||||
|
||||
/* Remove exception unwinding information, since Circuit Python
|
||||
does not support this GCC feature. */
|
||||
/DISCARD/ :
|
||||
{
|
||||
*(.ARM.extab* .gnu.linkonce.armextab.*)
|
||||
*(.ARM.exidx*)
|
||||
}
|
||||
|
||||
/* Remove information from the standard libraries */
|
||||
/*
|
||||
/DISCARD/ :
|
||||
|
@ -62,6 +62,3 @@
|
||||
|
||||
#define DEFAULT_UART_BUS_RX (&pin_P0_28)
|
||||
#define DEFAULT_UART_BUS_TX (&pin_P0_02)
|
||||
|
||||
|
||||
|
||||
|
@ -15,4 +15,3 @@ EXTERNAL_FLASH_DEVICES = "W25Q16JV_IQ"
|
||||
# We use a CFLAGS define here because there are include order issues
|
||||
# if we try to include "mpconfigport.h" into nrfx_config.h .
|
||||
CFLAGS += -DCIRCUITPY_NRF_NUM_I2C=2
|
||||
|
||||
|
@ -8,9 +8,13 @@ MCU_CHIP = nrf52833
|
||||
INTERNAL_FLASH_FILESYSTEM = 1
|
||||
|
||||
CIRCUITPY_AUDIOMP3 = 0
|
||||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_BUSIO = 1
|
||||
CIRCUITPY_COUNTIO = 0
|
||||
CIRCUITPY_DISPLAYIO = 0
|
||||
CIRCUITPY_FRAMEBUFFERIO = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_NEOPIXEL_WRITE = 0
|
||||
CIRCUITPY_NVM = 0
|
||||
CIRCUITPY_PIXELBUF = 0
|
||||
@ -20,6 +24,8 @@ CIRCUITPY_RTC = 1
|
||||
CIRCUITPY_TOUCHIO = 0
|
||||
CIRCUITPY_ULAB = 0
|
||||
|
||||
SUPEROPT_GC = 0
|
||||
|
||||
# These defines must be overridden before mpconfigboard.h is included, which is
|
||||
# why they are passed on the command line.
|
||||
CFLAGS += -DSPIM3_BUFFER_SIZE=0 -DSOFTDEVICE_RAM_SIZE='(32*1024)'
|
||||
|
@ -40,7 +40,7 @@
|
||||
#endif
|
||||
|
||||
#define CIRCUITPY_INTERNAL_NVM_SIZE 0
|
||||
#define CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_SIZE (80*1024)
|
||||
#define CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_SIZE (76*1024)
|
||||
|
||||
#define BOOTLOADER_SIZE (0x4000) // 12 kiB
|
||||
#define CIRCUITPY_BLE_CONFIG_SIZE (12*1024)
|
||||
|
@ -24,6 +24,7 @@ CIRCUITPY_ROTARYIO = 0
|
||||
CIRCUITPY_RTC = 1
|
||||
CIRCUITPY_TOUCHIO = 0
|
||||
CIRCUITPY_ULAB = 0
|
||||
CIRCUITPY_WATCHDOG = 1
|
||||
|
||||
# Enable micropython.native
|
||||
#CIRCUITPY_ENABLE_MPY_NATIVE = 1
|
||||
|
@ -31,6 +31,7 @@
|
||||
#include "common-hal/audiobusio/I2SOut.h"
|
||||
#include "shared-bindings/audiobusio/I2SOut.h"
|
||||
#include "shared-module/audiocore/__init__.h"
|
||||
#include "supervisor/shared/tick.h"
|
||||
|
||||
#include "py/obj.h"
|
||||
#include "py/runtime.h"
|
||||
@ -158,7 +159,7 @@ static void i2s_buffer_fill(audiobusio_i2sout_obj_t* self) {
|
||||
|
||||
// Find the last frame of real audio data and replicate its samples until
|
||||
// you have 32 bits worth, which is the fundamental unit of nRF I2S DMA
|
||||
if(buffer != buffer_start) {
|
||||
if (buffer != buffer_start) {
|
||||
if (self->bytes_per_sample == 1 && self->channel_count == 1) {
|
||||
// For 8-bit mono, 4 copies of the final sample are required
|
||||
self->hold_value = 0x01010101 * *(uint8_t*)(buffer-1);
|
||||
@ -211,6 +212,8 @@ void common_hal_audiobusio_i2sout_construct(audiobusio_i2sout_obj_t* self,
|
||||
NRF_I2S->CONFIG.ALIGN = I2S_CONFIG_ALIGN_ALIGN_Left;
|
||||
NRF_I2S->CONFIG.FORMAT = left_justified ? I2S_CONFIG_FORMAT_FORMAT_Aligned
|
||||
: I2S_CONFIG_FORMAT_FORMAT_I2S;
|
||||
|
||||
supervisor_enable_tick();
|
||||
}
|
||||
|
||||
bool common_hal_audiobusio_i2sout_deinited(audiobusio_i2sout_obj_t* self) {
|
||||
@ -230,6 +233,7 @@ void common_hal_audiobusio_i2sout_deinit(audiobusio_i2sout_obj_t* self) {
|
||||
reset_pin_number(self->data_pin_number);
|
||||
self->data_pin_number = 0xff;
|
||||
instance = NULL;
|
||||
supervisor_disable_tick();
|
||||
}
|
||||
|
||||
void common_hal_audiobusio_i2sout_play(audiobusio_i2sout_obj_t* self,
|
||||
@ -340,5 +344,8 @@ void i2s_reset(void) {
|
||||
NRF_I2S->PSEL.LRCK = 0xFFFFFFFF;
|
||||
NRF_I2S->PSEL.SDOUT = 0xFFFFFFFF;
|
||||
NRF_I2S->PSEL.SDIN = 0xFFFFFFFF;
|
||||
if (instance) {
|
||||
supervisor_disable_tick();
|
||||
}
|
||||
instance = NULL;
|
||||
}
|
||||
|
@ -36,6 +36,7 @@
|
||||
#include "shared-bindings/audiopwmio/PWMAudioOut.h"
|
||||
#include "shared-bindings/microcontroller/__init__.h"
|
||||
#include "shared-bindings/microcontroller/Pin.h"
|
||||
#include "supervisor/shared/tick.h"
|
||||
#include "supervisor/shared/translate.h"
|
||||
|
||||
// TODO: This should be the same size as PWMOut.c:pwms[], but there's no trivial way to accomplish that
|
||||
@ -67,6 +68,7 @@ STATIC void activate_audiopwmout_obj(audiopwmio_pwmaudioout_obj_t *self) {
|
||||
for (size_t i=0; i < MP_ARRAY_SIZE(active_audio); i++) {
|
||||
if (!active_audio[i]) {
|
||||
active_audio[i] = self;
|
||||
supervisor_enable_tick();
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -77,12 +79,16 @@ STATIC void deactivate_audiopwmout_obj(audiopwmio_pwmaudioout_obj_t *self) {
|
||||
for (size_t i=0; i < MP_ARRAY_SIZE(active_audio); i++) {
|
||||
if (active_audio[i] == self) {
|
||||
active_audio[i] = NULL;
|
||||
supervisor_disable_tick();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void audiopwmout_reset() {
|
||||
for (size_t i=0; i < MP_ARRAY_SIZE(active_audio); i++) {
|
||||
if (active_audio[i]) {
|
||||
supervisor_disable_tick();
|
||||
}
|
||||
active_audio[i] = NULL;
|
||||
}
|
||||
}
|
||||
|
@ -94,7 +94,7 @@ void common_hal_mcu_on_next_reset(mcu_runmode_t runmode) {
|
||||
|
||||
void common_hal_mcu_reset(void) {
|
||||
filesystem_flush();
|
||||
NVIC_SystemReset();
|
||||
reset_cpu();
|
||||
}
|
||||
|
||||
// The singleton microcontroller.Processor object, bound to microcontroller.cpu
|
||||
@ -106,7 +106,6 @@ const mcu_processor_obj_t common_hal_mcu_processor_obj = {
|
||||
};
|
||||
|
||||
#if CIRCUITPY_INTERNAL_NVM_SIZE > 0
|
||||
|
||||
// The singleton nvm.ByteArray object.
|
||||
const nvm_bytearray_obj_t common_hal_mcu_nvm_obj = {
|
||||
.base = {
|
||||
@ -117,6 +116,17 @@ const nvm_bytearray_obj_t common_hal_mcu_nvm_obj = {
|
||||
};
|
||||
#endif
|
||||
|
||||
#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
|
||||
|
||||
STATIC const mp_rom_map_elem_t mcu_pin_globals_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_P0_00), MP_ROM_PTR(&pin_P0_00) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_P0_01), MP_ROM_PTR(&pin_P0_01) },
|
||||
|
@ -79,4 +79,3 @@ int common_hal_rtc_get_calibration(void) {
|
||||
void common_hal_rtc_set_calibration(int calibration) {
|
||||
mp_raise_NotImplementedError(translate("RTC calibration is not supported on this board"));
|
||||
}
|
||||
|
||||
|
@ -35,4 +35,3 @@ bool common_hal_get_serial_connected(void) {
|
||||
bool common_hal_get_serial_bytes_available(void) {
|
||||
return (bool) serial_bytes_available();
|
||||
}
|
||||
|
||||
|
0
ports/nrf/common-hal/watchdog/WatchDogMode.c
Normal file
0
ports/nrf/common-hal/watchdog/WatchDogMode.c
Normal file
189
ports/nrf/common-hal/watchdog/WatchDogTimer.c
Normal file
189
ports/nrf/common-hal/watchdog/WatchDogTimer.c
Normal file
@ -0,0 +1,189 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2019 Nick Moore 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/objproperty.h"
|
||||
#include "py/runtime.h"
|
||||
|
||||
#include "common-hal/watchdog/WatchDogTimer.h"
|
||||
|
||||
#include "shared-bindings/microcontroller/__init__.h"
|
||||
#include "shared-bindings/watchdog/__init__.h"
|
||||
#include "shared-bindings/watchdog/WatchDogTimer.h"
|
||||
|
||||
#include "supervisor/port.h"
|
||||
|
||||
#include "nrf/timers.h"
|
||||
#include "nrf_wdt.h"
|
||||
#include "nrfx_wdt.h"
|
||||
#include "nrfx_timer.h"
|
||||
|
||||
STATIC uint8_t timer_refcount = 0;
|
||||
STATIC nrfx_timer_t *timer = NULL;
|
||||
STATIC nrfx_wdt_t wdt = NRFX_WDT_INSTANCE(0);
|
||||
STATIC nrfx_wdt_channel_id wdt_channel_id;
|
||||
|
||||
STATIC void watchdogtimer_timer_event_handler(nrf_timer_event_t event_type, void *p_context) {
|
||||
watchdog_watchdogtimer_obj_t *self = MP_OBJ_TO_PTR(p_context);
|
||||
if (event_type != NRF_TIMER_EVENT_COMPARE0) {
|
||||
// Spurious event.
|
||||
return;
|
||||
}
|
||||
|
||||
// If the timer hits without being cleared, pause the timer and raise an exception.
|
||||
nrfx_timer_pause(timer);
|
||||
self->mode = WATCHDOGMODE_NONE;
|
||||
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
|
||||
}
|
||||
|
||||
static void timer_free(void) {
|
||||
timer_refcount--;
|
||||
if (timer_refcount == 0) {
|
||||
nrf_peripherals_free_timer(timer);
|
||||
timer = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
// This function is called if the timer expires. The system will reboot
|
||||
// in 1/16384 of a second. Issue a reboot ourselves so we can do any
|
||||
// cleanup necessary.
|
||||
STATIC void watchdogtimer_watchdog_event_handler(void) {
|
||||
reset_cpu();
|
||||
}
|
||||
|
||||
void common_hal_watchdog_feed(watchdog_watchdogtimer_obj_t *self) {
|
||||
if (self->mode == WATCHDOGMODE_RESET) {
|
||||
nrfx_wdt_feed(&wdt);
|
||||
} else if (self->mode == WATCHDOGMODE_RAISE) {
|
||||
nrfx_timer_clear(timer);
|
||||
}
|
||||
}
|
||||
|
||||
void common_hal_watchdog_deinit(watchdog_watchdogtimer_obj_t *self) {
|
||||
if (timer) {
|
||||
timer_free();
|
||||
}
|
||||
self->mode = WATCHDOGMODE_NONE;
|
||||
}
|
||||
|
||||
void watchdog_reset(void) {
|
||||
common_hal_watchdog_deinit(&common_hal_mcu_watchdogtimer_obj);
|
||||
}
|
||||
|
||||
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 timeout) {
|
||||
if (self->mode == WATCHDOGMODE_RAISE) {
|
||||
// If the WatchDogTimer is already running in "RAISE" mode, reset the timer
|
||||
// with the new value.
|
||||
uint64_t ticks = timeout * 31250ULL;
|
||||
if (ticks > UINT32_MAX) {
|
||||
mp_raise_ValueError(translate("timeout duration exceeded the maximum supported value"));
|
||||
}
|
||||
nrfx_timer_clear(timer);
|
||||
nrfx_timer_compare(timer, NRF_TIMER_CC_CHANNEL0, ticks, true);
|
||||
}
|
||||
|
||||
self->timeout = timeout;
|
||||
}
|
||||
|
||||
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) {
|
||||
watchdog_watchdogmode_t current_mode = self->mode;
|
||||
|
||||
if (new_mode == WATCHDOGMODE_RAISE) {
|
||||
if (timer_refcount == 0) {
|
||||
timer = nrf_peripherals_allocate_timer_or_throw();
|
||||
}
|
||||
timer_refcount++;
|
||||
|
||||
nrfx_timer_config_t timer_config = {
|
||||
.frequency = NRF_TIMER_FREQ_31250Hz,
|
||||
.mode = NRF_TIMER_MODE_TIMER,
|
||||
.bit_width = NRF_TIMER_BIT_WIDTH_32,
|
||||
.interrupt_priority = NRFX_TIMER_DEFAULT_CONFIG_IRQ_PRIORITY,
|
||||
.p_context = self,
|
||||
};
|
||||
|
||||
nrfx_timer_init(timer, &timer_config, &watchdogtimer_timer_event_handler);
|
||||
|
||||
uint64_t ticks = nrfx_timer_ms_to_ticks(timer, self->timeout * 1000);
|
||||
if (ticks > UINT32_MAX) {
|
||||
mp_raise_ValueError(translate("timeout duration exceeded the maximum supported value"));
|
||||
}
|
||||
|
||||
// true enables interrupt.
|
||||
nrfx_timer_clear(timer);
|
||||
nrfx_timer_compare(timer, NRF_TIMER_CC_CHANNEL0, ticks, true);
|
||||
nrfx_timer_resume(timer);
|
||||
|
||||
} else if (new_mode == WATCHDOGMODE_RESET) {
|
||||
uint64_t ticks = self->timeout * 1000.0f;
|
||||
if (ticks > UINT32_MAX) {
|
||||
mp_raise_ValueError(translate("timeout duration exceeded the maximum supported value"));
|
||||
}
|
||||
|
||||
nrfx_wdt_config_t config = {
|
||||
.reload_value = ticks, // in units of ms
|
||||
.behaviour = NRF_WDT_BEHAVIOUR_RUN_SLEEP,
|
||||
NRFX_WDT_IRQ_CONFIG
|
||||
};
|
||||
|
||||
nrfx_err_t err_code;
|
||||
err_code = nrfx_wdt_init(&wdt, &config, watchdogtimer_watchdog_event_handler);
|
||||
if (err_code != NRFX_SUCCESS) {
|
||||
mp_raise_OSError(1);
|
||||
}
|
||||
err_code = nrfx_wdt_channel_alloc(&wdt, &wdt_channel_id);
|
||||
if (err_code != NRFX_SUCCESS) {
|
||||
mp_raise_OSError(1);
|
||||
}
|
||||
nrfx_wdt_enable(&wdt);
|
||||
nrfx_wdt_feed(&wdt);
|
||||
}
|
||||
|
||||
// If we just switched away from RAISE, disable the timmer.
|
||||
if (current_mode == WATCHDOGMODE_RAISE && new_mode != WATCHDOGMODE_RAISE) {
|
||||
timer_free();
|
||||
}
|
||||
|
||||
self->mode = new_mode;
|
||||
}
|
44
ports/nrf/common-hal/watchdog/WatchDogTimer.h
Normal file
44
ports/nrf/common-hal/watchdog/WatchDogTimer.h
Normal file
@ -0,0 +1,44 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2018 Noralf Trønnes
|
||||
*
|
||||
* 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_NRF_COMMON_HAL_WATCHDOG_WATCHDOGTIMER_H
|
||||
#define MICROPY_INCLUDED_NRF_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 if it's set to
|
||||
// "RAISE". If set to "RESET", then the watchdog cannot be reset.
|
||||
void watchdog_reset(void);
|
||||
|
||||
#endif // MICROPY_INCLUDED_NRF_COMMON_HAL_WATCHDOG_WATCHDOGTIMER_H
|
25
ports/nrf/common-hal/watchdog/__init__.c
Normal file
25
ports/nrf/common-hal/watchdog/__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) 2019 Nick Moore 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.
|
||||
*/
|
30
ports/nrf/common-hal/watchdog/__init__.h
Normal file
30
ports/nrf/common-hal/watchdog/__init__.h
Normal file
@ -0,0 +1,30 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2018 Noralf Trønnes
|
||||
*
|
||||
* 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_NRF_COMMON_HAL_WATCHDOG___INIT___H
|
||||
#define MICROPY_INCLUDED_NRF_COMMON_HAL_WATCHDOG___INIT___H
|
||||
|
||||
#endif // MICROPY_INCLUDED_NRF_COMMON_HAL_WATCHDOG___INIT___H
|
@ -89,4 +89,3 @@ periph = Peripheral()
|
||||
periph.addService(serv_env_sense)
|
||||
periph.setConnectionHandler(event_handler)
|
||||
periph.advertise(device_name="micr_temp", services=[serv_env_sense])
|
||||
|
||||
|
@ -37,6 +37,7 @@ CIRCUITPY_RGBMATRIX ?= 1
|
||||
CIRCUITPY_FRAMEBUFFERIO ?= 1
|
||||
|
||||
CIRCUITPY_COUNTIO = 0
|
||||
CIRCUITPY_WATCHDOG ?= 1
|
||||
|
||||
# nRF52840-specific
|
||||
|
||||
@ -45,6 +46,9 @@ MCU_SERIES = m4
|
||||
MCU_VARIANT = nrf52
|
||||
MCU_SUB_VARIANT = nrf52840
|
||||
|
||||
# Fits on nrf52840 but space is tight on nrf52833.
|
||||
CIRCUITPY_AESIO ?= 1
|
||||
|
||||
SD ?= s140
|
||||
SOFTDEV_VERSION ?= 6.1.0
|
||||
|
||||
|
@ -122,4 +122,11 @@
|
||||
// NVM controller
|
||||
#define NRFX_NVMC_ENABLED 1
|
||||
|
||||
// Watchdog timer
|
||||
#define NRFX_WDT_ENABLED 1
|
||||
#define NRFX_WDT0_ENABLED 1
|
||||
// This IRQ indicates the system will reboot shortly, so give
|
||||
// it a high priority.
|
||||
#define NRFX_WDT_DEFAULT_CONFIG_IRQ_PRIORITY 2
|
||||
|
||||
#endif // NRFX_CONFIG_H__
|
||||
|
@ -180,17 +180,17 @@ static inline bool _NRFX_IRQ_IS_PENDING(IRQn_Type irq_number)
|
||||
return (NVIC_GetPendingIRQ(irq_number) == 1);
|
||||
}
|
||||
|
||||
//#include <nordic_common.h>
|
||||
//#include <app_util_platform.h>
|
||||
void common_hal_mcu_disable_interrupts(void);
|
||||
void common_hal_mcu_enable_interrupts(void);
|
||||
/**
|
||||
* @brief Macro for entering into a critical section.
|
||||
*/
|
||||
#define NRFX_CRITICAL_SECTION_ENTER() CRITICAL_REGION_ENTER()
|
||||
#define NRFX_CRITICAL_SECTION_ENTER() common_hal_mcu_disable_interrupts()
|
||||
|
||||
/**
|
||||
* @brief Macro for exiting from a critical section.
|
||||
*/
|
||||
#define NRFX_CRITICAL_SECTION_EXIT() CRITICAL_REGION_EXIT()
|
||||
#define NRFX_CRITICAL_SECTION_EXIT() common_hal_mcu_enable_interrupts()
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
@ -50,6 +50,7 @@
|
||||
#include "common-hal/pulseio/PulseIn.h"
|
||||
#include "common-hal/rtc/RTC.h"
|
||||
#include "common-hal/neopixel_write/__init__.h"
|
||||
#include "common-hal/watchdog/WatchDogTimer.h"
|
||||
|
||||
#include "shared-bindings/microcontroller/__init__.h"
|
||||
#include "shared-bindings/rtc/__init__.h"
|
||||
@ -77,13 +78,19 @@ const nrfx_rtc_config_t rtc_config = {
|
||||
.interrupt_priority = 6
|
||||
};
|
||||
|
||||
static volatile uint64_t overflowed_ticks = 0;
|
||||
#define OVERFLOW_CHECK_PREFIX 0x2cad564f
|
||||
#define OVERFLOW_CHECK_SUFFIX 0x11343ef7
|
||||
static volatile struct {
|
||||
uint32_t prefix;
|
||||
uint64_t overflowed_ticks;
|
||||
uint32_t suffix;
|
||||
} overflow_tracker __attribute__((section(".uninitialized")));
|
||||
|
||||
void rtc_handler(nrfx_rtc_int_type_t int_type) {
|
||||
if (int_type == NRFX_RTC_INT_OVERFLOW) {
|
||||
// Our RTC is 24 bits and we're clocking it at 32.768khz which is 32 (2 ** 5) subticks per
|
||||
// tick.
|
||||
overflowed_ticks += (1L<< (24 - 5));
|
||||
overflow_tracker.overflowed_ticks += (1L<< (24 - 5));
|
||||
} else if (int_type == NRFX_RTC_INT_TICK && nrfx_rtc_counter_get(&rtc_instance) % 32 == 0) {
|
||||
// Do things common to all ports when the tick occurs
|
||||
supervisor_tick();
|
||||
@ -100,6 +107,17 @@ void tick_init(void) {
|
||||
nrfx_rtc_init(&rtc_instance, &rtc_config, rtc_handler);
|
||||
nrfx_rtc_enable(&rtc_instance);
|
||||
nrfx_rtc_overflow_enable(&rtc_instance, true);
|
||||
|
||||
// If the check prefix and suffix aren't correct, then the structure
|
||||
// in memory isn't correct and the clock will be wildly wrong. Initialize
|
||||
// the prefix and suffix so that we know the value is correct, and reset
|
||||
// the time to 0.
|
||||
if (overflow_tracker.prefix != OVERFLOW_CHECK_PREFIX ||
|
||||
overflow_tracker.suffix != OVERFLOW_CHECK_SUFFIX) {
|
||||
overflow_tracker.prefix = OVERFLOW_CHECK_PREFIX;
|
||||
overflow_tracker.suffix = OVERFLOW_CHECK_SUFFIX;
|
||||
overflow_tracker.overflowed_ticks = 0;
|
||||
}
|
||||
}
|
||||
|
||||
safe_mode_t port_init(void) {
|
||||
@ -131,6 +149,21 @@ safe_mode_t port_init(void) {
|
||||
analogin_init();
|
||||
#endif
|
||||
|
||||
// If the board was reset by the WatchDogTimer, we may
|
||||
// need to boot into safe mode. Reset the RESETREAS bit
|
||||
// for the WatchDogTimer so we don't encounter this the
|
||||
// next time we reboot.
|
||||
if (NRF_POWER->RESETREAS & POWER_RESETREAS_DOG_Msk) {
|
||||
NRF_POWER->RESETREAS = POWER_RESETREAS_DOG_Msk;
|
||||
uint32_t usb_reg = NRF_POWER->USBREGSTATUS;
|
||||
|
||||
// If USB is connected, then the user might be editing `code.py`,
|
||||
// in which case we should reboot into Safe Mode.
|
||||
if (usb_reg & POWER_USBREGSTATUS_VBUSDETECT_Msk) {
|
||||
return WATCHDOG_RESET;
|
||||
}
|
||||
}
|
||||
|
||||
return NO_SAFE_MODE;
|
||||
}
|
||||
|
||||
@ -174,6 +207,10 @@ void reset_port(void) {
|
||||
bleio_reset();
|
||||
#endif
|
||||
|
||||
#if CIRCUITPY_WATCHDOG
|
||||
watchdog_reset();
|
||||
#endif
|
||||
|
||||
reset_all_pins();
|
||||
}
|
||||
|
||||
@ -185,6 +222,10 @@ void reset_to_bootloader(void) {
|
||||
}
|
||||
|
||||
void reset_cpu(void) {
|
||||
// We're getting ready to reset, so save the counter off.
|
||||
// This counter will get reset to zero during the reboot.
|
||||
uint32_t ticks = nrfx_rtc_counter_get(&rtc_instance);
|
||||
overflow_tracker.overflowed_ticks += ticks / 32;
|
||||
NVIC_SystemReset();
|
||||
}
|
||||
|
||||
@ -228,7 +269,7 @@ uint64_t port_get_raw_ticks(uint8_t* subticks) {
|
||||
if (subticks != NULL) {
|
||||
*subticks = (rtc % 32);
|
||||
}
|
||||
return overflowed_ticks + rtc / 32;
|
||||
return overflow_tracker.overflowed_ticks + rtc / 32;
|
||||
}
|
||||
|
||||
// Enable 1/1024 second tick.
|
||||
|
@ -23,4 +23,3 @@ _estack = ORIGIN(RAM) + LENGTH(RAM);
|
||||
/* RAM extents for the garbage collector */
|
||||
_ram_start = ORIGIN(RAM);
|
||||
_ram_end = ORIGIN(RAM) + LENGTH(RAM);
|
||||
|
||||
|
@ -24,4 +24,3 @@ _estack = ORIGIN(RAM) + LENGTH(RAM);
|
||||
/* RAM extents for the garbage collector */
|
||||
_ram_start = ORIGIN(RAM);
|
||||
_ram_end = ORIGIN(RAM) + LENGTH(RAM);
|
||||
|
||||
|
@ -24,4 +24,3 @@ _estack = ORIGIN(RAM) + LENGTH(RAM);
|
||||
/* RAM extents for the garbage collector */
|
||||
_ram_start = ORIGIN(RAM);
|
||||
_ram_end = ORIGIN(RAM) + LENGTH(RAM);
|
||||
|
||||
|
@ -25,4 +25,3 @@ _estack = ORIGIN(RAM) + LENGTH(RAM);
|
||||
/* RAM extents for the garbage collector */
|
||||
_ram_start = ORIGIN(RAM);
|
||||
_ram_end = ORIGIN(RAM) + LENGTH(RAM);
|
||||
|
||||
|
@ -25,4 +25,3 @@ _estack = ORIGIN(RAM) + LENGTH(RAM);
|
||||
/* RAM extents for the garbage collector */
|
||||
_ram_start = ORIGIN(RAM);
|
||||
_ram_end = ORIGIN(RAM) + LENGTH(RAM);
|
||||
|
||||
|
@ -24,4 +24,3 @@ _estack = ORIGIN(RAM) + LENGTH(RAM);
|
||||
/* RAM extents for the garbage collector */
|
||||
_ram_start = ORIGIN(RAM);
|
||||
_ram_end = ORIGIN(RAM) + LENGTH(RAM);
|
||||
|
||||
|
@ -24,4 +24,3 @@ _estack = ORIGIN(RAM) + LENGTH(RAM);
|
||||
/* RAM extents for the garbage collector */
|
||||
_ram_start = ORIGIN(RAM);
|
||||
_ram_end = ORIGIN(RAM) + LENGTH(RAM);
|
||||
|
||||
|
@ -49,4 +49,3 @@ _estack = ORIGIN(RAM) + LENGTH(RAM);
|
||||
/* RAM extents for the garbage collector */
|
||||
_ram_start = ORIGIN(RAM);
|
||||
_ram_end = ORIGIN(RAM) + LENGTH(RAM);
|
||||
|
||||
|
@ -24,4 +24,3 @@ _estack = ORIGIN(RAM) + LENGTH(RAM);
|
||||
/* RAM extents for the garbage collector */
|
||||
_ram_start = ORIGIN(RAM);
|
||||
_ram_end = ORIGIN(RAM) + LENGTH(RAM);
|
||||
|
||||
|
@ -36,4 +36,3 @@ _estack = ORIGIN(DTCM) + LENGTH(DTCM);
|
||||
/* RAM extents for the garbage collector */
|
||||
_ram_start = ORIGIN(RAM);
|
||||
_ram_end = ORIGIN(RAM) + LENGTH(RAM);
|
||||
|
||||
|
@ -96,4 +96,3 @@ SECTIONS
|
||||
|
||||
.ARM.attributes 0 : { *(.ARM.attributes) }
|
||||
}
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user