Merge remote-tracking branch 'origin/main' into mimxrt10xx-rotaryio
This commit is contained in:
commit
df916e0484
|
@ -0,0 +1,7 @@
|
|||
#define MICROPY_HW_BOARD_NAME "BLOK"
|
||||
USB_PRODUCT = "BLOK"
|
||||
uint32_t THI = (*(uint32_t *)FUSES_HOT_TEMP_VAL_INT_ADDR & FUSES_HOT_TEMP_VAL_INT_Msk) >> FUSES_HOT_TEMP_VAL_INT_Pos;
|
||||
float TH = THI + convert_dec_to_frac(THD);
|
||||
print(binascii.b2a_base64(b"fo"))
|
||||
# again, neither will "there" or "wither", since they have "the"
|
||||
i1Qb$TE"rl
|
|
@ -0,0 +1,22 @@
|
|||
ans
|
||||
ure
|
||||
clen
|
||||
ser
|
||||
endianess
|
||||
pris
|
||||
synopsys
|
||||
reenable
|
||||
dout
|
||||
inout
|
||||
wel
|
||||
iput
|
||||
hsi
|
||||
astroid
|
||||
busses
|
||||
cyphertext
|
||||
dum
|
||||
deque
|
||||
deques
|
||||
extint
|
||||
shs
|
||||
pass-thru
|
|
@ -0,0 +1,10 @@
|
|||
# See: https://github.com/codespell-project/codespell#using-a-config-file
|
||||
[codespell]
|
||||
# In the event of a false positive, add the problematic word, in all lowercase, to 'ignore-words.txt' (one word per line).
|
||||
# Or copy & paste the whole problematic line to 'exclude-file.txt'
|
||||
ignore-words = .codespell/ignore-words.txt
|
||||
exclude-file = .codespell/exclude-file.txt
|
||||
check-filenames =
|
||||
check-hidden =
|
||||
count =
|
||||
skip = .cproject,.git,./lib,./locale,ACKNOWLEDGEMENTS
|
|
@ -11,6 +11,16 @@ repos:
|
|||
exclude: '^(tests/.*\.exp|tests/cmdline/.*|tests/.*/data/.*|ports/espressif/esp-idf-config/.*|ports/espressif/boards/.*/sdkconfig)'
|
||||
- id: trailing-whitespace
|
||||
exclude: '^(tests/.*\.exp|tests/cmdline/.*|tests/.*/data/.*|lib/mbedtls_errors/.*)'
|
||||
- repo: https://github.com/codespell-project/codespell
|
||||
rev: v2.2.4
|
||||
hooks:
|
||||
- id: codespell
|
||||
args: [-w]
|
||||
exclude: |
|
||||
(?x)^(
|
||||
locale/|
|
||||
lib/
|
||||
)
|
||||
- repo: local
|
||||
hooks:
|
||||
- id: translations
|
||||
|
|
|
@ -483,7 +483,7 @@ mp_obj_t common_hal_bleio_adapter_start_scan(bleio_adapter_obj_t *self, uint8_t
|
|||
|
||||
if (self->scan_results != NULL) {
|
||||
if (!shared_module_bleio_scanresults_get_done(self->scan_results)) {
|
||||
mp_raise_bleio_BluetoothError(translate("Scan already in progess. Stop with stop_scan."));
|
||||
mp_raise_bleio_BluetoothError(translate("Scan already in progress. Stop with stop_scan."));
|
||||
}
|
||||
self->scan_results = NULL;
|
||||
}
|
||||
|
|
|
@ -65,7 +65,7 @@ typedef struct _bleio_adapter_obj_t {
|
|||
uint16_t manufacturer;
|
||||
uint16_t lmp_subversion;
|
||||
|
||||
// Used to monitor advertising timeout for legacy avertising.
|
||||
// Used to monitor advertising timeout for legacy advertising.
|
||||
uint64_t advertising_start_ticks;
|
||||
uint64_t advertising_timeout_msecs; // If zero, do not check.
|
||||
|
||||
|
|
|
@ -515,7 +515,7 @@ void common_hal_bleio_connection_set_connection_interval(bleio_connection_intern
|
|||
// (gattc_char->char_props.write ? CHAR_PROP_WRITE : 0) |
|
||||
// (gattc_char->char_props.write_wo_resp ? CHAR_PROP_WRITE_NO_RESPONSE : 0);
|
||||
|
||||
// // Call common_hal_bleio_characteristic_construct() to initalize some fields and set up evt handler.
|
||||
// // Call common_hal_bleio_characteristic_construct() to initialize some fields and set up evt handler.
|
||||
// common_hal_bleio_characteristic_construct(
|
||||
// characteristic, m_char_discovery_service, gattc_char->handle_value, uuid,
|
||||
// props, SECURITY_MODE_OPEN, SECURITY_MODE_OPEN,
|
||||
|
|
|
@ -96,7 +96,7 @@ STATIC uint8_t bleio_properties_to_ble_spec_properties(uint8_t bleio_properties)
|
|||
return ble_spec_properties;
|
||||
}
|
||||
|
||||
// FIX not currently used; reenable when used.
|
||||
// FIX not currently used; re-enable when used.
|
||||
#if 0
|
||||
STATIC uint8_t ble_spec_properties_to_bleio_properties(uint8_t ble_spec_properties) {
|
||||
uint8_t bleio_properties = 0;
|
||||
|
@ -964,7 +964,7 @@ static void process_read_group_req(uint16_t conn_handle, uint16_t mtu, uint8_t d
|
|||
// Keep track of the first one to make sure.
|
||||
size_t sizeof_first_service_uuid = 0;
|
||||
|
||||
// Size of a single bt_att_group_data chunk. Start with the intial size, and
|
||||
// Size of a single bt_att_group_data chunk. Start with the initial size, and
|
||||
// add the uuid size in the loop below.
|
||||
size_t data_length = sizeof(struct bt_att_group_data);
|
||||
|
||||
|
|
|
@ -150,7 +150,7 @@ struct bt_att_read_mult_req {
|
|||
uint16_t handles[];
|
||||
} __packed;
|
||||
|
||||
/* Read Multiple Respose */
|
||||
/* Read Multiple Response */
|
||||
#define BT_ATT_OP_READ_MULT_RSP 0x0f
|
||||
struct bt_att_read_mult_rsp {
|
||||
uint8_t _dummy[0];
|
||||
|
@ -243,7 +243,7 @@ struct bt_att_read_mult_vl_req {
|
|||
uint16_t handles[];
|
||||
} __packed;
|
||||
|
||||
/* Read Multiple Respose */
|
||||
/* Read Multiple Response */
|
||||
#define BT_ATT_OP_READ_MULT_VL_RSP 0x21
|
||||
struct bt_att_read_mult_vl_rsp {
|
||||
uint16_t len;
|
||||
|
|
|
@ -88,7 +88,7 @@ mp_obj_t mpy_init(mp_obj_fun_bc_t *self, size_t n_args, size_t n_kw, mp_obj_t *a
|
|||
// This must be first, it sets up the globals dict and other things
|
||||
MP_DYNRUNTIME_INIT_ENTRY
|
||||
|
||||
// Messages can be printed as usualy
|
||||
// Messages can be printed as usually
|
||||
mp_printf(&mp_plat_print, "initialising module self=%p\n", self);
|
||||
|
||||
// Make the functions available in the module's namespace
|
||||
|
|
57
locale/ID.po
57
locale/ID.po
|
@ -30,14 +30,6 @@ msgid ""
|
|||
"Code stopped by auto-reload. Reloading soon.\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -191,10 +183,6 @@ msgstr "%q harus <= %d"
|
|||
msgid "%q must be >= %d"
|
||||
msgstr "%q harus >= %d"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr ""
|
||||
|
@ -203,6 +191,10 @@ msgstr ""
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1241,7 +1233,8 @@ msgstr ""
|
|||
msgid "Interrupt error."
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
@ -1264,6 +1257,10 @@ msgstr ""
|
|||
msgid "Invalid BSSID"
|
||||
msgstr ""
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr ""
|
||||
|
@ -1535,10 +1532,6 @@ msgstr ""
|
|||
msgid "No in or out in program"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr "Tidak ada kunci yang ditentukan"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr "Tidak ada dukungan bilangan bulat yang panjang"
|
||||
|
@ -1965,8 +1958,8 @@ msgstr ""
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgstr "Pindai sudah dalam proses. Hentikan dengan stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
|
@ -2278,6 +2271,11 @@ msgstr ""
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2313,11 +2311,6 @@ msgstr ""
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2772,7 +2765,7 @@ msgstr ""
|
|||
msgid "can't set attribute"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3072,8 +3065,8 @@ msgid "extra positional arguments given"
|
|||
msgstr "argumen posisi ekstra telah diberikan"
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr ""
|
||||
|
||||
|
@ -4147,10 +4140,6 @@ msgstr ""
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr ""
|
||||
|
@ -4407,6 +4396,12 @@ msgstr "zi harus berjenis float"
|
|||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr "Zi harus berbentuk (n_section, 2)"
|
||||
|
||||
#~ msgid "No key was specified"
|
||||
#~ msgstr "Tidak ada kunci yang ditentukan"
|
||||
|
||||
#~ msgid "Scan already in progess. Stop with stop_scan."
|
||||
#~ msgstr "Pindai sudah dalam proses. Hentikan dengan stop_scan."
|
||||
|
||||
#~ msgid "Supply at least one UART pin"
|
||||
#~ msgstr "Berikan setidaknya satu pin UART"
|
||||
|
||||
|
|
|
@ -180,10 +180,6 @@ msgstr ""
|
|||
msgid "%q must be >= %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr ""
|
||||
|
@ -192,6 +188,10 @@ msgstr ""
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1221,7 +1221,8 @@ msgstr ""
|
|||
msgid "Interrupt error."
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
@ -1519,10 +1520,6 @@ msgstr ""
|
|||
msgid "No in or out in program"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr ""
|
||||
|
@ -1935,7 +1932,7 @@ msgstr ""
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
|
@ -2248,6 +2245,11 @@ msgstr ""
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2283,11 +2285,6 @@ msgstr ""
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2740,7 +2737,7 @@ msgstr ""
|
|||
msgid "can't set attribute"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3040,8 +3037,8 @@ msgid "extra positional arguments given"
|
|||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr ""
|
||||
|
||||
|
@ -4114,10 +4111,6 @@ msgstr ""
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr ""
|
||||
|
|
52
locale/cs.po
52
locale/cs.po
|
@ -32,14 +32,6 @@ msgstr ""
|
|||
"\n"
|
||||
"Kód byl zastaven kvůli automatickému načtení. K načtení dojde brzy.\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -192,10 +184,6 @@ msgstr "%q musí být <= %d"
|
|||
msgid "%q must be >= %d"
|
||||
msgstr "%q musí být >= %d"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr ""
|
||||
|
@ -204,6 +192,10 @@ msgstr ""
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1241,7 +1233,8 @@ msgstr ""
|
|||
msgid "Interrupt error."
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
@ -1264,6 +1257,10 @@ msgstr "Chybný BLE parametr"
|
|||
msgid "Invalid BSSID"
|
||||
msgstr "Chybné BSSID"
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr "Chybná MAC adresa"
|
||||
|
@ -1535,10 +1532,6 @@ msgstr ""
|
|||
msgid "No in or out in program"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr "Nebyl zadán klíč"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr ""
|
||||
|
@ -1954,7 +1947,7 @@ msgstr ""
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
|
@ -2267,6 +2260,11 @@ msgstr ""
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2302,11 +2300,6 @@ msgstr ""
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2759,7 +2752,7 @@ msgstr ""
|
|||
msgid "can't set attribute"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3059,8 +3052,8 @@ msgid "extra positional arguments given"
|
|||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr ""
|
||||
|
||||
|
@ -4133,10 +4126,6 @@ msgstr ""
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr ""
|
||||
|
@ -4393,6 +4382,9 @@ msgstr ""
|
|||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "No key was specified"
|
||||
#~ msgstr "Nebyl zadán klíč"
|
||||
|
||||
#~ msgid "%q pin invalid"
|
||||
#~ msgstr "pin %q není platný"
|
||||
|
||||
|
|
|
@ -31,18 +31,6 @@ msgstr ""
|
|||
"\n"
|
||||
"Code wurde durch automatisches Neuladen gestoppt. Wird bald neu geladen.\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Ungültige CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\n"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -199,10 +187,6 @@ msgstr "%q muss <= %d sein"
|
|||
msgid "%q must be >= %d"
|
||||
msgstr "%q muss >= %d sein"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr ""
|
||||
|
@ -212,6 +196,10 @@ msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
|||
msgstr ""
|
||||
"%q muss ein Byte-Array oder ein array vom Typ 'h', 'H', 'b', oder 'B' sein"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1264,7 +1252,8 @@ msgstr "Der Interne WatchDog Timer ist abgelaufen."
|
|||
msgid "Interrupt error."
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr "Ungültiger %q"
|
||||
|
@ -1287,6 +1276,10 @@ msgstr "Ungültiges BLE Parameter"
|
|||
msgid "Invalid BSSID"
|
||||
msgstr "Ungültige BSSID"
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr "Ungültige MAC-Adresse"
|
||||
|
@ -1559,10 +1552,6 @@ msgstr "Nicht in Programm"
|
|||
msgid "No in or out in program"
|
||||
msgstr "Kein Ein oder Aus in Programm"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr "Es wurde kein Schlüssel angegeben"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr "Keine langen Integer (long) unterstützt"
|
||||
|
@ -1987,8 +1976,8 @@ msgstr "Maßstabs-Abmeßungen müssen durch 3 teilbar sein"
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgstr "Scannen bereits in Bearbeitung. Stoppe mit stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
|
@ -2306,6 +2295,11 @@ msgstr "Unbekannter BLE-Fehler bei %s:%d: %d"
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr "Unbekannter BLE-Fehler: %d"
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2341,11 +2335,6 @@ msgstr "Unbekannter Systemfirmware Fehler: %04x"
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr "Unbekannter System-Firmware-Fehler: %d"
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr "Unbekannter Fehlercode %d"
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2816,7 +2805,7 @@ msgstr "Kann Blockgröße von 512 nicht setzen"
|
|||
msgid "can't set attribute"
|
||||
msgstr "kann Attribut nicht setzen"
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3124,8 +3113,8 @@ msgid "extra positional arguments given"
|
|||
msgstr "Es wurden zusätzliche Argumente ohne Schlüsselwort angegeben"
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr "Die Datei muss eine im Byte-Modus geöffnete Datei sein"
|
||||
|
||||
|
@ -4211,10 +4200,6 @@ msgstr "Zeitstempel außerhalb des Bereichs für Plattform time_t"
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr "tobytes kann nur für dichte Arrays aufgerufen werden"
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr "zu viele Argumente mit dem angegebenen Format"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr "zu viele Dimensionen"
|
||||
|
@ -4473,6 +4458,30 @@ msgstr "zi muss eine Gleitkommazahl sein"
|
|||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr "zi muss die Form (n_section, 2) haben"
|
||||
|
||||
#~ msgid "No key was specified"
|
||||
#~ msgstr "Es wurde kein Schlüssel angegeben"
|
||||
|
||||
#~ msgid "Scan already in progess. Stop with stop_scan."
|
||||
#~ msgstr "Scannen bereits in Bearbeitung. Stoppe mit stop_scan."
|
||||
|
||||
#, c-format
|
||||
#~ msgid "Unkown error code %d"
|
||||
#~ msgstr "Unbekannter Fehlercode %d"
|
||||
|
||||
#~ msgid "too many arguments provided with the given format"
|
||||
#~ msgstr "zu viele Argumente mit dem angegebenen Format"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "\n"
|
||||
#~ "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
#~ "\n"
|
||||
#~ "\r"
|
||||
#~ msgstr ""
|
||||
#~ "\n"
|
||||
#~ "Ungültige CIRCUITPY_PYSTACK_SIZE\n"
|
||||
#~ "\n"
|
||||
#~ "\n"
|
||||
|
||||
#~ msgid "Supply at least one UART pin"
|
||||
#~ msgstr "Gib mindestens einen UART-Pin an"
|
||||
|
||||
|
|
49
locale/el.po
49
locale/el.po
|
@ -35,14 +35,6 @@ msgstr ""
|
|||
"Ο κώδικας σταμάτησε λόγω της αυτόματης επαναφόρτωσης. Η επαναφόρτωση θα "
|
||||
"γίνει σύντομα.\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -196,10 +188,6 @@ msgstr "%q πρέπει να είναι <= %d"
|
|||
msgid "%q must be >= %d"
|
||||
msgstr "%q πρέπει να είναι >= %d"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr ""
|
||||
|
@ -208,6 +196,10 @@ msgstr ""
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr "%q πρέπει να είναι bytearray ή array τύπου 'h', 'H', 'b', ή 'B'"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1250,7 +1242,8 @@ msgstr ""
|
|||
msgid "Interrupt error."
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
@ -1273,6 +1266,10 @@ msgstr ""
|
|||
msgid "Invalid BSSID"
|
||||
msgstr ""
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr ""
|
||||
|
@ -1544,10 +1541,6 @@ msgstr ""
|
|||
msgid "No in or out in program"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr ""
|
||||
|
@ -1962,7 +1955,7 @@ msgstr ""
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
|
@ -2275,6 +2268,11 @@ msgstr ""
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2310,11 +2308,6 @@ msgstr ""
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2767,7 +2760,7 @@ msgstr ""
|
|||
msgid "can't set attribute"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3067,8 +3060,8 @@ msgid "extra positional arguments given"
|
|||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr ""
|
||||
|
||||
|
@ -4141,10 +4134,6 @@ msgstr ""
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr ""
|
||||
|
|
|
@ -34,14 +34,6 @@ msgstr ""
|
|||
"\n"
|
||||
"Code stopped by auto-reload. Reloading soon.\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -195,10 +187,6 @@ msgstr ""
|
|||
msgid "%q must be >= %d"
|
||||
msgstr "%q must be >= %d"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr ""
|
||||
|
@ -207,6 +195,10 @@ msgstr ""
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1242,7 +1234,8 @@ msgstr ""
|
|||
msgid "Interrupt error."
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr "Invalid %q"
|
||||
|
@ -1265,6 +1258,10 @@ msgstr "Invalid BLE parameter"
|
|||
msgid "Invalid BSSID"
|
||||
msgstr "Invalid BSSID"
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr ""
|
||||
|
@ -1536,10 +1533,6 @@ msgstr "No in in program"
|
|||
msgid "No in or out in program"
|
||||
msgstr "No in or out in program"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr "No key was specified"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr "No long integer support"
|
||||
|
@ -1960,8 +1953,8 @@ msgstr ""
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgstr "Scan already in progess. Stop with stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
|
@ -2273,6 +2266,11 @@ msgstr ""
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2308,11 +2306,6 @@ msgstr "Unknown system firmware error: %04x"
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2767,7 +2760,7 @@ msgstr "can't set 512 block size"
|
|||
msgid "can't set attribute"
|
||||
msgstr "can't set attribute"
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3070,8 +3063,8 @@ msgid "extra positional arguments given"
|
|||
msgstr "extra positional arguments given"
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr "file must be a file opened in byte mode"
|
||||
|
||||
|
@ -4144,10 +4137,6 @@ msgstr "timestamp out of range for platform time_t"
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr "tobytes can be invoked for dense arrays only"
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr "too many arguments provided with the given format"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr "too many dimensions"
|
||||
|
@ -4404,6 +4393,15 @@ msgstr "zi must be of float type"
|
|||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr "zi must be of shape (n_section, 2)"
|
||||
|
||||
#~ msgid "No key was specified"
|
||||
#~ msgstr "No key was specified"
|
||||
|
||||
#~ msgid "Scan already in progess. Stop with stop_scan."
|
||||
#~ msgstr "Scan already in progess. Stop with stop_scan."
|
||||
|
||||
#~ msgid "too many arguments provided with the given format"
|
||||
#~ msgstr "too many arguments provided with the given format"
|
||||
|
||||
#~ msgid "Supply at least one UART pin"
|
||||
#~ msgstr "Supply at least one UART pin"
|
||||
|
||||
|
|
81
locale/es.po
81
locale/es.po
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-01-04 12:55-0600\n"
|
||||
"PO-Revision-Date: 2023-03-09 10:38+0000\n"
|
||||
"PO-Revision-Date: 2023-03-23 17:26+0000\n"
|
||||
"Last-Translator: Jose David M <jquintana202020@gmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
"Language: es\n"
|
||||
|
@ -34,18 +34,6 @@ msgstr ""
|
|||
"\n"
|
||||
"Código detenido por la auto-recarga. Recargando pronto.\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"CIRCUITPY_PYSTACK_SIZE inválido\n"
|
||||
"\n"
|
||||
"\n"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -207,10 +195,6 @@ msgstr "%q debe ser <= %d"
|
|||
msgid "%q must be >= %d"
|
||||
msgstr "%q debe ser >= %d"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr "%q debe ser un arreglo de tipo 'H'"
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr "%q debe ser un bytearray o array de tipo 'H' o 'B'"
|
||||
|
@ -219,6 +203,10 @@ msgstr "%q debe ser un bytearray o array de tipo 'H' o 'B'"
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr "%q debe ser un byte-matriz o matriz de tipo 'h', 'H', 'b', o 'B'"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr "%q debe ser un arreglo de tipo 'H'"
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1279,7 +1267,8 @@ msgstr "El temporizador interno watchdog terminó."
|
|||
msgid "Interrupt error."
|
||||
msgstr "Error de interrupción."
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr "%q inválido"
|
||||
|
@ -1302,6 +1291,10 @@ msgstr "Parámetro BLE invalido"
|
|||
msgid "Invalid BSSID"
|
||||
msgstr "BSSID inválido"
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr "CIRCUITPY_PYSTACK_SIZE inválido\n"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr "Dirección MAC inválida"
|
||||
|
@ -1577,10 +1570,6 @@ msgstr "No hay \"in\" en el programa"
|
|||
msgid "No in or out in program"
|
||||
msgstr "No hay \"in\" o \"out\" en el programa"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr "No se especificó ninguna llave"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr "No hay soporte de entero largo"
|
||||
|
@ -2008,8 +1997,8 @@ msgstr "Las dimensiones de escala debe ser divisibles por 3"
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgstr "Escaneo en progreso. Usa stop_scan para detener."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
|
@ -2328,6 +2317,11 @@ msgstr "Error BLE desconocido en %s:%d: %d"
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr "Error BLE desconocido: %d"
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2363,11 +2357,6 @@ msgstr "Error desconocido en el firmware sistema: %04x"
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr "Error del sistema de firmware desconocido: %d"
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr "Codigo de error desconocido: %d"
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2831,7 +2820,7 @@ msgstr "no se puede definir un tamaño de bloque de 512"
|
|||
msgid "can't set attribute"
|
||||
msgstr "no se puede asignar el atributo"
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr "no se puede configurar el attributo '%q'"
|
||||
|
||||
|
@ -3139,8 +3128,8 @@ msgid "extra positional arguments given"
|
|||
msgstr "argumento posicional adicional dado"
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr "el archivo deberia ser una archivo abierto en modo byte"
|
||||
|
||||
|
@ -4221,10 +4210,6 @@ msgstr "timestamp fuera de rango para plataform time_t"
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr "tobytes solo pueden ser invocados por arrays densos"
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr "demasiados argumentos provistos con el formato dado"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr "demasiadas dimensiones"
|
||||
|
@ -4481,6 +4466,30 @@ msgstr "zi debe ser de tipo flotante"
|
|||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr "zi debe ser una forma (n_section,2)"
|
||||
|
||||
#~ msgid "No key was specified"
|
||||
#~ msgstr "No se especificó ninguna llave"
|
||||
|
||||
#~ msgid "Scan already in progess. Stop with stop_scan."
|
||||
#~ msgstr "Escaneo en progreso. Usa stop_scan para detener."
|
||||
|
||||
#, c-format
|
||||
#~ msgid "Unkown error code %d"
|
||||
#~ msgstr "Codigo de error desconocido: %d"
|
||||
|
||||
#~ msgid "too many arguments provided with the given format"
|
||||
#~ msgstr "demasiados argumentos provistos con el formato dado"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "\n"
|
||||
#~ "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
#~ "\n"
|
||||
#~ "\r"
|
||||
#~ msgstr ""
|
||||
#~ "\n"
|
||||
#~ "CIRCUITPY_PYSTACK_SIZE inválido\n"
|
||||
#~ "\n"
|
||||
#~ "\n"
|
||||
|
||||
#~ msgid "Supply at least one UART pin"
|
||||
#~ msgstr "Suministre al menos un pin UART"
|
||||
|
||||
|
|
|
@ -29,14 +29,6 @@ msgid ""
|
|||
"Code stopped by auto-reload. Reloading soon.\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -189,10 +181,6 @@ msgstr ""
|
|||
msgid "%q must be >= %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr ""
|
||||
|
@ -201,6 +189,10 @@ msgstr ""
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1241,7 +1233,8 @@ msgstr ""
|
|||
msgid "Interrupt error."
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
@ -1264,6 +1257,10 @@ msgstr ""
|
|||
msgid "Invalid BSSID"
|
||||
msgstr ""
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr ""
|
||||
|
@ -1535,10 +1532,6 @@ msgstr ""
|
|||
msgid "No in or out in program"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr ""
|
||||
|
@ -1955,7 +1948,7 @@ msgstr ""
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
|
@ -2269,6 +2262,11 @@ msgstr ""
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2304,11 +2302,6 @@ msgstr ""
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2765,7 +2758,7 @@ msgstr ""
|
|||
msgid "can't set attribute"
|
||||
msgstr "hindi ma i-set ang attribute"
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3073,8 +3066,8 @@ msgid "extra positional arguments given"
|
|||
msgstr "dagdag na positional argument na ibinigay"
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr "file ay dapat buksan sa byte mode"
|
||||
|
||||
|
@ -4154,10 +4147,6 @@ msgstr "wala sa sakop ng timestamp ang platform time_t"
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr "masyadong maraming mga argumento na ibinigay sa ibinigay na format"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr ""
|
||||
|
@ -4416,6 +4405,9 @@ msgstr ""
|
|||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "too many arguments provided with the given format"
|
||||
#~ msgstr "masyadong maraming mga argumento na ibinigay sa ibinigay na format"
|
||||
|
||||
#~ msgid "Expected a %q"
|
||||
#~ msgstr "Umasa ng %q"
|
||||
|
||||
|
|
79
locale/fr.po
79
locale/fr.po
|
@ -34,18 +34,6 @@ msgstr ""
|
|||
"Le code a été arrêté par l'actualisation automatique. Rechargement "
|
||||
"prochain.\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"CIRCUITPY_PYSTACK_SIZE invalide\n"
|
||||
"\n"
|
||||
"\n"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -204,10 +192,6 @@ msgstr "%q doit être <= %d"
|
|||
msgid "%q must be >= %d"
|
||||
msgstr "%q doit être >= %d"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr "%q doit être un bytearray ou matrice de type 'H' ou 'B'"
|
||||
|
@ -216,6 +200,10 @@ msgstr "%q doit être un bytearray ou matrice de type 'H' ou 'B'"
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr "%q doit être a bytearray ou array de type 'h', 'H', 'b', ou 'B'"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1285,7 +1273,8 @@ msgstr "Le minuteur du watchdog interne a expiré."
|
|||
msgid "Interrupt error."
|
||||
msgstr "Erreur d'interruption."
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr "%q invalide"
|
||||
|
@ -1308,6 +1297,10 @@ msgstr "Paramètre BLE invalide"
|
|||
msgid "Invalid BSSID"
|
||||
msgstr "BSSID invalide"
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr "Adresse MAC invalide"
|
||||
|
@ -1583,10 +1576,6 @@ msgstr "Programme n'a pas de \"in\""
|
|||
msgid "No in or out in program"
|
||||
msgstr "Programme n'a aucun \"in\" ni \"out\""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr "Aucune clé n'a été spécifiée"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr "Pas de support pour chiffre entier long"
|
||||
|
@ -2014,8 +2003,8 @@ msgstr "La dimension d'échelle doit être un multiple de 3"
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgstr "Scan déjà en cours. Arrêtez avec stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
|
@ -2334,6 +2323,11 @@ msgstr "Erreur BLE inconnue à %s:%d : %d"
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr "Erreur BLE inconnue : %d"
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2369,11 +2363,6 @@ msgstr "Faute inconnue du logiciel système : %04x"
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr "Erreur du logiciel système inconnue : %d"
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr "Erreur inconnue %d"
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2841,7 +2830,7 @@ msgstr "impossible de définir une taille de bloc de 512"
|
|||
msgid "can't set attribute"
|
||||
msgstr "attribut non modifiable"
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr "attribut '%q' non modifiable"
|
||||
|
||||
|
@ -3153,8 +3142,8 @@ msgid "extra positional arguments given"
|
|||
msgstr "argument(s) positionnel(s) supplémentaire(s) donné(s)"
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr "le fichier doit être un fichier ouvert en mode 'byte'"
|
||||
|
||||
|
@ -4240,10 +4229,6 @@ msgstr "timestamp hors bornes pour 'time_t' de la plateforme"
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr "tobytes ne peut être appelée que pour des matrices dense"
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr "trop d'arguments fournis avec ce format"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr "Trop de dimensions"
|
||||
|
@ -4500,6 +4485,30 @@ msgstr "zi doit être de type float"
|
|||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr "zi doit être de forme (n_section, 2)"
|
||||
|
||||
#~ msgid "No key was specified"
|
||||
#~ msgstr "Aucune clé n'a été spécifiée"
|
||||
|
||||
#~ msgid "Scan already in progess. Stop with stop_scan."
|
||||
#~ msgstr "Scan déjà en cours. Arrêtez avec stop_scan."
|
||||
|
||||
#, c-format
|
||||
#~ msgid "Unkown error code %d"
|
||||
#~ msgstr "Erreur inconnue %d"
|
||||
|
||||
#~ msgid "too many arguments provided with the given format"
|
||||
#~ msgstr "trop d'arguments fournis avec ce format"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "\n"
|
||||
#~ "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
#~ "\n"
|
||||
#~ "\r"
|
||||
#~ msgstr ""
|
||||
#~ "\n"
|
||||
#~ "CIRCUITPY_PYSTACK_SIZE invalide\n"
|
||||
#~ "\n"
|
||||
#~ "\n"
|
||||
|
||||
#~ msgid "Supply at least one UART pin"
|
||||
#~ msgstr "Fournissez au moins une broche UART"
|
||||
|
||||
|
|
49
locale/hi.po
49
locale/hi.po
|
@ -28,14 +28,6 @@ msgid ""
|
|||
"Code stopped by auto-reload. Reloading soon.\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -188,10 +180,6 @@ msgstr ""
|
|||
msgid "%q must be >= %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr ""
|
||||
|
@ -200,6 +188,10 @@ msgstr ""
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1229,7 +1221,8 @@ msgstr ""
|
|||
msgid "Interrupt error."
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
@ -1252,6 +1245,10 @@ msgstr ""
|
|||
msgid "Invalid BSSID"
|
||||
msgstr ""
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr ""
|
||||
|
@ -1523,10 +1520,6 @@ msgstr ""
|
|||
msgid "No in or out in program"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr ""
|
||||
|
@ -1939,7 +1932,7 @@ msgstr ""
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
|
@ -2252,6 +2245,11 @@ msgstr ""
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2287,11 +2285,6 @@ msgstr ""
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2744,7 +2737,7 @@ msgstr ""
|
|||
msgid "can't set attribute"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3044,8 +3037,8 @@ msgid "extra positional arguments given"
|
|||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr ""
|
||||
|
||||
|
@ -4118,10 +4111,6 @@ msgstr ""
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr ""
|
||||
|
|
|
@ -31,14 +31,6 @@ msgid ""
|
|||
"Code stopped by auto-reload. Reloading soon.\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -192,10 +184,6 @@ msgstr ""
|
|||
msgid "%q must be >= %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr ""
|
||||
|
@ -204,6 +192,10 @@ msgstr ""
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1243,7 +1235,8 @@ msgstr ""
|
|||
msgid "Interrupt error."
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
@ -1266,6 +1259,10 @@ msgstr ""
|
|||
msgid "Invalid BSSID"
|
||||
msgstr ""
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr ""
|
||||
|
@ -1538,10 +1535,6 @@ msgstr ""
|
|||
msgid "No in or out in program"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr ""
|
||||
|
@ -1962,7 +1955,7 @@ msgstr ""
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
|
@ -2276,6 +2269,11 @@ msgstr ""
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2311,11 +2309,6 @@ msgstr ""
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2773,7 +2766,7 @@ msgstr ""
|
|||
msgid "can't set attribute"
|
||||
msgstr "impossibile impostare attributo"
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3078,8 +3071,8 @@ msgid "extra positional arguments given"
|
|||
msgstr "argomenti posizonali extra dati"
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr ""
|
||||
|
||||
|
@ -4164,10 +4157,6 @@ msgstr "timestamp è fuori intervallo per il time_t della piattaforma"
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr "troppi argomenti forniti con il formato specificato"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr ""
|
||||
|
@ -4426,6 +4415,9 @@ msgstr ""
|
|||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "too many arguments provided with the given format"
|
||||
#~ msgstr "troppi argomenti forniti con il formato specificato"
|
||||
|
||||
#~ msgid "%q pin invalid"
|
||||
#~ msgstr "%q pin non valido"
|
||||
|
||||
|
|
60
locale/ja.po
60
locale/ja.po
|
@ -34,14 +34,6 @@ msgstr ""
|
|||
"\n"
|
||||
"オートリロードでコード実行は中止された。まもなくリロードする。\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -195,10 +187,6 @@ msgstr ""
|
|||
msgid "%q must be >= %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr ""
|
||||
|
@ -207,6 +195,10 @@ msgstr ""
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1242,7 +1234,8 @@ msgstr ""
|
|||
msgid "Interrupt error."
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr "不正な %q"
|
||||
|
@ -1265,6 +1258,10 @@ msgstr ""
|
|||
msgid "Invalid BSSID"
|
||||
msgstr "不正なBSSID"
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr ""
|
||||
|
@ -1536,10 +1533,6 @@ msgstr ""
|
|||
msgid "No in or out in program"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr "キーが指定されていません"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr "long integerに対応していません"
|
||||
|
@ -1955,8 +1948,8 @@ msgstr ""
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgstr "既にスキャン進行中。stop_scanで停止してください"
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
|
@ -2269,6 +2262,11 @@ msgstr ""
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2304,11 +2302,6 @@ msgstr ""
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2761,7 +2754,7 @@ msgstr ""
|
|||
msgid "can't set attribute"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3065,8 +3058,8 @@ msgid "extra positional arguments given"
|
|||
msgstr "余分な位置引数が与えられました"
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr "fileはバイトモードで開かれたファイルでなければなりません"
|
||||
|
||||
|
@ -4142,10 +4135,6 @@ msgstr "timestampがプラットフォームのtime_tの範囲外"
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr "指定された書式に対して引数が多すぎます"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr ""
|
||||
|
@ -4402,6 +4391,15 @@ msgstr "ziはfloat値でなければなりません"
|
|||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "No key was specified"
|
||||
#~ msgstr "キーが指定されていません"
|
||||
|
||||
#~ msgid "Scan already in progess. Stop with stop_scan."
|
||||
#~ msgstr "既にスキャン進行中。stop_scanで停止してください"
|
||||
|
||||
#~ msgid "too many arguments provided with the given format"
|
||||
#~ msgstr "指定された書式に対して引数が多すぎます"
|
||||
|
||||
#~ msgid "Supply at least one UART pin"
|
||||
#~ msgstr "少なくとも1つのUARTピンが必要"
|
||||
|
||||
|
|
49
locale/ko.po
49
locale/ko.po
|
@ -29,14 +29,6 @@ msgid ""
|
|||
"Code stopped by auto-reload. Reloading soon.\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -189,10 +181,6 @@ msgstr ""
|
|||
msgid "%q must be >= %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr ""
|
||||
|
@ -201,6 +189,10 @@ msgstr ""
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1232,7 +1224,8 @@ msgstr ""
|
|||
msgid "Interrupt error."
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
@ -1255,6 +1248,10 @@ msgstr ""
|
|||
msgid "Invalid BSSID"
|
||||
msgstr ""
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr ""
|
||||
|
@ -1526,10 +1523,6 @@ msgstr ""
|
|||
msgid "No in or out in program"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr ""
|
||||
|
@ -1942,7 +1935,7 @@ msgstr ""
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
|
@ -2256,6 +2249,11 @@ msgstr ""
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2291,11 +2289,6 @@ msgstr ""
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2748,7 +2741,7 @@ msgstr ""
|
|||
msgid "can't set attribute"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3048,8 +3041,8 @@ msgid "extra positional arguments given"
|
|||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr ""
|
||||
|
||||
|
@ -4122,10 +4115,6 @@ msgstr ""
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr ""
|
||||
|
|
60
locale/nl.po
60
locale/nl.po
|
@ -28,14 +28,6 @@ msgid ""
|
|||
"Code stopped by auto-reload. Reloading soon.\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -188,10 +180,6 @@ msgstr ""
|
|||
msgid "%q must be >= %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr ""
|
||||
|
@ -200,6 +188,10 @@ msgstr ""
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1237,7 +1229,8 @@ msgstr ""
|
|||
msgid "Interrupt error."
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr "Ongeldige %q"
|
||||
|
@ -1260,6 +1253,10 @@ msgstr ""
|
|||
msgid "Invalid BSSID"
|
||||
msgstr "Ongeldig BSSID"
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr ""
|
||||
|
@ -1531,10 +1528,6 @@ msgstr ""
|
|||
msgid "No in or out in program"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr "Een sleutel was niet gespecificeerd"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr "Geen lange integer ondersteuning"
|
||||
|
@ -1960,8 +1953,8 @@ msgstr ""
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgstr "Scan wordt al uitvoerd. Stop met stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
|
@ -2273,6 +2266,11 @@ msgstr ""
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2308,11 +2306,6 @@ msgstr ""
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2772,7 +2765,7 @@ msgstr "kan geen 512 blokgrootte instellen"
|
|||
msgid "can't set attribute"
|
||||
msgstr "kan attribute niet instellen"
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3074,8 +3067,8 @@ msgid "extra positional arguments given"
|
|||
msgstr "extra positionele argumenten gegeven"
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr "bestand moet een bestand zijn geopend in byte modus"
|
||||
|
||||
|
@ -4152,10 +4145,6 @@ msgstr "timestamp buiten bereik voor platform time_t"
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr "tobytes kunnen alleen ingeroepen worden voor gesloten arrays"
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr "te veel argumenten opgegeven bij dit formaat"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr ""
|
||||
|
@ -4412,6 +4401,15 @@ msgstr "zi moet van type float zijn"
|
|||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr "zi moet vorm (n_section, 2) hebben"
|
||||
|
||||
#~ msgid "No key was specified"
|
||||
#~ msgstr "Een sleutel was niet gespecificeerd"
|
||||
|
||||
#~ msgid "Scan already in progess. Stop with stop_scan."
|
||||
#~ msgstr "Scan wordt al uitvoerd. Stop met stop_scan."
|
||||
|
||||
#~ msgid "too many arguments provided with the given format"
|
||||
#~ msgstr "te veel argumenten opgegeven bij dit formaat"
|
||||
|
||||
#~ msgid "Supply at least one UART pin"
|
||||
#~ msgstr "Geef op zijn minst 1 UART pin op"
|
||||
|
||||
|
|
60
locale/pl.po
60
locale/pl.po
|
@ -30,14 +30,6 @@ msgid ""
|
|||
"Code stopped by auto-reload. Reloading soon.\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -190,10 +182,6 @@ msgstr ""
|
|||
msgid "%q must be >= %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr ""
|
||||
|
@ -202,6 +190,10 @@ msgstr ""
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1237,7 +1229,8 @@ msgstr ""
|
|||
msgid "Interrupt error."
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr "Nieprawidłowe %q"
|
||||
|
@ -1260,6 +1253,10 @@ msgstr ""
|
|||
msgid "Invalid BSSID"
|
||||
msgstr ""
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr ""
|
||||
|
@ -1531,10 +1528,6 @@ msgstr ""
|
|||
msgid "No in or out in program"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr "Nie określono klucza"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr ""
|
||||
|
@ -1947,8 +1940,8 @@ msgstr ""
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgstr "Skanuj już w toku. Zatrzymaj za pomocą stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
|
@ -2260,6 +2253,11 @@ msgstr ""
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2295,11 +2293,6 @@ msgstr ""
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2752,7 +2745,7 @@ msgstr ""
|
|||
msgid "can't set attribute"
|
||||
msgstr "nie można ustawić atrybutu"
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3053,8 +3046,8 @@ msgid "extra positional arguments given"
|
|||
msgstr "nadmiarowe argumenty pozycyjne"
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr "file musi być otwarte w trybie bajtowym"
|
||||
|
||||
|
@ -4128,10 +4121,6 @@ msgstr "timestamp poza zakresem dla time_t na tej platformie"
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr "zbyt wiele argumentów podanych dla tego formatu"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr ""
|
||||
|
@ -4388,6 +4377,15 @@ msgstr ""
|
|||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "No key was specified"
|
||||
#~ msgstr "Nie określono klucza"
|
||||
|
||||
#~ msgid "Scan already in progess. Stop with stop_scan."
|
||||
#~ msgstr "Skanuj już w toku. Zatrzymaj za pomocą stop_scan."
|
||||
|
||||
#~ msgid "too many arguments provided with the given format"
|
||||
#~ msgstr "zbyt wiele argumentów podanych dla tego formatu"
|
||||
|
||||
#~ msgid "Supply at least one UART pin"
|
||||
#~ msgstr "Podaj co najmniej jeden pin UART"
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@ msgstr ""
|
|||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-01-04 12:55-0600\n"
|
||||
"PO-Revision-Date: 2023-03-08 07:10+0000\n"
|
||||
"PO-Revision-Date: 2023-03-23 17:26+0000\n"
|
||||
"Last-Translator: Wellington Terumi Uemura <wellingtonuemura@gmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
"Language: pt_BR\n"
|
||||
|
@ -32,18 +32,6 @@ msgstr ""
|
|||
"\n"
|
||||
"O código parou pela recarga automática. Recarregando em breve.\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"CIRCUITPY_PYSTACK_SIZE inválido\n"
|
||||
"\n"
|
||||
"\n"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -205,10 +193,6 @@ msgstr "%q deve ser <= %d"
|
|||
msgid "%q must be >= %d"
|
||||
msgstr "o %q deve ser >= %d"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr "%q deve ser uma matriz do tipo 'H'"
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr "%q deve ser um bytearray ou uma matriz do tipo 'H' ou 'B'"
|
||||
|
@ -217,6 +201,10 @@ msgstr "%q deve ser um bytearray ou uma matriz do tipo 'H' ou 'B'"
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr "%q deve ser um bytearray ou uma matriz do tipo 'h', 'H', 'b', ou 'B'"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr "%q deve ser uma matriz do tipo 'H'"
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1275,7 +1263,8 @@ msgstr "O temporizador do watchdog interno expirou."
|
|||
msgid "Interrupt error."
|
||||
msgstr "Erro de interrupção."
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr "%q Inválido"
|
||||
|
@ -1298,6 +1287,10 @@ msgstr "Parâmetro BLE inválido"
|
|||
msgid "Invalid BSSID"
|
||||
msgstr "BSSID Inválido"
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr "CIRCUITPY_PYSTACK_SIZE inválido\n"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr "Endereço MAC inválido"
|
||||
|
@ -1569,10 +1562,6 @@ msgstr "Sem entrada no programa"
|
|||
msgid "No in or out in program"
|
||||
msgstr "Sem entrada ou saída no programa"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr "Nenhuma chave foi definida"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr "Não há compatibilidade com inteiro longo"
|
||||
|
@ -2002,8 +1991,8 @@ msgstr "As dimensões da escala devem ser poder ser divididas por 3"
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgstr "O escaneamento já está em andamento. Interrompa com stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
|
@ -2322,6 +2311,11 @@ msgstr "Houve um erro BLE desconhecido em %s:%d: %d"
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr "Houve um erro BLE desconhecido: %d"
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2357,11 +2351,6 @@ msgstr "Erro desconhecido do firmware: %04x"
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr "Ocorreu um erro desconhecido no firmware do sistema: %d"
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr "Código de erro desconhecido %d"
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2827,7 +2816,7 @@ msgstr "não é possível definir o tamanho de 512 blocos"
|
|||
msgid "can't set attribute"
|
||||
msgstr "não é possível definir o atributo"
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr "não é possível definir o atributo '%q'"
|
||||
|
||||
|
@ -3136,8 +3125,8 @@ msgid "extra positional arguments given"
|
|||
msgstr "argumentos extra posicionais passados"
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr "o arquivo deve ser um arquivo aberto no modo byte"
|
||||
|
||||
|
@ -4221,10 +4210,6 @@ msgstr "timestamp fora do intervalo para a plataforma time_t"
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr "os tobytes podem ser invocados apenas nas matrizes densas"
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr "Muitos argumentos fornecidos com o formato dado"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr "dimensões demais"
|
||||
|
@ -4481,6 +4466,30 @@ msgstr "zi deve ser de um tipo float"
|
|||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr "zi deve estar na forma (n_section, 2)"
|
||||
|
||||
#~ msgid "No key was specified"
|
||||
#~ msgstr "Nenhuma chave foi definida"
|
||||
|
||||
#~ msgid "Scan already in progess. Stop with stop_scan."
|
||||
#~ msgstr "O escaneamento já está em andamento. Interrompa com stop_scan."
|
||||
|
||||
#, c-format
|
||||
#~ msgid "Unkown error code %d"
|
||||
#~ msgstr "Código de erro desconhecido %d"
|
||||
|
||||
#~ msgid "too many arguments provided with the given format"
|
||||
#~ msgstr "Muitos argumentos fornecidos com o formato dado"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "\n"
|
||||
#~ "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
#~ "\n"
|
||||
#~ "\r"
|
||||
#~ msgstr ""
|
||||
#~ "\n"
|
||||
#~ "CIRCUITPY_PYSTACK_SIZE inválido\n"
|
||||
#~ "\n"
|
||||
#~ "\n"
|
||||
|
||||
#~ msgid "Supply at least one UART pin"
|
||||
#~ msgstr "Forneça pelo menos um pino UART"
|
||||
|
||||
|
|
52
locale/ru.po
52
locale/ru.po
|
@ -34,14 +34,6 @@ msgstr ""
|
|||
"\n"
|
||||
"Программа остановлена автоматической перезагрузкой. Скоро перезагрузка.\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -195,10 +187,6 @@ msgstr "%q должно быть <= %d"
|
|||
msgid "%q must be >= %d"
|
||||
msgstr "%q должно быть >= %d"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr "%q должно быть bytearray или array типа 'H' или 'B'"
|
||||
|
@ -207,6 +195,10 @@ msgstr "%q должно быть bytearray или array типа 'H' или 'B'"
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr "%q должно быть bytearray или array типа 'h', 'H', 'b', или 'B'"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1274,7 +1266,8 @@ msgstr "Внутренний сторожевой таймер истек."
|
|||
msgid "Interrupt error."
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr "Недопустимый %q"
|
||||
|
@ -1297,6 +1290,10 @@ msgstr "Недопустимый параметр BLE"
|
|||
msgid "Invalid BSSID"
|
||||
msgstr "Неверный BSSID"
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr "Неверный MAC-адрес"
|
||||
|
@ -1571,10 +1568,6 @@ msgstr "Нет in в программе"
|
|||
msgid "No in or out in program"
|
||||
msgstr "В программе отсутствует ввод или вывод"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr "Ключ не был указан"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr "Нет поддержки длинных целых чисел (long integer)"
|
||||
|
@ -2000,7 +1993,7 @@ msgstr ""
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
|
@ -2315,6 +2308,11 @@ msgstr ""
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2350,11 +2348,6 @@ msgstr ""
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2807,7 +2800,7 @@ msgstr ""
|
|||
msgid "can't set attribute"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3107,8 +3100,8 @@ msgid "extra positional arguments given"
|
|||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr ""
|
||||
|
||||
|
@ -4181,10 +4174,6 @@ msgstr ""
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr ""
|
||||
|
@ -4441,6 +4430,9 @@ msgstr "zi должно быть типа float"
|
|||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr "zi должен иметь форму (n_section, 2)"
|
||||
|
||||
#~ msgid "No key was specified"
|
||||
#~ msgstr "Ключ не был указан"
|
||||
|
||||
#~ msgid "Supply at least one UART pin"
|
||||
#~ msgstr "Предоставьте хотяб один пин UART"
|
||||
|
||||
|
|
81
locale/sv.po
81
locale/sv.po
|
@ -6,7 +6,7 @@ msgstr ""
|
|||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-01-04 12:55-0600\n"
|
||||
"PO-Revision-Date: 2023-03-08 07:10+0000\n"
|
||||
"PO-Revision-Date: 2023-03-23 17:26+0000\n"
|
||||
"Last-Translator: Jonny Bergdahl <jonny@bergdahl.it>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: sv\n"
|
||||
|
@ -32,18 +32,6 @@ msgstr ""
|
|||
"\n"
|
||||
"Koden stoppades av automatisk laddning. Omladdning sker strax.\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Ogiltig CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\n"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -204,10 +192,6 @@ msgstr "%q måste vara <= %d"
|
|||
msgid "%q must be >= %d"
|
||||
msgstr "%q måste vara >= %d"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr "%q måste vara en array av typen 'H'"
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr "%q måste vara en bytearray eller array av typen 'H' eller 'B'"
|
||||
|
@ -218,6 +202,10 @@ msgstr ""
|
|||
"%q måste vara en bytearray eller en array av typen \"h\", \"H\", \"b\" eller "
|
||||
"\"B\""
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr "%q måste vara en array av typen 'H'"
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1260,7 +1248,8 @@ msgstr "Intern watchdog-timer har löpt ut."
|
|||
msgid "Interrupt error."
|
||||
msgstr "Interrupt-fel."
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr "Ogiltig %q"
|
||||
|
@ -1283,6 +1272,10 @@ msgstr "Ogiltig BLE-parameter"
|
|||
msgid "Invalid BSSID"
|
||||
msgstr "Ogiltig BSSID"
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr "Ogiltig CIRCUITPY_PYSTACK_SIZE\n"
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr "Ogiltig MAC-adress"
|
||||
|
@ -1555,10 +1548,6 @@ msgstr "Inget in i programmet"
|
|||
msgid "No in or out in program"
|
||||
msgstr "Inget in eller ut i programmet"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr "Ingen nyckel angavs"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr "Inget stöd för långt heltal"
|
||||
|
@ -1983,8 +1972,8 @@ msgstr "Skaldimension måste vara delbar med 3"
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgstr "Skanning pågår redan. Avsluta med stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
|
@ -2298,6 +2287,11 @@ msgstr "Okänt BLE-fel vid %s:%d: %d"
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr "Okänt BLE-fel: %d"
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2333,11 +2327,6 @@ msgstr "Okänt systemfirmwarefel: %04x"
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr "Okänt fel i systemets firmware: %d"
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr "Okänd felkod %d"
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2798,7 +2787,7 @@ msgstr "kan inte sätta blockstorlek 512"
|
|||
msgid "can't set attribute"
|
||||
msgstr "kan inte att ange attribut"
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr "kan inte sätta attribut '%q'"
|
||||
|
||||
|
@ -3105,8 +3094,8 @@ msgid "extra positional arguments given"
|
|||
msgstr "extra positions-argument angivna"
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr "filen måste vara en fil som öppnats i byte-läge"
|
||||
|
||||
|
@ -4183,10 +4172,6 @@ msgstr "timestamp utom räckvidd för plattformens \"time_t\""
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr "tobyte kan enbart anropas för täta matriser"
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr "för många argument för det givna formatet"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr "för många dimensioner"
|
||||
|
@ -4443,6 +4428,30 @@ msgstr "zi måste vara av typ float"
|
|||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr "zi måste vara i formen (n_section, 2)"
|
||||
|
||||
#~ msgid "No key was specified"
|
||||
#~ msgstr "Ingen nyckel angavs"
|
||||
|
||||
#~ msgid "Scan already in progess. Stop with stop_scan."
|
||||
#~ msgstr "Skanning pågår redan. Avsluta med stop_scan."
|
||||
|
||||
#, c-format
|
||||
#~ msgid "Unkown error code %d"
|
||||
#~ msgstr "Okänd felkod %d"
|
||||
|
||||
#~ msgid "too many arguments provided with the given format"
|
||||
#~ msgstr "för många argument för det givna formatet"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "\n"
|
||||
#~ "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
#~ "\n"
|
||||
#~ "\r"
|
||||
#~ msgstr ""
|
||||
#~ "\n"
|
||||
#~ "Ogiltig CIRCUITPY_PYSTACK_SIZE\n"
|
||||
#~ "\n"
|
||||
#~ "\n"
|
||||
|
||||
#~ msgid "Supply at least one UART pin"
|
||||
#~ msgstr "Ange minst en UART-pinne"
|
||||
|
||||
|
|
49
locale/tr.po
49
locale/tr.po
|
@ -34,14 +34,6 @@ msgstr ""
|
|||
"Program otomatik yeniden yükleme tarafından durduruldu. Birazdan tekrar "
|
||||
"yüklenecek.\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -196,10 +188,6 @@ msgstr "%q <= %d olmalıdır"
|
|||
msgid "%q must be >= %d"
|
||||
msgstr "%q >= %d olmalıdır"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr "%q 'H' ya da 'B' tipi bir bytearray ya da array olmalıdır"
|
||||
|
@ -208,6 +196,10 @@ msgstr "%q 'H' ya da 'B' tipi bir bytearray ya da array olmalıdır"
|
|||
msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
||||
msgstr "%q 'h', 'H', 'b' ya da 'B' tipi bir bytearray ya da array olmalı"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1247,7 +1239,8 @@ msgstr "Dahili bekçi zamanlayıcısının süresi doldu."
|
|||
msgid "Interrupt error."
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr "Geçersiz %q"
|
||||
|
@ -1270,6 +1263,10 @@ msgstr "Geçersiz BLE parametresi"
|
|||
msgid "Invalid BSSID"
|
||||
msgstr "Geçersiz BSSID"
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr "Geçersiz MAC adresi"
|
||||
|
@ -1542,10 +1539,6 @@ msgstr ""
|
|||
msgid "No in or out in program"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr ""
|
||||
|
@ -1961,7 +1954,7 @@ msgstr ""
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
|
@ -2274,6 +2267,11 @@ msgstr ""
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2309,11 +2307,6 @@ msgstr ""
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2766,7 +2759,7 @@ msgstr ""
|
|||
msgid "can't set attribute"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3066,8 +3059,8 @@ msgid "extra positional arguments given"
|
|||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr ""
|
||||
|
||||
|
@ -4140,10 +4133,6 @@ msgstr ""
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr ""
|
||||
|
|
|
@ -34,18 +34,6 @@ msgstr ""
|
|||
"dài mǎ yīn zì dòng chóng xīn jiā zǎi ér tíng zhǐ. jí jiāng chóng xīn jiā "
|
||||
"zǎi.\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
"\n"
|
||||
"Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\r"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"wú xiào CIRCUITPY_PYSTACK_SIZE\n"
|
||||
"\n"
|
||||
"\n"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -207,10 +195,6 @@ msgstr "%q bìxū <= %d"
|
|||
msgid "%q must be >= %d"
|
||||
msgstr "%q bìxū >= %d"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr "%q bì xū shì lèi xíng wéi 'H' de shù zǔ"
|
||||
|
||||
#: shared-bindings/analogbufio/BufferedIn.c
|
||||
msgid "%q must be a bytearray or array of type 'H' or 'B'"
|
||||
msgstr "%q bì xū shì zì jié shù zǔ huò lèi xíng wéi 'H' huò 'B' de shù zǔ"
|
||||
|
@ -220,6 +204,10 @@ msgid "%q must be a bytearray or array of type 'h', 'H', 'b', or 'B'"
|
|||
msgstr ""
|
||||
"%q bì xū shì zì jié shù zǔ huò lèi xíng wéi 'h', 'H', 'b', huò 'B' de shù zǔ"
|
||||
|
||||
#: ports/espressif/common-hal/analogbufio/BufferedIn.c
|
||||
msgid "%q must be array of type 'H'"
|
||||
msgstr "%q bì xū shì lèi xíng wéi 'H' de shù zǔ"
|
||||
|
||||
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
|
||||
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
|
||||
msgid "%q must be of type %q or %q, not %q"
|
||||
|
@ -1267,7 +1255,8 @@ msgstr "Nèibù kān mén gǒu dìngshí qì chāoshí."
|
|||
msgid "Interrupt error."
|
||||
msgstr "zhōng duàn cuò wù."
|
||||
|
||||
#: py/argcheck.c shared-bindings/digitalio/DigitalInOut.c
|
||||
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c
|
||||
#: shared-bindings/digitalio/DigitalInOut.c
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Invalid %q"
|
||||
msgstr "wú xiào %q"
|
||||
|
@ -1290,6 +1279,10 @@ msgstr "wú xiào BLE cān shù"
|
|||
msgid "Invalid BSSID"
|
||||
msgstr "Wúxiào de BSSID"
|
||||
|
||||
#: main.c
|
||||
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
msgid "Invalid MAC address"
|
||||
msgstr "wú xiào de MAC dì zhǐ"
|
||||
|
@ -1562,10 +1555,6 @@ msgstr "chéng xù zhōng méi yǒu"
|
|||
msgid "No in or out in program"
|
||||
msgstr "chéng xù zhōng méi yǒu jìn chū"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr "Wèi zhǐdìng mì yào"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
msgstr "Méiyǒu zhǎng zhěngshù zhīchí"
|
||||
|
@ -1988,8 +1977,8 @@ msgstr "bǐ lì chǐ cùn bì xū chú yǐ 3"
|
|||
|
||||
#: ports/espressif/common-hal/_bleio/Adapter.c
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgstr "Zhèngzài jìn háng sǎomiáo. Shǐyòng stop_scan tíngzhǐ."
|
||||
msgid "Scan already in progress. Stop with stop_scan."
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
|
@ -2303,6 +2292,11 @@ msgstr "%s:%d: %d chù chū xiàn wèi zhī BLE cuò wù"
|
|||
msgid "Unknown BLE error: %d"
|
||||
msgstr "wèi zhī de BLE cuò wù: %d"
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown error code %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/wifi/Radio.c
|
||||
#, c-format
|
||||
msgid "Unknown failure %d"
|
||||
|
@ -2338,11 +2332,6 @@ msgstr "wèi zhī xì tǒng gù jiàn cuò wù: %04x"
|
|||
msgid "Unknown system firmware error: %d"
|
||||
msgstr "wèi zhī de xì tǒng gù jiàn cuò wù: %d"
|
||||
|
||||
#: ports/raspberrypi/common-hal/wifi/__init__.c
|
||||
#, c-format
|
||||
msgid "Unkown error code %d"
|
||||
msgstr "wèi zhī cuò wù dài %d"
|
||||
|
||||
#: shared-bindings/adafruit_pixelbuf/PixelBuf.c
|
||||
#: shared-module/_pixelmap/PixelMap.c
|
||||
#, c-format
|
||||
|
@ -2803,7 +2792,7 @@ msgstr "wúfǎ shèzhì 512 kuài dàxiǎo"
|
|||
msgid "can't set attribute"
|
||||
msgstr "wúfǎ shèzhì shǔxìng"
|
||||
|
||||
#: py/runtime.c
|
||||
#: py/runtime.c shared-bindings/supervisor/Runtime.c
|
||||
msgid "can't set attribute '%q'"
|
||||
msgstr "wú fǎ shè zhì shǔ xìng '%q'"
|
||||
|
||||
|
@ -3111,8 +3100,8 @@ msgid "extra positional arguments given"
|
|||
msgstr "gěi chūle éwài de wèizhì cānshù"
|
||||
|
||||
#: shared-bindings/audiocore/WaveFile.c shared-bindings/audiomp3/MP3Decoder.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/synthio/__init__.c
|
||||
#: shared-module/gifio/GifWriter.c
|
||||
#: shared-bindings/displayio/OnDiskBitmap.c shared-bindings/gifio/OnDiskGif.c
|
||||
#: shared-bindings/synthio/__init__.c shared-module/gifio/GifWriter.c
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr "wénjiàn bìxū shì zài zì jié móshì xià dǎkāi de wénjiàn"
|
||||
|
||||
|
@ -4189,10 +4178,6 @@ msgstr "time_t shíjiān chuō chāochū píngtái fànwéi"
|
|||
msgid "tobytes can be invoked for dense arrays only"
|
||||
msgstr "tobytes zhǐ néng duì mì jí shù zǔ diào yòng"
|
||||
|
||||
#: shared-module/struct/__init__.c
|
||||
msgid "too many arguments provided with the given format"
|
||||
msgstr "tígōng jǐ dìng géshì de cānshù tài duō"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c extmod/ulab/code/numpy/create.c
|
||||
msgid "too many dimensions"
|
||||
msgstr "chǐ cùn tài duō"
|
||||
|
@ -4449,6 +4434,30 @@ msgstr "zi bìxū wèi fú diǎn xíng"
|
|||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr "zi bìxū jùyǒu xíngzhuàng (n_section,2)"
|
||||
|
||||
#~ msgid "No key was specified"
|
||||
#~ msgstr "Wèi zhǐdìng mì yào"
|
||||
|
||||
#~ msgid "Scan already in progess. Stop with stop_scan."
|
||||
#~ msgstr "Zhèngzài jìn háng sǎomiáo. Shǐyòng stop_scan tíngzhǐ."
|
||||
|
||||
#, c-format
|
||||
#~ msgid "Unkown error code %d"
|
||||
#~ msgstr "wèi zhī cuò wù dài %d"
|
||||
|
||||
#~ msgid "too many arguments provided with the given format"
|
||||
#~ msgstr "tígōng jǐ dìng géshì de cānshù tài duō"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "\n"
|
||||
#~ "Invalid CIRCUITPY_PYSTACK_SIZE\n"
|
||||
#~ "\n"
|
||||
#~ "\r"
|
||||
#~ msgstr ""
|
||||
#~ "\n"
|
||||
#~ "wú xiào CIRCUITPY_PYSTACK_SIZE\n"
|
||||
#~ "\n"
|
||||
#~ "\n"
|
||||
|
||||
#~ msgid "Supply at least one UART pin"
|
||||
#~ msgstr "Dìngyì zhìshǎo yīgè UART yǐn jiǎo"
|
||||
|
||||
|
|
|
@ -59,6 +59,7 @@ INC += -I. \
|
|||
ifeq ($(CHIP_FAMILY), samd21)
|
||||
PERIPHERALS_CHIP_FAMILY=samd21
|
||||
OPTIMIZATION_FLAGS ?= -Os
|
||||
|
||||
# TinyUSB defines
|
||||
CFLAGS += -DCFG_TUSB_MCU=OPT_MCU_SAMD21 -DCFG_TUD_MIDI_RX_BUFSIZE=128 -DCFG_TUD_CDC_RX_BUFSIZE=128 -DCFG_TUD_MIDI_TX_BUFSIZE=128 -DCFG_TUD_CDC_TX_BUFSIZE=128 -DCFG_TUD_MSC_BUFSIZE=512
|
||||
endif
|
||||
|
@ -101,24 +102,26 @@ ifeq ($(DEBUG), 1)
|
|||
endif
|
||||
else
|
||||
CFLAGS += -DNDEBUG
|
||||
# -finline-limit can shrink the image size.
|
||||
# -finline-limit=80 or so is similar to not having it on.
|
||||
# There is no simple default value, though.
|
||||
|
||||
# Do a default shrink for small builds.
|
||||
ifndef CFLAGS_INLINE_LIMIT
|
||||
ifeq ($(CIRCUITPY_FULL_BUILD),0)
|
||||
CFLAGS_INLINE_LIMIT = 50
|
||||
# Do a default shrink for small builds, including all SAMD21 builds.
|
||||
ifeq ($(CIRCUITPY_FULL_BUILD),0)
|
||||
SHRINK_BUILD = 1
|
||||
else
|
||||
ifeq ($(CHIP_FAMILY), samd21)
|
||||
SHRINK_BUILD = 1
|
||||
endif
|
||||
endif
|
||||
|
||||
ifdef CFLAGS_INLINE_LIMIT
|
||||
CFLAGS += -finline-limit=$(CFLAGS_INLINE_LIMIT)
|
||||
# -finline-limit can shrink the image size.
|
||||
# -finline-limit=80 or so is similar to not having it on.
|
||||
# There is no simple default value, though.
|
||||
ifeq ($(SHRINK_BUILD), 1)
|
||||
CFLAGS += -finline-limit=45
|
||||
endif
|
||||
|
||||
ifeq ($(CIRCUITPY_FULL_BUILD),0)
|
||||
CFLAGS += --param inline-unit-growth=15 --param max-inline-insns-auto=20
|
||||
endif
|
||||
# We used to do this but it seems to not reduce space any more, at least in gcc 11.
|
||||
# Leave it here, commented out, just for reference.
|
||||
# --param inline-unit-growth=15 --param max-inline-insns-auto=20
|
||||
|
||||
ifdef CFLAGS_BOARD
|
||||
CFLAGS += $(CFLAGS_BOARD)
|
||||
|
|
|
@ -49,7 +49,7 @@
|
|||
#define CONF_TC3_WAVE_DUTY_VAL 0x1f4
|
||||
#endif
|
||||
|
||||
/* Caculate pwm ccx register value based on WAVE_PER_VAL and Waveform Duty Value */
|
||||
/* Calculate pwm ccx register value based on WAVE_PER_VAL and Waveform Duty Value */
|
||||
#if CONF_TC3_PRESCALER < TC_CTRLA_PRESCALER_DIV64_Val
|
||||
#define CONF_TC3_CC0 \
|
||||
((uint32_t)(((double)CONF_TC3_WAVE_PER_VAL * CONF_GCLK_TC3_FREQUENCY) / 1000000 / (1 << CONF_TC3_PRESCALER) - 1))
|
||||
|
|
|
@ -42,7 +42,7 @@
|
|||
#define CONF_TC0_WAVE_DUTY_VAL 0x1f4
|
||||
#endif
|
||||
|
||||
/* Caculate pwm ccx register value based on WAVE_PER_VAL and Waveform Duty Value */
|
||||
/* Calculate pwm ccx register value based on WAVE_PER_VAL and Waveform Duty Value */
|
||||
#if CONF_TC0_PRESCALER < TC_CTRLA_PRESCALER_DIV64_Val
|
||||
#define CONF_TC0_CC0 \
|
||||
((uint32_t)(((double)CONF_TC0_WAVE_PER_VAL * CONF_GCLK_TC0_FREQUENCY) / 1000000 / (1 << CONF_TC0_PRESCALER) - 1))
|
||||
|
|
|
@ -42,7 +42,7 @@
|
|||
#define CONF_TC0_WAVE_DUTY_VAL 0x1f4
|
||||
#endif
|
||||
|
||||
/* Caculate pwm ccx register value based on WAVE_PER_VAL and Waveform Duty Value */
|
||||
/* Calculate pwm ccx register value based on WAVE_PER_VAL and Waveform Duty Value */
|
||||
#if CONF_TC0_PRESCALER < TC_CTRLA_PRESCALER_DIV64_Val
|
||||
#define CONF_TC0_CC0 \
|
||||
((uint32_t)(((double)CONF_TC0_WAVE_PER_VAL * CONF_GCLK_TC0_FREQUENCY) / 1000000 / (1 << CONF_TC0_PRESCALER) - 1))
|
||||
|
|
|
@ -42,7 +42,7 @@
|
|||
#define CONF_TC0_WAVE_DUTY_VAL 0x1f4
|
||||
#endif
|
||||
|
||||
/* Caculate pwm ccx register value based on WAVE_PER_VAL and Waveform Duty Value */
|
||||
/* Calculate pwm ccx register value based on WAVE_PER_VAL and Waveform Duty Value */
|
||||
#if CONF_TC0_PRESCALER < TC_CTRLA_PRESCALER_DIV64_Val
|
||||
#define CONF_TC0_CC0 \
|
||||
((uint32_t)(((double)CONF_TC0_WAVE_PER_VAL * CONF_GCLK_TC0_FREQUENCY) / 1000000 / (1 << CONF_TC0_PRESCALER) - 1))
|
||||
|
|
|
@ -51,7 +51,7 @@ uint8_t display_init_sequence[] = {
|
|||
0xc5, 1, 0x0e, // _VMCTR1 VCOMH = 4V, VOML = -1.1V
|
||||
0x2a, 0, // _INVOFF
|
||||
0x36, 1, 0x18, // _MADCTL bottom to top refresh
|
||||
// 1 clk cycle nonoverlap, 2 cycle gate rise, 3 sycle osc equalie,
|
||||
// 1 clk cycle nonoverlap, 2 cycle gate rise, 3 cycle osc equalie,
|
||||
// fix on VTL
|
||||
0x3a, 1, 0x05, // COLMOD - 16bit color
|
||||
0xe0, 16, 0x02, 0x1c, 0x07, 0x12, // _GMCTRP1 Gamma
|
||||
|
|
|
@ -50,7 +50,7 @@ uint8_t display_init_sequence[] = {
|
|||
0xc5, 1, 0x0e, // _VMCTR1 VCOMH = 4V, VOML = -1.1V
|
||||
0x2a, 0, // _INVOFF
|
||||
0x36, 1, 0b10100000, // _MADCTL for rotation 0
|
||||
// 1 clk cycle nonoverlap, 2 cycle gate rise, 3 sycle osc equalie,
|
||||
// 1 clk cycle nonoverlap, 2 cycle gate rise, 3 cycle osc equalie,
|
||||
// fix on VTL
|
||||
0x3a, 1, 0x05, // COLMOD - 16bit color
|
||||
0xe0, 16, 0x02, 0x1c, 0x07, 0x12, // _GMCTRP1 Gamma
|
||||
|
|
|
@ -52,7 +52,7 @@ uint8_t display_init_sequence[] = {
|
|||
0xc5, 1, 0x0e, // _VMCTR1 VCOMH = 4V, VOML = -1.1V
|
||||
0x2a, 0, // _INVOFF
|
||||
0x36, 1, 0b10100000, // _MADCTL for rotation 0
|
||||
// 1 clk cycle nonoverlap, 2 cycle gate rise, 3 sycle osc equalie,
|
||||
// 1 clk cycle nonoverlap, 2 cycle gate rise, 3 cycle osc equalie,
|
||||
// fix on VTL
|
||||
0x3a, 1, 0x05, // COLMOD - 16bit color
|
||||
0xe0, 16, 0x02, 0x1c, 0x07, 0x12, // _GMCTRP1 Gamma
|
||||
|
|
|
@ -52,7 +52,7 @@ uint8_t display_init_sequence[] = {
|
|||
0xc5, 1, 0x0e, // _VMCTR1 VCOMH = 4V, VOML = -1.1V
|
||||
0x2a, 0, // _INVOFF
|
||||
0x36, 1, 0xa8, // _MADCTL bottom to top refresh
|
||||
// 1 clk cycle nonoverlap, 2 cycle gate rise, 3 sycle osc equalie,
|
||||
// 1 clk cycle nonoverlap, 2 cycle gate rise, 3 cycle osc equalie,
|
||||
// fix on VTL
|
||||
0x3a, 1, 0x05, // COLMOD - 16bit color
|
||||
0xe0, 16, 0x02, 0x1c, 0x07, 0x12, // _GMCTRP1 Gamma
|
||||
|
|
|
@ -36,7 +36,7 @@ STATIC volatile bool woke_up = false;
|
|||
STATIC mp_float_t wakeup_time;
|
||||
|
||||
void common_hal_alarm_time_timealarm_construct(alarm_time_timealarm_obj_t *self, mp_float_t monotonic_time) {
|
||||
// TODO: when issueing light/seep sleep, throw a ValueError if the
|
||||
// TODO: when issuing light/seep sleep, throw a ValueError if the
|
||||
// time exceeds the maximum value. For light sleep, max =
|
||||
// 2**32 / 16384 = 3 days. For deep sleep, max = 2**32 / 32
|
||||
// = 1550 days.
|
||||
|
|
|
@ -482,7 +482,7 @@ uint32_t common_hal_frequencyio_frequencyin_get_item(frequencyio_frequencyin_obj
|
|||
float time_each_event = self->factor / self->frequency; // get the time for each event during actual period
|
||||
float capture_diff = self->factor - self->capture_period; // get the difference of actual and base periods
|
||||
// we only need to adjust if the capture_diff can contain 1 or more events
|
||||
// if so, we add how many events could have occured during the diff time
|
||||
// if so, we add how many events could have occurred during the diff time
|
||||
if (time_each_event > capture_diff) {
|
||||
frequency_adjustment = capture_diff / time_each_event;
|
||||
}
|
||||
|
|
|
@ -189,7 +189,7 @@
|
|||
// - firmware
|
||||
// - internal CIRCUITPY flash filesystem (optional)
|
||||
// - internal config, used to store crystalless clock calibration info (optional)
|
||||
// - microntroller.nvm (optional)
|
||||
// - microcontroller.nvm (optional)
|
||||
|
||||
// Define these regions starting up from the bottom of flash:
|
||||
|
||||
|
|
|
@ -1073,7 +1073,7 @@ static void sd_mmc_deselect_slot(void) {
|
|||
* \note
|
||||
* This function runs the initialization procedure and the identification
|
||||
* process, then it sets the SD/MMC card in transfer state.
|
||||
* At last, it will automaticly enable maximum bus width and transfer speed.
|
||||
* At last, it will automatically enable maximum bus width and transfer speed.
|
||||
*
|
||||
* \return true if success, otherwise false
|
||||
*/
|
||||
|
@ -1205,7 +1205,7 @@ static bool sd_mmc_mci_card_init(void) {
|
|||
* \note
|
||||
* This function runs the initialization procedure and the identification
|
||||
* process, then it sets the SD/MMC card in transfer state.
|
||||
* At last, it will automaticly enable maximum bus width and transfer speed.
|
||||
* At last, it will automatically enable maximum bus width and transfer speed.
|
||||
*
|
||||
* \return true if success, otherwise false
|
||||
*/
|
||||
|
@ -1270,7 +1270,7 @@ static bool sd_mmc_mci_install_mmc(void) {
|
|||
uint8_t retry = 10;
|
||||
while (retry--) {
|
||||
/* Retry is a WORKAROUND for no compliance card (Atmel Internal ref. MMC19):
|
||||
* These cards seem not ready immediatly
|
||||
* These cards seem not ready immediately
|
||||
* after the end of busy of mmc_cmd6_set_high_speed()*/
|
||||
|
||||
/* Set default block size */
|
||||
|
@ -1427,7 +1427,7 @@ sd_mmc_err_t sd_mmc_wait_end_of_read_blocks(bool abort) {
|
|||
return SD_MMC_OK;
|
||||
}
|
||||
|
||||
/* All blocks are transfered then stop read operation */
|
||||
/* All blocks are transferred then stop read operation */
|
||||
if (sd_mmc_nb_block_to_tranfer == 1) {
|
||||
/* Single block transfer, then nothing to do */
|
||||
sd_mmc_deselect_slot();
|
||||
|
@ -1506,7 +1506,7 @@ sd_mmc_err_t sd_mmc_wait_end_of_write_blocks(bool abort) {
|
|||
return SD_MMC_OK;
|
||||
}
|
||||
|
||||
/* All blocks are transfered then stop write operation */
|
||||
/* All blocks are transferred then stop write operation */
|
||||
if (sd_mmc_nb_block_to_tranfer == 1) {
|
||||
/* Single block transfer, then nothing to do */
|
||||
sd_mmc_deselect_slot();
|
||||
|
|
|
@ -67,7 +67,7 @@ typedef uint8_t sd_mmc_err_t; /**< Type of return error code */
|
|||
#define SD_MMC_INIT_ONGOING 1 /**< Card not initialized */
|
||||
#define SD_MMC_ERR_NO_CARD 2 /**< No SD/MMC card inserted */
|
||||
#define SD_MMC_ERR_UNUSABLE 3 /**< Unusable card */
|
||||
#define SD_MMC_ERR_SLOT 4 /**< Slot unknow */
|
||||
#define SD_MMC_ERR_SLOT 4 /**< Slot unknown */
|
||||
#define SD_MMC_ERR_COMM 5 /**< General communication error */
|
||||
#define SD_MMC_ERR_PARAM 6 /**< Illeage input parameter */
|
||||
#define SD_MMC_ERR_WP 7 /**< Card write protected */
|
||||
|
@ -166,7 +166,7 @@ uint32_t sd_mmc_get_capacity(uint8_t slot);
|
|||
*
|
||||
* \param[in] slot Card slot
|
||||
*
|
||||
* \return true, if write portected
|
||||
* \return true, if write protected
|
||||
*/
|
||||
bool sd_mmc_is_write_protected(uint8_t slot);
|
||||
|
||||
|
|
|
@ -73,8 +73,8 @@ extern "C" {
|
|||
* Responses types:
|
||||
*
|
||||
* R1, R3, R4 & R5 use a 48 bits response protected by a 7bit CRC checksum
|
||||
* - R1 receiv data not specified
|
||||
* - R3 receiv OCR
|
||||
* - R1 receive data not specified
|
||||
* - R3 receive OCR
|
||||
* - R4, R5 RCA management (MMC only)
|
||||
* - R6, R7 RCA management (SD only)
|
||||
*
|
||||
|
@ -115,14 +115,14 @@ typedef uint32_t sdmmc_cmd_def_t;
|
|||
#define SDMMC_RESP_CRC (1lu << 12)
|
||||
// ! Card may send busy
|
||||
#define SDMMC_RESP_BUSY (1lu << 13)
|
||||
// Open drain for a braodcast command (bc)
|
||||
// Open drain for a broadcast command (bc)
|
||||
// or to enter in inactive state (MCI only)
|
||||
#define SDMMC_CMD_OPENDRAIN (1lu << 14)
|
||||
// ! To signal a data write operation
|
||||
#define SDMMC_CMD_WRITE (1lu << 15)
|
||||
// ! To signal a SDIO tranfer in multi byte mode
|
||||
// ! To signal a SDIO transfer in multi byte mode
|
||||
#define SDMMC_CMD_SDIO_BYTE (1lu << 16)
|
||||
// ! To signal a SDIO tranfer in block mode
|
||||
// ! To signal a SDIO transfer in block mode
|
||||
#define SDMMC_CMD_SDIO_BLOCK (1lu << 17)
|
||||
// ! To signal a data transfer in stream mode
|
||||
#define SDMMC_CMD_STREAM (1lu << 18)
|
||||
|
@ -132,7 +132,7 @@ typedef uint32_t sdmmc_cmd_def_t;
|
|||
#define SDMMC_CMD_MULTI_BLOCK (1lu << 20)
|
||||
// ! @}
|
||||
|
||||
// ! \name Set of flags to define a reponse type
|
||||
// ! \name Set of flags to define a response type
|
||||
// ! @{
|
||||
#define SDMMC_CMD_NO_RESP (0)
|
||||
#define SDMMC_CMD_R1 (SDMMC_RESP_PRESENT | SDMMC_RESP_CRC)
|
||||
|
@ -324,7 +324,7 @@ typedef uint32_t sdmmc_cmd_def_t;
|
|||
#define SD_MCI_ACMD41_SD_SEND_OP_COND (41 | SDMMC_CMD_R3 | SDMMC_CMD_OPENDRAIN)
|
||||
/**
|
||||
* ACMD41(R1): Send host capacity support information (HCS) and activates the
|
||||
* card's initilization process
|
||||
* card's initialization process
|
||||
*/
|
||||
#define SD_SPI_ACMD41_SD_SEND_OP_COND (41 | SDMMC_CMD_R1)
|
||||
/**
|
||||
|
@ -440,7 +440,7 @@ typedef uint32_t sdmmc_cmd_def_t;
|
|||
#define SDIO_R5_ERROR (1lu << 11) /**< General error */
|
||||
#define SDIO_R5_FUNC_NUM (1lu << 9) /**< Invalid function number */
|
||||
#define SDIO_R5_OUT_OF_RANGE (1lu << 8) /**< Argument out of range */
|
||||
#define SDIO_R5_STATUS_ERR (SDIO_R5_ERROR | SDIO_R5_FUNC_NUM | SDIO_R5_OUT_OF_RANGE) // !< Errro status bits mask
|
||||
#define SDIO_R5_STATUS_ERR (SDIO_R5_ERROR | SDIO_R5_FUNC_NUM | SDIO_R5_OUT_OF_RANGE) // !< Error status bits mask
|
||||
// ! @}
|
||||
|
||||
// ! \name SDIO state (in R6)
|
||||
|
|
|
@ -307,7 +307,7 @@ safe_mode_t port_init(void) {
|
|||
// because it was hard enough to figure out, and maybe there's
|
||||
// a mistake that could make it work in the future.
|
||||
#if 0
|
||||
// Designate QSPI memory mapped region as not cachable.
|
||||
// Designate QSPI memory mapped region as not cacheable.
|
||||
|
||||
// Turn off MPU in case it is on.
|
||||
MPU->CTRL = 0;
|
||||
|
@ -320,7 +320,7 @@ safe_mode_t port_init(void) {
|
|||
0b011 << MPU_RASR_AP_Pos | // full read/write access for privileged and user mode
|
||||
0b000 << MPU_RASR_TEX_Pos | // caching not allowed, strongly ordered
|
||||
1 << MPU_RASR_S_Pos | // sharable
|
||||
0 << MPU_RASR_C_Pos | // not cachable
|
||||
0 << MPU_RASR_C_Pos | // not cacheable
|
||||
0 << MPU_RASR_B_Pos | // not bufferable
|
||||
0b10111 << MPU_RASR_SIZE_Pos | // 16MB region size
|
||||
1 << MPU_RASR_ENABLE_Pos // enable this region
|
||||
|
|
|
@ -55,7 +55,7 @@ Connect these pins using a `USB adapter <https://www.adafruit.com/product/4090>`
|
|||
|
||||
**UART Connection:**
|
||||
|
||||
A `USB to UART convertor <https://www.adafruit.com/product/3309>`_ can be used for connecting to ESP32-C3 to get access to the serial console and REPL and for flashing CircuitPython.
|
||||
A `USB to UART converter <https://www.adafruit.com/product/3309>`_ can be used for connecting to ESP32-C3 to get access to the serial console and REPL and for flashing CircuitPython.
|
||||
|
||||
The following connections need to be made in this case:
|
||||
|
||||
|
@ -92,7 +92,7 @@ Connect these pins using a `USB adapter <https://www.adafruit.com/product/4090>`
|
|||
|
||||
**UART Connection:**
|
||||
|
||||
A `USB to UART convertor <https://www.adafruit.com/product/3309>`_ can be used for connecting to ESP32-S2 to get access to the serial console and REPL and for flashing CircuitPython.
|
||||
A `USB to UART converter <https://www.adafruit.com/product/3309>`_ can be used for connecting to ESP32-S2 to get access to the serial console and REPL and for flashing CircuitPython.
|
||||
|
||||
The following connections need to be made in this case:
|
||||
|
||||
|
@ -129,7 +129,7 @@ Connect these pins using a `USB adapter <https://www.adafruit.com/product/4090>`
|
|||
|
||||
**UART Connection:**
|
||||
|
||||
A `USB to UART convertor <https://www.adafruit.com/product/3309>`_ can be used for connecting to ESP32-S3 to get access to the serial console and REPL and for flashing CircuitPython.
|
||||
A `USB to UART converter <https://www.adafruit.com/product/3309>`_ can be used for connecting to ESP32-S3 to get access to the serial console and REPL and for flashing CircuitPython.
|
||||
|
||||
The following connections need to be made in this case:
|
||||
|
||||
|
|
|
@ -63,7 +63,7 @@
|
|||
//| """
|
||||
//| Configure and initialize a camera with the given properties
|
||||
//|
|
||||
//| This driver requires that the ``CIRCUITPY_RESERVED_PSRAM`` in ``settings.toml`` be large enough to hold the camera frambuffer(s). Generally, boards with built-in cameras will have a default setting that is large enough. If the constructor raises a MemoryError or an IDFError, this probably indicates the setting is too small and should be increased.
|
||||
//| This driver requires that the ``CIRCUITPY_RESERVED_PSRAM`` in ``settings.toml`` be large enough to hold the camera framebuffer(s). Generally, boards with built-in cameras will have a default setting that is large enough. If the constructor raises a MemoryError or an IDFError, this probably indicates the setting is too small and should be increased.
|
||||
//|
|
||||
//|
|
||||
//| .. important::
|
||||
|
@ -89,7 +89,7 @@
|
|||
//| :param reset_pin: The reset input to the camera module
|
||||
//| :param pixel_format: The pixel format of the captured image
|
||||
//| :param frame_size: The size of captured image
|
||||
//| :param jpeg_quality: For `PixelFormat.JPEG`, the quality. Higher numbers increase quality. If the quality is too high, the JPEG data will be larger than the availalble buffer size and the image will be unusable or truncated. The exact range of appropriate values depends on the sensor and must be determined empirically.
|
||||
//| :param jpeg_quality: For `PixelFormat.JPEG`, the quality. Higher numbers increase quality. If the quality is too high, the JPEG data will be larger than the available buffer size and the image will be unusable or truncated. The exact range of appropriate values depends on the sensor and must be determined empirically.
|
||||
//| :param framebuffer_count: The number of framebuffers (1 for single-buffered and 2 for double-buffered)
|
||||
//| :param grab_mode: When to grab a new frame
|
||||
//| """
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
#include "common-hal/espnow/__init__.h"
|
||||
|
||||
// TODO: check peer already exist
|
||||
// TODO: check peer dosen't exist
|
||||
// TODO: check peer doesn't exist
|
||||
|
||||
//| class Peer:
|
||||
//| """A data class to store parameters specific to a peer."""
|
||||
|
|
|
@ -0,0 +1,102 @@
|
|||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2021 microDev
|
||||
* Copyright (c) 2021 skieast/Bruce Segal
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
#include "shared-bindings/displayio/I2CDisplay.h"
|
||||
#include "shared-module/displayio/__init__.h"
|
||||
#include "shared-module/displayio/mipi_constants.h"
|
||||
#include "shared-bindings/busio/I2C.h"
|
||||
#include "shared-bindings/microcontroller/Pin.h"
|
||||
#include "supervisor/board.h"
|
||||
#include "supervisor/shared/board.h"
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
uint8_t display_init_sequence[] = { // SSD1306
|
||||
0xAE, 0, // DISPLAY_OFF
|
||||
0x20, 1, 0x00, // Set memory addressing to horizontal mode.
|
||||
0x81, 1, 0xcf, // set contrast control
|
||||
0xA1, 0, // Column 127 is segment 0
|
||||
0xA6, 0, // Normal display
|
||||
0xc8, 0, // Normal display
|
||||
0xA8, 1, 0x3f, // Mux ratio is 1/64
|
||||
0xd5, 1, 0x80, // Set divide ratio
|
||||
0xd9, 1, 0xf1, // Set pre-charge period
|
||||
0xda, 1, 0x12, // Set com configuration
|
||||
0xdb, 1, 0x40, // Set vcom configuration
|
||||
0x8d, 1, 0x14, // Enable charge pump
|
||||
0xAF, 0, // DISPLAY_ON
|
||||
};
|
||||
|
||||
void board_init(void) {
|
||||
busio_i2c_obj_t *i2c = common_hal_board_create_i2c(0);
|
||||
|
||||
// What we would do if it wasn't the shared board I2C: (for reference)
|
||||
// busio_i2c_obj_t *i2c = &displays[0].i2cdisplay_bus.inline_bus;
|
||||
// common_hal_busio_i2c_construct(i2c, &pin_GPIO23, &pin_GPIO22, 100000, 0);
|
||||
// common_hal_busio_i2c_never_reset(i2c);
|
||||
|
||||
displayio_i2cdisplay_obj_t *bus = &displays[0].i2cdisplay_bus;
|
||||
bus->base.type = &displayio_i2cdisplay_type;
|
||||
common_hal_displayio_i2cdisplay_construct(bus,
|
||||
i2c,
|
||||
0x3c,
|
||||
NULL
|
||||
);
|
||||
|
||||
displayio_display_obj_t *display = &displays[0].display;
|
||||
display->base.type = &displayio_display_type;
|
||||
common_hal_displayio_display_construct(display,
|
||||
bus,
|
||||
72, // Width
|
||||
40, // Height
|
||||
28, // column start
|
||||
28, // row start
|
||||
0, // rotation
|
||||
1, // Color depth
|
||||
true, // grayscale
|
||||
false, // pixels in byte share row. Only used with depth < 8
|
||||
1, // bytes per cell. Only valid for depths < 8
|
||||
false, // reverse_pixels_in_byte. Only valid for depths < 8
|
||||
true, // reverse_pixels_in_word
|
||||
0x21, // Set column command
|
||||
0x22, // Set row command
|
||||
44, // Write ram command
|
||||
display_init_sequence,
|
||||
sizeof(display_init_sequence),
|
||||
NULL, // no backlight pin
|
||||
0x81, // brightness command
|
||||
1.0f, // brightness
|
||||
true, // single_byte_bounds
|
||||
true, // data as commands
|
||||
true, // auto_refresh
|
||||
60, // native_frames_per_second
|
||||
true, // backlight_on_high
|
||||
false, // SH1107_addressing
|
||||
0); // backlight pwm frequency
|
||||
}
|
||||
|
||||
// Use the MP_WEAK supervisor/shared/board.c versions of routines not defined here.
|
|
@ -0,0 +1,40 @@
|
|||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2023 Neradoc
|
||||
*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
// Board setup
|
||||
#define MICROPY_HW_BOARD_NAME "01Space 0.42 OLED ESP32C3"
|
||||
#define MICROPY_HW_MCU_NAME "ESP32-C3FH4"
|
||||
|
||||
// Status LED
|
||||
#define MICROPY_HW_NEOPIXEL (&pin_GPIO2)
|
||||
|
||||
#define CIRCUITPY_BOARD_I2C (1)
|
||||
#define CIRCUITPY_BOARD_I2C_PIN {{.scl = &pin_GPIO6, .sda = &pin_GPIO5}}
|
||||
|
||||
// For entering safe mode
|
||||
#define CIRCUITPY_BOOT_BUTTON (&pin_GPIO9)
|
||||
|
||||
#define CIRCUITPY_ESP_USB_SERIAL_JTAG (1)
|
|
@ -0,0 +1,8 @@
|
|||
CIRCUITPY_CREATOR_ID = 0x01011ACE
|
||||
CIRCUITPY_CREATION_ID = 0x00C30042
|
||||
|
||||
IDF_TARGET = esp32c3
|
||||
|
||||
CIRCUITPY_ESP_FLASH_MODE = dio
|
||||
CIRCUITPY_ESP_FLASH_FREQ = 80m
|
||||
CIRCUITPY_ESP_FLASH_SIZE = 4MB
|
|
@ -0,0 +1,68 @@
|
|||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2023 Neradoc
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
#include "shared-module/displayio/__init__.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
|
||||
CIRCUITPYTHON_BOARD_DICT_STANDARD_ITEMS
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO0), MP_ROM_PTR(&pin_GPIO0) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO1), MP_ROM_PTR(&pin_GPIO1) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_GPIO2) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO2), MP_ROM_PTR(&pin_GPIO2) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO3), MP_ROM_PTR(&pin_GPIO3) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO4), MP_ROM_PTR(&pin_GPIO4) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_GPIO5) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO5), MP_ROM_PTR(&pin_GPIO5) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_GPIO6) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO6), MP_ROM_PTR(&pin_GPIO6) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO7), MP_ROM_PTR(&pin_GPIO7) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO8), MP_ROM_PTR(&pin_GPIO8) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON), MP_ROM_PTR(&pin_GPIO9) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO9), MP_ROM_PTR(&pin_GPIO9) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO10), MP_ROM_PTR(&pin_GPIO10) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO20), MP_ROM_PTR(&pin_GPIO20) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO21), MP_ROM_PTR(&pin_GPIO21) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_STEMMA_I2C), MP_ROM_PTR(&board_i2c_obj) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_DISPLAY), MP_ROM_PTR(&displays[0].display)}
|
||||
};
|
||||
MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table);
|
|
@ -0,0 +1,6 @@
|
|||
# chip is ESP32-C3 FH4
|
||||
#
|
||||
# LWIP
|
||||
#
|
||||
CONFIG_LWIP_LOCAL_HOSTNAME="01Space-LCD042-ESP32C3"
|
||||
# end of LWIP
|
|
@ -4,7 +4,7 @@ STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
|
|||
CIRCUITPYTHON_BOARD_DICT_STANDARD_ITEMS
|
||||
|
||||
// S2 Mini Board bottom, right, top-bottom
|
||||
// GPIO0-GPIO14: broken out as a bloc on ESP32-S2FN4R2 SoC
|
||||
// GPIO0-GPIO14: broken out as a block on ESP32-S2FN4R2 SoC
|
||||
// mpconfigboard.h: GPIO0: CIRCUITPY_BOOT_BUTTON
|
||||
{ MP_ROM_QSTR(MP_QSTR_BUTTON), MP_ROM_PTR(&pin_GPIO0) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO0), MP_ROM_PTR(&pin_GPIO0) }, // RTC_GPIO0,GPIO0
|
||||
|
@ -57,7 +57,7 @@ STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
|
|||
// skip GPIO22-GPIO25: not broken out on ESP32-S2FN4R2 SoC
|
||||
// skip GPIO26-GPIO32: SPI Flash & RAM, not broken out on S2 Mini (internal to ESP32-S2FN4R2 SoC?)
|
||||
|
||||
// GPIO33-GPIO40: broken out as a bloc on ESP32-S2FN4R2 SoC, last 2 half of JTAG
|
||||
// GPIO33-GPIO40: broken out as a block on ESP32-S2FN4R2 SoC, last 2 half of JTAG
|
||||
{ MP_ROM_QSTR(MP_QSTR_IO33), MP_ROM_PTR(&pin_GPIO33) },// SPIIO4,GPIO33,FSPIHD
|
||||
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_GPIO33) },// def from Wemos MP
|
||||
{ MP_ROM_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_GPIO33) },// D1 mini pin D2 GPIO4
|
||||
|
|
|
@ -193,7 +193,7 @@ static bool pmic_init(void) {
|
|||
}
|
||||
|
||||
// Reg: 12h
|
||||
// Enable EXTEN, DCDC1, LDO2 and LDO3
|
||||
// Enable CTRL_EXTEN, DCDC1, LDO2 and LDO3
|
||||
write_buf[0] = AXP192_DCDC13_LDO23_CTRL;
|
||||
write_buf[1] = AXP192_DCDC13_LDO23_CTRL_EXTEN |
|
||||
AXP192_DCDC13_LDO23_CTRL_LDO3 |
|
||||
|
|
|
@ -51,7 +51,7 @@ uint8_t display_init_sequence[] = {
|
|||
0xC5, 0x01, 0x0E, // _VMCTR1 VCOMH = 4V, VOML = -1.1V
|
||||
0x20, 0x00, // _INVOFF
|
||||
0x36, 0x01, 0x18, // _MADCTL bottom to top refresh
|
||||
// 1 clk cycle nonoverlap, 2 cycle gate rise, 3 sycle osc equalie,
|
||||
// 1 clk cycle nonoverlap, 2 cycle gate rise, 3 cycle osc equalie,
|
||||
// fix on VTL
|
||||
0x3A, 0x01, 0x05, // COLMOD - 16bit color
|
||||
0xE0, 0x10, 0x02, 0x1C, 0x07, 0x12, 0x37, 0x32, 0x29, 0x2D, 0x29, 0x25, 0x2B, 0x39, 0x00, 0x01, 0x03, 0x10, // _GMCTRP1 Gamma
|
||||
|
|
|
@ -221,7 +221,7 @@ mp_obj_t common_hal_bleio_adapter_start_scan(bleio_adapter_obj_t *self, uint8_t
|
|||
mp_float_t interval, mp_float_t window, mp_int_t minimum_rssi, bool active) {
|
||||
if (self->scan_results != NULL) {
|
||||
if (!shared_module_bleio_scanresults_get_done(self->scan_results)) {
|
||||
mp_raise_bleio_BluetoothError(translate("Scan already in progess. Stop with stop_scan."));
|
||||
mp_raise_bleio_BluetoothError(translate("Scan already in progress. Stop with stop_scan."));
|
||||
}
|
||||
self->scan_results = NULL;
|
||||
}
|
||||
|
|
|
@ -248,7 +248,7 @@ STATIC int _discovered_characteristic_cb(uint16_t conn_handle,
|
|||
((chr->properties & BLE_GATT_CHR_PROP_WRITE) != 0 ? CHAR_PROP_WRITE : 0) |
|
||||
((chr->properties & BLE_GATT_CHR_PROP_WRITE_NO_RSP) != 0 ? CHAR_PROP_WRITE_NO_RESPONSE : 0);
|
||||
|
||||
// Call common_hal_bleio_characteristic_construct() to initalize some fields and set up evt handler.
|
||||
// Call common_hal_bleio_characteristic_construct() to initialize some fields and set up evt handler.
|
||||
common_hal_bleio_characteristic_construct(
|
||||
characteristic, service, chr->val_handle, uuid,
|
||||
props, SECURITY_MODE_OPEN, SECURITY_MODE_OPEN,
|
||||
|
|
|
@ -119,7 +119,7 @@ void alarm_touch_touchalarm_set_alarm(const bool deep_sleep, const size_t n_alar
|
|||
for (uint8_t i = 1; i <= 14; i++) {
|
||||
if ((touch_channel_mask & 1 << i) != 0) {
|
||||
touch_pad_t touch_channel = (touch_pad_t)i;
|
||||
// intialize touchpad
|
||||
// initialize touchpad
|
||||
peripherals_touch_init(touch_channel);
|
||||
|
||||
// wait for touch data to reset
|
||||
|
@ -166,7 +166,7 @@ void alarm_touch_touchalarm_prepare_for_deep_sleep(void) {
|
|||
peripherals_touch_never_reset(false);
|
||||
peripherals_touch_reset();
|
||||
|
||||
// intialize touchpad
|
||||
// initialize touchpad
|
||||
peripherals_touch_init(touch_channel);
|
||||
|
||||
#if !defined(CONFIG_IDF_TARGET_ESP32)
|
||||
|
|
|
@ -123,7 +123,7 @@ void common_hal_pulseio_pulsein_construct(pulseio_pulsein_obj_t *self, const mcu
|
|||
rmt_config_t config = RMT_DEFAULT_CONFIG_RX(pin->number, channel);
|
||||
config.rx_config.filter_en = true;
|
||||
config.rx_config.idle_threshold = 30000; // 30*3=90ms idle required to register a sequence
|
||||
config.clk_div = 240; // All measurements are divided by 3 to accomodate 65ms pulses
|
||||
config.clk_div = 240; // All measurements are divided by 3 to accommodate 65ms pulses
|
||||
rmt_config(&config);
|
||||
rmt_driver_install(channel, 1000, 0); // TODO: pick a more specific buffer size?
|
||||
|
||||
|
|
|
@ -197,7 +197,7 @@ void common_hal_pwmio_pwmout_deinit(pwmio_pwmout_obj_t *self) {
|
|||
if (!taken || self->variable_frequency) {
|
||||
ledc_timer_rst(LEDC_LOW_SPEED_MODE, self->tim_handle.timer_num);
|
||||
reserved_timer_freq[self->tim_handle.timer_num] = 0;
|
||||
// if timer isn't varfreq this will be off aleady
|
||||
// if timer isn't varfreq this will be off already
|
||||
varfreq_timers[self->tim_handle.timer_num] = false;
|
||||
never_reset_tim[self->tim_handle.timer_num] = false;
|
||||
}
|
||||
|
|
|
@ -69,7 +69,7 @@ void common_hal_rotaryio_incrementalencoder_construct(rotaryio_incrementalencode
|
|||
.unit = unit,
|
||||
};
|
||||
|
||||
// Reinitalize same unit, CHANNEL_1 with different parameters.
|
||||
// Reinitialize same unit, CHANNEL_1 with different parameters.
|
||||
peripherals_pcnt_reinit(&pcnt_config_channel_1);
|
||||
|
||||
self->pin_a = pin_a->number;
|
||||
|
|
|
@ -44,7 +44,7 @@ typedef struct {
|
|||
} i2s_lcd_config_t;
|
||||
|
||||
/**
|
||||
* @brief Initilize i2s lcd driver.
|
||||
* @brief Initialize i2s lcd driver.
|
||||
*
|
||||
* @param config configuration of i2s
|
||||
*
|
||||
|
|
|
@ -93,7 +93,7 @@ SECTIONS
|
|||
|
||||
. = ALIGN(4);
|
||||
_etext = .; /* define a global symbol at end of code */
|
||||
_sidata = _etext; /* This is used by the startup in order to initialize the .data secion */
|
||||
_sidata = _etext; /* This is used by the startup in order to initialize the .data section */
|
||||
} >FLASH_FIRMWARE
|
||||
|
||||
/* Uninitialized data section */
|
||||
|
|
|
@ -72,7 +72,7 @@ static void ledda_init(void) {
|
|||
// Set clock register to 12 MHz / 64 kHz - 1
|
||||
ledda_write((12000000 / 64000) - 1, LEDDBR);
|
||||
|
||||
// Ensure LED "breathe" effect is diabled
|
||||
// Ensure LED "breathe" effect is disabled
|
||||
ledda_write(0, LEDDBCRR);
|
||||
ledda_write(0, LEDDBCFR);
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
|
||||
_start:
|
||||
j crt_init
|
||||
# This sentinal ensures that this program is loaded
|
||||
# This sentinel ensures that this program is loaded
|
||||
# to RAM when loaded using dfu-util.
|
||||
#.word 0x17ab0f23
|
||||
#.word 0x10001000
|
||||
|
|
|
@ -119,6 +119,7 @@ SRC_SDK := \
|
|||
drivers/lpuart/fsl_lpuart.c \
|
||||
drivers/ocotp/fsl_ocotp.c \
|
||||
drivers/pwm/fsl_pwm.c \
|
||||
drivers/sai/fsl_sai.c \
|
||||
drivers/snvs_hp/fsl_snvs_hp.c \
|
||||
drivers/snvs_lp/fsl_snvs_lp.c \
|
||||
drivers/tempmon/fsl_tempmon.c \
|
||||
|
@ -147,11 +148,6 @@ SRC_C += \
|
|||
|
||||
endif
|
||||
|
||||
# TODO
|
||||
#ifeq ($(CIRCUITPY_AUDIOBUSIO),1)
|
||||
#SRC_C += peripherals/samd/i2s.c peripherals/samd/$(CHIP_FAMILY)/i2s.c
|
||||
#endif
|
||||
#
|
||||
SRC_COMMON_HAL_EXPANDED = $(addprefix shared-bindings/, $(SRC_COMMON_HAL)) \
|
||||
$(addprefix shared-bindings/, $(SRC_BINDINGS_ENUMS)) \
|
||||
$(addprefix common-hal/, $(SRC_COMMON_HAL))
|
||||
|
|
|
@ -35,9 +35,6 @@ void PLACE_IN_ITCM(port_background_task)(void) {
|
|||
}
|
||||
|
||||
void port_background_tick(void) {
|
||||
#if CIRCUITPY_AUDIOIO || CIRCUITPY_AUDIOBUSIO
|
||||
audio_dma_background();
|
||||
#endif
|
||||
}
|
||||
|
||||
void port_start_background_task(void) {
|
||||
|
|
|
@ -38,8 +38,9 @@ STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
|
|||
{ MP_OBJ_NEW_QSTR(MP_QSTR_ESP_GPIO0), MP_ROM_PTR(&pin_GPIO_SD_05) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_ESP_BUSY), MP_ROM_PTR(&pin_GPIO_AD_11) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_ESP_RESET), MP_ROM_PTR(&pin_GPIO_AD_07) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_ESP_TX), MP_ROM_PTR(&pin_GPIO_09) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_ESP_RX), MP_ROM_PTR(&pin_GPIO_10) },
|
||||
// These RX and TX are from the point of view of the i.MX microcontroller.
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_ESP_RX), MP_ROM_PTR(&pin_GPIO_09) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_ESP_TX), MP_ROM_PTR(&pin_GPIO_10) },
|
||||
|
||||
// SPI
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_GPIO_AD_06) },
|
||||
|
@ -56,5 +57,9 @@ STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
|
|||
{ MP_ROM_QSTR(MP_QSTR_STEMMA_I2C), MP_ROM_PTR(&board_i2c_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2S_WSEL), MP_ROM_PTR(&pin_GPIO_06) }, // D10
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2S_BCLK), MP_ROM_PTR(&pin_GPIO_07) }, // D9
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2S_DOUT), MP_ROM_PTR(&pin_GPIO_04) }, // D12
|
||||
};
|
||||
MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table);
|
||||
|
|
|
@ -0,0 +1,154 @@
|
|||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 Jeff Epler for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include <stdint.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "mpconfigport.h"
|
||||
|
||||
// Some boards don't implement I2SOut, so suppress any routines from here.
|
||||
#if CIRCUITPY_AUDIOBUSIO_I2SOUT
|
||||
|
||||
#include "py/gc.h"
|
||||
#include "py/mperrno.h"
|
||||
#include "py/runtime.h"
|
||||
#include "common-hal/audiobusio/I2SOut.h"
|
||||
#include "shared-bindings/audiobusio/I2SOut.h"
|
||||
#include "shared-bindings/audiocore/RawSample.h"
|
||||
#include "shared-bindings/microcontroller/Pin.h"
|
||||
#include "supervisor/shared/translate/translate.h"
|
||||
#include "supervisor/shared/tick.h"
|
||||
|
||||
// Where required we use identifier names that are required by NXP's
|
||||
// API, even though they do not conform to the naming standards that Adafruit
|
||||
// strives to adhere to. https://www.adafruit.com/blacklivesmatter
|
||||
#include "sdk/drivers/sai/fsl_sai.h"
|
||||
|
||||
STATIC void config_periph_pin(const mcu_periph_obj_t *periph) {
|
||||
if (!periph) {
|
||||
return;
|
||||
}
|
||||
if (periph->pin->mux_reg) {
|
||||
IOMUXC_SetPinMux(
|
||||
periph->pin->mux_reg, periph->mux_mode,
|
||||
periph->input_reg, periph->input_idx,
|
||||
0,
|
||||
1);
|
||||
}
|
||||
|
||||
IOMUXC_SetPinConfig(0, 0, 0, 0,
|
||||
periph->pin->cfg_reg,
|
||||
IOMUXC_SW_PAD_CTL_PAD_HYS(0)
|
||||
| IOMUXC_SW_PAD_CTL_PAD_PUS(0)
|
||||
| IOMUXC_SW_PAD_CTL_PAD_PUE(0)
|
||||
| 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(4)
|
||||
| IOMUXC_SW_PAD_CTL_PAD_SRE(0));
|
||||
}
|
||||
|
||||
// Caller validates that pins are free.
|
||||
void common_hal_audiobusio_i2sout_construct(audiobusio_i2sout_obj_t *self,
|
||||
const mcu_pin_obj_t *bit_clock, const mcu_pin_obj_t *word_select,
|
||||
const mcu_pin_obj_t *data, bool left_justified) {
|
||||
|
||||
int instance = -1;
|
||||
const mcu_periph_obj_t *bclk_periph = find_pin_function(mcu_sai_tx_bclk_list, bit_clock, &instance, MP_QSTR_bit_clock);
|
||||
const mcu_periph_obj_t *sync_periph = find_pin_function(mcu_sai_tx_sync_list, word_select, &instance, MP_QSTR_word_select);
|
||||
const mcu_periph_obj_t *data_periph = find_pin_function(mcu_sai_tx_data0_list, data, &instance, MP_QSTR_data);
|
||||
|
||||
sai_transceiver_t config;
|
||||
SAI_GetClassicI2SConfig(&config, 16, kSAI_Stereo, 1);
|
||||
config.syncMode = kSAI_ModeAsync;
|
||||
config.fifo.fifoPacking = kSAI_FifoPackingDisabled;
|
||||
// These identifier names are required by NXP's API, even though they do
|
||||
// not conform to the naming standards that Adafruit strives to adhere to.
|
||||
// https://www.adafruit.com/blacklivesmatter
|
||||
config.masterSlave = kSAI_Master;
|
||||
port_i2s_initialize(&self->i2s, instance, &config);
|
||||
|
||||
self->bit_clock = bit_clock;
|
||||
self->word_select = word_select;
|
||||
self->data = data;
|
||||
claim_pin(bit_clock);
|
||||
claim_pin(word_select);
|
||||
claim_pin(data);
|
||||
config_periph_pin(data_periph);
|
||||
config_periph_pin(sync_periph);
|
||||
config_periph_pin(bclk_periph);
|
||||
}
|
||||
|
||||
bool common_hal_audiobusio_i2sout_deinited(audiobusio_i2sout_obj_t *self) {
|
||||
return port_i2s_deinited(&self->i2s);
|
||||
}
|
||||
|
||||
void common_hal_audiobusio_i2sout_deinit(audiobusio_i2sout_obj_t *self) {
|
||||
if (common_hal_audiobusio_i2sout_deinited(self)) {
|
||||
return;
|
||||
}
|
||||
|
||||
port_i2s_deinit(&self->i2s);
|
||||
|
||||
common_hal_reset_pin(self->bit_clock);
|
||||
self->bit_clock = NULL;
|
||||
|
||||
common_hal_reset_pin(self->word_select);
|
||||
self->word_select = NULL;
|
||||
|
||||
common_hal_reset_pin(self->data);
|
||||
self->data = NULL;
|
||||
}
|
||||
|
||||
void common_hal_audiobusio_i2sout_play(audiobusio_i2sout_obj_t *self,
|
||||
mp_obj_t sample, bool loop) {
|
||||
if (common_hal_audiobusio_i2sout_get_playing(self)) {
|
||||
common_hal_audiobusio_i2sout_stop(self);
|
||||
}
|
||||
port_i2s_play(&self->i2s, sample, loop);
|
||||
}
|
||||
|
||||
void common_hal_audiobusio_i2sout_pause(audiobusio_i2sout_obj_t *self) {
|
||||
port_i2s_pause(&self->i2s);
|
||||
}
|
||||
|
||||
void common_hal_audiobusio_i2sout_resume(audiobusio_i2sout_obj_t *self) {
|
||||
port_i2s_resume(&self->i2s);
|
||||
}
|
||||
|
||||
bool common_hal_audiobusio_i2sout_get_paused(audiobusio_i2sout_obj_t *self) {
|
||||
return port_i2s_get_paused(&self->i2s);
|
||||
}
|
||||
|
||||
void common_hal_audiobusio_i2sout_stop(audiobusio_i2sout_obj_t *self) {
|
||||
port_i2s_stop(&self->i2s);
|
||||
}
|
||||
|
||||
bool common_hal_audiobusio_i2sout_get_playing(audiobusio_i2sout_obj_t *self) {
|
||||
return port_i2s_get_playing(&self->i2s);
|
||||
}
|
||||
|
||||
#endif // CIRCUITPY_AUDIOBUSIO_I2SOUT
|
|
@ -0,0 +1,47 @@
|
|||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 Jeff Epler for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "supervisor/background_callback.h"
|
||||
#include "common-hal/microcontroller/Pin.h"
|
||||
|
||||
#include "common-hal/audiobusio/__init__.h"
|
||||
|
||||
// Some boards don't implement I2SOut, so suppress any routines from here.
|
||||
#if CIRCUITPY_AUDIOBUSIO_I2SOUT
|
||||
|
||||
#include "sdk/drivers/sai/fsl_sai.h"
|
||||
|
||||
typedef struct {
|
||||
mp_obj_base_t base;
|
||||
i2s_t i2s;
|
||||
const mcu_pin_obj_t *bit_clock;
|
||||
const mcu_pin_obj_t *word_select;
|
||||
const mcu_pin_obj_t *data;
|
||||
} audiobusio_i2sout_obj_t;
|
||||
|
||||
#endif
|
|
@ -0,0 +1,417 @@
|
|||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 Jeff Epler for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#include "py/runtime.h"
|
||||
|
||||
#include "common-hal/audiobusio/__init__.h"
|
||||
#include "shared-module/audiocore/__init__.h"
|
||||
|
||||
#define SAI_CLOCK_SOURCE_SELECT (2U)
|
||||
#define SAI_CLOCK_SOURCE_DIVIDER (63U)
|
||||
#define SAI_CLOCK_SOURCE_PRE_DIVIDER (0U)
|
||||
|
||||
#define SAI_CLOCK_FREQ (CLOCK_GetFreq(kCLOCK_AudioPllClk) / (SAI_CLOCK_SOURCE_DIVIDER + 1U) / \
|
||||
(SAI_CLOCK_SOURCE_PRE_DIVIDER + 1U))
|
||||
|
||||
#define AUDIO_BUFFER_FRAME_COUNT (128) // in uint32_t; there are 4, giving 2048 bytes. In all they hold 10ms @ stereo 16-bit 48kHz before all buffers drain
|
||||
|
||||
/*
|
||||
* AUDIO PLL setting: Frequency = Fref * (DIV_SELECT + NUM / DENOM)
|
||||
* = 24 * (32 + 77/100)
|
||||
* = 786.48 MHz
|
||||
*/
|
||||
const clock_audio_pll_config_t audioPllConfig = {
|
||||
.loopDivider = 32, /* PLL loop divider. Valid range for DIV_SELECT divider value: 27~54. */
|
||||
.postDivider = 1, /* Divider after the PLL, should only be 1, 2, 4, 8, 16. */
|
||||
.numerator = 77, /* 30 bit numerator of fractional loop divider. */
|
||||
.denominator = 100, /* 30 bit denominator of fractional loop divider */
|
||||
};
|
||||
|
||||
static I2S_Type *const i2s_instances[] = I2S_BASE_PTRS;
|
||||
static uint8_t i2s_in_use;
|
||||
|
||||
static I2S_Type *SAI_GetPeripheral(int idx) {
|
||||
if (idx < 0 || idx >= (int)MP_ARRAY_SIZE(i2s_instances)) {
|
||||
return NULL;
|
||||
}
|
||||
return i2s_instances[idx];
|
||||
}
|
||||
|
||||
static int SAI_GetInstance(I2S_Type *peripheral) {
|
||||
for (size_t i = 0; i < MP_ARRAY_SIZE(i2s_instances); i++) { if (peripheral == i2s_instances[i]) {
|
||||
return i;
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
static bool i2s_clock_off(I2S_Type *peripheral) {
|
||||
int index = SAI_GetInstance(peripheral);
|
||||
switch (index) {
|
||||
#if defined(SAI0)
|
||||
case 0:
|
||||
CLOCK_DisableClock(kCLOCK_Sai0);
|
||||
return true;
|
||||
#endif
|
||||
#if defined(SAI1)
|
||||
case 1:
|
||||
CLOCK_DisableClock(kCLOCK_Sai1);
|
||||
return true;
|
||||
#endif
|
||||
#if defined(SAI2)
|
||||
case 2:
|
||||
CLOCK_DisableClock(kCLOCK_Sai2);
|
||||
return true;
|
||||
#endif
|
||||
#if defined(SAI3)
|
||||
case 3:
|
||||
CLOCK_DisableClock(kCLOCK_Sai3);
|
||||
return true;
|
||||
#endif
|
||||
#if defined(SAI4)
|
||||
case 4:
|
||||
CLOCK_DisableClock(kCLOCK_Sai4);
|
||||
return true;
|
||||
#endif
|
||||
#if defined(SAI5)
|
||||
case 5:
|
||||
CLOCK_DisableClock(kCLOCK_Sai5);
|
||||
return true;
|
||||
#endif
|
||||
#if defined(SAI6)
|
||||
case 6:
|
||||
CLOCK_DisableClock(kCLOCK_Sai6);
|
||||
return true;
|
||||
#endif
|
||||
#if defined(SAI7)
|
||||
case 7:
|
||||
CLOCK_DisableClock(kCLOCK_Sai7);
|
||||
return true;
|
||||
#endif
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
static bool i2s_clocking(I2S_Type *peripheral) {
|
||||
int index = SAI_GetInstance(peripheral);
|
||||
switch (index) {
|
||||
#if defined(SAI0)
|
||||
case 0:
|
||||
CLOCK_SetDiv(kCLOCK_Sai0PreDiv, SAI_CLOCK_SOURCE_PRE_DIVIDER);
|
||||
CLOCK_SetDiv(kCLOCK_Sai0Div, SAI_CLOCK_SOURCE_DIVIDER);
|
||||
CLOCK_SetMux(kCLOCK_Sai0Mux, SAI_CLOCK_SOURCE_SELECT);
|
||||
CLOCK_EnableClock(kCLOCK_Sai0);
|
||||
return true;
|
||||
#endif
|
||||
#if defined(SAI1)
|
||||
case 1:
|
||||
CLOCK_SetDiv(kCLOCK_Sai1PreDiv, SAI_CLOCK_SOURCE_PRE_DIVIDER);
|
||||
CLOCK_SetDiv(kCLOCK_Sai1Div, SAI_CLOCK_SOURCE_DIVIDER);
|
||||
CLOCK_SetMux(kCLOCK_Sai1Mux, SAI_CLOCK_SOURCE_SELECT);
|
||||
CLOCK_EnableClock(kCLOCK_Sai1);
|
||||
return true;
|
||||
#endif
|
||||
#if defined(SAI2)
|
||||
case 2:
|
||||
CLOCK_SetDiv(kCLOCK_Sai2PreDiv, SAI_CLOCK_SOURCE_PRE_DIVIDER);
|
||||
CLOCK_SetDiv(kCLOCK_Sai2Div, SAI_CLOCK_SOURCE_DIVIDER);
|
||||
CLOCK_SetMux(kCLOCK_Sai2Mux, SAI_CLOCK_SOURCE_SELECT);
|
||||
CLOCK_EnableClock(kCLOCK_Sai2);
|
||||
return true;
|
||||
#endif
|
||||
#if defined(SAI3)
|
||||
case 3:
|
||||
CLOCK_SetDiv(kCLOCK_Sai3PreDiv, SAI_CLOCK_SOURCE_PRE_DIVIDER);
|
||||
CLOCK_SetDiv(kCLOCK_Sai3Div, SAI_CLOCK_SOURCE_DIVIDER);
|
||||
CLOCK_SetMux(kCLOCK_Sai3Mux, SAI_CLOCK_SOURCE_SELECT);
|
||||
CLOCK_EnableClock(kCLOCK_Sai3);
|
||||
return true;
|
||||
#endif
|
||||
#if defined(SAI4)
|
||||
case 4:
|
||||
CLOCK_SetDiv(kCLOCK_Sai4PreDiv, SAI_CLOCK_SOURCE_PRE_DIVIDER);
|
||||
CLOCK_SetDiv(kCLOCK_Sai4Div, SAI_CLOCK_SOURCE_DIVIDER);
|
||||
CLOCK_SetMux(kCLOCK_Sai4Mux, SAI_CLOCK_SOURCE_SELECT);
|
||||
CLOCK_EnableClock(kCLOCK_Sai4);
|
||||
return true;
|
||||
#endif
|
||||
#if defined(SAI5)
|
||||
case 5:
|
||||
CLOCK_SetDiv(kCLOCK_Sai5PreDiv, SAI_CLOCK_SOURCE_PRE_DIVIDER);
|
||||
CLOCK_SetDiv(kCLOCK_Sai5Div, SAI_CLOCK_SOURCE_DIVIDER);
|
||||
CLOCK_SetMux(kCLOCK_Sai5Mux, SAI_CLOCK_SOURCE_SELECT);
|
||||
CLOCK_EnableClock(kCLOCK_Sai5);
|
||||
return true;
|
||||
#endif
|
||||
#if defined(SAI6)
|
||||
case 6:
|
||||
CLOCK_SetDiv(kCLOCK_Sai6PreDiv, SAI_CLOCK_SOURCE_PRE_DIVIDER);
|
||||
CLOCK_SetDiv(kCLOCK_Sai6Div, SAI_CLOCK_SOURCE_DIVIDER);
|
||||
CLOCK_SetMux(kCLOCK_Sai6Mux, SAI_CLOCK_SOURCE_SELECT);
|
||||
CLOCK_EnableClock(kCLOCK_Sai6);
|
||||
return true;
|
||||
#endif
|
||||
#if defined(SAI7)
|
||||
case 7:
|
||||
CLOCK_SetDiv(kCLOCK_Sai7PreDiv, SAI_CLOCK_SOURCE_PRE_DIVIDER);
|
||||
CLOCK_SetDiv(kCLOCK_Sai7Div, SAI_CLOCK_SOURCE_DIVIDER);
|
||||
CLOCK_SetMux(kCLOCK_Sai7Mux, SAI_CLOCK_SOURCE_SELECT);
|
||||
CLOCK_EnableClock(kCLOCK_Sai7);
|
||||
return true;
|
||||
#endif
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
static bool i2s_queue_available(i2s_t *self) {
|
||||
return !self->handle.saiQueue[self->handle.queueUser].data;
|
||||
}
|
||||
|
||||
static void i2s_fill_buffer(i2s_t *self) {
|
||||
if (!self->peripheral) {
|
||||
return;
|
||||
}
|
||||
while (i2s_queue_available(self)) {
|
||||
uint32_t *buffer = self->buffers[self->buffer_idx];
|
||||
uint32_t *ptr = buffer, *end = buffer + AUDIO_BUFFER_FRAME_COUNT;
|
||||
self->buffer_idx = (self->buffer_idx + 1) % SAI_XFER_QUEUE_SIZE;
|
||||
|
||||
while (self->playing && !self->paused && ptr < end) {
|
||||
if (self->sample_data == self->sample_end) {
|
||||
if (self->stopping) {
|
||||
// non-looping sample, previously returned GET_BUFFER_DONE
|
||||
self->playing = false;
|
||||
break;
|
||||
}
|
||||
uint32_t sample_buffer_length;
|
||||
audioio_get_buffer_result_t get_buffer_result =
|
||||
audiosample_get_buffer(self->sample, false, 0,
|
||||
&self->sample_data, &sample_buffer_length);
|
||||
self->sample_end = self->sample_data + sample_buffer_length;
|
||||
if (get_buffer_result == GET_BUFFER_DONE) {
|
||||
if (self->loop) {
|
||||
audiosample_reset_buffer(self->sample, false, 0);
|
||||
} else {
|
||||
self->stopping = true;
|
||||
}
|
||||
}
|
||||
if (get_buffer_result == GET_BUFFER_ERROR || sample_buffer_length == 0) {
|
||||
self->stopping = true;
|
||||
}
|
||||
}
|
||||
size_t input_bytecount = self->sample_end - self->sample_data;
|
||||
size_t bytes_per_input_frame = self->channel_count * self->bytes_per_sample;
|
||||
size_t framecount = MIN((size_t)(end - ptr), input_bytecount / bytes_per_input_frame);
|
||||
|
||||
#define SAMPLE_TYPE(is_signed, channel_count, bytes_per_sample) ((is_signed) | ((channel_count) << 1) | ((bytes_per_sample) << 3))
|
||||
|
||||
switch (SAMPLE_TYPE(self->samples_signed, self->channel_count, self->bytes_per_sample)) {
|
||||
|
||||
case SAMPLE_TYPE(true, 2, 2):
|
||||
memcpy(ptr, self->sample_data, 4 * framecount);
|
||||
break;
|
||||
|
||||
case SAMPLE_TYPE(false, 2, 2):
|
||||
audiosample_convert_u16s_s16s((int16_t *)ptr, (uint16_t *)(void *)self->sample_data, framecount);
|
||||
break;
|
||||
|
||||
case SAMPLE_TYPE(true, 1, 2):
|
||||
audiosample_convert_s16m_s16s((int16_t *)ptr, (int16_t *)(void *)self->sample_data, framecount);
|
||||
break;
|
||||
|
||||
case SAMPLE_TYPE(false, 1, 2):
|
||||
audiosample_convert_u16m_s16s((int16_t *)ptr, (uint16_t *)(void *)self->sample_data, framecount);
|
||||
break;
|
||||
|
||||
case SAMPLE_TYPE(true, 2, 1):
|
||||
audiosample_convert_s8s_s16s((int16_t *)ptr, (int8_t *)(void *)self->sample_data, framecount);
|
||||
memcpy(ptr, self->sample_data, 4 * framecount);
|
||||
break;
|
||||
|
||||
case SAMPLE_TYPE(false, 2, 1):
|
||||
audiosample_convert_u8s_s16s((int16_t *)ptr, (uint8_t *)(void *)self->sample_data, framecount);
|
||||
break;
|
||||
|
||||
case SAMPLE_TYPE(true, 1, 1):
|
||||
audiosample_convert_s8m_s16s((int16_t *)ptr, (int8_t *)(void *)self->sample_data, framecount);
|
||||
break;
|
||||
|
||||
case SAMPLE_TYPE(false, 1, 1):
|
||||
audiosample_convert_u8m_s16s((int16_t *)ptr, (uint8_t *)(void *)self->sample_data, framecount);
|
||||
break;
|
||||
}
|
||||
self->sample_data += bytes_per_input_frame * framecount; // in bytes
|
||||
ptr += framecount; // in frames
|
||||
}
|
||||
// Fill any remaining portion of the buffer with 'no sound'
|
||||
memset(ptr, 0, (end - ptr) * sizeof(uint32_t));
|
||||
sai_transfer_t xfer = {
|
||||
.data = (uint8_t *)buffer,
|
||||
.dataSize = AUDIO_BUFFER_FRAME_COUNT * sizeof(uint32_t),
|
||||
};
|
||||
int r = SAI_TransferSendNonBlocking(self->peripheral, &self->handle, &xfer);
|
||||
if (r != kStatus_Success) {
|
||||
mp_printf(&mp_plat_print, "transfer returned %d\n", (int)r);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void i2s_callback_fun(void *self_in) {
|
||||
i2s_t *self = self_in;
|
||||
i2s_fill_buffer(self);
|
||||
}
|
||||
|
||||
static void i2s_transfer_callback(I2S_Type *base, sai_handle_t *handle, status_t status, void *self_in) {
|
||||
i2s_t *self = self_in;
|
||||
if (status == kStatus_SAI_TxIdle) {
|
||||
// a block has been finished
|
||||
background_callback_add(&self->callback, i2s_callback_fun, self_in);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void port_i2s_initialize(i2s_t *self, int instance, sai_transceiver_t *config) {
|
||||
if (!i2s_in_use) {
|
||||
// need to set audio pll up!
|
||||
|
||||
/* DeInit Audio PLL. */
|
||||
CLOCK_DeinitAudioPll();
|
||||
/* Bypass Audio PLL. */
|
||||
CLOCK_SetPllBypass(CCM_ANALOG, kCLOCK_PllAudio, 1);
|
||||
/* Set divider for Audio PLL. */
|
||||
CCM_ANALOG->MISC2 &= ~CCM_ANALOG_MISC2_AUDIO_DIV_LSB_MASK;
|
||||
CCM_ANALOG->MISC2 &= ~CCM_ANALOG_MISC2_AUDIO_DIV_MSB_MASK;
|
||||
/* Enable Audio PLL output. */
|
||||
CCM_ANALOG->PLL_AUDIO |= CCM_ANALOG_PLL_AUDIO_ENABLE_MASK;
|
||||
|
||||
CLOCK_InitAudioPll(&audioPllConfig);
|
||||
}
|
||||
|
||||
I2S_Type *peripheral = SAI_GetPeripheral(instance);
|
||||
if (!peripheral) {
|
||||
mp_raise_ValueError_varg(translate("Invalid %q"), MP_QSTR_I2SOut);
|
||||
}
|
||||
if (i2s_in_use & (1 << instance)) {
|
||||
mp_raise_ValueError_varg(translate("%q in use"), MP_QSTR_I2SOut);
|
||||
}
|
||||
if (!i2s_clocking(peripheral)) {
|
||||
mp_raise_ValueError_varg(translate("Invalid %q"), MP_QSTR_I2SOut);
|
||||
}
|
||||
for (size_t i = 0; i < MP_ARRAY_SIZE(self->buffers); i++) {
|
||||
self->buffers[i] = m_malloc(AUDIO_BUFFER_FRAME_COUNT * sizeof(uint32_t), false);
|
||||
}
|
||||
self->peripheral = peripheral;
|
||||
SAI_Init(self->peripheral);
|
||||
SAI_TransferTxCreateHandle(peripheral, &self->handle, i2s_transfer_callback, (void *)self);
|
||||
SAI_TransferTxSetConfig(peripheral, &self->handle, config);
|
||||
self->sample_rate = 0;
|
||||
i2s_in_use |= (1 << instance);
|
||||
}
|
||||
|
||||
bool port_i2s_deinited(i2s_t *self) {
|
||||
return !self->peripheral;
|
||||
}
|
||||
|
||||
void port_i2s_deinit(i2s_t *self) {
|
||||
if (port_i2s_deinited(self)) {
|
||||
return;
|
||||
}
|
||||
SAI_TransferAbortSend(self->peripheral, &self->handle);
|
||||
i2s_clock_off(self->peripheral);
|
||||
i2s_in_use &= ~(1 << SAI_GetInstance(self->peripheral));
|
||||
if (!i2s_in_use) {
|
||||
CCM_ANALOG->PLL_AUDIO = CCM_ANALOG_PLL_AUDIO_BYPASS_MASK | CCM_ANALOG_PLL_AUDIO_POWERDOWN_MASK | CCM_ANALOG_PLL_AUDIO_BYPASS_CLK_SRC(kCLOCK_PllClkSrc24M);
|
||||
}
|
||||
self->peripheral = NULL;
|
||||
for (size_t i = 0; i < MP_ARRAY_SIZE(self->buffers); i++) {
|
||||
self->buffers[i] = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
void port_i2s_play(i2s_t *self, mp_obj_t sample, bool loop) {
|
||||
self->sample = sample;
|
||||
self->loop = loop;
|
||||
self->bytes_per_sample = audiosample_bits_per_sample(sample) / 8;
|
||||
self->channel_count = audiosample_channel_count(sample);
|
||||
uint32_t sample_rate = audiosample_sample_rate(sample);
|
||||
if (sample_rate != self->sample_rate) {
|
||||
SAI_TxSetBitClockRate(self->peripheral, SAI_CLOCK_FREQ, sample_rate, 16, 2);
|
||||
self->sample_rate = sample_rate;
|
||||
}
|
||||
bool single_buffer;
|
||||
bool samples_signed;
|
||||
uint32_t max_buffer_length;
|
||||
uint8_t spacing;
|
||||
audiosample_get_buffer_structure(sample, false, &single_buffer, &samples_signed,
|
||||
&max_buffer_length, &spacing);
|
||||
self->samples_signed = samples_signed;
|
||||
self->playing = true;
|
||||
self->paused = false;
|
||||
self->stopping = false;
|
||||
self->sample_data = self->sample_end = NULL;
|
||||
|
||||
audiosample_reset_buffer(self->sample, false, 0);
|
||||
|
||||
// TODO
|
||||
#if 0
|
||||
uint32_t sample_rate = audiosample_sample_rate(sample);
|
||||
if (sample_rate != self->i2s_config.sample_rate) {
|
||||
CHECK_ESP_RESULT(i2s_set_sample_rates(self->instance, audiosample_sample_rate(sample)));
|
||||
self->i2s_config.sample_rate = sample_rate;
|
||||
}
|
||||
#endif
|
||||
background_callback_add(&self->callback, i2s_callback_fun, self);
|
||||
}
|
||||
|
||||
bool port_i2s_get_playing(i2s_t *self) {
|
||||
return self->playing;
|
||||
}
|
||||
|
||||
bool port_i2s_get_paused(i2s_t *self) {
|
||||
return self->paused;
|
||||
}
|
||||
|
||||
void port_i2s_stop(i2s_t *self) {
|
||||
self->sample = NULL;
|
||||
self->paused = false;
|
||||
self->playing = false;
|
||||
self->stopping = false;
|
||||
}
|
||||
|
||||
void port_i2s_pause(i2s_t *self) {
|
||||
self->paused = true;
|
||||
}
|
||||
|
||||
void port_i2s_resume(i2s_t *self) {
|
||||
self->paused = false;
|
||||
}
|
||||
|
||||
void i2s_reset() {
|
||||
// this port relies on object finalizers for reset
|
||||
}
|
|
@ -0,0 +1,59 @@
|
|||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 Jeff Epler for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "sdk/drivers/sai/fsl_sai.h"
|
||||
#include "py/obj.h"
|
||||
|
||||
#include "supervisor/background_callback.h"
|
||||
|
||||
|
||||
typedef struct {
|
||||
I2S_Type *peripheral;
|
||||
sai_handle_t handle;
|
||||
mp_obj_t sample;
|
||||
uint32_t *buffers[SAI_XFER_QUEUE_SIZE];
|
||||
uint8_t *sample_data, *sample_end;
|
||||
background_callback_t callback;
|
||||
bool playing, paused, loop, stopping;
|
||||
bool samples_signed;
|
||||
uint8_t channel_count, bytes_per_sample;
|
||||
uint8_t buffer_idx;
|
||||
uint32_t sample_rate;
|
||||
} i2s_t;
|
||||
|
||||
|
||||
void i2s_reset(void);
|
||||
void port_i2s_initialize(i2s_t *self, int instance, sai_transceiver_t *config);
|
||||
void port_i2s_deinit(i2s_t *self);
|
||||
bool port_i2s_deinited(i2s_t *self);
|
||||
void port_i2s_play(i2s_t *self, mp_obj_t sample, bool loop);
|
||||
void port_i2s_stop(i2s_t *self);
|
||||
bool port_i2s_get_playing(i2s_t *self);
|
||||
bool port_i2s_get_paused(i2s_t *self);
|
||||
void port_i2s_pause(i2s_t *self);
|
||||
void port_i2s_resume(i2s_t *self);
|
|
@ -25,8 +25,9 @@
|
|||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
#include "shared-bindings/microcontroller/__init__.h"
|
||||
#include "py/runtime.h"
|
||||
#include "shared-bindings/microcontroller/Pin.h"
|
||||
#include "shared-bindings/microcontroller/__init__.h"
|
||||
|
||||
#include "py/gc.h"
|
||||
|
||||
|
@ -119,3 +120,19 @@ void claim_pin(const mcu_pin_obj_t *pin) {
|
|||
void common_hal_mcu_pin_reset_number(uint8_t pin_no) {
|
||||
common_hal_reset_pin((mcu_pin_obj_t *)(mcu_pin_globals.map.table[pin_no].value));
|
||||
}
|
||||
|
||||
const mcu_periph_obj_t *find_pin_function_sz(const mcu_periph_obj_t *list, size_t sz, const mcu_pin_obj_t *pin, int *instance, uint16_t name) {
|
||||
if (!pin) {
|
||||
return NULL;
|
||||
}
|
||||
for (size_t i = 0; i < sz; i++) {
|
||||
if (*instance != -1 && *instance != list[i].bank_idx) {
|
||||
continue;
|
||||
}
|
||||
if (pin == list[i].pin) {
|
||||
*instance = list[i].bank_idx;
|
||||
return &list[i];
|
||||
}
|
||||
}
|
||||
mp_raise_ValueError_varg(translate("Invalid %q pin"), name);
|
||||
}
|
||||
|
|
|
@ -25,11 +25,9 @@
|
|||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef MICROPY_INCLUDED_MIMXRT10XX_COMMON_HAL_MICROCONTROLLER_PIN_H
|
||||
#define MICROPY_INCLUDED_MIMXRT10XX_COMMON_HAL_MICROCONTROLLER_PIN_H
|
||||
|
||||
#include <assert.h>
|
||||
#pragma once
|
||||
|
||||
#include "periph.h"
|
||||
#include "pins.h"
|
||||
|
||||
void reset_all_pins(void);
|
||||
|
@ -45,6 +43,8 @@ extern const mcu_pin_obj_t *mimxrt10xx_reset_forbidden_pins[];
|
|||
// the port-default reset behavior.
|
||||
extern bool mimxrt10xx_board_reset_pin_number(const mcu_pin_obj_t *pin);
|
||||
|
||||
void pin_gc_collect(void);
|
||||
|
||||
#endif // MICROPY_INCLUDED_MIMXRT10XX_COMMON_HAL_MICROCONTROLLER_PIN_H
|
||||
// Find the entry in the peripheral list for this pin. If instance is (-1), any instance (bank_idx) may be used. Otherwise, the bank_idx must match the instance.
|
||||
// If instance was -1, and the function succeeds, then instance is updated with the new bank_idx.
|
||||
// If the pin is NULL then NULL is always returned. But if it was not NULL, and no match was found, then a ValueError is raised.
|
||||
const mcu_periph_obj_t *find_pin_function_sz(const mcu_periph_obj_t *list, size_t sz, const mcu_pin_obj_t *pin, int *instance, uint16_t name);
|
||||
#define find_pin_function(list, pin, instance, name) (find_pin_function_sz((list), MP_ARRAY_SIZE((list)), (pin), (instance), (name)))
|
||||
|
|
|
@ -64,7 +64,7 @@ void PLACE_IN_ITCM(common_hal_neopixel_write)(const digitalio_digitalinout_obj_t
|
|||
const uint32_t pin = digitalinout->pin->number;
|
||||
|
||||
__disable_irq();
|
||||
// Use DWT in debug core. Useable when interrupts disabled, as opposed to Systick->VAL
|
||||
// Use DWT in debug core. Usable when interrupts disabled, as opposed to Systick->VAL
|
||||
DWT->CYCCNT = 0;
|
||||
|
||||
for (;;) {
|
||||
|
|
|
@ -11,8 +11,12 @@ CIRCUITPY_TUSB_MEM_ALIGN = 32
|
|||
|
||||
INTERNAL_FLASH_FILESYSTEM = 1
|
||||
|
||||
CIRCUITPY_AUDIOBUSIO = 1
|
||||
CIRCUITPY_AUDIOBUSIO_PDMIN = 0
|
||||
CIRCUITPY_AUDIOCORE = 1
|
||||
CIRCUITPY_AUDIOIO = 0
|
||||
CIRCUITPY_AUDIOBUSIO = 0
|
||||
CIRCUITPY_AUDIOMIXER = 1
|
||||
CIRCUITPY_AUDIOMP3 = 1
|
||||
CIRCUITPY_BUSDEVICE = 1
|
||||
CIRCUITPY_COUNTIO = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
#include "py/mphal.h"
|
||||
#include "mimxrt10xx/periph.h"
|
||||
|
||||
LPI2C_Type *mcu_i2c_banks[2] = { LPI2C1, LPI2C2 };
|
||||
LPI2C_Type *const 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[2] = { LPSPI1, LPSPI2 };
|
||||
LPSPI_Type *const 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[4] = { LPUART1, LPUART2, LPUART3, LPUART4 };
|
||||
LPUART_Type *const 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),
|
||||
|
@ -166,3 +166,28 @@ const mcu_pwm_obj_t mcu_pwm_list[20] = {
|
|||
|
||||
PWM_PIN(PWM1, kPWM_Module_3, kPWM_PwmX, IOMUXC_GPIO_AD_09_FLEXPWM1_PWM3_X, &pin_GPIO_AD_09),
|
||||
};
|
||||
|
||||
const mcu_periph_obj_t mcu_sai_rx_bclk_list[] = {
|
||||
PERIPH_PIN(1, 0, 0, 0, &pin_GPIO_08),
|
||||
PERIPH_PIN(2, 1, 0, 0, &pin_GPIO_00),
|
||||
};
|
||||
const mcu_periph_obj_t mcu_sai_rx_data0_list[] = {
|
||||
PERIPH_PIN(1, 0, 0, 0, &pin_GPIO_03),
|
||||
PERIPH_PIN(2, 1, 0, 0, &pin_GPIO_SD_03),
|
||||
};
|
||||
const mcu_periph_obj_t mcu_sai_rx_sync_list[] = {
|
||||
PERIPH_PIN(1, 0, 0, 0, &pin_GPIO_02),
|
||||
PERIPH_PIN(2, 1, 0, 0, &pin_GPIO_SD_04),
|
||||
};
|
||||
const mcu_periph_obj_t mcu_sai_tx_bclk_list[] = {
|
||||
PERIPH_PIN(1, 0, 0, 0, &pin_GPIO_06),
|
||||
PERIPH_PIN(2, 1, 0, 0, &pin_GPIO_SD_01),
|
||||
};
|
||||
const mcu_periph_obj_t mcu_sai_tx_data0_list[] = {
|
||||
PERIPH_PIN(1, 0, 0, 0, &pin_GPIO_04),
|
||||
PERIPH_PIN(2, 1, 0, 0, &pin_GPIO_SD_02),
|
||||
};
|
||||
const mcu_periph_obj_t mcu_sai_tx_sync_list[] = {
|
||||
PERIPH_PIN(1, 0, 0, 0, &pin_GPIO_07),
|
||||
PERIPH_PIN(2, 1, 0, 0, &pin_GPIO_SD_00),
|
||||
};
|
||||
|
|
|
@ -27,18 +27,18 @@
|
|||
#ifndef MICROPY_INCLUDED_MIMXRT10XX_MIMXRT1011_PERIPHERALS_MIMXRT1011_PERIPH_H
|
||||
#define MICROPY_INCLUDED_MIMXRT10XX_MIMXRT1011_PERIPHERALS_MIMXRT1011_PERIPH_H
|
||||
|
||||
extern LPI2C_Type *mcu_i2c_banks[2];
|
||||
extern LPI2C_Type *const 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];
|
||||
|
||||
extern LPSPI_Type *mcu_spi_banks[2];
|
||||
extern LPSPI_Type *const 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];
|
||||
|
||||
extern LPUART_Type *mcu_uart_banks[4];
|
||||
extern LPUART_Type *const 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];
|
||||
|
@ -47,4 +47,11 @@ extern const mcu_periph_obj_t mcu_uart_cts_list[4];
|
|||
|
||||
extern const mcu_pwm_obj_t mcu_pwm_list[20];
|
||||
|
||||
extern const mcu_periph_obj_t mcu_sai_rx_bclk_list[2];
|
||||
extern const mcu_periph_obj_t mcu_sai_rx_data0_list[2];
|
||||
extern const mcu_periph_obj_t mcu_sai_rx_sync_list[2];
|
||||
extern const mcu_periph_obj_t mcu_sai_tx_bclk_list[2];
|
||||
extern const mcu_periph_obj_t mcu_sai_tx_data0_list[2];
|
||||
extern const mcu_periph_obj_t mcu_sai_tx_sync_list[2];
|
||||
|
||||
#endif // MICROPY_INCLUDED_MIMXRT10XX_MIMXRT1011_PERIPHERALS_MIMXRT1011_PERIPH_H
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
#include "py/mphal.h"
|
||||
#include "mimxrt10xx/periph.h"
|
||||
|
||||
LPI2C_Type *mcu_i2c_banks[4] = { LPI2C1, LPI2C2, LPI2C3, LPI2C4 };
|
||||
LPI2C_Type *const 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[4] = { LPSPI1, LPSPI2, LPSPI3, LPSPI4 };
|
||||
LPSPI_Type *const 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[8] = { LPUART1, LPUART2, LPUART3, LPUART4, LPUART5, LPUART6, LPUART7, LPUART8 };
|
||||
LPUART_Type *const 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),
|
||||
|
@ -256,3 +256,58 @@ const mcu_pwm_obj_t mcu_pwm_list[39] = {
|
|||
PWM_PIN(PWM2, kPWM_Module_2, kPWM_PwmX, IOMUXC_GPIO_EMC_12_FLEXPWM2_PWMX02, &pin_GPIO_EMC_12),
|
||||
PWM_PIN(PWM2, kPWM_Module_3, kPWM_PwmX, IOMUXC_GPIO_EMC_13_FLEXPWM2_PWMX03, &pin_GPIO_EMC_13),
|
||||
};
|
||||
|
||||
const mcu_periph_obj_t mcu_sai_rx_bclk_list[] = {
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_EMC_14),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_EMC_19),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_AD_B1_06),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_EMC_09),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_SD_B0_02),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_EMC_29),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_SD_B1_09),
|
||||
};
|
||||
const mcu_periph_obj_t mcu_sai_rx_data0_list[] = {
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_EMC_13),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_EMC_21),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_AD_B1_05),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_EMC_08),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_SD_B0_03),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_EMC_30),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_SD_B1_11),
|
||||
};
|
||||
const mcu_periph_obj_t mcu_sai_rx_sync_list[] = {
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_EMC_15),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_EMC_28),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_AD_B1_04),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_EMC_07),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_SD_B0_01),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_EMC_30),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_SD_B1_10),
|
||||
};
|
||||
const mcu_periph_obj_t mcu_sai_tx_bclk_list[] = {
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_EMC_11),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_EMC_26),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_AD_B1_01),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_EMC_04),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_SD_B0_04),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_EMC_33),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_SD_B0_06),
|
||||
};
|
||||
const mcu_periph_obj_t mcu_sai_tx_data0_list[] = {
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_EMC_12),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_EMC_25),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_AD_B1_03),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_EMC_06),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_SD_B0_04),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_EMC_32),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_SD_B1_08),
|
||||
};
|
||||
const mcu_periph_obj_t mcu_sai_tx_sync_list[] = {
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_EMC_10),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_EMC_27),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_AD_B1_02),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_EMC_05),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_SD_B0_06),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_EMC_34),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_SD_B1_07),
|
||||
};
|
||||
|
|
|
@ -25,21 +25,20 @@
|
|||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef MICROPY_INCLUDED_MIMXRT10XX_PERIPHERALS_MIMXRT1021_PERIPH_H
|
||||
#define MICROPY_INCLUDED_MIMXRT10XX_PERIPHERALS_MIMXRT1021_PERIPH_H
|
||||
#pragma once
|
||||
|
||||
extern LPI2C_Type *mcu_i2c_banks[4];
|
||||
extern LPI2C_Type *const 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];
|
||||
|
||||
extern LPSPI_Type *mcu_spi_banks[4];
|
||||
extern LPSPI_Type *const 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];
|
||||
|
||||
extern LPUART_Type *mcu_uart_banks[8];
|
||||
extern LPUART_Type *const 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];
|
||||
|
@ -48,4 +47,9 @@ extern const mcu_periph_obj_t mcu_uart_cts_list[10];
|
|||
|
||||
extern const mcu_pwm_obj_t mcu_pwm_list[39];
|
||||
|
||||
#endif // MICROPY_INCLUDED_MIMXRT10XX_PERIPHERALS_MIMXRT1021_PERIP_H
|
||||
extern const mcu_periph_obj_t mcu_sai_rx_bclk_list[7];
|
||||
extern const mcu_periph_obj_t mcu_sai_rx_data0_list[7];
|
||||
extern const mcu_periph_obj_t mcu_sai_rx_sync_list[7];
|
||||
extern const mcu_periph_obj_t mcu_sai_tx_bclk_list[7];
|
||||
extern const mcu_periph_obj_t mcu_sai_tx_data0_list[7];
|
||||
extern const mcu_periph_obj_t mcu_sai_tx_sync_list[7];
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
#include "py/mphal.h"
|
||||
#include "mimxrt10xx/periph.h"
|
||||
|
||||
LPI2C_Type *mcu_i2c_banks[4] = { LPI2C1, LPI2C2, LPI2C3, LPI2C4 };
|
||||
LPI2C_Type *const 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[4] = { LPSPI1, LPSPI2, LPSPI3, LPSPI4 };
|
||||
LPSPI_Type *const 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[8] = { LPUART1, LPUART2, LPUART3, LPUART4, LPUART5, LPUART6, LPUART7, LPUART8 };
|
||||
LPUART_Type *const 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),
|
||||
|
@ -306,3 +306,59 @@ const mcu_pwm_obj_t mcu_pwm_list[67] = {
|
|||
PWM_PIN(PWM4, kPWM_Module_3, kPWM_PwmB, IOMUXC_GPIO_EMC_18_FLEXPWM4_PWMB03, &pin_GPIO_EMC_18),
|
||||
|
||||
};
|
||||
|
||||
const mcu_periph_obj_t mcu_sai_rx_bclk_list[] = {
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_AD_B1_11),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_B0_15),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_SD_B1_05),
|
||||
PERIPH_PIN(2, 2, 0, 0, &pin_GPIO_EMC_10),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_AD_B0_06),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_EMC_35),
|
||||
PERIPH_PIN(3, 8, 0, 0, &pin_GPIO_SD_B1_00),
|
||||
};
|
||||
|
||||
const mcu_periph_obj_t mcu_sai_rx_data0_list[] = {
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_B1_00),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_AD_B1_12),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_AD_B1_06),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_AD_B0_08),
|
||||
PERIPH_PIN(2, 2, 0, 0, &pin_GPIO_EMC_08),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_EMC_33),
|
||||
PERIPH_PIN(3, 8, 0, 0, &pin_GPIO_SD_B1_00),
|
||||
};
|
||||
const mcu_periph_obj_t mcu_sai_rx_sync_list[] = {
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_AD_B1_11),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_B0_15),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_SD_B1_05),
|
||||
PERIPH_PIN(2, 2, 0, 0, &pin_GPIO_EMC_09),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_AD_B0_06),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_EMC_34),
|
||||
PERIPH_PIN(3, 8, 0, 0, &pin_GPIO_SD_B1_05),
|
||||
};
|
||||
const mcu_periph_obj_t mcu_sai_tx_bclk_list[] = {
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_SD_B1_08),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_B1_02),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_AD_B1_14),
|
||||
PERIPH_PIN(2, 2, 0, 0, &pin_GPIO_AD_B0_05),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_EMC_06),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_EMC_38),
|
||||
PERIPH_PIN(3, 8, 0, 0, &pin_GPIO_SD_B1_03),
|
||||
};
|
||||
const mcu_periph_obj_t mcu_sai_tx_data0_list[] = {
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_AD_B1_13),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_B1_01),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_SD_B1_07),
|
||||
PERIPH_PIN(2, 2, 0, 0, &pin_GPIO_EMC_04),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_AD_B0_09),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_EMC_36),
|
||||
PERIPH_PIN(3, 8, 0, 0, &pin_GPIO_SD_B1_01),
|
||||
};
|
||||
const mcu_periph_obj_t mcu_sai_tx_sync_list[] = {
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_AD_B1_15),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_B1_03),
|
||||
PERIPH_PIN(1, 3, 0, 0, &pin_GPIO_SD_B1_09),
|
||||
PERIPH_PIN(2, 2, 0, 0, &pin_GPIO_AD_B0_04),
|
||||
PERIPH_PIN(2, 3, 0, 0, &pin_GPIO_EMC_05),
|
||||
PERIPH_PIN(3, 3, 0, 0, &pin_GPIO_EMC_39),
|
||||
PERIPH_PIN(3, 8, 0, 0, &pin_GPIO_SD_B1_02),
|
||||
};
|
||||
|
|
|
@ -27,18 +27,18 @@
|
|||
#ifndef MICROPY_INCLUDED_MIMXRT10XX_MIMXRT1062_PERIPHERALS_MIMXRT1011_PERIPH_H
|
||||
#define MICROPY_INCLUDED_MIMXRT10XX_MIMXRT1062_PERIPHERALS_MIMXRT1011_PERIPH_H
|
||||
|
||||
extern LPI2C_Type *mcu_i2c_banks[4];
|
||||
extern LPI2C_Type *const 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];
|
||||
|
||||
extern LPSPI_Type *mcu_spi_banks[4];
|
||||
extern LPSPI_Type *const 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];
|
||||
|
||||
extern LPUART_Type *mcu_uart_banks[8];
|
||||
extern LPUART_Type *const 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];
|
||||
|
@ -47,4 +47,11 @@ extern const mcu_periph_obj_t mcu_uart_cts_list[9];
|
|||
|
||||
extern const mcu_pwm_obj_t mcu_pwm_list[67];
|
||||
|
||||
extern const mcu_periph_obj_t mcu_sai_rx_bclk_list[7];
|
||||
extern const mcu_periph_obj_t mcu_sai_rx_data0_list[7];
|
||||
extern const mcu_periph_obj_t mcu_sai_rx_sync_list[7];
|
||||
extern const mcu_periph_obj_t mcu_sai_tx_bclk_list[7];
|
||||
extern const mcu_periph_obj_t mcu_sai_tx_data0_list[7];
|
||||
extern const mcu_periph_obj_t mcu_sai_tx_sync_list[7];
|
||||
|
||||
#endif // MICROPY_INCLUDED_MIMXRT10XX_MIMXRT1062_PERIPHERALS_MIMXRT1011_PERIPH_H
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
#include "pins.h"
|
||||
|
||||
typedef struct {
|
||||
uint8_t bank_idx : 4;
|
||||
uint8_t bank_idx : 4; // e.g. the peripheral number
|
||||
uint8_t mux_mode : 4;
|
||||
uint32_t input_reg;
|
||||
uint8_t input_idx;
|
||||
|
@ -72,9 +72,9 @@ typedef struct {
|
|||
.pin = p_pin, \
|
||||
}
|
||||
|
||||
extern LPI2C_Type *mcu_i2c_banks[];
|
||||
extern LPSPI_Type *mcu_spi_banks[];
|
||||
extern LPUART_Type *mcu_uart_banks[];
|
||||
extern LPI2C_Type *const mcu_i2c_banks[];
|
||||
extern LPSPI_Type *const mcu_spi_banks[];
|
||||
extern LPUART_Type *const mcu_uart_banks[];
|
||||
|
||||
#ifdef MIMXRT1011_SERIES
|
||||
#include "MIMXRT1011/periph.h"
|
||||
|
|
|
@ -36,6 +36,10 @@
|
|||
|
||||
#include "fsl_device_registers.h"
|
||||
|
||||
#if CIRCUITPY_AUDIOBUSIO
|
||||
#include "common-hal/audiobusio/__init__.h"
|
||||
#endif
|
||||
|
||||
#include "common-hal/microcontroller/Pin.h"
|
||||
#include "common-hal/pwmio/PWMOut.h"
|
||||
#include "common-hal/rtc/RTC.h"
|
||||
|
@ -414,8 +418,7 @@ void reset_port(void) {
|
|||
audioout_reset();
|
||||
#endif
|
||||
#if CIRCUITPY_AUDIOBUSIO
|
||||
i2sout_reset();
|
||||
// pdmin_reset();
|
||||
i2s_reset();
|
||||
#endif
|
||||
|
||||
#if CIRCUITPY_TOUCHIO && CIRCUITPY_TOUCHIO_USE_NATIVE
|
||||
|
|
|
@ -241,7 +241,7 @@ FLASHER ?=
|
|||
|
||||
ifeq ($(FLASHER),)
|
||||
|
||||
# Also update to bootloader settting to validate application and skip checksum ( app valid = 0x0001, crc = 0x0000 )
|
||||
# Also update to bootloader setting to validate application and skip checksum ( app valid = 0x0001, crc = 0x0000 )
|
||||
flash: $(BUILD)/firmware.hex
|
||||
nrfjprog --program $< --sectorerase -f $(MCU_VARIANT)
|
||||
nrfjprog --erasepage $(BOOT_SETTING_ADDR) -f $(MCU_VARIANT)
|
||||
|
|
|
@ -286,7 +286,7 @@ typedef struct
|
|||
/**@brief L2CAP event structure. */
|
||||
typedef struct
|
||||
{
|
||||
uint16_t conn_handle; /**< Connection Handle on which the event occured. */
|
||||
uint16_t conn_handle; /**< Connection Handle on which the event occurred. */
|
||||
uint16_t local_cid; /**< Local Channel ID of the L2CAP channel, or
|
||||
@ref BLE_L2CAP_CID_INVALID if not present. */
|
||||
union
|
||||
|
|
|
@ -287,7 +287,7 @@ typedef struct
|
|||
/**@brief L2CAP event structure. */
|
||||
typedef struct
|
||||
{
|
||||
uint16_t conn_handle; /**< Connection Handle on which the event occured. */
|
||||
uint16_t conn_handle; /**< Connection Handle on which the event occurred. */
|
||||
uint16_t local_cid; /**< Local Channel ID of the L2CAP channel, or
|
||||
@ref BLE_L2CAP_CID_INVALID if not present. */
|
||||
union
|
||||
|
|
|
@ -275,8 +275,8 @@ typedef struct
|
|||
* If the application returns from the fault handler the SoftDevice will call NVIC_SystemReset().
|
||||
*
|
||||
* @note It is recommended to either perform a reset in the fault handler or to let the SoftDevice reset the device.
|
||||
* Otherwise SoC peripherals may behave in an undefined way. For example, the RADIO peripherial may
|
||||
* continously transmit packets.
|
||||
* Otherwise SoC peripherals may behave in an undefined way. For example, the RADIO peripheral may
|
||||
* continuously transmit packets.
|
||||
*
|
||||
* @note This callback is executed in HardFault context, thus SVC functions cannot be called from the fault callback.
|
||||
*
|
||||
|
|
|
@ -48,7 +48,7 @@ extern "C" {
|
|||
/** @brief Supervisor call declaration.
|
||||
*
|
||||
* A call to a function marked with @ref SVCALL, will trigger a Supervisor Call (SVC) Exception.
|
||||
* The SVCs with SVC numbers 0x00-0x0F are forwared to the application. All other SVCs are handled by the SoftDevice.
|
||||
* The SVCs with SVC numbers 0x00-0x0F are forwarded to the application. All other SVCs are handled by the SoftDevice.
|
||||
*
|
||||
* @param[in] number The SVC number to be used.
|
||||
* @param[in] return_type The return type of the SVC function.
|
||||
|
|
|
@ -104,7 +104,7 @@ Parsing hex file.
|
|||
Erasing user available code and UICR flash areas.
|
||||
Applying system reset.
|
||||
Checking that the area to write is not protected.
|
||||
Programing device.
|
||||
Programming device.
|
||||
Applying system reset.
|
||||
Run.
|
||||
```
|
||||
|
|
|
@ -117,7 +117,7 @@ STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
|
|||
// { MP_ROM_QSTR(MP_QSTR_TFT_RESET), MP_ROM_PTR(&pin_P1_13) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_TFT_BACKLIGHT), MP_ROM_PTR(&pin_P1_13) },
|
||||
|
||||
// P28~P33/D28~D33 connecte into QSPI FlashROM (W25Q16JV_IQ)
|
||||
// P28~P33/D28~D33 connected into QSPI FlashROM (W25Q16JV_IQ)
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_P34), MP_ROM_PTR(&pin_P0_22) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D34), MP_ROM_PTR(&pin_P0_22) },
|
||||
|
|
|
@ -8,11 +8,11 @@ We've also routed two I<sup>2</sup>C buses, 2 SPI buses, eleven GPIO, dedicated
|
|||
|
||||
## CircuitPython Pin Defs
|
||||
|
||||
CircuitPython pin definitions, while simialr to other boards represent a slight departure from just the typical `A` and `D` pin definitions. The majority of general pins are labled as `G` (or alternatively, `BUS`,) as the MicroMod system they build on uses those names to specify pins that may not be specficially analog or digital.
|
||||
CircuitPython pin definitions, while similar to other boards represent a slight departure from just the typical `A` and `D` pin definitions. The majority of general pins are labeled as `G` (or alternatively, `BUS`,) as the MicroMod system they build on uses those names to specify pins that may not be specficially analog or digital.
|
||||
|
||||
This can be somewhat confusing, especially around the analog pins. Here's a quick pin-map:
|
||||
|
||||
MicroMod Pin # | ATP Pin Label | Pin Definition | Additional Definitons | Pin/Port Reference | Notes
|
||||
MicroMod Pin # | ATP Pin Label | Pin Definition | Additional Definitions | Pin/Port Reference | Notes
|
||||
:--------------|:--------------|:--------------|:-----------------------|:-------------------|:------
|
||||
8 | G11 | | | (Not Connected) |
|
||||
10 | D0 | D0 | | P0_27 |
|
||||
|
|
|
@ -190,7 +190,7 @@ STATIC uint32_t ble_stack_enable(void) {
|
|||
return err_code;
|
||||
}
|
||||
|
||||
// Increase the GATT Server attribute size to accomodate both the CircuitPython built-in service
|
||||
// Increase the GATT Server attribute size to accommodate both the CircuitPython built-in service
|
||||
// and anything the user does.
|
||||
memset(&ble_conf, 0, sizeof(ble_conf));
|
||||
// Each increment to the BLE_GATTS_ATTR_TAB_SIZE_DEFAULT multiplier costs 1408 bytes.
|
||||
|
@ -529,7 +529,7 @@ STATIC bool scan_on_ble_evt(ble_evt_t *ble_evt, void *scan_results_in) {
|
|||
mp_obj_t common_hal_bleio_adapter_start_scan(bleio_adapter_obj_t *self, uint8_t *prefixes, size_t prefix_length, bool extended, mp_int_t buffer_size, mp_float_t timeout, mp_float_t interval, mp_float_t window, mp_int_t minimum_rssi, bool active) {
|
||||
if (self->scan_results != NULL) {
|
||||
if (!shared_module_bleio_scanresults_get_done(self->scan_results)) {
|
||||
mp_raise_bleio_BluetoothError(translate("Scan already in progess. Stop with stop_scan."));
|
||||
mp_raise_bleio_BluetoothError(translate("Scan already in progress. Stop with stop_scan."));
|
||||
}
|
||||
self->scan_results = NULL;
|
||||
}
|
||||
|
|
|
@ -283,7 +283,7 @@ void common_hal_bleio_characteristic_set_cccd(bleio_characteristic_obj_t *self,
|
|||
}
|
||||
|
||||
// Write with response will return NRF_ERROR_BUSY if the response has not been received.
|
||||
// Write without reponse will return NRF_ERROR_RESOURCES if too many writes are pending.
|
||||
// Write without response will return NRF_ERROR_RESOURCES if too many writes are pending.
|
||||
if (err_code == NRF_ERROR_BUSY || err_code == NRF_ERROR_RESOURCES) {
|
||||
// We could wait for an event indicating the write is complete, but just retrying is easier.
|
||||
RUN_BACKGROUND_TASKS;
|
||||
|
|
|
@ -528,7 +528,7 @@ STATIC void on_char_discovery_rsp(ble_gattc_evt_char_disc_rsp_t *response, bleio
|
|||
(gattc_char->char_props.write ? CHAR_PROP_WRITE : 0) |
|
||||
(gattc_char->char_props.write_wo_resp ? CHAR_PROP_WRITE_NO_RESPONSE : 0);
|
||||
|
||||
// Call common_hal_bleio_characteristic_construct() to initalize some fields and set up evt handler.
|
||||
// Call common_hal_bleio_characteristic_construct() to initialize some fields and set up evt handler.
|
||||
common_hal_bleio_characteristic_construct(
|
||||
characteristic, m_char_discovery_service, gattc_char->handle_value, uuid,
|
||||
props, SECURITY_MODE_OPEN, SECURITY_MODE_OPEN,
|
||||
|
|
|
@ -249,7 +249,7 @@ void common_hal_bleio_gattc_write(uint16_t handle, uint16_t conn_handle, mp_buff
|
|||
}
|
||||
|
||||
// Write with response will return NRF_ERROR_BUSY if the response has not been received.
|
||||
// Write without reponse will return NRF_ERROR_RESOURCES if too many writes are pending.
|
||||
// Write without response will return NRF_ERROR_RESOURCES if too many writes are pending.
|
||||
if (err_code == NRF_ERROR_BUSY || err_code == NRF_ERROR_RESOURCES) {
|
||||
// We could wait for an event indicating the write is complete, but just retrying is easier.
|
||||
MICROPY_VM_HOOK_LOOP;
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue