Merge remote-tracking branch 'adafruit/master' into struct-compat
This commit is contained in:
commit
a8f4aa4796
@ -287,14 +287,14 @@ STATIC void machine_i2c_obj_init_helper(machine_i2c_obj_t *self, size_t n_args,
|
||||
mp_hal_i2c_init(self, args[ARG_freq].u_int);
|
||||
}
|
||||
|
||||
STATIC mp_obj_t machine_i2c_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
STATIC mp_obj_t machine_i2c_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
// check the id argument, if given
|
||||
if (n_args > 0) {
|
||||
if (args[0] != MP_OBJ_NEW_SMALL_INT(-1)) {
|
||||
#if defined(MICROPY_PY_MACHINE_I2C_MAKE_NEW)
|
||||
// dispatch to port-specific constructor
|
||||
extern mp_obj_t MICROPY_PY_MACHINE_I2C_MAKE_NEW(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *all_args);
|
||||
return MICROPY_PY_MACHINE_I2C_MAKE_NEW(type, n_args, n_kw, args);
|
||||
extern mp_obj_t MICROPY_PY_MACHINE_I2C_MAKE_NEW(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *all_args, mp_map_t *kw_args);
|
||||
return MICROPY_PY_MACHINE_I2C_MAKE_NEW(type, n_args, args, kw_args);
|
||||
#else
|
||||
mp_raise_ValueError(translate("invalid I2C peripheral"));
|
||||
#endif
|
||||
@ -306,9 +306,7 @@ STATIC mp_obj_t machine_i2c_make_new(const mp_obj_type_t *type, size_t n_args, s
|
||||
// create new soft I2C object
|
||||
machine_i2c_obj_t *self = m_new_obj(machine_i2c_obj_t);
|
||||
self->base.type = &machine_i2c_type;
|
||||
mp_map_t kw_args;
|
||||
mp_map_init_fixed_table(&kw_args, n_kw, args + n_args);
|
||||
machine_i2c_obj_init_helper(self, n_args, args, &kw_args);
|
||||
machine_i2c_obj_init_helper(self, n_args, args, kw_args);
|
||||
return (mp_obj_t)self;
|
||||
}
|
||||
|
||||
|
@ -45,11 +45,11 @@ STATIC const mp_pinbase_t pinbase_singleton = {
|
||||
.base = { &machine_pinbase_type },
|
||||
};
|
||||
|
||||
STATIC mp_obj_t pinbase_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
STATIC mp_obj_t pinbase_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
(void)type;
|
||||
(void)n_args;
|
||||
(void)n_kw;
|
||||
(void)args;
|
||||
(void)kw_args;
|
||||
return MP_OBJ_FROM_PTR(&pinbase_singleton);
|
||||
}
|
||||
|
||||
|
@ -42,7 +42,7 @@ typedef struct _machine_signal_t {
|
||||
bool invert;
|
||||
} machine_signal_t;
|
||||
|
||||
STATIC mp_obj_t signal_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
STATIC mp_obj_t signal_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
mp_obj_t pin = args[0];
|
||||
bool invert = false;
|
||||
|
||||
@ -96,9 +96,9 @@ STATIC mp_obj_t signal_make_new(const mp_obj_type_t *type, size_t n_args, size_t
|
||||
// Otherwise there should be 1 or 2 args
|
||||
{
|
||||
if (n_args == 1) {
|
||||
if (n_kw == 0) {
|
||||
} else if (n_kw == 1 && args[1] == MP_OBJ_NEW_QSTR(MP_QSTR_invert)) {
|
||||
invert = mp_obj_is_true(args[2]);
|
||||
if (kw_args == NULL || kw_args->used == 0) {
|
||||
} else if (kw_args->used == 1 && kw_args->table[0].key == MP_OBJ_NEW_QSTR(MP_QSTR_invert)) {
|
||||
invert = mp_obj_is_true(kw_args->table[0].value);
|
||||
} else {
|
||||
goto error;
|
||||
}
|
||||
@ -133,7 +133,7 @@ STATIC mp_uint_t signal_ioctl(mp_obj_t self_in, mp_uint_t request, uintptr_t arg
|
||||
|
||||
// fast method for getting/setting signal value
|
||||
STATIC mp_obj_t signal_call(mp_obj_t self_in, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
mp_arg_check_num(n_args, n_kw, 0, 1, false);
|
||||
mp_arg_check_num_kw_array(n_args, n_kw, 0, 1, false);
|
||||
if (n_args == 0) {
|
||||
// get pin
|
||||
return MP_OBJ_NEW_SMALL_INT(mp_virtual_pin_read(self_in));
|
||||
|
@ -43,16 +43,16 @@
|
||||
/******************************************************************************/
|
||||
// MicroPython bindings for generic machine.SPI
|
||||
|
||||
STATIC mp_obj_t mp_machine_soft_spi_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *all_args);
|
||||
STATIC mp_obj_t mp_machine_soft_spi_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args);
|
||||
|
||||
mp_obj_t mp_machine_spi_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
mp_obj_t mp_machine_spi_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
// check the id argument, if given
|
||||
if (n_args > 0) {
|
||||
if (args[0] != MP_OBJ_NEW_SMALL_INT(-1)) {
|
||||
#if defined(MICROPY_PY_MACHINE_SPI_MAKE_NEW)
|
||||
// dispatch to port-specific constructor
|
||||
extern mp_obj_t MICROPY_PY_MACHINE_SPI_MAKE_NEW(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *all_args);
|
||||
return MICROPY_PY_MACHINE_SPI_MAKE_NEW(type, n_args, n_kw, args);
|
||||
extern mp_obj_t MICROPY_PY_MACHINE_SPI_MAKE_NEW(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args);
|
||||
return MICROPY_PY_MACHINE_SPI_MAKE_NEW(type, n_args, args, kw_args);
|
||||
#else
|
||||
mp_raise_ValueError(translate("invalid SPI peripheral"));
|
||||
#endif
|
||||
@ -62,7 +62,7 @@ mp_obj_t mp_machine_spi_make_new(const mp_obj_type_t *type, size_t n_args, size_
|
||||
}
|
||||
|
||||
// software SPI
|
||||
return mp_machine_soft_spi_make_new(type, n_args, n_kw, args);
|
||||
return mp_machine_soft_spi_make_new(type, n_args, args, kw_args);
|
||||
}
|
||||
|
||||
STATIC mp_obj_t machine_spi_init(size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
@ -180,7 +180,7 @@ STATIC void mp_machine_soft_spi_print(const mp_print_t *print, mp_obj_t self_in,
|
||||
mp_hal_pin_name(self->spi.sck), mp_hal_pin_name(self->spi.mosi), mp_hal_pin_name(self->spi.miso));
|
||||
}
|
||||
|
||||
STATIC mp_obj_t mp_machine_soft_spi_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *all_args) {
|
||||
STATIC mp_obj_t mp_machine_soft_spi_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *all_args, mp_map_t *kw_args) {
|
||||
enum { ARG_baudrate, ARG_polarity, ARG_phase, ARG_bits, ARG_firstbit, ARG_sck, ARG_mosi, ARG_miso };
|
||||
static const mp_arg_t allowed_args[] = {
|
||||
{ MP_QSTR_baudrate, MP_ARG_INT, {.u_int = 500000} },
|
||||
@ -193,7 +193,7 @@ STATIC mp_obj_t mp_machine_soft_spi_make_new(const mp_obj_type_t *type, size_t n
|
||||
{ MP_QSTR_miso, MP_ARG_KW_ONLY | MP_ARG_OBJ, {.u_obj = MP_OBJ_NULL} },
|
||||
};
|
||||
mp_arg_val_t args[MP_ARRAY_SIZE(allowed_args)];
|
||||
mp_arg_parse_all_kw_array(n_args, n_kw, all_args, MP_ARRAY_SIZE(allowed_args), allowed_args, args);
|
||||
mp_arg_parse_all(n_args, all_args, kw_args, MP_ARRAY_SIZE(allowed_args), allowed_args, args);
|
||||
|
||||
// create new object
|
||||
mp_machine_soft_spi_obj_t *self = m_new_obj(mp_machine_soft_spi_obj_t);
|
||||
|
@ -259,8 +259,8 @@ STATIC void fill_rect(const mp_obj_framebuf_t *fb, int x, int y, int w, int h, u
|
||||
formats[fb->format].fill_rect(fb, x, y, xend - x, yend - y, col);
|
||||
}
|
||||
|
||||
STATIC mp_obj_t framebuf_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
mp_arg_check_num(n_args, n_kw, 4, 5, false);
|
||||
STATIC mp_obj_t framebuf_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
mp_arg_check_num(n_args, kw_args, 4, 5, false);
|
||||
|
||||
mp_obj_framebuf_t *o = m_new_obj(mp_obj_framebuf_t);
|
||||
o->base.type = type;
|
||||
|
@ -122,8 +122,8 @@ STATIC NORETURN void syntax_error(void) {
|
||||
mp_raise_TypeError(translate("syntax error in uctypes descriptor"));
|
||||
}
|
||||
|
||||
STATIC mp_obj_t uctypes_struct_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
mp_arg_check_num(n_args, n_kw, 2, 3, false);
|
||||
STATIC mp_obj_t uctypes_struct_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
mp_arg_check_num(n_args, kw_args, 2, 3, false);
|
||||
mp_obj_uctypes_struct_t *o = m_new_obj(mp_obj_uctypes_struct_t);
|
||||
o->base.type = type;
|
||||
o->addr = (void*)(uintptr_t)mp_obj_int_get_truncated(args[0]);
|
||||
|
@ -76,8 +76,8 @@ STATIC bool time_less_than(struct qentry *item, struct qentry *parent) {
|
||||
return res && res < (MODULO / 2);
|
||||
}
|
||||
|
||||
STATIC mp_obj_t utimeq_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
mp_arg_check_num(n_args, n_kw, 1, 1, false);
|
||||
STATIC mp_obj_t utimeq_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
mp_arg_check_num(n_args, kw_args, 1, 1, false);
|
||||
mp_uint_t alloc = mp_obj_get_int(args[0]);
|
||||
mp_obj_utimeq_t *o = m_new_obj_var(mp_obj_utimeq_t, struct qentry, alloc);
|
||||
o->base.type = type;
|
||||
|
@ -69,8 +69,8 @@ STATIC int read_src_stream(TINF_DATA *data) {
|
||||
return c;
|
||||
}
|
||||
|
||||
STATIC mp_obj_t decompio_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
mp_arg_check_num(n_args, n_kw, 1, 2, false);
|
||||
STATIC mp_obj_t decompio_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
mp_arg_check_num(n_args, kw_args, 1, 2, false);
|
||||
mp_get_stream_raise(args[0], MP_STREAM_OP_READ);
|
||||
mp_obj_decompio_t *o = m_new_obj(mp_obj_decompio_t);
|
||||
o->base.type = type;
|
||||
|
@ -57,8 +57,8 @@ typedef struct _mp_obj_websocket_t {
|
||||
|
||||
STATIC mp_uint_t websocket_write(mp_obj_t self_in, const void *buf, mp_uint_t size, int *errcode);
|
||||
|
||||
STATIC mp_obj_t websocket_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
mp_arg_check_num(n_args, n_kw, 1, 2, false);
|
||||
STATIC mp_obj_t websocket_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
mp_arg_check_num(n_args, kw_args, 1, 2, false);
|
||||
mp_get_stream_raise(args[0], MP_STREAM_OP_READ | MP_STREAM_OP_WRITE | MP_STREAM_OP_IOCTL);
|
||||
mp_obj_websocket_t *o = m_new_obj(mp_obj_websocket_t);
|
||||
o->base.type = type;
|
||||
|
@ -90,8 +90,8 @@ STATIC mp_import_stat_t mp_vfs_posix_import_stat(void *self_in, const char *path
|
||||
return MP_IMPORT_STAT_NO_EXIST;
|
||||
}
|
||||
|
||||
STATIC mp_obj_t vfs_posix_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
mp_arg_check_num(n_args, n_kw, 0, 1, false);
|
||||
STATIC mp_obj_t vfs_posix_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
mp_arg_check_num(n_args, kw_args, 0, 1, false);
|
||||
|
||||
mp_obj_vfs_posix_t *vfs = m_new_obj(mp_obj_vfs_posix_t);
|
||||
vfs->base.type = type;
|
||||
|
@ -109,14 +109,14 @@ mp_obj_t mp_vfs_posix_file_open(const mp_obj_type_t *type, mp_obj_t file_in, mp_
|
||||
return MP_OBJ_FROM_PTR(o);
|
||||
}
|
||||
|
||||
STATIC mp_obj_t vfs_posix_file_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
STATIC mp_obj_t vfs_posix_file_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
static const mp_arg_t allowed_args[] = {
|
||||
{ MP_QSTR_file, MP_ARG_OBJ | MP_ARG_REQUIRED, {.u_rom_obj = MP_ROM_PTR(&mp_const_none_obj)} },
|
||||
{ MP_QSTR_mode, MP_ARG_OBJ, {.u_rom_obj = MP_ROM_QSTR(MP_QSTR_r)} },
|
||||
};
|
||||
|
||||
mp_arg_val_t arg_vals[MP_ARRAY_SIZE(allowed_args)];
|
||||
mp_arg_parse_all_kw_array(n_args, n_kw, args, MP_ARRAY_SIZE(allowed_args), allowed_args, arg_vals);
|
||||
mp_arg_parse_all(n_args, args, kw_args, MP_ARRAY_SIZE(allowed_args), allowed_args, arg_vals);
|
||||
return mp_vfs_posix_file_open(type, arg_vals[0].u_obj, arg_vals[1].u_obj);
|
||||
}
|
||||
|
||||
|
278
locale/ID.po
278
locale/ID.po
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2019-01-10 21:32-0500\n"
|
||||
"POT-Creation-Date: 2019-01-20 17:33-0800\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@ -21,8 +21,8 @@ msgstr ""
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "perangkat I2C tidak valid"
|
||||
|
||||
#: extmod/machine_i2c.c:340 extmod/machine_i2c.c:354 extmod/machine_i2c.c:368
|
||||
#: extmod/machine_i2c.c:392
|
||||
#: extmod/machine_i2c.c:338 extmod/machine_i2c.c:352 extmod/machine_i2c.c:366
|
||||
#: extmod/machine_i2c.c:390
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "operasi I2C tidak didukung"
|
||||
|
||||
@ -151,11 +151,11 @@ msgstr "argumen-argumen tidak valid"
|
||||
msgid "script compilation not supported"
|
||||
msgstr "kompilasi script tidak didukung"
|
||||
|
||||
#: main.c:150
|
||||
#: main.c:155
|
||||
msgid " output:\n"
|
||||
msgstr "output:\n"
|
||||
|
||||
#: main.c:164 main.c:237
|
||||
#: main.c:169 main.c:247
|
||||
msgid ""
|
||||
"Auto-reload is on. Simply save files over USB to run them or enter REPL to "
|
||||
"disable.\n"
|
||||
@ -163,30 +163,30 @@ msgstr ""
|
||||
"Auto-reload aktif. Silahkan simpan data-data (files) melalui USB untuk "
|
||||
"menjalankannya atau masuk ke REPL untukmenonaktifkan.\n"
|
||||
|
||||
#: main.c:166
|
||||
#: main.c:171
|
||||
msgid "Running in safe mode! Auto-reload is off.\n"
|
||||
msgstr "Berjalan di mode aman(safe mode)! Auto-reload tidak aktif.\n"
|
||||
|
||||
#: main.c:168 main.c:239
|
||||
#: main.c:173 main.c:249
|
||||
msgid "Auto-reload is off.\n"
|
||||
msgstr "Auto-reload tidak aktif.\n"
|
||||
|
||||
#: main.c:182
|
||||
#: main.c:187
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr ""
|
||||
"Berjalan di mode aman(safe mode)! tidak menjalankan kode yang tersimpan.\n"
|
||||
|
||||
#: main.c:198
|
||||
#: main.c:203
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "PERINGATAN: Nama file kode anda mempunyai dua ekstensi\n"
|
||||
|
||||
#: main.c:244
|
||||
#: main.c:254
|
||||
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
|
||||
msgstr ""
|
||||
"Tekan tombol apa saja untuk masuk ke dalam REPL. Gunakan CTRL+D untuk reset "
|
||||
"(Reload)"
|
||||
|
||||
#: main.c:407
|
||||
#: main.c:417
|
||||
msgid "soft reboot\n"
|
||||
msgstr "memulai ulang software(soft reboot)\n"
|
||||
|
||||
@ -203,18 +203,6 @@ msgstr "kalibrasi adalah read only"
|
||||
msgid "calibration is out of range"
|
||||
msgstr "kalibrasi keluar dari jangkauan"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:59 ports/nrf/board_busses.c:39
|
||||
msgid "No default I2C bus"
|
||||
msgstr "Tidak ada standar bus I2C"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:85 ports/nrf/board_busses.c:64
|
||||
msgid "No default SPI bus"
|
||||
msgstr "Tidak ada standar bus SPI"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:112 ports/nrf/board_busses.c:91
|
||||
msgid "No default UART bus"
|
||||
msgstr "Tidak ada standar bus UART"
|
||||
|
||||
#: ports/atmel-samd/common-hal/analogio/AnalogIn.c:63
|
||||
#: ports/nrf/common-hal/analogio/AnalogIn.c:39
|
||||
msgid "Pin does not have ADC capabilities"
|
||||
@ -333,7 +321,7 @@ msgid "Not enough pins available"
|
||||
msgstr "Pin yang tersedia tidak cukup"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c:78
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:171
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:176
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c:120
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c:45
|
||||
#: ports/nrf/common-hal/busio/I2C.c:84
|
||||
@ -381,6 +369,17 @@ msgstr "Tidak ada pin TX"
|
||||
msgid "Cannot get pull while in output mode"
|
||||
msgstr "Tidak bisa mendapatkan pull pada saat mode output"
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:43
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:43
|
||||
msgid "Data 0 pin must be byte aligned"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:47
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:47
|
||||
#, fuzzy, c-format
|
||||
msgid "Bus pin %d is already in use"
|
||||
msgstr "DAC sudah digunakan"
|
||||
|
||||
#: ports/atmel-samd/common-hal/microcontroller/__init__.c:74
|
||||
#: ports/esp8266/common-hal/microcontroller/__init__.c:64
|
||||
msgid "Cannot reset into bootloader because no bootloader is present."
|
||||
@ -901,46 +900,46 @@ msgstr "Tidak tahu cara meloloskan objek ke fungsi native"
|
||||
msgid "[addrinfo error %d]"
|
||||
msgstr "[addrinfo error %d]"
|
||||
|
||||
#: py/argcheck.c:44
|
||||
#: py/argcheck.c:53
|
||||
msgid "function does not take keyword arguments"
|
||||
msgstr "fungsi tidak dapat mengambil argumen keyword"
|
||||
|
||||
#: py/argcheck.c:54 py/bc.c:85 py/objnamedtuple.c:104
|
||||
#: py/argcheck.c:63 py/bc.c:85 py/objnamedtuple.c:108
|
||||
#, c-format
|
||||
msgid "function takes %d positional arguments but %d were given"
|
||||
msgstr "fungsi mengambil posisi argumen %d tapi %d yang diberikan"
|
||||
|
||||
#: py/argcheck.c:64
|
||||
#: py/argcheck.c:73
|
||||
#, c-format
|
||||
msgid "function missing %d required positional arguments"
|
||||
msgstr "fungsi kehilangan %d argumen posisi yang dibutuhkan"
|
||||
|
||||
#: py/argcheck.c:72
|
||||
#: py/argcheck.c:81
|
||||
#, c-format
|
||||
msgid "function expected at most %d arguments, got %d"
|
||||
msgstr "fungsi diharapkan setidaknya %d argumen, hanya mendapatkan %d"
|
||||
|
||||
#: py/argcheck.c:97
|
||||
#: py/argcheck.c:106
|
||||
msgid "'%q' argument required"
|
||||
msgstr "'%q' argumen dibutuhkan"
|
||||
|
||||
#: py/argcheck.c:122
|
||||
#: py/argcheck.c:131
|
||||
msgid "extra positional arguments given"
|
||||
msgstr "argumen posisi ekstra telah diberikan"
|
||||
|
||||
#: py/argcheck.c:130
|
||||
#: py/argcheck.c:139
|
||||
msgid "extra keyword arguments given"
|
||||
msgstr "argumen keyword ekstra telah diberikan"
|
||||
|
||||
#: py/argcheck.c:142
|
||||
#: py/argcheck.c:151
|
||||
msgid "argument num/types mismatch"
|
||||
msgstr "argumen num/types tidak cocok"
|
||||
|
||||
#: py/argcheck.c:147
|
||||
#: py/argcheck.c:156
|
||||
msgid "keyword argument(s) not yet implemented - use normal args instead"
|
||||
msgstr "argumen keyword belum diimplementasi - gunakan args normal"
|
||||
|
||||
#: py/bc.c:88 py/objnamedtuple.c:108
|
||||
#: py/bc.c:88 py/objnamedtuple.c:112
|
||||
msgid "%q() takes %d positional arguments but %d were given"
|
||||
msgstr "%q() mengambil posisi argumen %d tapi %d yang diberikan"
|
||||
|
||||
@ -952,11 +951,11 @@ msgstr "argumen keyword tidak diharapkan"
|
||||
msgid "keywords must be strings"
|
||||
msgstr "keyword harus berupa string"
|
||||
|
||||
#: py/bc.c:206 py/objnamedtuple.c:138
|
||||
#: py/bc.c:206 py/objnamedtuple.c:142
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr "fungsi mendapatkan nilai ganda untuk argumen '%q'"
|
||||
|
||||
#: py/bc.c:218 py/objnamedtuple.c:130
|
||||
#: py/bc.c:218 py/objnamedtuple.c:134
|
||||
msgid "unexpected keyword argument '%q'"
|
||||
msgstr "keyword argumen '%q' tidak diharapkan"
|
||||
|
||||
@ -1544,11 +1543,11 @@ msgstr ""
|
||||
msgid "empty"
|
||||
msgstr ""
|
||||
|
||||
#: py/objdict.c:314
|
||||
#: py/objdict.c:315
|
||||
msgid "popitem(): dictionary is empty"
|
||||
msgstr ""
|
||||
|
||||
#: py/objdict.c:357
|
||||
#: py/objdict.c:358
|
||||
msgid "dict update sequence has wrong length"
|
||||
msgstr ""
|
||||
|
||||
@ -1809,69 +1808,69 @@ msgstr ""
|
||||
msgid "string index out of range"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:358
|
||||
#: py/objtype.c:368
|
||||
msgid "__init__() should return None"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:360
|
||||
#: py/objtype.c:370
|
||||
#, c-format
|
||||
msgid "__init__() should return None, not '%s'"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:623 py/objtype.c:1275 py/runtime.c:1065
|
||||
#: py/objtype.c:633 py/objtype.c:1287 py/runtime.c:1065
|
||||
msgid "unreadable attribute"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:868 py/runtime.c:653
|
||||
#: py/objtype.c:878 py/runtime.c:653
|
||||
msgid "object not callable"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:870 py/runtime.c:655
|
||||
#: py/objtype.c:880 py/runtime.c:655
|
||||
#, c-format
|
||||
msgid "'%s' object is not callable"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:978
|
||||
#: py/objtype.c:988
|
||||
msgid "type takes 1 or 3 arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:989
|
||||
#: py/objtype.c:999
|
||||
msgid "cannot create instance"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:991
|
||||
#: py/objtype.c:1001
|
||||
msgid "cannot create '%q' instances"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1047
|
||||
#: py/objtype.c:1059
|
||||
msgid "can't add special method to already-subclassed class"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1091 py/objtype.c:1097
|
||||
#: py/objtype.c:1103 py/objtype.c:1109
|
||||
msgid "type is not an acceptable base type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1100
|
||||
#: py/objtype.c:1112
|
||||
msgid "type '%q' is not an acceptable base type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1137
|
||||
#: py/objtype.c:1149
|
||||
msgid "multiple inheritance not supported"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1164
|
||||
#: py/objtype.c:1176
|
||||
msgid "multiple bases have instance lay-out conflict"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1205
|
||||
#: py/objtype.c:1217
|
||||
msgid "first argument to super() must be type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1370
|
||||
#: py/objtype.c:1382
|
||||
msgid "issubclass() arg 2 must be a class or a tuple of classes"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1384
|
||||
#: py/objtype.c:1396
|
||||
msgid "issubclass() arg 1 must be a class"
|
||||
msgstr ""
|
||||
|
||||
@ -2067,8 +2066,8 @@ msgstr ""
|
||||
msgid "AnalogOut is only 16 bits. Value must be less than 65536."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiobusio/I2SOut.c:225
|
||||
#: shared-bindings/audioio/AudioOut.c:226
|
||||
#: shared-bindings/audiobusio/I2SOut.c:222
|
||||
#: shared-bindings/audioio/AudioOut.c:223
|
||||
msgid "Not playing"
|
||||
msgstr ""
|
||||
|
||||
@ -2105,29 +2104,29 @@ msgid ""
|
||||
"destination buffer must be a bytearray or array of type 'B' for bit_depth = 8"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:94
|
||||
#: shared-bindings/audioio/Mixer.c:91
|
||||
msgid "Invalid voice count"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:99
|
||||
#: shared-bindings/audioio/Mixer.c:96
|
||||
msgid "Invalid channel count"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:103
|
||||
#: shared-bindings/audioio/Mixer.c:100
|
||||
msgid "Sample rate must be positive"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:107
|
||||
#: shared-bindings/audioio/Mixer.c:104
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:98
|
||||
#: shared-bindings/audioio/RawSample.c:95
|
||||
msgid ""
|
||||
"sample_source buffer must be a bytearray or array of type 'h', 'H', 'b' or "
|
||||
"'B'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:104
|
||||
#: shared-bindings/audioio/RawSample.c:101
|
||||
msgid "buffer must be a bytes-like object"
|
||||
msgstr ""
|
||||
|
||||
@ -2136,52 +2135,52 @@ msgstr ""
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:111 shared-bindings/bitbangio/SPI.c:121
|
||||
#: shared-bindings/busio/SPI.c:133
|
||||
#: shared-bindings/bitbangio/I2C.c:109 shared-bindings/bitbangio/SPI.c:119
|
||||
#: shared-bindings/busio/SPI.c:130
|
||||
msgid "Function requires lock"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:195 shared-bindings/busio/I2C.c:210
|
||||
#: shared-bindings/bitbangio/I2C.c:193 shared-bindings/busio/I2C.c:207
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:151 shared-bindings/busio/SPI.c:175
|
||||
#: shared-bindings/bitbangio/SPI.c:149 shared-bindings/busio/SPI.c:172
|
||||
msgid "Invalid polarity"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:155 shared-bindings/busio/SPI.c:179
|
||||
#: shared-bindings/bitbangio/SPI.c:153 shared-bindings/busio/SPI.c:176
|
||||
msgid "Invalid phase"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:159 shared-bindings/busio/SPI.c:183
|
||||
#: shared-bindings/bitbangio/SPI.c:157 shared-bindings/busio/SPI.c:180
|
||||
msgid "Invalid number of bits"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:284 shared-bindings/busio/SPI.c:348
|
||||
#: shared-bindings/bitbangio/SPI.c:282 shared-bindings/busio/SPI.c:345
|
||||
msgid "buffer slices must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Address.c:119
|
||||
#: shared-bindings/bleio/Address.c:115
|
||||
#, c-format
|
||||
msgid "Address is not %d bytes long or is in wrong format"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Address.c:126
|
||||
#: shared-bindings/bleio/Address.c:122
|
||||
#, fuzzy, c-format
|
||||
msgid "Address must be %d bytes long"
|
||||
msgstr "buffers harus mempunyai panjang yang sama"
|
||||
|
||||
#: shared-bindings/bleio/Characteristic.c:81
|
||||
#: shared-bindings/bleio/Descriptor.c:93 shared-bindings/bleio/Service.c:78
|
||||
#: shared-bindings/bleio/Characteristic.c:74
|
||||
#: shared-bindings/bleio/Descriptor.c:86 shared-bindings/bleio/Service.c:66
|
||||
msgid "Expected a UUID"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:68
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:61
|
||||
#, fuzzy
|
||||
msgid "buffer_size must be >= 1"
|
||||
msgstr "buffers harus mempunyai panjang yang sama"
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:72
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:65
|
||||
msgid "Expected a Characteristic"
|
||||
msgstr ""
|
||||
|
||||
@ -2201,20 +2200,20 @@ msgstr ""
|
||||
msgid "Can't advertise in Central mode"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:111
|
||||
#: shared-bindings/bleio/Peripheral.c:106
|
||||
msgid "services includes an object that is not a Service"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:124
|
||||
#: shared-bindings/bleio/Peripheral.c:119
|
||||
#, fuzzy
|
||||
msgid "name must be a string"
|
||||
msgstr "keyword harus berupa string"
|
||||
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
#: shared-bindings/bleio/Service.c:84
|
||||
msgid "characteristics includes an object that is not a Characteristic"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Service.c:96
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
msgid "Characteristic UUID doesn't match Service UUID"
|
||||
msgstr ""
|
||||
|
||||
@ -2235,19 +2234,19 @@ msgstr "buffers harus mempunyai panjang yang sama"
|
||||
msgid "not a 128-bit UUID"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/I2C.c:120
|
||||
#: shared-bindings/busio/I2C.c:117
|
||||
msgid "Function requires lock."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:106
|
||||
#: shared-bindings/busio/UART.c:103
|
||||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:118
|
||||
#: shared-bindings/busio/UART.c:115
|
||||
msgid "stop must be 1 or 2"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:123
|
||||
#: shared-bindings/busio/UART.c:120
|
||||
msgid "timeout >100 (units are now seconds, not msecs)"
|
||||
msgstr ""
|
||||
|
||||
@ -2273,7 +2272,7 @@ msgstr ""
|
||||
msgid "Unsupported pull value."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c:84
|
||||
#: shared-bindings/displayio/Bitmap.c:84 shared-bindings/displayio/Shape.c:88
|
||||
msgid "y should be an int"
|
||||
msgstr ""
|
||||
|
||||
@ -2289,45 +2288,66 @@ msgstr ""
|
||||
msgid "color should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:55
|
||||
#: shared-bindings/displayio/FourWire.c:64
|
||||
#: shared-bindings/displayio/Display.c:119
|
||||
msgid "Too many displays"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Display.c:138
|
||||
msgid "Must be a Group subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:93
|
||||
#: shared-bindings/displayio/ParallelBus.c:98
|
||||
msgid "Too many display busses"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:106
|
||||
#: shared-bindings/displayio/ParallelBus.c:110
|
||||
msgid "displayio is a work in progress"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Group.c:65
|
||||
#: shared-bindings/displayio/Group.c:62
|
||||
msgid "Group must have size at least 1"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:96
|
||||
#: shared-bindings/displayio/Palette.c:93
|
||||
msgid "color buffer must be a bytearray or array of type 'b' or 'B'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:102
|
||||
#: shared-bindings/displayio/Palette.c:99
|
||||
msgid "color buffer must be 3 bytes (RGB) or 4 bytes (RGB + pad byte)"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:106
|
||||
#: shared-bindings/displayio/Palette.c:103
|
||||
msgid "color must be between 0x000000 and 0xffffff"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:110
|
||||
#: shared-bindings/displayio/Palette.c:107
|
||||
msgid "color buffer must be a buffer or int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:123
|
||||
#: shared-bindings/displayio/Palette.c:137
|
||||
#: shared-bindings/displayio/Palette.c:120
|
||||
#: shared-bindings/displayio/Palette.c:134
|
||||
msgid "palette_index should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:48
|
||||
#: shared-bindings/displayio/Shape.c:92
|
||||
msgid "start_x should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Shape.c:96
|
||||
msgid "end_x should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:49
|
||||
msgid "position must be 2-tuple"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:97
|
||||
#: shared-bindings/displayio/Sprite.c:102
|
||||
msgid "unsupported bitmap type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:162
|
||||
#: shared-bindings/displayio/Sprite.c:167
|
||||
msgid "pixel_shader must be displayio.Palette or displayio.ColorConverter"
|
||||
msgstr ""
|
||||
|
||||
@ -2339,15 +2359,15 @@ msgstr ""
|
||||
msgid "expected a DigitalInOut"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:95
|
||||
msgid "can't convert address to int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:101
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
msgid "address out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:107
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:104
|
||||
msgid "addresses is empty"
|
||||
msgstr ""
|
||||
|
||||
@ -2389,29 +2409,29 @@ msgstr ""
|
||||
msgid "No hardware random available"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:164
|
||||
#: shared-bindings/pulseio/PWMOut.c:162
|
||||
msgid ""
|
||||
"PWM duty_cycle must be between 0 and 65535 inclusive (16 bit resolution)"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:195
|
||||
#: shared-bindings/pulseio/PWMOut.c:193
|
||||
msgid ""
|
||||
"PWM frequency not writable when variable_frequency is False on construction."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:275
|
||||
#: shared-bindings/pulseio/PulseIn.c:272
|
||||
msgid "Cannot delete values"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:281
|
||||
#: shared-bindings/pulseio/PulseIn.c:278
|
||||
msgid "Slices not supported"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:287
|
||||
#: shared-bindings/pulseio/PulseIn.c:284
|
||||
msgid "index must be int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:293
|
||||
#: shared-bindings/pulseio/PulseIn.c:290
|
||||
msgid "Read-only"
|
||||
msgstr ""
|
||||
|
||||
@ -2577,11 +2597,20 @@ msgstr ""
|
||||
msgid "row must be packed and word aligned"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c:62
|
||||
#, fuzzy
|
||||
msgid "Unsupported display bus type"
|
||||
msgstr "Baudrate tidak didukung"
|
||||
|
||||
#: shared-module/displayio/Group.c:39
|
||||
msgid "Group full"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Group.c:48
|
||||
#: shared-module/displayio/Group.c:46
|
||||
msgid "Layer must be a Group or Sprite subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Group.c:55
|
||||
msgid "Group empty"
|
||||
msgstr ""
|
||||
|
||||
@ -2599,6 +2628,19 @@ msgstr ""
|
||||
msgid "Only true color (24 bpp or higher) BMP supported %x"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c:60
|
||||
msgid "y value out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c:63
|
||||
msgid "x value out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c:67
|
||||
#, c-format
|
||||
msgid "Maximum x value when mirrored is %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/storage/__init__.c:155
|
||||
msgid "Cannot remount '/' when USB is active."
|
||||
msgstr ""
|
||||
@ -2624,6 +2666,18 @@ msgstr ""
|
||||
msgid "USB Error"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/board_busses.c:62
|
||||
msgid "No default I2C bus"
|
||||
msgstr "Tidak ada standar bus I2C"
|
||||
|
||||
#: supervisor/shared/board_busses.c:91
|
||||
msgid "No default SPI bus"
|
||||
msgstr "Tidak ada standar bus SPI"
|
||||
|
||||
#: supervisor/shared/board_busses.c:118
|
||||
msgid "No default UART bus"
|
||||
msgstr "Tidak ada standar bus UART"
|
||||
|
||||
#: supervisor/shared/safe_mode.c:97
|
||||
msgid "You requested starting safe mode by "
|
||||
msgstr "Anda mengajukan untuk memulai mode aman pada (safe mode) pada "
|
||||
@ -2685,8 +2739,10 @@ msgid ""
|
||||
"exit safe mode.\n"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "Invalid UUID string length"
|
||||
#~ msgstr "Panjang string UUID tidak valid"
|
||||
#~ msgid ""
|
||||
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
|
||||
#~ msgstr ""
|
||||
#~ "Silahkan taruh masalah disini dengan isi dari CIRCUITPY drive: anda \n"
|
||||
|
||||
#~ msgid "Invalid UUID parameter"
|
||||
#~ msgstr "Parameter UUID tidak valid"
|
||||
@ -2702,7 +2758,5 @@ msgstr ""
|
||||
#~ "tegangan cukup untuk semua sirkuit dan tekan reset (setelah mencabut "
|
||||
#~ "CIRCUITPY).\n"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
|
||||
#~ msgstr ""
|
||||
#~ "Silahkan taruh masalah disini dengan isi dari CIRCUITPY drive: anda \n"
|
||||
#~ msgid "Invalid UUID string length"
|
||||
#~ msgstr "Panjang string UUID tidak valid"
|
||||
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2019-01-10 21:32-0500\n"
|
||||
"POT-Creation-Date: 2019-01-20 17:33-0800\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@ -21,8 +21,8 @@ msgstr ""
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c:340 extmod/machine_i2c.c:354 extmod/machine_i2c.c:368
|
||||
#: extmod/machine_i2c.c:392
|
||||
#: extmod/machine_i2c.c:338 extmod/machine_i2c.c:352 extmod/machine_i2c.c:366
|
||||
#: extmod/machine_i2c.c:390
|
||||
msgid "I2C operation not supported"
|
||||
msgstr ""
|
||||
|
||||
@ -151,37 +151,37 @@ msgstr ""
|
||||
msgid "script compilation not supported"
|
||||
msgstr ""
|
||||
|
||||
#: main.c:150
|
||||
#: main.c:155
|
||||
msgid " output:\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c:164 main.c:237
|
||||
#: main.c:169 main.c:247
|
||||
msgid ""
|
||||
"Auto-reload is on. Simply save files over USB to run them or enter REPL to "
|
||||
"disable.\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c:166
|
||||
#: main.c:171
|
||||
msgid "Running in safe mode! Auto-reload is off.\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c:168 main.c:239
|
||||
#: main.c:173 main.c:249
|
||||
msgid "Auto-reload is off.\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c:182
|
||||
#: main.c:187
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c:198
|
||||
#: main.c:203
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c:244
|
||||
#: main.c:254
|
||||
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
|
||||
msgstr ""
|
||||
|
||||
#: main.c:407
|
||||
#: main.c:417
|
||||
msgid "soft reboot\n"
|
||||
msgstr ""
|
||||
|
||||
@ -198,18 +198,6 @@ msgstr ""
|
||||
msgid "calibration is out of range"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:59 ports/nrf/board_busses.c:39
|
||||
msgid "No default I2C bus"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:85 ports/nrf/board_busses.c:64
|
||||
msgid "No default SPI bus"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:112 ports/nrf/board_busses.c:91
|
||||
msgid "No default UART bus"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/analogio/AnalogIn.c:63
|
||||
#: ports/nrf/common-hal/analogio/AnalogIn.c:39
|
||||
msgid "Pin does not have ADC capabilities"
|
||||
@ -326,7 +314,7 @@ msgid "Not enough pins available"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c:78
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:171
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:176
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c:120
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c:45
|
||||
#: ports/nrf/common-hal/busio/I2C.c:84
|
||||
@ -374,6 +362,17 @@ msgstr ""
|
||||
msgid "Cannot get pull while in output mode"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:43
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:43
|
||||
msgid "Data 0 pin must be byte aligned"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:47
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:47
|
||||
#, c-format
|
||||
msgid "Bus pin %d is already in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/microcontroller/__init__.c:74
|
||||
#: ports/esp8266/common-hal/microcontroller/__init__.c:64
|
||||
msgid "Cannot reset into bootloader because no bootloader is present."
|
||||
@ -874,46 +873,46 @@ msgstr ""
|
||||
msgid "[addrinfo error %d]"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:44
|
||||
#: py/argcheck.c:53
|
||||
msgid "function does not take keyword arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:54 py/bc.c:85 py/objnamedtuple.c:104
|
||||
#: py/argcheck.c:63 py/bc.c:85 py/objnamedtuple.c:108
|
||||
#, c-format
|
||||
msgid "function takes %d positional arguments but %d were given"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:64
|
||||
#: py/argcheck.c:73
|
||||
#, c-format
|
||||
msgid "function missing %d required positional arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:72
|
||||
#: py/argcheck.c:81
|
||||
#, c-format
|
||||
msgid "function expected at most %d arguments, got %d"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:97
|
||||
#: py/argcheck.c:106
|
||||
msgid "'%q' argument required"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:122
|
||||
#: py/argcheck.c:131
|
||||
msgid "extra positional arguments given"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:130
|
||||
#: py/argcheck.c:139
|
||||
msgid "extra keyword arguments given"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:142
|
||||
#: py/argcheck.c:151
|
||||
msgid "argument num/types mismatch"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:147
|
||||
#: py/argcheck.c:156
|
||||
msgid "keyword argument(s) not yet implemented - use normal args instead"
|
||||
msgstr ""
|
||||
|
||||
#: py/bc.c:88 py/objnamedtuple.c:108
|
||||
#: py/bc.c:88 py/objnamedtuple.c:112
|
||||
msgid "%q() takes %d positional arguments but %d were given"
|
||||
msgstr ""
|
||||
|
||||
@ -925,11 +924,11 @@ msgstr ""
|
||||
msgid "keywords must be strings"
|
||||
msgstr ""
|
||||
|
||||
#: py/bc.c:206 py/objnamedtuple.c:138
|
||||
#: py/bc.c:206 py/objnamedtuple.c:142
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr ""
|
||||
|
||||
#: py/bc.c:218 py/objnamedtuple.c:130
|
||||
#: py/bc.c:218 py/objnamedtuple.c:134
|
||||
msgid "unexpected keyword argument '%q'"
|
||||
msgstr ""
|
||||
|
||||
@ -1511,11 +1510,11 @@ msgstr ""
|
||||
msgid "empty"
|
||||
msgstr ""
|
||||
|
||||
#: py/objdict.c:314
|
||||
#: py/objdict.c:315
|
||||
msgid "popitem(): dictionary is empty"
|
||||
msgstr ""
|
||||
|
||||
#: py/objdict.c:357
|
||||
#: py/objdict.c:358
|
||||
msgid "dict update sequence has wrong length"
|
||||
msgstr ""
|
||||
|
||||
@ -1776,69 +1775,69 @@ msgstr ""
|
||||
msgid "string index out of range"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:358
|
||||
#: py/objtype.c:368
|
||||
msgid "__init__() should return None"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:360
|
||||
#: py/objtype.c:370
|
||||
#, c-format
|
||||
msgid "__init__() should return None, not '%s'"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:623 py/objtype.c:1275 py/runtime.c:1065
|
||||
#: py/objtype.c:633 py/objtype.c:1287 py/runtime.c:1065
|
||||
msgid "unreadable attribute"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:868 py/runtime.c:653
|
||||
#: py/objtype.c:878 py/runtime.c:653
|
||||
msgid "object not callable"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:870 py/runtime.c:655
|
||||
#: py/objtype.c:880 py/runtime.c:655
|
||||
#, c-format
|
||||
msgid "'%s' object is not callable"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:978
|
||||
#: py/objtype.c:988
|
||||
msgid "type takes 1 or 3 arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:989
|
||||
#: py/objtype.c:999
|
||||
msgid "cannot create instance"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:991
|
||||
#: py/objtype.c:1001
|
||||
msgid "cannot create '%q' instances"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1047
|
||||
#: py/objtype.c:1059
|
||||
msgid "can't add special method to already-subclassed class"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1091 py/objtype.c:1097
|
||||
#: py/objtype.c:1103 py/objtype.c:1109
|
||||
msgid "type is not an acceptable base type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1100
|
||||
#: py/objtype.c:1112
|
||||
msgid "type '%q' is not an acceptable base type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1137
|
||||
#: py/objtype.c:1149
|
||||
msgid "multiple inheritance not supported"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1164
|
||||
#: py/objtype.c:1176
|
||||
msgid "multiple bases have instance lay-out conflict"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1205
|
||||
#: py/objtype.c:1217
|
||||
msgid "first argument to super() must be type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1370
|
||||
#: py/objtype.c:1382
|
||||
msgid "issubclass() arg 2 must be a class or a tuple of classes"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1384
|
||||
#: py/objtype.c:1396
|
||||
msgid "issubclass() arg 1 must be a class"
|
||||
msgstr ""
|
||||
|
||||
@ -2034,8 +2033,8 @@ msgstr ""
|
||||
msgid "AnalogOut is only 16 bits. Value must be less than 65536."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiobusio/I2SOut.c:225
|
||||
#: shared-bindings/audioio/AudioOut.c:226
|
||||
#: shared-bindings/audiobusio/I2SOut.c:222
|
||||
#: shared-bindings/audioio/AudioOut.c:223
|
||||
msgid "Not playing"
|
||||
msgstr ""
|
||||
|
||||
@ -2072,29 +2071,29 @@ msgid ""
|
||||
"destination buffer must be a bytearray or array of type 'B' for bit_depth = 8"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:94
|
||||
#: shared-bindings/audioio/Mixer.c:91
|
||||
msgid "Invalid voice count"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:99
|
||||
#: shared-bindings/audioio/Mixer.c:96
|
||||
msgid "Invalid channel count"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:103
|
||||
#: shared-bindings/audioio/Mixer.c:100
|
||||
msgid "Sample rate must be positive"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:107
|
||||
#: shared-bindings/audioio/Mixer.c:104
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:98
|
||||
#: shared-bindings/audioio/RawSample.c:95
|
||||
msgid ""
|
||||
"sample_source buffer must be a bytearray or array of type 'h', 'H', 'b' or "
|
||||
"'B'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:104
|
||||
#: shared-bindings/audioio/RawSample.c:101
|
||||
msgid "buffer must be a bytes-like object"
|
||||
msgstr ""
|
||||
|
||||
@ -2103,51 +2102,51 @@ msgstr ""
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:111 shared-bindings/bitbangio/SPI.c:121
|
||||
#: shared-bindings/busio/SPI.c:133
|
||||
#: shared-bindings/bitbangio/I2C.c:109 shared-bindings/bitbangio/SPI.c:119
|
||||
#: shared-bindings/busio/SPI.c:130
|
||||
msgid "Function requires lock"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:195 shared-bindings/busio/I2C.c:210
|
||||
#: shared-bindings/bitbangio/I2C.c:193 shared-bindings/busio/I2C.c:207
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:151 shared-bindings/busio/SPI.c:175
|
||||
#: shared-bindings/bitbangio/SPI.c:149 shared-bindings/busio/SPI.c:172
|
||||
msgid "Invalid polarity"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:155 shared-bindings/busio/SPI.c:179
|
||||
#: shared-bindings/bitbangio/SPI.c:153 shared-bindings/busio/SPI.c:176
|
||||
msgid "Invalid phase"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:159 shared-bindings/busio/SPI.c:183
|
||||
#: shared-bindings/bitbangio/SPI.c:157 shared-bindings/busio/SPI.c:180
|
||||
msgid "Invalid number of bits"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:284 shared-bindings/busio/SPI.c:348
|
||||
#: shared-bindings/bitbangio/SPI.c:282 shared-bindings/busio/SPI.c:345
|
||||
msgid "buffer slices must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Address.c:119
|
||||
#: shared-bindings/bleio/Address.c:115
|
||||
#, c-format
|
||||
msgid "Address is not %d bytes long or is in wrong format"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Address.c:126
|
||||
#: shared-bindings/bleio/Address.c:122
|
||||
#, c-format
|
||||
msgid "Address must be %d bytes long"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Characteristic.c:81
|
||||
#: shared-bindings/bleio/Descriptor.c:93 shared-bindings/bleio/Service.c:78
|
||||
#: shared-bindings/bleio/Characteristic.c:74
|
||||
#: shared-bindings/bleio/Descriptor.c:86 shared-bindings/bleio/Service.c:66
|
||||
msgid "Expected a UUID"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:68
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:61
|
||||
msgid "buffer_size must be >= 1"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:72
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:65
|
||||
msgid "Expected a Characteristic"
|
||||
msgstr ""
|
||||
|
||||
@ -2167,19 +2166,19 @@ msgstr ""
|
||||
msgid "Can't advertise in Central mode"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:111
|
||||
#: shared-bindings/bleio/Peripheral.c:106
|
||||
msgid "services includes an object that is not a Service"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:124
|
||||
#: shared-bindings/bleio/Peripheral.c:119
|
||||
msgid "name must be a string"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
#: shared-bindings/bleio/Service.c:84
|
||||
msgid "characteristics includes an object that is not a Characteristic"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Service.c:96
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
msgid "Characteristic UUID doesn't match Service UUID"
|
||||
msgstr ""
|
||||
|
||||
@ -2199,19 +2198,19 @@ msgstr ""
|
||||
msgid "not a 128-bit UUID"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/I2C.c:120
|
||||
#: shared-bindings/busio/I2C.c:117
|
||||
msgid "Function requires lock."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:106
|
||||
#: shared-bindings/busio/UART.c:103
|
||||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:118
|
||||
#: shared-bindings/busio/UART.c:115
|
||||
msgid "stop must be 1 or 2"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:123
|
||||
#: shared-bindings/busio/UART.c:120
|
||||
msgid "timeout >100 (units are now seconds, not msecs)"
|
||||
msgstr ""
|
||||
|
||||
@ -2237,7 +2236,7 @@ msgstr ""
|
||||
msgid "Unsupported pull value."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c:84
|
||||
#: shared-bindings/displayio/Bitmap.c:84 shared-bindings/displayio/Shape.c:88
|
||||
msgid "y should be an int"
|
||||
msgstr ""
|
||||
|
||||
@ -2253,45 +2252,66 @@ msgstr ""
|
||||
msgid "color should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:55
|
||||
#: shared-bindings/displayio/FourWire.c:64
|
||||
#: shared-bindings/displayio/Display.c:119
|
||||
msgid "Too many displays"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Display.c:138
|
||||
msgid "Must be a Group subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:93
|
||||
#: shared-bindings/displayio/ParallelBus.c:98
|
||||
msgid "Too many display busses"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:106
|
||||
#: shared-bindings/displayio/ParallelBus.c:110
|
||||
msgid "displayio is a work in progress"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Group.c:65
|
||||
#: shared-bindings/displayio/Group.c:62
|
||||
msgid "Group must have size at least 1"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:96
|
||||
#: shared-bindings/displayio/Palette.c:93
|
||||
msgid "color buffer must be a bytearray or array of type 'b' or 'B'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:102
|
||||
#: shared-bindings/displayio/Palette.c:99
|
||||
msgid "color buffer must be 3 bytes (RGB) or 4 bytes (RGB + pad byte)"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:106
|
||||
#: shared-bindings/displayio/Palette.c:103
|
||||
msgid "color must be between 0x000000 and 0xffffff"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:110
|
||||
#: shared-bindings/displayio/Palette.c:107
|
||||
msgid "color buffer must be a buffer or int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:123
|
||||
#: shared-bindings/displayio/Palette.c:137
|
||||
#: shared-bindings/displayio/Palette.c:120
|
||||
#: shared-bindings/displayio/Palette.c:134
|
||||
msgid "palette_index should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:48
|
||||
#: shared-bindings/displayio/Shape.c:92
|
||||
msgid "start_x should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Shape.c:96
|
||||
msgid "end_x should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:49
|
||||
msgid "position must be 2-tuple"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:97
|
||||
#: shared-bindings/displayio/Sprite.c:102
|
||||
msgid "unsupported bitmap type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:162
|
||||
#: shared-bindings/displayio/Sprite.c:167
|
||||
msgid "pixel_shader must be displayio.Palette or displayio.ColorConverter"
|
||||
msgstr ""
|
||||
|
||||
@ -2303,15 +2323,15 @@ msgstr ""
|
||||
msgid "expected a DigitalInOut"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:95
|
||||
msgid "can't convert address to int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:101
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
msgid "address out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:107
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:104
|
||||
msgid "addresses is empty"
|
||||
msgstr ""
|
||||
|
||||
@ -2353,29 +2373,29 @@ msgstr ""
|
||||
msgid "No hardware random available"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:164
|
||||
#: shared-bindings/pulseio/PWMOut.c:162
|
||||
msgid ""
|
||||
"PWM duty_cycle must be between 0 and 65535 inclusive (16 bit resolution)"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:195
|
||||
#: shared-bindings/pulseio/PWMOut.c:193
|
||||
msgid ""
|
||||
"PWM frequency not writable when variable_frequency is False on construction."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:275
|
||||
#: shared-bindings/pulseio/PulseIn.c:272
|
||||
msgid "Cannot delete values"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:281
|
||||
#: shared-bindings/pulseio/PulseIn.c:278
|
||||
msgid "Slices not supported"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:287
|
||||
#: shared-bindings/pulseio/PulseIn.c:284
|
||||
msgid "index must be int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:293
|
||||
#: shared-bindings/pulseio/PulseIn.c:290
|
||||
msgid "Read-only"
|
||||
msgstr ""
|
||||
|
||||
@ -2541,11 +2561,19 @@ msgstr ""
|
||||
msgid "row must be packed and word aligned"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c:62
|
||||
msgid "Unsupported display bus type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Group.c:39
|
||||
msgid "Group full"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Group.c:48
|
||||
#: shared-module/displayio/Group.c:46
|
||||
msgid "Layer must be a Group or Sprite subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Group.c:55
|
||||
msgid "Group empty"
|
||||
msgstr ""
|
||||
|
||||
@ -2563,6 +2591,19 @@ msgstr ""
|
||||
msgid "Only true color (24 bpp or higher) BMP supported %x"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c:60
|
||||
msgid "y value out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c:63
|
||||
msgid "x value out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c:67
|
||||
#, c-format
|
||||
msgid "Maximum x value when mirrored is %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/storage/__init__.c:155
|
||||
msgid "Cannot remount '/' when USB is active."
|
||||
msgstr ""
|
||||
@ -2588,6 +2629,18 @@ msgstr ""
|
||||
msgid "USB Error"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/board_busses.c:62
|
||||
msgid "No default I2C bus"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/board_busses.c:91
|
||||
msgid "No default SPI bus"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/board_busses.c:118
|
||||
msgid "No default UART bus"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c:97
|
||||
msgid "You requested starting safe mode by "
|
||||
msgstr ""
|
||||
|
310
locale/de_DE.po
310
locale/de_DE.po
@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2019-01-10 21:32-0500\n"
|
||||
"POT-Creation-Date: 2019-01-20 17:33-0800\n"
|
||||
"PO-Revision-Date: 2018-07-27 11:55-0700\n"
|
||||
"Last-Translator: Sebastian Plamauer\n"
|
||||
"Language-Team: \n"
|
||||
@ -21,8 +21,8 @@ msgstr ""
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "ungültige I2C Schnittstelle"
|
||||
|
||||
#: extmod/machine_i2c.c:340 extmod/machine_i2c.c:354 extmod/machine_i2c.c:368
|
||||
#: extmod/machine_i2c.c:392
|
||||
#: extmod/machine_i2c.c:338 extmod/machine_i2c.c:352 extmod/machine_i2c.c:366
|
||||
#: extmod/machine_i2c.c:390
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "I2C-operation nicht unterstützt"
|
||||
|
||||
@ -151,11 +151,11 @@ msgstr "ungültige argumente"
|
||||
msgid "script compilation not supported"
|
||||
msgstr "kompilieren von Skripten ist nicht unterstützt"
|
||||
|
||||
#: main.c:150
|
||||
#: main.c:155
|
||||
msgid " output:\n"
|
||||
msgstr " Ausgabe:\n"
|
||||
|
||||
#: main.c:164 main.c:237
|
||||
#: main.c:169 main.c:247
|
||||
msgid ""
|
||||
"Auto-reload is on. Simply save files over USB to run them or enter REPL to "
|
||||
"disable.\n"
|
||||
@ -163,29 +163,29 @@ msgstr ""
|
||||
"Automatisches Neuladen ist aktiv. Speichere Dateien über USB um sie "
|
||||
"auszuführen oder verbinde dich mit der REPL um zu deaktivieren.\n"
|
||||
|
||||
#: main.c:166
|
||||
#: main.c:171
|
||||
msgid "Running in safe mode! Auto-reload is off.\n"
|
||||
msgstr "Sicherheitsmodus aktiv! Automatisches Neuladen ist deaktiviert.\n"
|
||||
|
||||
#: main.c:168 main.c:239
|
||||
#: main.c:173 main.c:249
|
||||
msgid "Auto-reload is off.\n"
|
||||
msgstr "Automatisches Neuladen ist deaktiviert.\n"
|
||||
|
||||
#: main.c:182
|
||||
#: main.c:187
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Sicherheitsmodus aktiv! Gespeicherter Code wird nicht ausgeführt\n"
|
||||
|
||||
#: main.c:198
|
||||
#: main.c:203
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "WARNUNG: Der Dateiname deines codes hat zwei Dateityperweiterungen\n"
|
||||
|
||||
#: main.c:244
|
||||
#: main.c:254
|
||||
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
|
||||
msgstr ""
|
||||
"Drücke eine Taste um dich mit der REPL zu verbinden. Drücke Strg-D zum neu "
|
||||
"laden"
|
||||
|
||||
#: main.c:407
|
||||
#: main.c:417
|
||||
msgid "soft reboot\n"
|
||||
msgstr "soft reboot\n"
|
||||
|
||||
@ -202,18 +202,6 @@ msgstr "Kalibrierung ist Schreibgeschützt"
|
||||
msgid "calibration is out of range"
|
||||
msgstr "Kalibrierung ist außerhalb der Reichweite"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:59 ports/nrf/board_busses.c:39
|
||||
msgid "No default I2C bus"
|
||||
msgstr "Kein Standard I2C Bus"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:85 ports/nrf/board_busses.c:64
|
||||
msgid "No default SPI bus"
|
||||
msgstr "Kein Standard SPI Bus"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:112 ports/nrf/board_busses.c:91
|
||||
msgid "No default UART bus"
|
||||
msgstr "Kein Standard UART Bus"
|
||||
|
||||
#: ports/atmel-samd/common-hal/analogio/AnalogIn.c:63
|
||||
#: ports/nrf/common-hal/analogio/AnalogIn.c:39
|
||||
msgid "Pin does not have ADC capabilities"
|
||||
@ -330,7 +318,7 @@ msgid "Not enough pins available"
|
||||
msgstr "Nicht genug Pins vorhanden"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c:78
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:171
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:176
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c:120
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c:45
|
||||
#: ports/nrf/common-hal/busio/I2C.c:84
|
||||
@ -378,6 +366,17 @@ msgstr "Kein TX Pin"
|
||||
msgid "Cannot get pull while in output mode"
|
||||
msgstr "Pull up im Ausgabemodus nicht möglich"
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:43
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:43
|
||||
msgid "Data 0 pin must be byte aligned"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:47
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:47
|
||||
#, fuzzy, c-format
|
||||
msgid "Bus pin %d is already in use"
|
||||
msgstr "DAC wird schon benutzt"
|
||||
|
||||
#: ports/atmel-samd/common-hal/microcontroller/__init__.c:74
|
||||
#: ports/esp8266/common-hal/microcontroller/__init__.c:64
|
||||
msgid "Cannot reset into bootloader because no bootloader is present."
|
||||
@ -901,46 +900,46 @@ msgstr ""
|
||||
msgid "[addrinfo error %d]"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:44
|
||||
#: py/argcheck.c:53
|
||||
msgid "function does not take keyword arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:54 py/bc.c:85 py/objnamedtuple.c:104
|
||||
#: py/argcheck.c:63 py/bc.c:85 py/objnamedtuple.c:108
|
||||
#, c-format
|
||||
msgid "function takes %d positional arguments but %d were given"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:64
|
||||
#: py/argcheck.c:73
|
||||
#, c-format
|
||||
msgid "function missing %d required positional arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:72
|
||||
#: py/argcheck.c:81
|
||||
#, c-format
|
||||
msgid "function expected at most %d arguments, got %d"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:97
|
||||
#: py/argcheck.c:106
|
||||
msgid "'%q' argument required"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:122
|
||||
#: py/argcheck.c:131
|
||||
msgid "extra positional arguments given"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:130
|
||||
#: py/argcheck.c:139
|
||||
msgid "extra keyword arguments given"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:142
|
||||
#: py/argcheck.c:151
|
||||
msgid "argument num/types mismatch"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:147
|
||||
#: py/argcheck.c:156
|
||||
msgid "keyword argument(s) not yet implemented - use normal args instead"
|
||||
msgstr ""
|
||||
|
||||
#: py/bc.c:88 py/objnamedtuple.c:108
|
||||
#: py/bc.c:88 py/objnamedtuple.c:112
|
||||
msgid "%q() takes %d positional arguments but %d were given"
|
||||
msgstr ""
|
||||
|
||||
@ -952,11 +951,11 @@ msgstr ""
|
||||
msgid "keywords must be strings"
|
||||
msgstr ""
|
||||
|
||||
#: py/bc.c:206 py/objnamedtuple.c:138
|
||||
#: py/bc.c:206 py/objnamedtuple.c:142
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr ""
|
||||
|
||||
#: py/bc.c:218 py/objnamedtuple.c:130
|
||||
#: py/bc.c:218 py/objnamedtuple.c:134
|
||||
msgid "unexpected keyword argument '%q'"
|
||||
msgstr ""
|
||||
|
||||
@ -1540,11 +1539,11 @@ msgstr ""
|
||||
msgid "empty"
|
||||
msgstr ""
|
||||
|
||||
#: py/objdict.c:314
|
||||
#: py/objdict.c:315
|
||||
msgid "popitem(): dictionary is empty"
|
||||
msgstr ""
|
||||
|
||||
#: py/objdict.c:357
|
||||
#: py/objdict.c:358
|
||||
msgid "dict update sequence has wrong length"
|
||||
msgstr ""
|
||||
|
||||
@ -1805,69 +1804,69 @@ msgstr ""
|
||||
msgid "string index out of range"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:358
|
||||
#: py/objtype.c:368
|
||||
msgid "__init__() should return None"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:360
|
||||
#: py/objtype.c:370
|
||||
#, c-format
|
||||
msgid "__init__() should return None, not '%s'"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:623 py/objtype.c:1275 py/runtime.c:1065
|
||||
#: py/objtype.c:633 py/objtype.c:1287 py/runtime.c:1065
|
||||
msgid "unreadable attribute"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:868 py/runtime.c:653
|
||||
#: py/objtype.c:878 py/runtime.c:653
|
||||
msgid "object not callable"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:870 py/runtime.c:655
|
||||
#: py/objtype.c:880 py/runtime.c:655
|
||||
#, c-format
|
||||
msgid "'%s' object is not callable"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:978
|
||||
#: py/objtype.c:988
|
||||
msgid "type takes 1 or 3 arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:989
|
||||
#: py/objtype.c:999
|
||||
msgid "cannot create instance"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:991
|
||||
#: py/objtype.c:1001
|
||||
msgid "cannot create '%q' instances"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1047
|
||||
#: py/objtype.c:1059
|
||||
msgid "can't add special method to already-subclassed class"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1091 py/objtype.c:1097
|
||||
#: py/objtype.c:1103 py/objtype.c:1109
|
||||
msgid "type is not an acceptable base type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1100
|
||||
#: py/objtype.c:1112
|
||||
msgid "type '%q' is not an acceptable base type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1137
|
||||
#: py/objtype.c:1149
|
||||
msgid "multiple inheritance not supported"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1164
|
||||
#: py/objtype.c:1176
|
||||
msgid "multiple bases have instance lay-out conflict"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1205
|
||||
#: py/objtype.c:1217
|
||||
msgid "first argument to super() must be type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1370
|
||||
#: py/objtype.c:1382
|
||||
msgid "issubclass() arg 2 must be a class or a tuple of classes"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1384
|
||||
#: py/objtype.c:1396
|
||||
msgid "issubclass() arg 1 must be a class"
|
||||
msgstr ""
|
||||
|
||||
@ -2063,8 +2062,8 @@ msgstr ""
|
||||
msgid "AnalogOut is only 16 bits. Value must be less than 65536."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiobusio/I2SOut.c:225
|
||||
#: shared-bindings/audioio/AudioOut.c:226
|
||||
#: shared-bindings/audiobusio/I2SOut.c:222
|
||||
#: shared-bindings/audioio/AudioOut.c:223
|
||||
msgid "Not playing"
|
||||
msgstr ""
|
||||
|
||||
@ -2101,32 +2100,32 @@ msgid ""
|
||||
"destination buffer must be a bytearray or array of type 'B' for bit_depth = 8"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:94
|
||||
#: shared-bindings/audioio/Mixer.c:91
|
||||
#, fuzzy
|
||||
msgid "Invalid voice count"
|
||||
msgstr "Ungültiger clock pin"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:99
|
||||
#: shared-bindings/audioio/Mixer.c:96
|
||||
#, fuzzy
|
||||
msgid "Invalid channel count"
|
||||
msgstr "Ungültiger clock pin"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:103
|
||||
#: shared-bindings/audioio/Mixer.c:100
|
||||
msgid "Sample rate must be positive"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:107
|
||||
#: shared-bindings/audioio/Mixer.c:104
|
||||
#, fuzzy
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr "bits müssen 8 sein"
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:98
|
||||
#: shared-bindings/audioio/RawSample.c:95
|
||||
msgid ""
|
||||
"sample_source buffer must be a bytearray or array of type 'h', 'H', 'b' or "
|
||||
"'B'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:104
|
||||
#: shared-bindings/audioio/RawSample.c:101
|
||||
msgid "buffer must be a bytes-like object"
|
||||
msgstr ""
|
||||
|
||||
@ -2135,52 +2134,52 @@ msgstr ""
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:111 shared-bindings/bitbangio/SPI.c:121
|
||||
#: shared-bindings/busio/SPI.c:133
|
||||
#: shared-bindings/bitbangio/I2C.c:109 shared-bindings/bitbangio/SPI.c:119
|
||||
#: shared-bindings/busio/SPI.c:130
|
||||
msgid "Function requires lock"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:195 shared-bindings/busio/I2C.c:210
|
||||
#: shared-bindings/bitbangio/I2C.c:193 shared-bindings/busio/I2C.c:207
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:151 shared-bindings/busio/SPI.c:175
|
||||
#: shared-bindings/bitbangio/SPI.c:149 shared-bindings/busio/SPI.c:172
|
||||
msgid "Invalid polarity"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:155 shared-bindings/busio/SPI.c:179
|
||||
#: shared-bindings/bitbangio/SPI.c:153 shared-bindings/busio/SPI.c:176
|
||||
msgid "Invalid phase"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:159 shared-bindings/busio/SPI.c:183
|
||||
#: shared-bindings/bitbangio/SPI.c:157 shared-bindings/busio/SPI.c:180
|
||||
msgid "Invalid number of bits"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:284 shared-bindings/busio/SPI.c:348
|
||||
#: shared-bindings/bitbangio/SPI.c:282 shared-bindings/busio/SPI.c:345
|
||||
msgid "buffer slices must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Address.c:119
|
||||
#: shared-bindings/bleio/Address.c:115
|
||||
#, c-format
|
||||
msgid "Address is not %d bytes long or is in wrong format"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Address.c:126
|
||||
#: shared-bindings/bleio/Address.c:122
|
||||
#, fuzzy, c-format
|
||||
msgid "Address must be %d bytes long"
|
||||
msgstr "Buffer müssen gleich lang sein"
|
||||
|
||||
#: shared-bindings/bleio/Characteristic.c:81
|
||||
#: shared-bindings/bleio/Descriptor.c:93 shared-bindings/bleio/Service.c:78
|
||||
#: shared-bindings/bleio/Characteristic.c:74
|
||||
#: shared-bindings/bleio/Descriptor.c:86 shared-bindings/bleio/Service.c:66
|
||||
msgid "Expected a UUID"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:68
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:61
|
||||
#, fuzzy
|
||||
msgid "buffer_size must be >= 1"
|
||||
msgstr "Buffer müssen gleich lang sein"
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:72
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:65
|
||||
#, fuzzy
|
||||
msgid "Expected a Characteristic"
|
||||
msgstr "Kann das Merkmal nicht hinzufügen."
|
||||
@ -2201,20 +2200,20 @@ msgstr ""
|
||||
msgid "Can't advertise in Central mode"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:111
|
||||
#: shared-bindings/bleio/Peripheral.c:106
|
||||
msgid "services includes an object that is not a Service"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:124
|
||||
#: shared-bindings/bleio/Peripheral.c:119
|
||||
#, fuzzy
|
||||
msgid "name must be a string"
|
||||
msgstr "heap muss eine Liste sein"
|
||||
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
#: shared-bindings/bleio/Service.c:84
|
||||
msgid "characteristics includes an object that is not a Characteristic"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Service.c:96
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
msgid "Characteristic UUID doesn't match Service UUID"
|
||||
msgstr ""
|
||||
|
||||
@ -2235,19 +2234,19 @@ msgstr "Buffer müssen gleich lang sein"
|
||||
msgid "not a 128-bit UUID"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/I2C.c:120
|
||||
#: shared-bindings/busio/I2C.c:117
|
||||
msgid "Function requires lock."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:106
|
||||
#: shared-bindings/busio/UART.c:103
|
||||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:118
|
||||
#: shared-bindings/busio/UART.c:115
|
||||
msgid "stop must be 1 or 2"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:123
|
||||
#: shared-bindings/busio/UART.c:120
|
||||
msgid "timeout >100 (units are now seconds, not msecs)"
|
||||
msgstr ""
|
||||
|
||||
@ -2273,7 +2272,7 @@ msgstr ""
|
||||
msgid "Unsupported pull value."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c:84
|
||||
#: shared-bindings/displayio/Bitmap.c:84 shared-bindings/displayio/Shape.c:88
|
||||
msgid "y should be an int"
|
||||
msgstr ""
|
||||
|
||||
@ -2289,46 +2288,67 @@ msgstr ""
|
||||
msgid "color should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:55
|
||||
#: shared-bindings/displayio/FourWire.c:64
|
||||
#: shared-bindings/displayio/Display.c:119
|
||||
msgid "Too many displays"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Display.c:138
|
||||
msgid "Must be a Group subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:93
|
||||
#: shared-bindings/displayio/ParallelBus.c:98
|
||||
msgid "Too many display busses"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:106
|
||||
#: shared-bindings/displayio/ParallelBus.c:110
|
||||
msgid "displayio is a work in progress"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Group.c:65
|
||||
#: shared-bindings/displayio/Group.c:62
|
||||
msgid "Group must have size at least 1"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:96
|
||||
#: shared-bindings/displayio/Palette.c:93
|
||||
msgid "color buffer must be a bytearray or array of type 'b' or 'B'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:102
|
||||
#: shared-bindings/displayio/Palette.c:99
|
||||
msgid "color buffer must be 3 bytes (RGB) or 4 bytes (RGB + pad byte)"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:106
|
||||
#: shared-bindings/displayio/Palette.c:103
|
||||
msgid "color must be between 0x000000 and 0xffffff"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:110
|
||||
#: shared-bindings/displayio/Palette.c:107
|
||||
msgid "color buffer must be a buffer or int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:123
|
||||
#: shared-bindings/displayio/Palette.c:137
|
||||
#: shared-bindings/displayio/Palette.c:120
|
||||
#: shared-bindings/displayio/Palette.c:134
|
||||
msgid "palette_index should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:48
|
||||
#: shared-bindings/displayio/Shape.c:92
|
||||
msgid "start_x should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Shape.c:96
|
||||
msgid "end_x should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:49
|
||||
msgid "position must be 2-tuple"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:97
|
||||
#: shared-bindings/displayio/Sprite.c:102
|
||||
#, fuzzy
|
||||
msgid "unsupported bitmap type"
|
||||
msgstr "Baudrate wird nicht unterstütz"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:162
|
||||
#: shared-bindings/displayio/Sprite.c:167
|
||||
msgid "pixel_shader must be displayio.Palette or displayio.ColorConverter"
|
||||
msgstr ""
|
||||
|
||||
@ -2340,15 +2360,15 @@ msgstr ""
|
||||
msgid "expected a DigitalInOut"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:95
|
||||
msgid "can't convert address to int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:101
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
msgid "address out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:107
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:104
|
||||
msgid "addresses is empty"
|
||||
msgstr ""
|
||||
|
||||
@ -2390,29 +2410,29 @@ msgstr ""
|
||||
msgid "No hardware random available"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:164
|
||||
#: shared-bindings/pulseio/PWMOut.c:162
|
||||
msgid ""
|
||||
"PWM duty_cycle must be between 0 and 65535 inclusive (16 bit resolution)"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:195
|
||||
#: shared-bindings/pulseio/PWMOut.c:193
|
||||
msgid ""
|
||||
"PWM frequency not writable when variable_frequency is False on construction."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:275
|
||||
#: shared-bindings/pulseio/PulseIn.c:272
|
||||
msgid "Cannot delete values"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:281
|
||||
#: shared-bindings/pulseio/PulseIn.c:278
|
||||
msgid "Slices not supported"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:287
|
||||
#: shared-bindings/pulseio/PulseIn.c:284
|
||||
msgid "index must be int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:293
|
||||
#: shared-bindings/pulseio/PulseIn.c:290
|
||||
msgid "Read-only"
|
||||
msgstr ""
|
||||
|
||||
@ -2578,11 +2598,20 @@ msgstr ""
|
||||
msgid "row must be packed and word aligned"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c:62
|
||||
#, fuzzy
|
||||
msgid "Unsupported display bus type"
|
||||
msgstr "Baudrate wird nicht unterstütz"
|
||||
|
||||
#: shared-module/displayio/Group.c:39
|
||||
msgid "Group full"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Group.c:48
|
||||
#: shared-module/displayio/Group.c:46
|
||||
msgid "Layer must be a Group or Sprite subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Group.c:55
|
||||
msgid "Group empty"
|
||||
msgstr ""
|
||||
|
||||
@ -2601,6 +2630,19 @@ msgstr ""
|
||||
msgid "Only true color (24 bpp or higher) BMP supported %x"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c:60
|
||||
msgid "y value out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c:63
|
||||
msgid "x value out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c:67
|
||||
#, c-format
|
||||
msgid "Maximum x value when mirrored is %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/storage/__init__.c:155
|
||||
msgid "Cannot remount '/' when USB is active."
|
||||
msgstr "Kann '/' nicht remounten when USB aktiv ist"
|
||||
@ -2626,6 +2668,18 @@ msgstr "USB beschäftigt"
|
||||
msgid "USB Error"
|
||||
msgstr "USB Fehler"
|
||||
|
||||
#: supervisor/shared/board_busses.c:62
|
||||
msgid "No default I2C bus"
|
||||
msgstr "Kein Standard I2C Bus"
|
||||
|
||||
#: supervisor/shared/board_busses.c:91
|
||||
msgid "No default SPI bus"
|
||||
msgstr "Kein Standard SPI Bus"
|
||||
|
||||
#: supervisor/shared/board_busses.c:118
|
||||
msgid "No default UART bus"
|
||||
msgstr "Kein Standard UART Bus"
|
||||
|
||||
#: supervisor/shared/safe_mode.c:97
|
||||
msgid "You requested starting safe mode by "
|
||||
msgstr "Du hast das Starten im Sicherheitsmodus ausgelöst durch "
|
||||
@ -2688,31 +2742,19 @@ msgstr ""
|
||||
#~ msgid "Invalid UUID string length"
|
||||
#~ msgstr "Ungültige UUID-Stringlänge"
|
||||
|
||||
#~ msgid "Invalid UUID parameter"
|
||||
#~ msgstr "Ungültiger UUID-Parameter"
|
||||
|
||||
#~ msgid "Invalid Service type"
|
||||
#~ msgstr "Ungültiger Diensttyp"
|
||||
|
||||
#~ msgid "Can not apply advertisement data. status: 0x%02x"
|
||||
#~ msgstr "Kann advertisement data nicht anwenden. Status: 0x%02x"
|
||||
#~ msgid "Can encode UUID into the advertisement packet."
|
||||
#~ msgstr "Kann UUID in das advertisement packet kodieren."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
|
||||
#~ msgstr ""
|
||||
#~ "Bitte erstelle ein issue hier mit dem Inhalt deines CIRCUITPY-speichers:\n"
|
||||
|
||||
#~ msgid "Can not encode UUID, to check length."
|
||||
#~ msgstr "Kann UUID nicht kodieren, um die Länge zu überprüfen."
|
||||
#~ msgid "Invalid UUID parameter"
|
||||
#~ msgstr "Ungültiger UUID-Parameter"
|
||||
|
||||
#~ msgid "Can not add Characteristic."
|
||||
#~ msgstr "Kann das Merkmal nicht hinzufügen."
|
||||
|
||||
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
|
||||
#~ msgstr "CircuitPython ist abgestürzt. Ups!\n"
|
||||
|
||||
#~ msgid "Cannot apply GAP parameters."
|
||||
#~ msgstr "Kann GAP Parameter nicht anwenden."
|
||||
#~ msgid "Invalid Service type"
|
||||
#~ msgstr "Ungültiger Diensttyp"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "enough power for the whole circuit and press reset (after ejecting "
|
||||
@ -2721,14 +2763,26 @@ msgstr ""
|
||||
#~ "genug Strom für den ganzen Schaltkreis liefert und drücke reset (nach dem "
|
||||
#~ "sicheren Auswerfen von CIRCUITPY.)\n"
|
||||
|
||||
#~ msgid "Can encode UUID into the advertisement packet."
|
||||
#~ msgstr "Kann UUID in das advertisement packet kodieren."
|
||||
#~ msgid "Can not apply device name in the stack."
|
||||
#~ msgstr "Der Gerätename kann nicht im Stack verwendet werden."
|
||||
|
||||
#~ msgid "Can not query for the device address."
|
||||
#~ msgstr "Kann nicht nach der Geräteadresse suchen."
|
||||
|
||||
#~ msgid "Can not encode UUID, to check length."
|
||||
#~ msgstr "Kann UUID nicht kodieren, um die Länge zu überprüfen."
|
||||
|
||||
#~ msgid "Cannot apply GAP parameters."
|
||||
#~ msgstr "Kann GAP Parameter nicht anwenden."
|
||||
|
||||
#~ msgid "Can not apply advertisement data. status: 0x%02x"
|
||||
#~ msgstr "Kann advertisement data nicht anwenden. Status: 0x%02x"
|
||||
|
||||
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
|
||||
#~ msgstr "CircuitPython ist abgestürzt. Ups!\n"
|
||||
|
||||
#~ msgid "Can not add Service."
|
||||
#~ msgstr "Kann den Dienst nicht hinzufügen."
|
||||
|
||||
#~ msgid "Can not apply device name in the stack."
|
||||
#~ msgstr "Der Gerätename kann nicht im Stack verwendet werden."
|
||||
#~ msgid "Can not add Characteristic."
|
||||
#~ msgstr "Kann das Merkmal nicht hinzufügen."
|
||||
|
265
locale/en_US.po
265
locale/en_US.po
@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2019-01-10 21:31-0500\n"
|
||||
"POT-Creation-Date: 2019-01-20 17:33-0800\n"
|
||||
"PO-Revision-Date: 2018-07-27 11:55-0700\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
@ -21,8 +21,8 @@ msgstr ""
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c:340 extmod/machine_i2c.c:354 extmod/machine_i2c.c:368
|
||||
#: extmod/machine_i2c.c:392
|
||||
#: extmod/machine_i2c.c:338 extmod/machine_i2c.c:352 extmod/machine_i2c.c:366
|
||||
#: extmod/machine_i2c.c:390
|
||||
msgid "I2C operation not supported"
|
||||
msgstr ""
|
||||
|
||||
@ -151,37 +151,37 @@ msgstr ""
|
||||
msgid "script compilation not supported"
|
||||
msgstr ""
|
||||
|
||||
#: main.c:150
|
||||
#: main.c:155
|
||||
msgid " output:\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c:164 main.c:237
|
||||
#: main.c:169 main.c:247
|
||||
msgid ""
|
||||
"Auto-reload is on. Simply save files over USB to run them or enter REPL to "
|
||||
"disable.\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c:166
|
||||
#: main.c:171
|
||||
msgid "Running in safe mode! Auto-reload is off.\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c:168 main.c:239
|
||||
#: main.c:173 main.c:249
|
||||
msgid "Auto-reload is off.\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c:182
|
||||
#: main.c:187
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c:198
|
||||
#: main.c:203
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c:244
|
||||
#: main.c:254
|
||||
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
|
||||
msgstr ""
|
||||
|
||||
#: main.c:407
|
||||
#: main.c:417
|
||||
msgid "soft reboot\n"
|
||||
msgstr ""
|
||||
|
||||
@ -198,18 +198,6 @@ msgstr ""
|
||||
msgid "calibration is out of range"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:59 ports/nrf/board_busses.c:39
|
||||
msgid "No default I2C bus"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:85 ports/nrf/board_busses.c:64
|
||||
msgid "No default SPI bus"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:112 ports/nrf/board_busses.c:91
|
||||
msgid "No default UART bus"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/analogio/AnalogIn.c:63
|
||||
#: ports/nrf/common-hal/analogio/AnalogIn.c:39
|
||||
msgid "Pin does not have ADC capabilities"
|
||||
@ -326,7 +314,7 @@ msgid "Not enough pins available"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c:78
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:171
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:176
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c:120
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c:45
|
||||
#: ports/nrf/common-hal/busio/I2C.c:84
|
||||
@ -374,6 +362,17 @@ msgstr ""
|
||||
msgid "Cannot get pull while in output mode"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:43
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:43
|
||||
msgid "Data 0 pin must be byte aligned"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:47
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:47
|
||||
#, c-format
|
||||
msgid "Bus pin %d is already in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/microcontroller/__init__.c:74
|
||||
#: ports/esp8266/common-hal/microcontroller/__init__.c:64
|
||||
msgid "Cannot reset into bootloader because no bootloader is present."
|
||||
@ -874,46 +873,46 @@ msgstr ""
|
||||
msgid "[addrinfo error %d]"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:44
|
||||
#: py/argcheck.c:53
|
||||
msgid "function does not take keyword arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:54 py/bc.c:85 py/objnamedtuple.c:104
|
||||
#: py/argcheck.c:63 py/bc.c:85 py/objnamedtuple.c:108
|
||||
#, c-format
|
||||
msgid "function takes %d positional arguments but %d were given"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:64
|
||||
#: py/argcheck.c:73
|
||||
#, c-format
|
||||
msgid "function missing %d required positional arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:72
|
||||
#: py/argcheck.c:81
|
||||
#, c-format
|
||||
msgid "function expected at most %d arguments, got %d"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:97
|
||||
#: py/argcheck.c:106
|
||||
msgid "'%q' argument required"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:122
|
||||
#: py/argcheck.c:131
|
||||
msgid "extra positional arguments given"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:130
|
||||
#: py/argcheck.c:139
|
||||
msgid "extra keyword arguments given"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:142
|
||||
#: py/argcheck.c:151
|
||||
msgid "argument num/types mismatch"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:147
|
||||
#: py/argcheck.c:156
|
||||
msgid "keyword argument(s) not yet implemented - use normal args instead"
|
||||
msgstr ""
|
||||
|
||||
#: py/bc.c:88 py/objnamedtuple.c:108
|
||||
#: py/bc.c:88 py/objnamedtuple.c:112
|
||||
msgid "%q() takes %d positional arguments but %d were given"
|
||||
msgstr ""
|
||||
|
||||
@ -925,11 +924,11 @@ msgstr ""
|
||||
msgid "keywords must be strings"
|
||||
msgstr ""
|
||||
|
||||
#: py/bc.c:206 py/objnamedtuple.c:138
|
||||
#: py/bc.c:206 py/objnamedtuple.c:142
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr ""
|
||||
|
||||
#: py/bc.c:218 py/objnamedtuple.c:130
|
||||
#: py/bc.c:218 py/objnamedtuple.c:134
|
||||
msgid "unexpected keyword argument '%q'"
|
||||
msgstr ""
|
||||
|
||||
@ -1511,11 +1510,11 @@ msgstr ""
|
||||
msgid "empty"
|
||||
msgstr ""
|
||||
|
||||
#: py/objdict.c:314
|
||||
#: py/objdict.c:315
|
||||
msgid "popitem(): dictionary is empty"
|
||||
msgstr ""
|
||||
|
||||
#: py/objdict.c:357
|
||||
#: py/objdict.c:358
|
||||
msgid "dict update sequence has wrong length"
|
||||
msgstr ""
|
||||
|
||||
@ -1776,69 +1775,69 @@ msgstr ""
|
||||
msgid "string index out of range"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:358
|
||||
#: py/objtype.c:368
|
||||
msgid "__init__() should return None"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:360
|
||||
#: py/objtype.c:370
|
||||
#, c-format
|
||||
msgid "__init__() should return None, not '%s'"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:623 py/objtype.c:1275 py/runtime.c:1065
|
||||
#: py/objtype.c:633 py/objtype.c:1287 py/runtime.c:1065
|
||||
msgid "unreadable attribute"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:868 py/runtime.c:653
|
||||
#: py/objtype.c:878 py/runtime.c:653
|
||||
msgid "object not callable"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:870 py/runtime.c:655
|
||||
#: py/objtype.c:880 py/runtime.c:655
|
||||
#, c-format
|
||||
msgid "'%s' object is not callable"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:978
|
||||
#: py/objtype.c:988
|
||||
msgid "type takes 1 or 3 arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:989
|
||||
#: py/objtype.c:999
|
||||
msgid "cannot create instance"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:991
|
||||
#: py/objtype.c:1001
|
||||
msgid "cannot create '%q' instances"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1047
|
||||
#: py/objtype.c:1059
|
||||
msgid "can't add special method to already-subclassed class"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1091 py/objtype.c:1097
|
||||
#: py/objtype.c:1103 py/objtype.c:1109
|
||||
msgid "type is not an acceptable base type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1100
|
||||
#: py/objtype.c:1112
|
||||
msgid "type '%q' is not an acceptable base type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1137
|
||||
#: py/objtype.c:1149
|
||||
msgid "multiple inheritance not supported"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1164
|
||||
#: py/objtype.c:1176
|
||||
msgid "multiple bases have instance lay-out conflict"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1205
|
||||
#: py/objtype.c:1217
|
||||
msgid "first argument to super() must be type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1370
|
||||
#: py/objtype.c:1382
|
||||
msgid "issubclass() arg 2 must be a class or a tuple of classes"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1384
|
||||
#: py/objtype.c:1396
|
||||
msgid "issubclass() arg 1 must be a class"
|
||||
msgstr ""
|
||||
|
||||
@ -2034,8 +2033,8 @@ msgstr ""
|
||||
msgid "AnalogOut is only 16 bits. Value must be less than 65536."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiobusio/I2SOut.c:225
|
||||
#: shared-bindings/audioio/AudioOut.c:226
|
||||
#: shared-bindings/audiobusio/I2SOut.c:222
|
||||
#: shared-bindings/audioio/AudioOut.c:223
|
||||
msgid "Not playing"
|
||||
msgstr ""
|
||||
|
||||
@ -2072,29 +2071,29 @@ msgid ""
|
||||
"destination buffer must be a bytearray or array of type 'B' for bit_depth = 8"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:94
|
||||
#: shared-bindings/audioio/Mixer.c:91
|
||||
msgid "Invalid voice count"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:99
|
||||
#: shared-bindings/audioio/Mixer.c:96
|
||||
msgid "Invalid channel count"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:103
|
||||
#: shared-bindings/audioio/Mixer.c:100
|
||||
msgid "Sample rate must be positive"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:107
|
||||
#: shared-bindings/audioio/Mixer.c:104
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:98
|
||||
#: shared-bindings/audioio/RawSample.c:95
|
||||
msgid ""
|
||||
"sample_source buffer must be a bytearray or array of type 'h', 'H', 'b' or "
|
||||
"'B'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:104
|
||||
#: shared-bindings/audioio/RawSample.c:101
|
||||
msgid "buffer must be a bytes-like object"
|
||||
msgstr ""
|
||||
|
||||
@ -2103,51 +2102,51 @@ msgstr ""
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:111 shared-bindings/bitbangio/SPI.c:121
|
||||
#: shared-bindings/busio/SPI.c:133
|
||||
#: shared-bindings/bitbangio/I2C.c:109 shared-bindings/bitbangio/SPI.c:119
|
||||
#: shared-bindings/busio/SPI.c:130
|
||||
msgid "Function requires lock"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:195 shared-bindings/busio/I2C.c:210
|
||||
#: shared-bindings/bitbangio/I2C.c:193 shared-bindings/busio/I2C.c:207
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:151 shared-bindings/busio/SPI.c:175
|
||||
#: shared-bindings/bitbangio/SPI.c:149 shared-bindings/busio/SPI.c:172
|
||||
msgid "Invalid polarity"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:155 shared-bindings/busio/SPI.c:179
|
||||
#: shared-bindings/bitbangio/SPI.c:153 shared-bindings/busio/SPI.c:176
|
||||
msgid "Invalid phase"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:159 shared-bindings/busio/SPI.c:183
|
||||
#: shared-bindings/bitbangio/SPI.c:157 shared-bindings/busio/SPI.c:180
|
||||
msgid "Invalid number of bits"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:284 shared-bindings/busio/SPI.c:348
|
||||
#: shared-bindings/bitbangio/SPI.c:282 shared-bindings/busio/SPI.c:345
|
||||
msgid "buffer slices must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Address.c:119
|
||||
#: shared-bindings/bleio/Address.c:115
|
||||
#, c-format
|
||||
msgid "Address is not %d bytes long or is in wrong format"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Address.c:126
|
||||
#: shared-bindings/bleio/Address.c:122
|
||||
#, c-format
|
||||
msgid "Address must be %d bytes long"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Characteristic.c:81
|
||||
#: shared-bindings/bleio/Descriptor.c:93 shared-bindings/bleio/Service.c:78
|
||||
#: shared-bindings/bleio/Characteristic.c:74
|
||||
#: shared-bindings/bleio/Descriptor.c:86 shared-bindings/bleio/Service.c:66
|
||||
msgid "Expected a UUID"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:68
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:61
|
||||
msgid "buffer_size must be >= 1"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:72
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:65
|
||||
msgid "Expected a Characteristic"
|
||||
msgstr ""
|
||||
|
||||
@ -2167,19 +2166,19 @@ msgstr ""
|
||||
msgid "Can't advertise in Central mode"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:111
|
||||
#: shared-bindings/bleio/Peripheral.c:106
|
||||
msgid "services includes an object that is not a Service"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:124
|
||||
#: shared-bindings/bleio/Peripheral.c:119
|
||||
msgid "name must be a string"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
#: shared-bindings/bleio/Service.c:84
|
||||
msgid "characteristics includes an object that is not a Characteristic"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Service.c:96
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
msgid "Characteristic UUID doesn't match Service UUID"
|
||||
msgstr ""
|
||||
|
||||
@ -2199,19 +2198,19 @@ msgstr ""
|
||||
msgid "not a 128-bit UUID"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/I2C.c:120
|
||||
#: shared-bindings/busio/I2C.c:117
|
||||
msgid "Function requires lock."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:106
|
||||
#: shared-bindings/busio/UART.c:103
|
||||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:118
|
||||
#: shared-bindings/busio/UART.c:115
|
||||
msgid "stop must be 1 or 2"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:123
|
||||
#: shared-bindings/busio/UART.c:120
|
||||
msgid "timeout >100 (units are now seconds, not msecs)"
|
||||
msgstr ""
|
||||
|
||||
@ -2237,7 +2236,7 @@ msgstr ""
|
||||
msgid "Unsupported pull value."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c:84
|
||||
#: shared-bindings/displayio/Bitmap.c:84 shared-bindings/displayio/Shape.c:88
|
||||
msgid "y should be an int"
|
||||
msgstr ""
|
||||
|
||||
@ -2253,45 +2252,66 @@ msgstr ""
|
||||
msgid "color should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:55
|
||||
#: shared-bindings/displayio/FourWire.c:64
|
||||
#: shared-bindings/displayio/Display.c:119
|
||||
msgid "Too many displays"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Display.c:138
|
||||
msgid "Must be a Group subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:93
|
||||
#: shared-bindings/displayio/ParallelBus.c:98
|
||||
msgid "Too many display busses"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:106
|
||||
#: shared-bindings/displayio/ParallelBus.c:110
|
||||
msgid "displayio is a work in progress"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Group.c:65
|
||||
#: shared-bindings/displayio/Group.c:62
|
||||
msgid "Group must have size at least 1"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:96
|
||||
#: shared-bindings/displayio/Palette.c:93
|
||||
msgid "color buffer must be a bytearray or array of type 'b' or 'B'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:102
|
||||
#: shared-bindings/displayio/Palette.c:99
|
||||
msgid "color buffer must be 3 bytes (RGB) or 4 bytes (RGB + pad byte)"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:106
|
||||
#: shared-bindings/displayio/Palette.c:103
|
||||
msgid "color must be between 0x000000 and 0xffffff"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:110
|
||||
#: shared-bindings/displayio/Palette.c:107
|
||||
msgid "color buffer must be a buffer or int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:123
|
||||
#: shared-bindings/displayio/Palette.c:137
|
||||
#: shared-bindings/displayio/Palette.c:120
|
||||
#: shared-bindings/displayio/Palette.c:134
|
||||
msgid "palette_index should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:48
|
||||
#: shared-bindings/displayio/Shape.c:92
|
||||
msgid "start_x should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Shape.c:96
|
||||
msgid "end_x should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:49
|
||||
msgid "position must be 2-tuple"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:97
|
||||
#: shared-bindings/displayio/Sprite.c:102
|
||||
msgid "unsupported bitmap type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:162
|
||||
#: shared-bindings/displayio/Sprite.c:167
|
||||
msgid "pixel_shader must be displayio.Palette or displayio.ColorConverter"
|
||||
msgstr ""
|
||||
|
||||
@ -2303,15 +2323,15 @@ msgstr ""
|
||||
msgid "expected a DigitalInOut"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:95
|
||||
msgid "can't convert address to int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:101
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
msgid "address out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:107
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:104
|
||||
msgid "addresses is empty"
|
||||
msgstr ""
|
||||
|
||||
@ -2353,29 +2373,29 @@ msgstr ""
|
||||
msgid "No hardware random available"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:164
|
||||
#: shared-bindings/pulseio/PWMOut.c:162
|
||||
msgid ""
|
||||
"PWM duty_cycle must be between 0 and 65535 inclusive (16 bit resolution)"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:195
|
||||
#: shared-bindings/pulseio/PWMOut.c:193
|
||||
msgid ""
|
||||
"PWM frequency not writable when variable_frequency is False on construction."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:275
|
||||
#: shared-bindings/pulseio/PulseIn.c:272
|
||||
msgid "Cannot delete values"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:281
|
||||
#: shared-bindings/pulseio/PulseIn.c:278
|
||||
msgid "Slices not supported"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:287
|
||||
#: shared-bindings/pulseio/PulseIn.c:284
|
||||
msgid "index must be int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:293
|
||||
#: shared-bindings/pulseio/PulseIn.c:290
|
||||
msgid "Read-only"
|
||||
msgstr ""
|
||||
|
||||
@ -2541,11 +2561,19 @@ msgstr ""
|
||||
msgid "row must be packed and word aligned"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c:62
|
||||
msgid "Unsupported display bus type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Group.c:39
|
||||
msgid "Group full"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Group.c:48
|
||||
#: shared-module/displayio/Group.c:46
|
||||
msgid "Layer must be a Group or Sprite subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Group.c:55
|
||||
msgid "Group empty"
|
||||
msgstr ""
|
||||
|
||||
@ -2563,6 +2591,19 @@ msgstr ""
|
||||
msgid "Only true color (24 bpp or higher) BMP supported %x"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c:60
|
||||
msgid "y value out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c:63
|
||||
msgid "x value out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c:67
|
||||
#, c-format
|
||||
msgid "Maximum x value when mirrored is %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/storage/__init__.c:155
|
||||
msgid "Cannot remount '/' when USB is active."
|
||||
msgstr ""
|
||||
@ -2588,6 +2629,18 @@ msgstr ""
|
||||
msgid "USB Error"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/board_busses.c:62
|
||||
msgid "No default I2C bus"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/board_busses.c:91
|
||||
msgid "No default SPI bus"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/board_busses.c:118
|
||||
msgid "No default UART bus"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c:97
|
||||
msgid "You requested starting safe mode by "
|
||||
msgstr ""
|
||||
|
367
locale/es.po
367
locale/es.po
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2019-01-10 21:32-0500\n"
|
||||
"POT-Creation-Date: 2019-01-20 17:33-0800\n"
|
||||
"PO-Revision-Date: 2018-08-24 22:56-0500\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
@ -22,8 +22,8 @@ msgstr ""
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "periférico I2C inválido"
|
||||
|
||||
#: extmod/machine_i2c.c:340 extmod/machine_i2c.c:354 extmod/machine_i2c.c:368
|
||||
#: extmod/machine_i2c.c:392
|
||||
#: extmod/machine_i2c.c:338 extmod/machine_i2c.c:352 extmod/machine_i2c.c:366
|
||||
#: extmod/machine_i2c.c:390
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "operación I2C no soportada"
|
||||
|
||||
@ -152,11 +152,11 @@ msgstr "argumentos inválidos"
|
||||
msgid "script compilation not supported"
|
||||
msgstr "script de compilación no soportado"
|
||||
|
||||
#: main.c:150
|
||||
#: main.c:155
|
||||
msgid " output:\n"
|
||||
msgstr " salida:\n"
|
||||
|
||||
#: main.c:164 main.c:237
|
||||
#: main.c:169 main.c:247
|
||||
msgid ""
|
||||
"Auto-reload is on. Simply save files over USB to run them or enter REPL to "
|
||||
"disable.\n"
|
||||
@ -164,28 +164,28 @@ msgstr ""
|
||||
"Auto-reload habilitado. Simplemente guarda los archivos via USB para "
|
||||
"ejecutarlos o entra al REPL para desabilitarlos.\n"
|
||||
|
||||
#: main.c:166
|
||||
#: main.c:171
|
||||
msgid "Running in safe mode! Auto-reload is off.\n"
|
||||
msgstr "Ejecutando en modo seguro! La auto-recarga esta deshabilitada.\n"
|
||||
|
||||
#: main.c:168 main.c:239
|
||||
#: main.c:173 main.c:249
|
||||
msgid "Auto-reload is off.\n"
|
||||
msgstr "Auto-recarga deshabilitada.\n"
|
||||
|
||||
#: main.c:182
|
||||
#: main.c:187
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Ejecutando en modo seguro! No se esta ejecutando el código guardado.\n"
|
||||
|
||||
#: main.c:198
|
||||
#: main.c:203
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "ADVERTENCIA: El nombre de archivo de tu código tiene dos extensiones\n"
|
||||
|
||||
#: main.c:244
|
||||
#: main.c:254
|
||||
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
|
||||
msgstr ""
|
||||
"Presiona cualquier tecla para entrar al REPL. Usa CTRL-D para recargar."
|
||||
|
||||
#: main.c:407
|
||||
#: main.c:417
|
||||
msgid "soft reboot\n"
|
||||
msgstr "reinicio suave\n"
|
||||
|
||||
@ -204,18 +204,6 @@ msgstr "calibration es de solo lectura"
|
||||
msgid "calibration is out of range"
|
||||
msgstr "calibration esta fuera de rango"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:59 ports/nrf/board_busses.c:39
|
||||
msgid "No default I2C bus"
|
||||
msgstr "Sin bus I2C por defecto"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:85 ports/nrf/board_busses.c:64
|
||||
msgid "No default SPI bus"
|
||||
msgstr "Sin bus SPI por defecto"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:112 ports/nrf/board_busses.c:91
|
||||
msgid "No default UART bus"
|
||||
msgstr "Sin bus UART por defecto"
|
||||
|
||||
#: ports/atmel-samd/common-hal/analogio/AnalogIn.c:63
|
||||
#: ports/nrf/common-hal/analogio/AnalogIn.c:39
|
||||
msgid "Pin does not have ADC capabilities"
|
||||
@ -332,7 +320,7 @@ msgid "Not enough pins available"
|
||||
msgstr "No hay suficientes pines disponibles"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c:78
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:171
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:176
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c:120
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c:45
|
||||
#: ports/nrf/common-hal/busio/I2C.c:84
|
||||
@ -380,6 +368,18 @@ msgstr "Sin pin TX"
|
||||
msgid "Cannot get pull while in output mode"
|
||||
msgstr "No puede ser pull mientras este en modo de salida"
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:43
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:43
|
||||
#, fuzzy
|
||||
msgid "Data 0 pin must be byte aligned"
|
||||
msgstr "graphic debe ser 2048 bytes de largo"
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:47
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:47
|
||||
#, fuzzy, c-format
|
||||
msgid "Bus pin %d is already in use"
|
||||
msgstr "DAC ya está siendo utilizado"
|
||||
|
||||
#: ports/atmel-samd/common-hal/microcontroller/__init__.c:74
|
||||
#: ports/esp8266/common-hal/microcontroller/__init__.c:64
|
||||
msgid "Cannot reset into bootloader because no bootloader is present."
|
||||
@ -897,48 +897,48 @@ msgstr "No se sabe cómo pasar objeto a función nativa"
|
||||
msgid "[addrinfo error %d]"
|
||||
msgstr "[addrinfo error %d]"
|
||||
|
||||
#: py/argcheck.c:44
|
||||
#: py/argcheck.c:53
|
||||
msgid "function does not take keyword arguments"
|
||||
msgstr "la función no tiene argumentos por palabra clave"
|
||||
|
||||
#: py/argcheck.c:54 py/bc.c:85 py/objnamedtuple.c:104
|
||||
#: py/argcheck.c:63 py/bc.c:85 py/objnamedtuple.c:108
|
||||
#, c-format
|
||||
msgid "function takes %d positional arguments but %d were given"
|
||||
msgstr "la función toma %d argumentos posicionales pero le fueron dados %d"
|
||||
|
||||
#: py/argcheck.c:64
|
||||
#: py/argcheck.c:73
|
||||
#, c-format
|
||||
msgid "function missing %d required positional arguments"
|
||||
msgstr "a la función le hacen falta %d argumentos posicionales requeridos"
|
||||
|
||||
#: py/argcheck.c:72
|
||||
#: py/argcheck.c:81
|
||||
#, c-format
|
||||
msgid "function expected at most %d arguments, got %d"
|
||||
msgstr "la función esperaba minimo %d argumentos, tiene %d"
|
||||
|
||||
#: py/argcheck.c:97
|
||||
#: py/argcheck.c:106
|
||||
msgid "'%q' argument required"
|
||||
msgstr "argumento '%q' requerido"
|
||||
|
||||
#: py/argcheck.c:122
|
||||
#: py/argcheck.c:131
|
||||
msgid "extra positional arguments given"
|
||||
msgstr "argumento posicional adicional dado"
|
||||
|
||||
#: py/argcheck.c:130
|
||||
#: py/argcheck.c:139
|
||||
msgid "extra keyword arguments given"
|
||||
msgstr "argumento(s) por palabra clave adicionales fueron dados"
|
||||
|
||||
#: py/argcheck.c:142
|
||||
#: py/argcheck.c:151
|
||||
msgid "argument num/types mismatch"
|
||||
msgstr "argumento número/tipos no coinciden"
|
||||
|
||||
#: py/argcheck.c:147
|
||||
#: py/argcheck.c:156
|
||||
msgid "keyword argument(s) not yet implemented - use normal args instead"
|
||||
msgstr ""
|
||||
"argumento(s) por palabra clave aún no implementados - usa argumentos "
|
||||
"normales en su lugar"
|
||||
|
||||
#: py/bc.c:88 py/objnamedtuple.c:108
|
||||
#: py/bc.c:88 py/objnamedtuple.c:112
|
||||
msgid "%q() takes %d positional arguments but %d were given"
|
||||
msgstr "%q() toma %d argumentos posicionales pero %d fueron dados"
|
||||
|
||||
@ -950,11 +950,11 @@ msgstr "argumento por palabra clave inesperado"
|
||||
msgid "keywords must be strings"
|
||||
msgstr "palabras clave deben ser strings"
|
||||
|
||||
#: py/bc.c:206 py/objnamedtuple.c:138
|
||||
#: py/bc.c:206 py/objnamedtuple.c:142
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr "la función tiene múltiples valores para el argumento '%q'"
|
||||
|
||||
#: py/bc.c:218 py/objnamedtuple.c:130
|
||||
#: py/bc.c:218 py/objnamedtuple.c:134
|
||||
msgid "unexpected keyword argument '%q'"
|
||||
msgstr "argumento por palabra clave inesperado '%q'"
|
||||
|
||||
@ -1546,11 +1546,11 @@ msgstr "lleno"
|
||||
msgid "empty"
|
||||
msgstr "vacío"
|
||||
|
||||
#: py/objdict.c:314
|
||||
#: py/objdict.c:315
|
||||
msgid "popitem(): dictionary is empty"
|
||||
msgstr "popitem(): diccionario vacío"
|
||||
|
||||
#: py/objdict.c:357
|
||||
#: py/objdict.c:358
|
||||
msgid "dict update sequence has wrong length"
|
||||
msgstr "la secuencia de actualizacion del dict tiene una longitud incorrecta"
|
||||
|
||||
@ -1731,7 +1731,9 @@ msgstr "atributos aún no soportados"
|
||||
#: py/objstr.c:1079
|
||||
msgid ""
|
||||
"can't switch from manual field specification to automatic field numbering"
|
||||
msgstr "no se puede cambiar de especificación de campo manual a numeración automática de campos"
|
||||
msgstr ""
|
||||
"no se puede cambiar de especificación de campo manual a numeración "
|
||||
"automática de campos"
|
||||
|
||||
#: py/objstr.c:1171
|
||||
msgid "invalid format specifier"
|
||||
@ -1796,7 +1798,8 @@ msgstr "carácter no soportado '%c' (0x%x) en índice %d"
|
||||
|
||||
#: py/objstr.c:1577
|
||||
msgid "not all arguments converted during string formatting"
|
||||
msgstr "no todos los argumentos fueron convertidos durante el formato de string"
|
||||
msgstr ""
|
||||
"no todos los argumentos fueron convertidos durante el formato de string"
|
||||
|
||||
#: py/objstr.c:2102
|
||||
msgid "can't convert to str implicitly"
|
||||
@ -1815,69 +1818,69 @@ msgstr "índices de string deben ser enteros, no %s"
|
||||
msgid "string index out of range"
|
||||
msgstr "string index fuera de rango"
|
||||
|
||||
#: py/objtype.c:358
|
||||
#: py/objtype.c:368
|
||||
msgid "__init__() should return None"
|
||||
msgstr "__init__() deberia devolver None"
|
||||
|
||||
#: py/objtype.c:360
|
||||
#: py/objtype.c:370
|
||||
#, c-format
|
||||
msgid "__init__() should return None, not '%s'"
|
||||
msgstr "__init__() deberia devolver None, no '%s'"
|
||||
|
||||
#: py/objtype.c:623 py/objtype.c:1275 py/runtime.c:1065
|
||||
#: py/objtype.c:633 py/objtype.c:1287 py/runtime.c:1065
|
||||
msgid "unreadable attribute"
|
||||
msgstr "atributo no legible"
|
||||
|
||||
#: py/objtype.c:868 py/runtime.c:653
|
||||
#: py/objtype.c:878 py/runtime.c:653
|
||||
msgid "object not callable"
|
||||
msgstr "objeto no puede ser llamado"
|
||||
|
||||
#: py/objtype.c:870 py/runtime.c:655
|
||||
#: py/objtype.c:880 py/runtime.c:655
|
||||
#, c-format
|
||||
msgid "'%s' object is not callable"
|
||||
msgstr "objeto '%s' no puede ser llamado"
|
||||
|
||||
#: py/objtype.c:978
|
||||
#: py/objtype.c:988
|
||||
msgid "type takes 1 or 3 arguments"
|
||||
msgstr "type acepta 1 o 3 argumentos"
|
||||
|
||||
#: py/objtype.c:989
|
||||
#: py/objtype.c:999
|
||||
msgid "cannot create instance"
|
||||
msgstr "no se puede crear instancia"
|
||||
|
||||
#: py/objtype.c:991
|
||||
#: py/objtype.c:1001
|
||||
msgid "cannot create '%q' instances"
|
||||
msgstr "no se pueden crear '%q' instancias"
|
||||
|
||||
#: py/objtype.c:1047
|
||||
#: py/objtype.c:1059
|
||||
msgid "can't add special method to already-subclassed class"
|
||||
msgstr "no se puede agregar un método a una clase ya subclasificada"
|
||||
|
||||
#: py/objtype.c:1091 py/objtype.c:1097
|
||||
#: py/objtype.c:1103 py/objtype.c:1109
|
||||
msgid "type is not an acceptable base type"
|
||||
msgstr "type no es un tipo de base aceptable"
|
||||
|
||||
#: py/objtype.c:1100
|
||||
#: py/objtype.c:1112
|
||||
msgid "type '%q' is not an acceptable base type"
|
||||
msgstr "type '%q' no es un tipo de base aceptable"
|
||||
|
||||
#: py/objtype.c:1137
|
||||
#: py/objtype.c:1149
|
||||
msgid "multiple inheritance not supported"
|
||||
msgstr "herencia multiple no soportada"
|
||||
|
||||
#: py/objtype.c:1164
|
||||
#: py/objtype.c:1176
|
||||
msgid "multiple bases have instance lay-out conflict"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1205
|
||||
#: py/objtype.c:1217
|
||||
msgid "first argument to super() must be type"
|
||||
msgstr "primer argumento para super() debe ser de tipo"
|
||||
|
||||
#: py/objtype.c:1370
|
||||
#: py/objtype.c:1382
|
||||
msgid "issubclass() arg 2 must be a class or a tuple of classes"
|
||||
msgstr "issubclass() arg 2 debe ser una clase o tuple de clases"
|
||||
|
||||
#: py/objtype.c:1384
|
||||
#: py/objtype.c:1396
|
||||
msgid "issubclass() arg 1 must be a class"
|
||||
msgstr "issubclass() arg 1 debe ser una clase"
|
||||
|
||||
@ -2075,8 +2078,8 @@ msgstr "chars buffer muy pequeño"
|
||||
msgid "AnalogOut is only 16 bits. Value must be less than 65536."
|
||||
msgstr "AnalogOut es solo de 16 bits. Value debe ser menos a 65536."
|
||||
|
||||
#: shared-bindings/audiobusio/I2SOut.c:225
|
||||
#: shared-bindings/audioio/AudioOut.c:226
|
||||
#: shared-bindings/audiobusio/I2SOut.c:222
|
||||
#: shared-bindings/audioio/AudioOut.c:223
|
||||
msgid "Not playing"
|
||||
msgstr ""
|
||||
|
||||
@ -2115,23 +2118,23 @@ msgstr ""
|
||||
"el buffer de destino debe ser un bytearray o array de tipo 'B' para "
|
||||
"bit_depth = 8"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:94
|
||||
#: shared-bindings/audioio/Mixer.c:91
|
||||
msgid "Invalid voice count"
|
||||
msgstr "Cuenta de voces inválida"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:99
|
||||
#: shared-bindings/audioio/Mixer.c:96
|
||||
msgid "Invalid channel count"
|
||||
msgstr "Cuenta de canales inválida"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:103
|
||||
#: shared-bindings/audioio/Mixer.c:100
|
||||
msgid "Sample rate must be positive"
|
||||
msgstr "Sample rate debe ser positivo"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:107
|
||||
#: shared-bindings/audioio/Mixer.c:104
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr "bits_per_sample debe ser 8 o 16"
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:98
|
||||
#: shared-bindings/audioio/RawSample.c:95
|
||||
msgid ""
|
||||
"sample_source buffer must be a bytearray or array of type 'h', 'H', 'b' or "
|
||||
"'B'"
|
||||
@ -2139,7 +2142,7 @@ msgstr ""
|
||||
"sample_source buffer debe ser un bytearray o un array de tipo 'h', 'H', 'b' "
|
||||
"o'B'"
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:104
|
||||
#: shared-bindings/audioio/RawSample.c:101
|
||||
msgid "buffer must be a bytes-like object"
|
||||
msgstr "buffer debe de ser un objeto bytes-like"
|
||||
|
||||
@ -2148,53 +2151,53 @@ msgstr "buffer debe de ser un objeto bytes-like"
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr "el archivo deberia ser una archivo abierto en modo byte"
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:111 shared-bindings/bitbangio/SPI.c:121
|
||||
#: shared-bindings/busio/SPI.c:133
|
||||
#: shared-bindings/bitbangio/I2C.c:109 shared-bindings/bitbangio/SPI.c:119
|
||||
#: shared-bindings/busio/SPI.c:130
|
||||
msgid "Function requires lock"
|
||||
msgstr "La función requiere lock"
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:195 shared-bindings/busio/I2C.c:210
|
||||
#: shared-bindings/bitbangio/I2C.c:193 shared-bindings/busio/I2C.c:207
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr "Buffer debe ser de longitud 1 como minimo"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:151 shared-bindings/busio/SPI.c:175
|
||||
#: shared-bindings/bitbangio/SPI.c:149 shared-bindings/busio/SPI.c:172
|
||||
msgid "Invalid polarity"
|
||||
msgstr "Polaridad inválida"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:155 shared-bindings/busio/SPI.c:179
|
||||
#: shared-bindings/bitbangio/SPI.c:153 shared-bindings/busio/SPI.c:176
|
||||
msgid "Invalid phase"
|
||||
msgstr "Fase inválida"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:159 shared-bindings/busio/SPI.c:183
|
||||
#: shared-bindings/bitbangio/SPI.c:157 shared-bindings/busio/SPI.c:180
|
||||
msgid "Invalid number of bits"
|
||||
msgstr "Numero inválido de bits"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:284 shared-bindings/busio/SPI.c:348
|
||||
#: shared-bindings/bitbangio/SPI.c:282 shared-bindings/busio/SPI.c:345
|
||||
msgid "buffer slices must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Address.c:119
|
||||
#: shared-bindings/bleio/Address.c:115
|
||||
#, c-format
|
||||
msgid "Address is not %d bytes long or is in wrong format"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Address.c:126
|
||||
#: shared-bindings/bleio/Address.c:122
|
||||
#, fuzzy, c-format
|
||||
msgid "Address must be %d bytes long"
|
||||
msgstr "palette debe ser 32 bytes de largo"
|
||||
|
||||
#: shared-bindings/bleio/Characteristic.c:81
|
||||
#: shared-bindings/bleio/Descriptor.c:93 shared-bindings/bleio/Service.c:78
|
||||
#: shared-bindings/bleio/Characteristic.c:74
|
||||
#: shared-bindings/bleio/Descriptor.c:86 shared-bindings/bleio/Service.c:66
|
||||
#, fuzzy
|
||||
msgid "Expected a UUID"
|
||||
msgstr "Se espera un %q"
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:68
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:61
|
||||
#, fuzzy
|
||||
msgid "buffer_size must be >= 1"
|
||||
msgstr "los buffers deben de tener la misma longitud"
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:72
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:65
|
||||
#, fuzzy
|
||||
msgid "Expected a Characteristic"
|
||||
msgstr "No se puede agregar la Característica."
|
||||
@ -2215,20 +2218,20 @@ msgstr "No se puede cambiar el nombre en modo Central"
|
||||
msgid "Can't advertise in Central mode"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:111
|
||||
#: shared-bindings/bleio/Peripheral.c:106
|
||||
msgid "services includes an object that is not a Service"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:124
|
||||
#: shared-bindings/bleio/Peripheral.c:119
|
||||
#, fuzzy
|
||||
msgid "name must be a string"
|
||||
msgstr "palabras clave deben ser strings"
|
||||
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
#: shared-bindings/bleio/Service.c:84
|
||||
msgid "characteristics includes an object that is not a Characteristic"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Service.c:96
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
msgid "Characteristic UUID doesn't match Service UUID"
|
||||
msgstr ""
|
||||
|
||||
@ -2249,19 +2252,19 @@ msgstr "buffer debe de ser un objeto bytes-like"
|
||||
msgid "not a 128-bit UUID"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/I2C.c:120
|
||||
#: shared-bindings/busio/I2C.c:117
|
||||
msgid "Function requires lock."
|
||||
msgstr "La función requiere lock"
|
||||
|
||||
#: shared-bindings/busio/UART.c:106
|
||||
#: shared-bindings/busio/UART.c:103
|
||||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr "bits deben ser 7, 8 o 9"
|
||||
|
||||
#: shared-bindings/busio/UART.c:118
|
||||
#: shared-bindings/busio/UART.c:115
|
||||
msgid "stop must be 1 or 2"
|
||||
msgstr "stop debe ser 1 o 2"
|
||||
|
||||
#: shared-bindings/busio/UART.c:123
|
||||
#: shared-bindings/busio/UART.c:120
|
||||
msgid "timeout >100 (units are now seconds, not msecs)"
|
||||
msgstr ""
|
||||
|
||||
@ -2287,7 +2290,7 @@ msgstr "Pull no se usa cuando la dirección es output."
|
||||
msgid "Unsupported pull value."
|
||||
msgstr "valor pull no soportado."
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c:84
|
||||
#: shared-bindings/displayio/Bitmap.c:84 shared-bindings/displayio/Shape.c:88
|
||||
msgid "y should be an int"
|
||||
msgstr "y deberia ser un int"
|
||||
|
||||
@ -2303,45 +2306,68 @@ msgstr "row data debe ser un buffer"
|
||||
msgid "color should be an int"
|
||||
msgstr "color deberia ser un int"
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:55
|
||||
#: shared-bindings/displayio/FourWire.c:64
|
||||
#: shared-bindings/displayio/Display.c:119
|
||||
msgid "Too many displays"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Display.c:138
|
||||
msgid "Must be a Group subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:93
|
||||
#: shared-bindings/displayio/ParallelBus.c:98
|
||||
msgid "Too many display busses"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:106
|
||||
#: shared-bindings/displayio/ParallelBus.c:110
|
||||
msgid "displayio is a work in progress"
|
||||
msgstr "displayio todavia esta en desarrollo"
|
||||
|
||||
#: shared-bindings/displayio/Group.c:65
|
||||
#: shared-bindings/displayio/Group.c:62
|
||||
msgid "Group must have size at least 1"
|
||||
msgstr "Group debe tener size de minimo 1"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:96
|
||||
#: shared-bindings/displayio/Palette.c:93
|
||||
msgid "color buffer must be a bytearray or array of type 'b' or 'B'"
|
||||
msgstr "color buffer deberia ser un bytearray o array de tipo 'b' o 'B'"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:102
|
||||
#: shared-bindings/displayio/Palette.c:99
|
||||
msgid "color buffer must be 3 bytes (RGB) or 4 bytes (RGB + pad byte)"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:106
|
||||
#: shared-bindings/displayio/Palette.c:103
|
||||
msgid "color must be between 0x000000 and 0xffffff"
|
||||
msgstr "color debe estar entre 0x000000 y 0xffffff"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:110
|
||||
#: shared-bindings/displayio/Palette.c:107
|
||||
msgid "color buffer must be a buffer or int"
|
||||
msgstr "color buffer deber ser un buffer o un int"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:123
|
||||
#: shared-bindings/displayio/Palette.c:137
|
||||
#: shared-bindings/displayio/Palette.c:120
|
||||
#: shared-bindings/displayio/Palette.c:134
|
||||
msgid "palette_index should be an int"
|
||||
msgstr "palette_index deberia ser un int"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:48
|
||||
#: shared-bindings/displayio/Shape.c:92
|
||||
#, fuzzy
|
||||
msgid "start_x should be an int"
|
||||
msgstr "y deberia ser un int"
|
||||
|
||||
#: shared-bindings/displayio/Shape.c:96
|
||||
#, fuzzy
|
||||
msgid "end_x should be an int"
|
||||
msgstr "y deberia ser un int"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:49
|
||||
msgid "position must be 2-tuple"
|
||||
msgstr "posición debe ser 2-tuple"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:97
|
||||
#: shared-bindings/displayio/Sprite.c:102
|
||||
msgid "unsupported bitmap type"
|
||||
msgstr "tipo de bitmap no soportado"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:162
|
||||
#: shared-bindings/displayio/Sprite.c:167
|
||||
msgid "pixel_shader must be displayio.Palette or displayio.ColorConverter"
|
||||
msgstr "pixel_shader debe ser displayio.Palette o displayio.ColorConverter"
|
||||
|
||||
@ -2353,15 +2379,15 @@ msgstr "muchos argumentos"
|
||||
msgid "expected a DigitalInOut"
|
||||
msgstr "se espera un DigitalInOut"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:95
|
||||
msgid "can't convert address to int"
|
||||
msgstr "no se puede convertir address a int"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:101
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
msgid "address out of bounds"
|
||||
msgstr "address fuera de límites"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:107
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:104
|
||||
msgid "addresses is empty"
|
||||
msgstr "addresses esta vacío"
|
||||
|
||||
@ -2403,29 +2429,29 @@ msgstr "Bytes debe estar entre 0 y 255."
|
||||
msgid "No hardware random available"
|
||||
msgstr "No hay hardware random disponible"
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:164
|
||||
#: shared-bindings/pulseio/PWMOut.c:162
|
||||
msgid ""
|
||||
"PWM duty_cycle must be between 0 and 65535 inclusive (16 bit resolution)"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:195
|
||||
#: shared-bindings/pulseio/PWMOut.c:193
|
||||
msgid ""
|
||||
"PWM frequency not writable when variable_frequency is False on construction."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:275
|
||||
#: shared-bindings/pulseio/PulseIn.c:272
|
||||
msgid "Cannot delete values"
|
||||
msgstr "No se puede eliminar valores"
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:281
|
||||
#: shared-bindings/pulseio/PulseIn.c:278
|
||||
msgid "Slices not supported"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:287
|
||||
#: shared-bindings/pulseio/PulseIn.c:284
|
||||
msgid "index must be int"
|
||||
msgstr "indice debe ser int"
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:293
|
||||
#: shared-bindings/pulseio/PulseIn.c:290
|
||||
msgid "Read-only"
|
||||
msgstr "Solo-lectura"
|
||||
|
||||
@ -2593,11 +2619,20 @@ msgstr "Solo se admiten bit maps de color de 8 bits o menos"
|
||||
msgid "row must be packed and word aligned"
|
||||
msgstr "la fila debe estar empacada y la palabra alineada"
|
||||
|
||||
#: shared-module/displayio/Display.c:62
|
||||
#, fuzzy
|
||||
msgid "Unsupported display bus type"
|
||||
msgstr "tipo de bitmap no soportado"
|
||||
|
||||
#: shared-module/displayio/Group.c:39
|
||||
msgid "Group full"
|
||||
msgstr "Group lleno"
|
||||
|
||||
#: shared-module/displayio/Group.c:48
|
||||
#: shared-module/displayio/Group.c:46
|
||||
msgid "Layer must be a Group or Sprite subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Group.c:55
|
||||
msgid "Group empty"
|
||||
msgstr "Group vacío"
|
||||
|
||||
@ -2615,6 +2650,21 @@ msgstr "Solo formato Windows, BMP sin comprimir soportado %d"
|
||||
msgid "Only true color (24 bpp or higher) BMP supported %x"
|
||||
msgstr "Solo color verdadero (24 bpp o superior) BMP admitido %x"
|
||||
|
||||
#: shared-module/displayio/Shape.c:60
|
||||
#, fuzzy
|
||||
msgid "y value out of bounds"
|
||||
msgstr "address fuera de límites"
|
||||
|
||||
#: shared-module/displayio/Shape.c:63
|
||||
#, fuzzy
|
||||
msgid "x value out of bounds"
|
||||
msgstr "address fuera de límites"
|
||||
|
||||
#: shared-module/displayio/Shape.c:67
|
||||
#, c-format
|
||||
msgid "Maximum x value when mirrored is %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/storage/__init__.c:155
|
||||
msgid "Cannot remount '/' when USB is active."
|
||||
msgstr "No se puede volver a montar '/' cuando el USB esta activo."
|
||||
@ -2640,6 +2690,18 @@ msgstr "USB ocupado"
|
||||
msgid "USB Error"
|
||||
msgstr "Error USB"
|
||||
|
||||
#: supervisor/shared/board_busses.c:62
|
||||
msgid "No default I2C bus"
|
||||
msgstr "Sin bus I2C por defecto"
|
||||
|
||||
#: supervisor/shared/board_busses.c:91
|
||||
msgid "No default SPI bus"
|
||||
msgstr "Sin bus SPI por defecto"
|
||||
|
||||
#: supervisor/shared/board_busses.c:118
|
||||
msgid "No default UART bus"
|
||||
msgstr "Sin bus UART por defecto"
|
||||
|
||||
#: supervisor/shared/safe_mode.c:97
|
||||
msgid "You requested starting safe mode by "
|
||||
msgstr "Solicitaste iniciar en modo seguro por "
|
||||
@ -2663,7 +2725,8 @@ msgid ""
|
||||
" with the contents of your CIRCUITPY drive and this message:\n"
|
||||
msgstr ""
|
||||
"Parece que nuestro código de CircuitPython ha fallado con fuerza. Whoops!\n"
|
||||
"Por favor, crea un issue en https://github.com/adafruit/circuitpython/issues\n"
|
||||
"Por favor, crea un issue en https://github.com/adafruit/circuitpython/"
|
||||
"issues\n"
|
||||
" con el contenido de su unidad CIRCUITPY y este mensaje:\n"
|
||||
|
||||
#: supervisor/shared/safe_mode.c:111
|
||||
@ -2688,8 +2751,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"La alimentación del microcontrolador cayó. Por favor asegurate de que tu "
|
||||
"fuente de alimentación provee\n"
|
||||
"suficiente energia para todo el circuito y presiona el botón de reset (despues"
|
||||
"de expulsar CIRCUITPY).\n"
|
||||
"suficiente energia para todo el circuito y presiona el botón de reset "
|
||||
"(despuesde expulsar CIRCUITPY).\n"
|
||||
|
||||
#: supervisor/shared/safe_mode.c:120
|
||||
msgid ""
|
||||
@ -2705,8 +2768,8 @@ msgid ""
|
||||
"The reset button was pressed while booting CircuitPython. Press again to "
|
||||
"exit safe mode.\n"
|
||||
msgstr ""
|
||||
"El botón reset fue presionado mientras arrancaba CircuitPython. Presiona otra"
|
||||
" vez para salir del modo seguro.\n"
|
||||
"El botón reset fue presionado mientras arrancaba CircuitPython. Presiona "
|
||||
"otra vez para salir del modo seguro.\n"
|
||||
|
||||
#~ msgid "Invalid UUID string length"
|
||||
#~ msgstr "Longitud de string UUID inválida"
|
||||
@ -2714,50 +2777,13 @@ msgstr ""
|
||||
#~ msgid "Invalid UUID parameter"
|
||||
#~ msgstr "Parámetro UUID inválido"
|
||||
|
||||
#~ msgid "Wrong address length"
|
||||
#~ msgstr "Longitud de address erronea"
|
||||
|
||||
#~ msgid "Wrong number of bytes provided"
|
||||
#~ msgstr "Numero erroneo de bytes dados"
|
||||
|
||||
#~ msgid "Cannot apply GAP parameters."
|
||||
#~ msgstr "No se pueden aplicar los parámetros GAP."
|
||||
|
||||
#~ msgid "Can not apply device name in the stack."
|
||||
#~ msgstr "No se puede aplicar el nombre del dispositivo en el stack."
|
||||
#~ msgid "Can not query for the device address."
|
||||
#~ msgstr "No se puede consultar la dirección del dispositivo."
|
||||
|
||||
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
|
||||
#~ msgstr ""
|
||||
#~ "Parece que nuestro código CircuitPython dejó de funcionar. Whoops!\n"
|
||||
|
||||
#~ msgid "Baud rate too high for this SPI peripheral"
|
||||
#~ msgstr "Baud rate demasiado alto para este periférico SPI"
|
||||
|
||||
#~ msgid "Can not encode UUID, to check length."
|
||||
#~ msgstr "No se puede codificar el UUID, para revisar la longitud."
|
||||
|
||||
#~ msgid "Can not query for the device address."
|
||||
#~ msgstr "No se puede consultar la dirección del dispositivo."
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
|
||||
#~ msgstr ""
|
||||
#~ "Por favor registra un issue en la siguiente URL con el contenidos de tu "
|
||||
#~ "unidad de almacenamiento CIRCUITPY:\n"
|
||||
|
||||
#~ msgid "Can encode UUID into the advertisement packet."
|
||||
#~ msgstr "Se puede codificar el UUID en el paquete de anuncio."
|
||||
|
||||
#~ msgid "Invalid Service type"
|
||||
#~ msgstr "Tipo de Servicio inválido"
|
||||
|
||||
#~ msgid "Can not add Service."
|
||||
#~ msgstr "No se puede agregar el Servicio."
|
||||
|
||||
#~ msgid "Can not apply advertisement data. status: 0x%02x"
|
||||
#~ msgstr "No se puede aplicar los datos de anuncio. status: 0x%02x"
|
||||
|
||||
#~ msgid "Cannot set PPCP parameters."
|
||||
#~ msgstr "No se pueden establecer los parámetros PPCP."
|
||||
|
||||
@ -2767,3 +2793,40 @@ msgstr ""
|
||||
#~ msgstr ""
|
||||
#~ "suficiente poder para todo el circuito y presiona reset (después de "
|
||||
#~ "expulsar CIRCUITPY).\n"
|
||||
|
||||
#~ msgid "Can not apply device name in the stack."
|
||||
#~ msgstr "No se puede aplicar el nombre del dispositivo en el stack."
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
|
||||
#~ msgstr ""
|
||||
#~ "Por favor registra un issue en la siguiente URL con el contenidos de tu "
|
||||
#~ "unidad de almacenamiento CIRCUITPY:\n"
|
||||
|
||||
#~ msgid "Wrong address length"
|
||||
#~ msgstr "Longitud de address erronea"
|
||||
|
||||
#~ msgid "Wrong number of bytes provided"
|
||||
#~ msgstr "Numero erroneo de bytes dados"
|
||||
|
||||
#~ msgid "Can not add Service."
|
||||
#~ msgstr "No se puede agregar el Servicio."
|
||||
|
||||
#~ msgid "Cannot apply GAP parameters."
|
||||
#~ msgstr "No se pueden aplicar los parámetros GAP."
|
||||
|
||||
#~ msgid "Can not encode UUID, to check length."
|
||||
#~ msgstr "No se puede codificar el UUID, para revisar la longitud."
|
||||
|
||||
#~ msgid "Can encode UUID into the advertisement packet."
|
||||
#~ msgstr "Se puede codificar el UUID en el paquete de anuncio."
|
||||
|
||||
#~ msgid "Can not apply advertisement data. status: 0x%02x"
|
||||
#~ msgstr "No se puede aplicar los datos de anuncio. status: 0x%02x"
|
||||
|
||||
#~ msgid "Invalid Service type"
|
||||
#~ msgstr "Tipo de Servicio inválido"
|
||||
|
||||
#~ msgid "Baud rate too high for this SPI peripheral"
|
||||
#~ msgstr "Baud rate demasiado alto para este periférico SPI"
|
||||
|
349
locale/fil.po
349
locale/fil.po
@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2019-01-10 21:32-0500\n"
|
||||
"POT-Creation-Date: 2019-01-20 17:33-0800\n"
|
||||
"PO-Revision-Date: 2018-12-20 22:15-0800\n"
|
||||
"Last-Translator: Timothy <me@timothygarcia.ca>\n"
|
||||
"Language-Team: fil\n"
|
||||
@ -21,8 +21,8 @@ msgstr ""
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "maling I2C peripheral"
|
||||
|
||||
#: extmod/machine_i2c.c:340 extmod/machine_i2c.c:354 extmod/machine_i2c.c:368
|
||||
#: extmod/machine_i2c.c:392
|
||||
#: extmod/machine_i2c.c:338 extmod/machine_i2c.c:352 extmod/machine_i2c.c:366
|
||||
#: extmod/machine_i2c.c:390
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "Hindi supportado ang operasyong I2C"
|
||||
|
||||
@ -151,11 +151,11 @@ msgstr "mali ang mga argumento"
|
||||
msgid "script compilation not supported"
|
||||
msgstr "script kompilasyon hindi supportado"
|
||||
|
||||
#: main.c:150
|
||||
#: main.c:155
|
||||
msgid " output:\n"
|
||||
msgstr " output:\n"
|
||||
|
||||
#: main.c:164 main.c:237
|
||||
#: main.c:169 main.c:247
|
||||
msgid ""
|
||||
"Auto-reload is on. Simply save files over USB to run them or enter REPL to "
|
||||
"disable.\n"
|
||||
@ -163,29 +163,29 @@ msgstr ""
|
||||
"Ang awtomatikong pag re-reload ay ON. i-save lamang ang mga files sa USB "
|
||||
"para patakbuhin sila o pasukin ang REPL para i-disable ito.\n"
|
||||
|
||||
#: main.c:166
|
||||
#: main.c:171
|
||||
msgid "Running in safe mode! Auto-reload is off.\n"
|
||||
msgstr "Tumatakbo sa safe mode! Awtomatikong pag re-reload ay OFF.\n"
|
||||
|
||||
#: main.c:168 main.c:239
|
||||
#: main.c:173 main.c:249
|
||||
msgid "Auto-reload is off.\n"
|
||||
msgstr "Awtomatikong pag re-reload ay OFF.\n"
|
||||
|
||||
#: main.c:182
|
||||
#: main.c:187
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Tumatakbo sa safe mode! Hindi tumatakbo ang nai-save na code.\n"
|
||||
|
||||
#: main.c:198
|
||||
#: main.c:203
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "BABALA: Ang pangalan ng file ay may dalawang extension\n"
|
||||
|
||||
#: main.c:244
|
||||
#: main.c:254
|
||||
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
|
||||
msgstr ""
|
||||
"Pindutin ang anumang key upang pumasok sa REPL. Gamitin ang CTRL-D upang i-"
|
||||
"reload."
|
||||
|
||||
#: main.c:407
|
||||
#: main.c:417
|
||||
msgid "soft reboot\n"
|
||||
msgstr "malambot na reboot\n"
|
||||
|
||||
@ -202,18 +202,6 @@ msgstr "pagkakalibrate ay basahin lamang"
|
||||
msgid "calibration is out of range"
|
||||
msgstr "kalibrasion ay wala sa sakop"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:59 ports/nrf/board_busses.c:39
|
||||
msgid "No default I2C bus"
|
||||
msgstr "Walang default na I2C bus"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:85 ports/nrf/board_busses.c:64
|
||||
msgid "No default SPI bus"
|
||||
msgstr "Walang default SPI bus"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:112 ports/nrf/board_busses.c:91
|
||||
msgid "No default UART bus"
|
||||
msgstr "Walang default UART bus"
|
||||
|
||||
#: ports/atmel-samd/common-hal/analogio/AnalogIn.c:63
|
||||
#: ports/nrf/common-hal/analogio/AnalogIn.c:39
|
||||
msgid "Pin does not have ADC capabilities"
|
||||
@ -330,7 +318,7 @@ msgid "Not enough pins available"
|
||||
msgstr "Hindi sapat ang magagamit na pins"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c:78
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:171
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:176
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c:120
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c:45
|
||||
#: ports/nrf/common-hal/busio/I2C.c:84
|
||||
@ -378,6 +366,18 @@ msgstr "Walang TX pin"
|
||||
msgid "Cannot get pull while in output mode"
|
||||
msgstr "Hindi makakakuha ng pull habang nasa output mode"
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:43
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:43
|
||||
#, fuzzy
|
||||
msgid "Data 0 pin must be byte aligned"
|
||||
msgstr "graphic ay dapat 2048 bytes ang haba"
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:47
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:47
|
||||
#, fuzzy, c-format
|
||||
msgid "Bus pin %d is already in use"
|
||||
msgstr "Ginagamit na ang DAC"
|
||||
|
||||
#: ports/atmel-samd/common-hal/microcontroller/__init__.c:74
|
||||
#: ports/esp8266/common-hal/microcontroller/__init__.c:64
|
||||
msgid "Cannot reset into bootloader because no bootloader is present."
|
||||
@ -898,49 +898,49 @@ msgstr "Hindi alam ipasa ang object sa native function"
|
||||
msgid "[addrinfo error %d]"
|
||||
msgstr "[addrinfo error %d]"
|
||||
|
||||
#: py/argcheck.c:44
|
||||
#: py/argcheck.c:53
|
||||
msgid "function does not take keyword arguments"
|
||||
msgstr "ang function ay hindi kumukuha ng mga argumento ng keyword"
|
||||
|
||||
#: py/argcheck.c:54 py/bc.c:85 py/objnamedtuple.c:104
|
||||
#: py/argcheck.c:63 py/bc.c:85 py/objnamedtuple.c:108
|
||||
#, c-format
|
||||
msgid "function takes %d positional arguments but %d were given"
|
||||
msgstr ""
|
||||
"ang function ay kumuhuha ng %d positional arguments ngunit %d ang ibinigay"
|
||||
|
||||
#: py/argcheck.c:64
|
||||
#: py/argcheck.c:73
|
||||
#, c-format
|
||||
msgid "function missing %d required positional arguments"
|
||||
msgstr "function kulang ng %d required na positional arguments"
|
||||
|
||||
#: py/argcheck.c:72
|
||||
#: py/argcheck.c:81
|
||||
#, c-format
|
||||
msgid "function expected at most %d arguments, got %d"
|
||||
msgstr "function na inaasahang %d ang argumento, ngunit %d ang nakuha"
|
||||
|
||||
#: py/argcheck.c:97
|
||||
#: py/argcheck.c:106
|
||||
msgid "'%q' argument required"
|
||||
msgstr "'%q' argument kailangan"
|
||||
|
||||
#: py/argcheck.c:122
|
||||
#: py/argcheck.c:131
|
||||
msgid "extra positional arguments given"
|
||||
msgstr "dagdag na positional argument na ibinigay"
|
||||
|
||||
#: py/argcheck.c:130
|
||||
#: py/argcheck.c:139
|
||||
msgid "extra keyword arguments given"
|
||||
msgstr "dagdag na keyword argument na ibinigay"
|
||||
|
||||
#: py/argcheck.c:142
|
||||
#: py/argcheck.c:151
|
||||
msgid "argument num/types mismatch"
|
||||
msgstr "hindi tugma ang argument num/types"
|
||||
|
||||
#: py/argcheck.c:147
|
||||
#: py/argcheck.c:156
|
||||
msgid "keyword argument(s) not yet implemented - use normal args instead"
|
||||
msgstr ""
|
||||
"kindi pa ipinapatupad ang (mga) argument(s) ng keyword - gumamit ng normal "
|
||||
"args"
|
||||
|
||||
#: py/bc.c:88 py/objnamedtuple.c:108
|
||||
#: py/bc.c:88 py/objnamedtuple.c:112
|
||||
msgid "%q() takes %d positional arguments but %d were given"
|
||||
msgstr ""
|
||||
"Ang %q() ay kumukuha ng %d positional arguments pero %d lang ang binigay"
|
||||
@ -953,11 +953,11 @@ msgstr "hindi inaasahang argumento ng keyword"
|
||||
msgid "keywords must be strings"
|
||||
msgstr "ang keywords dapat strings"
|
||||
|
||||
#: py/bc.c:206 py/objnamedtuple.c:138
|
||||
#: py/bc.c:206 py/objnamedtuple.c:142
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr "ang function ay nakakuha ng maraming values para sa argument '%q'"
|
||||
|
||||
#: py/bc.c:218 py/objnamedtuple.c:130
|
||||
#: py/bc.c:218 py/objnamedtuple.c:134
|
||||
msgid "unexpected keyword argument '%q'"
|
||||
msgstr "hindi inaasahang argumento ng keyword na '%q'"
|
||||
|
||||
@ -1548,11 +1548,11 @@ msgstr "puno"
|
||||
msgid "empty"
|
||||
msgstr "walang laman"
|
||||
|
||||
#: py/objdict.c:314
|
||||
#: py/objdict.c:315
|
||||
msgid "popitem(): dictionary is empty"
|
||||
msgstr "popitem(): dictionary ay walang laman"
|
||||
|
||||
#: py/objdict.c:357
|
||||
#: py/objdict.c:358
|
||||
msgid "dict update sequence has wrong length"
|
||||
msgstr "may mali sa haba ng dict update sequence"
|
||||
|
||||
@ -1819,70 +1819,70 @@ msgstr "ang indeks ng string ay dapat na integer, hindi %s"
|
||||
msgid "string index out of range"
|
||||
msgstr "indeks ng string wala sa sakop"
|
||||
|
||||
#: py/objtype.c:358
|
||||
#: py/objtype.c:368
|
||||
msgid "__init__() should return None"
|
||||
msgstr "__init __ () dapat magbalik na None"
|
||||
|
||||
#: py/objtype.c:360
|
||||
#: py/objtype.c:370
|
||||
#, c-format
|
||||
msgid "__init__() should return None, not '%s'"
|
||||
msgstr "__init__() dapat magbalink na None, hindi '%s'"
|
||||
|
||||
#: py/objtype.c:623 py/objtype.c:1275 py/runtime.c:1065
|
||||
#: py/objtype.c:633 py/objtype.c:1287 py/runtime.c:1065
|
||||
msgid "unreadable attribute"
|
||||
msgstr "hindi mabasa ang attribute"
|
||||
|
||||
#: py/objtype.c:868 py/runtime.c:653
|
||||
#: py/objtype.c:878 py/runtime.c:653
|
||||
msgid "object not callable"
|
||||
msgstr "hindi matatawag ang object"
|
||||
|
||||
#: py/objtype.c:870 py/runtime.c:655
|
||||
#: py/objtype.c:880 py/runtime.c:655
|
||||
#, c-format
|
||||
msgid "'%s' object is not callable"
|
||||
msgstr "'%s' object hindi matatawag"
|
||||
|
||||
#: py/objtype.c:978
|
||||
#: py/objtype.c:988
|
||||
msgid "type takes 1 or 3 arguments"
|
||||
msgstr "type kumuhuha ng 1 o 3 arguments"
|
||||
|
||||
#: py/objtype.c:989
|
||||
#: py/objtype.c:999
|
||||
msgid "cannot create instance"
|
||||
msgstr "hindi magawa ang instance"
|
||||
|
||||
#: py/objtype.c:991
|
||||
#: py/objtype.c:1001
|
||||
msgid "cannot create '%q' instances"
|
||||
msgstr "hindi magawa '%q' instances"
|
||||
|
||||
#: py/objtype.c:1047
|
||||
#: py/objtype.c:1059
|
||||
msgid "can't add special method to already-subclassed class"
|
||||
msgstr ""
|
||||
"hindi madagdag ang isang espesyal na method sa isang na i-subclass na class"
|
||||
|
||||
#: py/objtype.c:1091 py/objtype.c:1097
|
||||
#: py/objtype.c:1103 py/objtype.c:1109
|
||||
msgid "type is not an acceptable base type"
|
||||
msgstr "hindi puede ang type para sa base type"
|
||||
|
||||
#: py/objtype.c:1100
|
||||
#: py/objtype.c:1112
|
||||
msgid "type '%q' is not an acceptable base type"
|
||||
msgstr "hindi maari ang type na '%q' para sa base type"
|
||||
|
||||
#: py/objtype.c:1137
|
||||
#: py/objtype.c:1149
|
||||
msgid "multiple inheritance not supported"
|
||||
msgstr "maraming inhertance hindi sinusuportahan"
|
||||
|
||||
#: py/objtype.c:1164
|
||||
#: py/objtype.c:1176
|
||||
msgid "multiple bases have instance lay-out conflict"
|
||||
msgstr "maraming bases ay may instance lay-out conflict"
|
||||
|
||||
#: py/objtype.c:1205
|
||||
#: py/objtype.c:1217
|
||||
msgid "first argument to super() must be type"
|
||||
msgstr "unang argument ng super() ay dapat type"
|
||||
|
||||
#: py/objtype.c:1370
|
||||
#: py/objtype.c:1382
|
||||
msgid "issubclass() arg 2 must be a class or a tuple of classes"
|
||||
msgstr "issubclass() arg 2 ay dapat na class o tuple ng classes"
|
||||
|
||||
#: py/objtype.c:1384
|
||||
#: py/objtype.c:1396
|
||||
msgid "issubclass() arg 1 must be a class"
|
||||
msgstr "issubclass() arg 1 ay dapat na class"
|
||||
|
||||
@ -2080,8 +2080,8 @@ msgstr "masyadong maliit ang buffer"
|
||||
msgid "AnalogOut is only 16 bits. Value must be less than 65536."
|
||||
msgstr "AnalogOut ay 16 bits. Value ay dapat hindi hihigit pa sa 65536."
|
||||
|
||||
#: shared-bindings/audiobusio/I2SOut.c:225
|
||||
#: shared-bindings/audioio/AudioOut.c:226
|
||||
#: shared-bindings/audiobusio/I2SOut.c:222
|
||||
#: shared-bindings/audioio/AudioOut.c:223
|
||||
msgid "Not playing"
|
||||
msgstr "Hindi playing"
|
||||
|
||||
@ -2123,23 +2123,23 @@ msgstr ""
|
||||
"ang destination buffer ay dapat na isang bytearray o array ng uri na 'B' "
|
||||
"para sa bit_depth = 8"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:94
|
||||
#: shared-bindings/audioio/Mixer.c:91
|
||||
msgid "Invalid voice count"
|
||||
msgstr "Maling bilang ng voice"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:99
|
||||
#: shared-bindings/audioio/Mixer.c:96
|
||||
msgid "Invalid channel count"
|
||||
msgstr "Maling bilang ng channel"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:103
|
||||
#: shared-bindings/audioio/Mixer.c:100
|
||||
msgid "Sample rate must be positive"
|
||||
msgstr "Sample rate ay dapat positibo"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:107
|
||||
#: shared-bindings/audioio/Mixer.c:104
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr "bits_per_sample ay dapat 8 o 16"
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:98
|
||||
#: shared-bindings/audioio/RawSample.c:95
|
||||
msgid ""
|
||||
"sample_source buffer must be a bytearray or array of type 'h', 'H', 'b' or "
|
||||
"'B'"
|
||||
@ -2147,7 +2147,7 @@ msgstr ""
|
||||
"ang sample_source buffer ay dapat na isang bytearray o array ng uri na 'h', "
|
||||
"'H', 'b' o'B'"
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:104
|
||||
#: shared-bindings/audioio/RawSample.c:101
|
||||
msgid "buffer must be a bytes-like object"
|
||||
msgstr "buffer ay dapat bytes-like object"
|
||||
|
||||
@ -2156,53 +2156,53 @@ msgstr "buffer ay dapat bytes-like object"
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr "file ay dapat buksan sa byte mode"
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:111 shared-bindings/bitbangio/SPI.c:121
|
||||
#: shared-bindings/busio/SPI.c:133
|
||||
#: shared-bindings/bitbangio/I2C.c:109 shared-bindings/bitbangio/SPI.c:119
|
||||
#: shared-bindings/busio/SPI.c:130
|
||||
msgid "Function requires lock"
|
||||
msgstr "Function nangangailangan ng lock"
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:195 shared-bindings/busio/I2C.c:210
|
||||
#: shared-bindings/bitbangio/I2C.c:193 shared-bindings/busio/I2C.c:207
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr "Buffer dapat ay hindi baba sa 1 na haba"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:151 shared-bindings/busio/SPI.c:175
|
||||
#: shared-bindings/bitbangio/SPI.c:149 shared-bindings/busio/SPI.c:172
|
||||
msgid "Invalid polarity"
|
||||
msgstr "Mali ang polarity"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:155 shared-bindings/busio/SPI.c:179
|
||||
#: shared-bindings/bitbangio/SPI.c:153 shared-bindings/busio/SPI.c:176
|
||||
msgid "Invalid phase"
|
||||
msgstr "Mali ang phase"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:159 shared-bindings/busio/SPI.c:183
|
||||
#: shared-bindings/bitbangio/SPI.c:157 shared-bindings/busio/SPI.c:180
|
||||
msgid "Invalid number of bits"
|
||||
msgstr "Mali ang bilang ng bits"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:284 shared-bindings/busio/SPI.c:348
|
||||
#: shared-bindings/bitbangio/SPI.c:282 shared-bindings/busio/SPI.c:345
|
||||
msgid "buffer slices must be of equal length"
|
||||
msgstr "aarehas na haba dapat ang buffer slices"
|
||||
|
||||
#: shared-bindings/bleio/Address.c:119
|
||||
#: shared-bindings/bleio/Address.c:115
|
||||
#, c-format
|
||||
msgid "Address is not %d bytes long or is in wrong format"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Address.c:126
|
||||
#: shared-bindings/bleio/Address.c:122
|
||||
#, fuzzy, c-format
|
||||
msgid "Address must be %d bytes long"
|
||||
msgstr "ang palette ay dapat 32 bytes ang haba"
|
||||
|
||||
#: shared-bindings/bleio/Characteristic.c:81
|
||||
#: shared-bindings/bleio/Descriptor.c:93 shared-bindings/bleio/Service.c:78
|
||||
#: shared-bindings/bleio/Characteristic.c:74
|
||||
#: shared-bindings/bleio/Descriptor.c:86 shared-bindings/bleio/Service.c:66
|
||||
#, fuzzy
|
||||
msgid "Expected a UUID"
|
||||
msgstr "Umasa ng %q"
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:68
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:61
|
||||
#, fuzzy
|
||||
msgid "buffer_size must be >= 1"
|
||||
msgstr "aarehas na haba dapat ang buffer slices"
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:72
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:65
|
||||
#, fuzzy
|
||||
msgid "Expected a Characteristic"
|
||||
msgstr "Hindi mabasa and Characteristic."
|
||||
@ -2223,20 +2223,20 @@ msgstr "Hindi mapalitan ang pangalan sa Central mode"
|
||||
msgid "Can't advertise in Central mode"
|
||||
msgstr "Hindi ma advertise habang nasa Central mode"
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:111
|
||||
#: shared-bindings/bleio/Peripheral.c:106
|
||||
msgid "services includes an object that is not a Service"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:124
|
||||
#: shared-bindings/bleio/Peripheral.c:119
|
||||
#, fuzzy
|
||||
msgid "name must be a string"
|
||||
msgstr "ang keywords dapat strings"
|
||||
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
#: shared-bindings/bleio/Service.c:84
|
||||
msgid "characteristics includes an object that is not a Characteristic"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Service.c:96
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
msgid "Characteristic UUID doesn't match Service UUID"
|
||||
msgstr ""
|
||||
|
||||
@ -2257,19 +2257,19 @@ msgstr "buffer ay dapat bytes-like object"
|
||||
msgid "not a 128-bit UUID"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/I2C.c:120
|
||||
#: shared-bindings/busio/I2C.c:117
|
||||
msgid "Function requires lock."
|
||||
msgstr "Kailangan ng lock ang function."
|
||||
|
||||
#: shared-bindings/busio/UART.c:106
|
||||
#: shared-bindings/busio/UART.c:103
|
||||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr "bits ay dapat 7, 8 o 9"
|
||||
|
||||
#: shared-bindings/busio/UART.c:118
|
||||
#: shared-bindings/busio/UART.c:115
|
||||
msgid "stop must be 1 or 2"
|
||||
msgstr "stop dapat 1 o 2"
|
||||
|
||||
#: shared-bindings/busio/UART.c:123
|
||||
#: shared-bindings/busio/UART.c:120
|
||||
msgid "timeout >100 (units are now seconds, not msecs)"
|
||||
msgstr "timeout >100 (units ay seconds, hindi na msecs)"
|
||||
|
||||
@ -2295,7 +2295,7 @@ msgstr "Pull hindi ginagamit kapag ang direksyon ay output."
|
||||
msgid "Unsupported pull value."
|
||||
msgstr "Hindi suportado ang pull value."
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c:84
|
||||
#: shared-bindings/displayio/Bitmap.c:84 shared-bindings/displayio/Shape.c:88
|
||||
msgid "y should be an int"
|
||||
msgstr "y ay dapat int"
|
||||
|
||||
@ -2311,45 +2311,68 @@ msgstr "row data ay dapat na buffer"
|
||||
msgid "color should be an int"
|
||||
msgstr "color ay dapat na int"
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:55
|
||||
#: shared-bindings/displayio/FourWire.c:64
|
||||
#: shared-bindings/displayio/Display.c:119
|
||||
msgid "Too many displays"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Display.c:138
|
||||
msgid "Must be a Group subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:93
|
||||
#: shared-bindings/displayio/ParallelBus.c:98
|
||||
msgid "Too many display busses"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:106
|
||||
#: shared-bindings/displayio/ParallelBus.c:110
|
||||
msgid "displayio is a work in progress"
|
||||
msgstr "displayio ay nasa gitna ng konstruksiyon"
|
||||
|
||||
#: shared-bindings/displayio/Group.c:65
|
||||
#: shared-bindings/displayio/Group.c:62
|
||||
msgid "Group must have size at least 1"
|
||||
msgstr "Group dapat ay hindi baba sa 1 na haba"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:96
|
||||
#: shared-bindings/displayio/Palette.c:93
|
||||
msgid "color buffer must be a bytearray or array of type 'b' or 'B'"
|
||||
msgstr "ang color buffer ay dapat bytearray o array na type ‘b’ or ‘B’"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:102
|
||||
#: shared-bindings/displayio/Palette.c:99
|
||||
msgid "color buffer must be 3 bytes (RGB) or 4 bytes (RGB + pad byte)"
|
||||
msgstr "color buffer ay dapat na 3 bytes (RGB) o 4 bytes (RGB + pad byte)"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:106
|
||||
#: shared-bindings/displayio/Palette.c:103
|
||||
msgid "color must be between 0x000000 and 0xffffff"
|
||||
msgstr "color ay dapat mula sa 0x000000 hangang 0xffffff"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:110
|
||||
#: shared-bindings/displayio/Palette.c:107
|
||||
msgid "color buffer must be a buffer or int"
|
||||
msgstr "color buffer ay dapat buffer or int"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:123
|
||||
#: shared-bindings/displayio/Palette.c:137
|
||||
#: shared-bindings/displayio/Palette.c:120
|
||||
#: shared-bindings/displayio/Palette.c:134
|
||||
msgid "palette_index should be an int"
|
||||
msgstr "palette_index ay dapat na int"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:48
|
||||
#: shared-bindings/displayio/Shape.c:92
|
||||
#, fuzzy
|
||||
msgid "start_x should be an int"
|
||||
msgstr "y ay dapat int"
|
||||
|
||||
#: shared-bindings/displayio/Shape.c:96
|
||||
#, fuzzy
|
||||
msgid "end_x should be an int"
|
||||
msgstr "y ay dapat int"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:49
|
||||
msgid "position must be 2-tuple"
|
||||
msgstr "position ay dapat 2-tuple"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:97
|
||||
#: shared-bindings/displayio/Sprite.c:102
|
||||
msgid "unsupported bitmap type"
|
||||
msgstr "Hindi supportadong tipo ng bitmap"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:162
|
||||
#: shared-bindings/displayio/Sprite.c:167
|
||||
msgid "pixel_shader must be displayio.Palette or displayio.ColorConverter"
|
||||
msgstr "pixel_shader ay dapat displayio.Palette o displayio.ColorConverter"
|
||||
|
||||
@ -2361,15 +2384,15 @@ msgstr "masyadong maraming argumento"
|
||||
msgid "expected a DigitalInOut"
|
||||
msgstr "umasa ng DigitalInOut"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:95
|
||||
msgid "can't convert address to int"
|
||||
msgstr "hindi ma i-convert ang address sa INT"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:101
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
msgid "address out of bounds"
|
||||
msgstr "wala sa sakop ang address"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:107
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:104
|
||||
msgid "addresses is empty"
|
||||
msgstr "walang laman ang address"
|
||||
|
||||
@ -2411,30 +2434,30 @@ msgstr "Sa gitna ng 0 o 255 dapat ang bytes."
|
||||
msgid "No hardware random available"
|
||||
msgstr "Walang magagamit na hardware random"
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:164
|
||||
#: shared-bindings/pulseio/PWMOut.c:162
|
||||
msgid ""
|
||||
"PWM duty_cycle must be between 0 and 65535 inclusive (16 bit resolution)"
|
||||
msgstr "PWM duty_cycle ay dapat sa loob ng 0 at 65535 (16 bit resolution)"
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:195
|
||||
#: shared-bindings/pulseio/PWMOut.c:193
|
||||
msgid ""
|
||||
"PWM frequency not writable when variable_frequency is False on construction."
|
||||
msgstr ""
|
||||
"PWM frequency hindi writable kapag variable_frequency ay False sa pag buo."
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:275
|
||||
#: shared-bindings/pulseio/PulseIn.c:272
|
||||
msgid "Cannot delete values"
|
||||
msgstr "Hindi mabura ang values"
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:281
|
||||
#: shared-bindings/pulseio/PulseIn.c:278
|
||||
msgid "Slices not supported"
|
||||
msgstr "Hindi suportado ang Slices"
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:287
|
||||
#: shared-bindings/pulseio/PulseIn.c:284
|
||||
msgid "index must be int"
|
||||
msgstr "index ay dapat int"
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:293
|
||||
#: shared-bindings/pulseio/PulseIn.c:290
|
||||
msgid "Read-only"
|
||||
msgstr "Basahin-lamang"
|
||||
|
||||
@ -2602,11 +2625,20 @@ msgstr "Tanging bit maps na may 8 bit color o mas mababa ang supportado"
|
||||
msgid "row must be packed and word aligned"
|
||||
msgstr "row ay dapat packed at ang word nakahanay"
|
||||
|
||||
#: shared-module/displayio/Display.c:62
|
||||
#, fuzzy
|
||||
msgid "Unsupported display bus type"
|
||||
msgstr "Hindi supportadong tipo ng bitmap"
|
||||
|
||||
#: shared-module/displayio/Group.c:39
|
||||
msgid "Group full"
|
||||
msgstr "Puno ang group"
|
||||
|
||||
#: shared-module/displayio/Group.c:48
|
||||
#: shared-module/displayio/Group.c:46
|
||||
msgid "Layer must be a Group or Sprite subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Group.c:55
|
||||
msgid "Group empty"
|
||||
msgstr "Walang laman ang group"
|
||||
|
||||
@ -2624,6 +2656,21 @@ msgstr "Tanging Windows format, uncompressed BMP lamang ang supportado %d"
|
||||
msgid "Only true color (24 bpp or higher) BMP supported %x"
|
||||
msgstr "Dapat true color (24 bpp o mas mataas) BMP lamang ang supportado %x"
|
||||
|
||||
#: shared-module/displayio/Shape.c:60
|
||||
#, fuzzy
|
||||
msgid "y value out of bounds"
|
||||
msgstr "wala sa sakop ang address"
|
||||
|
||||
#: shared-module/displayio/Shape.c:63
|
||||
#, fuzzy
|
||||
msgid "x value out of bounds"
|
||||
msgstr "wala sa sakop ang address"
|
||||
|
||||
#: shared-module/displayio/Shape.c:67
|
||||
#, c-format
|
||||
msgid "Maximum x value when mirrored is %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/storage/__init__.c:155
|
||||
msgid "Cannot remount '/' when USB is active."
|
||||
msgstr "Hindi ma-remount '/' kapag aktibo ang USB."
|
||||
@ -2649,6 +2696,18 @@ msgstr "Busy ang USB"
|
||||
msgid "USB Error"
|
||||
msgstr "May pagkakamali ang USB"
|
||||
|
||||
#: supervisor/shared/board_busses.c:62
|
||||
msgid "No default I2C bus"
|
||||
msgstr "Walang default na I2C bus"
|
||||
|
||||
#: supervisor/shared/board_busses.c:91
|
||||
msgid "No default SPI bus"
|
||||
msgstr "Walang default SPI bus"
|
||||
|
||||
#: supervisor/shared/board_busses.c:118
|
||||
msgid "No default UART bus"
|
||||
msgstr "Walang default UART bus"
|
||||
|
||||
#: supervisor/shared/safe_mode.c:97
|
||||
msgid "You requested starting safe mode by "
|
||||
msgstr "Ikaw ang humiling sa safe mode sa pamamagitan ng "
|
||||
@ -2724,50 +2783,13 @@ msgstr ""
|
||||
#~ msgid "Invalid UUID parameter"
|
||||
#~ msgstr "Mali ang UUID parameter"
|
||||
|
||||
#~ msgid "Wrong address length"
|
||||
#~ msgstr "Mali ang address length"
|
||||
|
||||
#~ msgid "Wrong number of bytes provided"
|
||||
#~ msgstr "Mali ang bilang ng bytes"
|
||||
|
||||
#~ msgid "Cannot apply GAP parameters."
|
||||
#~ msgstr "Hindi ma-apply ang GAP parameters."
|
||||
|
||||
#~ msgid "Can not apply device name in the stack."
|
||||
#~ msgstr "Hindi maaaring ma-aplay ang device name sa stack."
|
||||
#~ msgid "Can not query for the device address."
|
||||
#~ msgstr "Hindi maaaring mag-query para sa address ng device."
|
||||
|
||||
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
|
||||
#~ msgstr ""
|
||||
#~ "Mukhang ang core CircuitPython code ay nag-crash ng malakas. Aray!\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "palette must be displayio.Palette"
|
||||
#~ msgstr "ang palette ay dapat 32 bytes ang haba"
|
||||
|
||||
#~ msgid "Can not encode UUID, to check length."
|
||||
#~ msgstr "Hindi ma-encode UUID, para suriin ang haba."
|
||||
|
||||
#~ msgid "Can not query for the device address."
|
||||
#~ msgstr "Hindi maaaring mag-query para sa address ng device."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
|
||||
#~ msgstr ""
|
||||
#~ "Mag-file ng isang isyu dito gamit ang mga nilalaman ng iyong CIRCUITPY "
|
||||
#~ "drive:\n"
|
||||
|
||||
#~ msgid "Can encode UUID into the advertisement packet."
|
||||
#~ msgstr "Maaring i-encode ang UUID sa advertisement packet."
|
||||
|
||||
#~ msgid "Invalid Service type"
|
||||
#~ msgstr "Mali ang tipo ng serbisyo"
|
||||
|
||||
#~ msgid "Can not add Service."
|
||||
#~ msgstr "Hindi maidaragdag ang serbisyo."
|
||||
|
||||
#~ msgid "Can not apply advertisement data. status: 0x%02x"
|
||||
#~ msgstr "Hindi ma i-apply ang advertisement data. status: 0x%02x"
|
||||
|
||||
#~ msgid "Cannot set PPCP parameters."
|
||||
#~ msgstr "Hindi ma-set ang PPCP parameters."
|
||||
|
||||
@ -2777,3 +2799,40 @@ msgstr ""
|
||||
#~ msgstr ""
|
||||
#~ "ay nagbibigay ng sapat na power para sa buong circuit at i-press ang "
|
||||
#~ "reset (pagkatapos i-eject ang CIRCUITPY).\n"
|
||||
|
||||
#~ msgid "Can not apply device name in the stack."
|
||||
#~ msgstr "Hindi maaaring ma-aplay ang device name sa stack."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
|
||||
#~ msgstr ""
|
||||
#~ "Mag-file ng isang isyu dito gamit ang mga nilalaman ng iyong CIRCUITPY "
|
||||
#~ "drive:\n"
|
||||
|
||||
#~ msgid "Wrong address length"
|
||||
#~ msgstr "Mali ang address length"
|
||||
|
||||
#~ msgid "Wrong number of bytes provided"
|
||||
#~ msgstr "Mali ang bilang ng bytes"
|
||||
|
||||
#~ msgid "Can not add Service."
|
||||
#~ msgstr "Hindi maidaragdag ang serbisyo."
|
||||
|
||||
#~ msgid "Cannot apply GAP parameters."
|
||||
#~ msgstr "Hindi ma-apply ang GAP parameters."
|
||||
|
||||
#~ msgid "Can not encode UUID, to check length."
|
||||
#~ msgstr "Hindi ma-encode UUID, para suriin ang haba."
|
||||
|
||||
#~ msgid "Can encode UUID into the advertisement packet."
|
||||
#~ msgstr "Maaring i-encode ang UUID sa advertisement packet."
|
||||
|
||||
#~ msgid "Can not apply advertisement data. status: 0x%02x"
|
||||
#~ msgstr "Hindi ma i-apply ang advertisement data. status: 0x%02x"
|
||||
|
||||
#~ msgid "Invalid Service type"
|
||||
#~ msgstr "Mali ang tipo ng serbisyo"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "palette must be displayio.Palette"
|
||||
#~ msgstr "ang palette ay dapat 32 bytes ang haba"
|
||||
|
329
locale/fr.po
329
locale/fr.po
@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 0.1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2019-01-10 21:32-0500\n"
|
||||
"POT-Creation-Date: 2019-01-20 17:33-0800\n"
|
||||
"PO-Revision-Date: 2018-12-23 20:05+0100\n"
|
||||
"Last-Translator: Pierrick Couturier <arofarn@arofarn.info>\n"
|
||||
"Language-Team: fr\n"
|
||||
@ -20,8 +20,8 @@ msgstr ""
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "périphérique I2C invalide"
|
||||
|
||||
#: extmod/machine_i2c.c:340 extmod/machine_i2c.c:354 extmod/machine_i2c.c:368
|
||||
#: extmod/machine_i2c.c:392
|
||||
#: extmod/machine_i2c.c:338 extmod/machine_i2c.c:352 extmod/machine_i2c.c:366
|
||||
#: extmod/machine_i2c.c:390
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "opération sur I2C non supportée"
|
||||
|
||||
@ -150,11 +150,11 @@ msgstr "arguments invalides"
|
||||
msgid "script compilation not supported"
|
||||
msgstr "compilation de script non supporté"
|
||||
|
||||
#: main.c:150
|
||||
#: main.c:155
|
||||
msgid " output:\n"
|
||||
msgstr " sortie:\n"
|
||||
|
||||
#: main.c:164 main.c:237
|
||||
#: main.c:169 main.c:247
|
||||
msgid ""
|
||||
"Auto-reload is on. Simply save files over USB to run them or enter REPL to "
|
||||
"disable.\n"
|
||||
@ -162,27 +162,27 @@ msgstr ""
|
||||
"Auto-chargement activé. Copiez simplement les fichiers en USB pour les "
|
||||
"lancer ou entrez sur REPL pour le désactiver.\n"
|
||||
|
||||
#: main.c:166
|
||||
#: main.c:171
|
||||
msgid "Running in safe mode! Auto-reload is off.\n"
|
||||
msgstr "Mode sans-échec. Auto-rechargement désactivé.\n"
|
||||
|
||||
#: main.c:168 main.c:239
|
||||
#: main.c:173 main.c:249
|
||||
msgid "Auto-reload is off.\n"
|
||||
msgstr "Auto-rechargement désactivé.\n"
|
||||
|
||||
#: main.c:182
|
||||
#: main.c:187
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Mode sans-échec! Le code sauvegardé ne s'éxecute pas.\n"
|
||||
|
||||
#: main.c:198
|
||||
#: main.c:203
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "ATTENTION: le nom de fichier de votre code a deux extensions\n"
|
||||
|
||||
#: main.c:244
|
||||
#: main.c:254
|
||||
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
|
||||
msgstr "Appuyez sur une touche pour entrer sur REPL ou CTRL-D pour recharger."
|
||||
|
||||
#: main.c:407
|
||||
#: main.c:417
|
||||
msgid "soft reboot\n"
|
||||
msgstr "redémarrage logiciel\n"
|
||||
|
||||
@ -199,18 +199,6 @@ msgstr "calibration en lecture seule"
|
||||
msgid "calibration is out of range"
|
||||
msgstr "calibration hors gamme"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:59 ports/nrf/board_busses.c:39
|
||||
msgid "No default I2C bus"
|
||||
msgstr "Pas de bus I2C par défaut"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:85 ports/nrf/board_busses.c:64
|
||||
msgid "No default SPI bus"
|
||||
msgstr "Pas de bus SPI par défaut"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:112 ports/nrf/board_busses.c:91
|
||||
msgid "No default UART bus"
|
||||
msgstr "Pas de bus UART par défaut"
|
||||
|
||||
#: ports/atmel-samd/common-hal/analogio/AnalogIn.c:63
|
||||
#: ports/nrf/common-hal/analogio/AnalogIn.c:39
|
||||
msgid "Pin does not have ADC capabilities"
|
||||
@ -327,7 +315,7 @@ msgid "Not enough pins available"
|
||||
msgstr "Pas assez de broches disponibles"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c:78
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:171
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:176
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c:120
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c:45
|
||||
#: ports/nrf/common-hal/busio/I2C.c:84
|
||||
@ -375,6 +363,18 @@ msgstr "Pas de broche TX"
|
||||
msgid "Cannot get pull while in output mode"
|
||||
msgstr "Ne peux être tiré ('pull') en mode 'output'"
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:43
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:43
|
||||
#, fuzzy
|
||||
msgid "Data 0 pin must be byte aligned"
|
||||
msgstr "le graphic doit être long de 2048 octets"
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:47
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:47
|
||||
#, fuzzy, c-format
|
||||
msgid "Bus pin %d is already in use"
|
||||
msgstr "DAC déjà utilisé"
|
||||
|
||||
#: ports/atmel-samd/common-hal/microcontroller/__init__.c:74
|
||||
#: ports/esp8266/common-hal/microcontroller/__init__.c:64
|
||||
msgid "Cannot reset into bootloader because no bootloader is present."
|
||||
@ -900,47 +900,47 @@ msgstr "Ne sais pas comment passer l'objet à une fonction native"
|
||||
msgid "[addrinfo error %d]"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:44
|
||||
#: py/argcheck.c:53
|
||||
msgid "function does not take keyword arguments"
|
||||
msgstr "la fonction ne prend pas d'arguments nommés"
|
||||
|
||||
#: py/argcheck.c:54 py/bc.c:85 py/objnamedtuple.c:104
|
||||
#: py/argcheck.c:63 py/bc.c:85 py/objnamedtuple.c:108
|
||||
#, c-format
|
||||
msgid "function takes %d positional arguments but %d were given"
|
||||
msgstr "la fonction prend %d argument(s) mais %d ont été donné(s)"
|
||||
|
||||
#: py/argcheck.c:64
|
||||
#: py/argcheck.c:73
|
||||
#, c-format
|
||||
msgid "function missing %d required positional arguments"
|
||||
msgstr "il manque %d arguments obligatoires à la fonction"
|
||||
|
||||
#: py/argcheck.c:72
|
||||
#: py/argcheck.c:81
|
||||
#, c-format
|
||||
msgid "function expected at most %d arguments, got %d"
|
||||
msgstr "la fonction attendait au plus %d arguments, reçu %d"
|
||||
|
||||
#: py/argcheck.c:97
|
||||
#: py/argcheck.c:106
|
||||
msgid "'%q' argument required"
|
||||
msgstr "'%q' argument requis"
|
||||
|
||||
#: py/argcheck.c:122
|
||||
#: py/argcheck.c:131
|
||||
msgid "extra positional arguments given"
|
||||
msgstr "argument positionnel donné en plus"
|
||||
|
||||
#: py/argcheck.c:130
|
||||
#: py/argcheck.c:139
|
||||
msgid "extra keyword arguments given"
|
||||
msgstr "argument nommé donné en plus"
|
||||
|
||||
#: py/argcheck.c:142
|
||||
#: py/argcheck.c:151
|
||||
msgid "argument num/types mismatch"
|
||||
msgstr "argument num/types ne correspond pas"
|
||||
|
||||
#: py/argcheck.c:147
|
||||
#: py/argcheck.c:156
|
||||
msgid "keyword argument(s) not yet implemented - use normal args instead"
|
||||
msgstr ""
|
||||
"argument(s) nommé(s) pas encore implémenté - utilisez les arguments normaux"
|
||||
|
||||
#: py/bc.c:88 py/objnamedtuple.c:108
|
||||
#: py/bc.c:88 py/objnamedtuple.c:112
|
||||
msgid "%q() takes %d positional arguments but %d were given"
|
||||
msgstr "%q() prend %d arguments mais %d ont été donnés"
|
||||
|
||||
@ -952,11 +952,11 @@ msgstr "argument nommé imprévu"
|
||||
msgid "keywords must be strings"
|
||||
msgstr "les noms doivent être des chaînes de caractère"
|
||||
|
||||
#: py/bc.c:206 py/objnamedtuple.c:138
|
||||
#: py/bc.c:206 py/objnamedtuple.c:142
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr "la fonction a reçu plusieurs valeurs pour l'argument '%q'"
|
||||
|
||||
#: py/bc.c:218 py/objnamedtuple.c:130
|
||||
#: py/bc.c:218 py/objnamedtuple.c:134
|
||||
msgid "unexpected keyword argument '%q'"
|
||||
msgstr "argument nommé '%q' imprévu"
|
||||
|
||||
@ -1546,11 +1546,11 @@ msgstr "plein"
|
||||
msgid "empty"
|
||||
msgstr "vide"
|
||||
|
||||
#: py/objdict.c:314
|
||||
#: py/objdict.c:315
|
||||
msgid "popitem(): dictionary is empty"
|
||||
msgstr "popitem(): dictionnaire vide"
|
||||
|
||||
#: py/objdict.c:357
|
||||
#: py/objdict.c:358
|
||||
msgid "dict update sequence has wrong length"
|
||||
msgstr "la séquence de mise à jour de dict a une mauvaise longueur"
|
||||
|
||||
@ -1818,71 +1818,71 @@ msgstr "les indices de chaîne de caractère doivent être des entiers, pas %s"
|
||||
msgid "string index out of range"
|
||||
msgstr "index de chaîne hors gamme"
|
||||
|
||||
#: py/objtype.c:358
|
||||
#: py/objtype.c:368
|
||||
msgid "__init__() should return None"
|
||||
msgstr "__init__() doit retourner None"
|
||||
|
||||
#: py/objtype.c:360
|
||||
#: py/objtype.c:370
|
||||
#, c-format
|
||||
msgid "__init__() should return None, not '%s'"
|
||||
msgstr "__init__() doit retourner None, pas '%s'"
|
||||
|
||||
#: py/objtype.c:623 py/objtype.c:1275 py/runtime.c:1065
|
||||
#: py/objtype.c:633 py/objtype.c:1287 py/runtime.c:1065
|
||||
msgid "unreadable attribute"
|
||||
msgstr "attribut illisible"
|
||||
|
||||
#: py/objtype.c:868 py/runtime.c:653
|
||||
#: py/objtype.c:878 py/runtime.c:653
|
||||
msgid "object not callable"
|
||||
msgstr "objet non appelable"
|
||||
|
||||
#: py/objtype.c:870 py/runtime.c:655
|
||||
#: py/objtype.c:880 py/runtime.c:655
|
||||
#, c-format
|
||||
msgid "'%s' object is not callable"
|
||||
msgstr "objet '%s' non appelable"
|
||||
|
||||
#: py/objtype.c:978
|
||||
#: py/objtype.c:988
|
||||
msgid "type takes 1 or 3 arguments"
|
||||
msgstr "le type prend 1 ou 3 arguments"
|
||||
|
||||
#: py/objtype.c:989
|
||||
#: py/objtype.c:999
|
||||
msgid "cannot create instance"
|
||||
msgstr "ne peut pas créer une instance"
|
||||
|
||||
#: py/objtype.c:991
|
||||
#: py/objtype.c:1001
|
||||
msgid "cannot create '%q' instances"
|
||||
msgstr "ne peut pas créer une instance de '%q'"
|
||||
|
||||
#: py/objtype.c:1047
|
||||
#: py/objtype.c:1059
|
||||
msgid "can't add special method to already-subclassed class"
|
||||
msgstr ""
|
||||
"impossible d'ajouter une méthode spécial à une classe déjà sous-classée"
|
||||
|
||||
#: py/objtype.c:1091 py/objtype.c:1097
|
||||
#: py/objtype.c:1103 py/objtype.c:1109
|
||||
msgid "type is not an acceptable base type"
|
||||
msgstr "le type n'est pas un type de base accepté"
|
||||
|
||||
#: py/objtype.c:1100
|
||||
#: py/objtype.c:1112
|
||||
msgid "type '%q' is not an acceptable base type"
|
||||
msgstr "le type '%q' n'est pas un type de base accepté"
|
||||
|
||||
#: py/objtype.c:1137
|
||||
#: py/objtype.c:1149
|
||||
msgid "multiple inheritance not supported"
|
||||
msgstr "héritage multiple non supporté"
|
||||
|
||||
#: py/objtype.c:1164
|
||||
#: py/objtype.c:1176
|
||||
msgid "multiple bases have instance lay-out conflict"
|
||||
msgstr "de multiple bases ont un conflit de lay-out d'instance"
|
||||
|
||||
#: py/objtype.c:1205
|
||||
#: py/objtype.c:1217
|
||||
msgid "first argument to super() must be type"
|
||||
msgstr "le premier argument de super() doit être un type"
|
||||
|
||||
#: py/objtype.c:1370
|
||||
#: py/objtype.c:1382
|
||||
msgid "issubclass() arg 2 must be a class or a tuple of classes"
|
||||
msgstr ""
|
||||
"l'argument 2 de issubclass() doit être une classe ou un tuple de classes"
|
||||
|
||||
#: py/objtype.c:1384
|
||||
#: py/objtype.c:1396
|
||||
msgid "issubclass() arg 1 must be a class"
|
||||
msgstr "l'argument 1 de issubclass() doit être une classe"
|
||||
|
||||
@ -2082,8 +2082,8 @@ msgid "AnalogOut is only 16 bits. Value must be less than 65536."
|
||||
msgstr ""
|
||||
"AnalogOut est seulement 16 bits. Les valeurs doivent être inf. à 65536."
|
||||
|
||||
#: shared-bindings/audiobusio/I2SOut.c:225
|
||||
#: shared-bindings/audioio/AudioOut.c:226
|
||||
#: shared-bindings/audiobusio/I2SOut.c:222
|
||||
#: shared-bindings/audioio/AudioOut.c:223
|
||||
msgid "Not playing"
|
||||
msgstr "Ne joue pas"
|
||||
|
||||
@ -2122,26 +2122,26 @@ msgid ""
|
||||
msgstr ""
|
||||
"le tampon de destination doit être un tableau de type 'B' pour bit_depth = 8"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:94
|
||||
#: shared-bindings/audioio/Mixer.c:91
|
||||
#, fuzzy
|
||||
msgid "Invalid voice count"
|
||||
msgstr "Type de service invalide"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:99
|
||||
#: shared-bindings/audioio/Mixer.c:96
|
||||
msgid "Invalid channel count"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:103
|
||||
#: shared-bindings/audioio/Mixer.c:100
|
||||
#, fuzzy
|
||||
msgid "Sample rate must be positive"
|
||||
msgstr "le taux d'échantillonage doit être positif"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:107
|
||||
#: shared-bindings/audioio/Mixer.c:104
|
||||
#, fuzzy
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr "bits doivent être 8 ou 16"
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:98
|
||||
#: shared-bindings/audioio/RawSample.c:95
|
||||
msgid ""
|
||||
"sample_source buffer must be a bytearray or array of type 'h', 'H', 'b' or "
|
||||
"'B'"
|
||||
@ -2149,7 +2149,7 @@ msgstr ""
|
||||
"le tampon de sample_source doit être un bytearray ou un tableau de type "
|
||||
"'h','H', 'b' ou 'B'"
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:104
|
||||
#: shared-bindings/audioio/RawSample.c:101
|
||||
msgid "buffer must be a bytes-like object"
|
||||
msgstr "le tampon doit être un objet bytes-like"
|
||||
|
||||
@ -2158,53 +2158,53 @@ msgstr "le tampon doit être un objet bytes-like"
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr "le fichier doit être un fichier ouvert en mode 'byte'"
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:111 shared-bindings/bitbangio/SPI.c:121
|
||||
#: shared-bindings/busio/SPI.c:133
|
||||
#: shared-bindings/bitbangio/I2C.c:109 shared-bindings/bitbangio/SPI.c:119
|
||||
#: shared-bindings/busio/SPI.c:130
|
||||
msgid "Function requires lock"
|
||||
msgstr "La fonction nécessite un verrou"
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:195 shared-bindings/busio/I2C.c:210
|
||||
#: shared-bindings/bitbangio/I2C.c:193 shared-bindings/busio/I2C.c:207
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr "Le tampon doit être de longueur au moins 1"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:151 shared-bindings/busio/SPI.c:175
|
||||
#: shared-bindings/bitbangio/SPI.c:149 shared-bindings/busio/SPI.c:172
|
||||
msgid "Invalid polarity"
|
||||
msgstr "Polarité invalide"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:155 shared-bindings/busio/SPI.c:179
|
||||
#: shared-bindings/bitbangio/SPI.c:153 shared-bindings/busio/SPI.c:176
|
||||
msgid "Invalid phase"
|
||||
msgstr "Phase invalide"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:159 shared-bindings/busio/SPI.c:183
|
||||
#: shared-bindings/bitbangio/SPI.c:157 shared-bindings/busio/SPI.c:180
|
||||
msgid "Invalid number of bits"
|
||||
msgstr "Nombre de bits invalide"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:284 shared-bindings/busio/SPI.c:348
|
||||
#: shared-bindings/bitbangio/SPI.c:282 shared-bindings/busio/SPI.c:345
|
||||
msgid "buffer slices must be of equal length"
|
||||
msgstr "les slices de tampon doivent être de longueurs égales"
|
||||
|
||||
#: shared-bindings/bleio/Address.c:119
|
||||
#: shared-bindings/bleio/Address.c:115
|
||||
#, c-format
|
||||
msgid "Address is not %d bytes long or is in wrong format"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Address.c:126
|
||||
#: shared-bindings/bleio/Address.c:122
|
||||
#, fuzzy, c-format
|
||||
msgid "Address must be %d bytes long"
|
||||
msgstr "la palette doit être longue de 32 octets"
|
||||
|
||||
#: shared-bindings/bleio/Characteristic.c:81
|
||||
#: shared-bindings/bleio/Descriptor.c:93 shared-bindings/bleio/Service.c:78
|
||||
#: shared-bindings/bleio/Characteristic.c:74
|
||||
#: shared-bindings/bleio/Descriptor.c:86 shared-bindings/bleio/Service.c:66
|
||||
#, fuzzy
|
||||
msgid "Expected a UUID"
|
||||
msgstr "Attendu : %q"
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:68
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:61
|
||||
#, fuzzy
|
||||
msgid "buffer_size must be >= 1"
|
||||
msgstr "les slices de tampon doivent être de longueurs égales"
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:72
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:65
|
||||
#, fuzzy
|
||||
msgid "Expected a Characteristic"
|
||||
msgstr "Impossible d'ajouter la Characteristic."
|
||||
@ -2225,20 +2225,20 @@ msgstr "Modification du nom impossible en mode Central"
|
||||
msgid "Can't advertise in Central mode"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:111
|
||||
#: shared-bindings/bleio/Peripheral.c:106
|
||||
msgid "services includes an object that is not a Service"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:124
|
||||
#: shared-bindings/bleio/Peripheral.c:119
|
||||
#, fuzzy
|
||||
msgid "name must be a string"
|
||||
msgstr "les noms doivent être des chaînes de caractère"
|
||||
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
#: shared-bindings/bleio/Service.c:84
|
||||
msgid "characteristics includes an object that is not a Characteristic"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Service.c:96
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
msgid "Characteristic UUID doesn't match Service UUID"
|
||||
msgstr ""
|
||||
|
||||
@ -2259,19 +2259,19 @@ msgstr "le tampon doit être un objet bytes-like"
|
||||
msgid "not a 128-bit UUID"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/I2C.c:120
|
||||
#: shared-bindings/busio/I2C.c:117
|
||||
msgid "Function requires lock."
|
||||
msgstr "La fonction nécessite un verrou."
|
||||
|
||||
#: shared-bindings/busio/UART.c:106
|
||||
#: shared-bindings/busio/UART.c:103
|
||||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr "bits doivent être 7, 8 ou 9"
|
||||
|
||||
#: shared-bindings/busio/UART.c:118
|
||||
#: shared-bindings/busio/UART.c:115
|
||||
msgid "stop must be 1 or 2"
|
||||
msgstr "stop doit être 1 ou 2"
|
||||
|
||||
#: shared-bindings/busio/UART.c:123
|
||||
#: shared-bindings/busio/UART.c:120
|
||||
msgid "timeout >100 (units are now seconds, not msecs)"
|
||||
msgstr "timeout >100 (exprimé en secondes, pas en ms)"
|
||||
|
||||
@ -2297,7 +2297,7 @@ msgstr "Le tirage 'pull' n'est pas utilisé quand la direction est 'output'."
|
||||
msgid "Unsupported pull value."
|
||||
msgstr "Valeur de tirage 'pull' non supportée."
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c:84
|
||||
#: shared-bindings/displayio/Bitmap.c:84 shared-bindings/displayio/Shape.c:88
|
||||
#, fuzzy
|
||||
msgid "y should be an int"
|
||||
msgstr "y doit être un entier (int)"
|
||||
@ -2318,53 +2318,76 @@ msgstr "les données de ligne doivent être un tampon"
|
||||
msgid "color should be an int"
|
||||
msgstr "la couleur doit être un entier (int)"
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:55
|
||||
#: shared-bindings/displayio/FourWire.c:64
|
||||
#: shared-bindings/displayio/Display.c:119
|
||||
msgid "Too many displays"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Display.c:138
|
||||
msgid "Must be a Group subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:93
|
||||
#: shared-bindings/displayio/ParallelBus.c:98
|
||||
msgid "Too many display busses"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:106
|
||||
#: shared-bindings/displayio/ParallelBus.c:110
|
||||
msgid "displayio is a work in progress"
|
||||
msgstr "displayio est en cours de développement"
|
||||
|
||||
#: shared-bindings/displayio/Group.c:65
|
||||
#: shared-bindings/displayio/Group.c:62
|
||||
#, fuzzy
|
||||
msgid "Group must have size at least 1"
|
||||
msgstr "Le tampon doit être de longueur au moins 1"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:96
|
||||
#: shared-bindings/displayio/Palette.c:93
|
||||
#, fuzzy
|
||||
msgid "color buffer must be a bytearray or array of type 'b' or 'B'"
|
||||
msgstr ""
|
||||
"le tampon de couleur doit être un bytearray ou un tableau de type 'b' ou 'B'"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:102
|
||||
#: shared-bindings/displayio/Palette.c:99
|
||||
msgid "color buffer must be 3 bytes (RGB) or 4 bytes (RGB + pad byte)"
|
||||
msgstr "le tampon de couleur doit faire 3 octets (RVB) ou 4 (RVB + pad byte)"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:106
|
||||
#: shared-bindings/displayio/Palette.c:103
|
||||
#, fuzzy
|
||||
msgid "color must be between 0x000000 and 0xffffff"
|
||||
msgstr "la couleur doit être entre 0x000000 et 0xffffff"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:110
|
||||
#: shared-bindings/displayio/Palette.c:107
|
||||
#, fuzzy
|
||||
msgid "color buffer must be a buffer or int"
|
||||
msgstr "le tampon de couleur doit être un tampon ou un entier"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:123
|
||||
#: shared-bindings/displayio/Palette.c:137
|
||||
#: shared-bindings/displayio/Palette.c:120
|
||||
#: shared-bindings/displayio/Palette.c:134
|
||||
#, fuzzy
|
||||
msgid "palette_index should be an int"
|
||||
msgstr "palette_index devrait être un entier (int)'"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:48
|
||||
#: shared-bindings/displayio/Shape.c:92
|
||||
#, fuzzy
|
||||
msgid "start_x should be an int"
|
||||
msgstr "y doit être un entier (int)"
|
||||
|
||||
#: shared-bindings/displayio/Shape.c:96
|
||||
#, fuzzy
|
||||
msgid "end_x should be an int"
|
||||
msgstr "y doit être un entier (int)"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:49
|
||||
#, fuzzy
|
||||
msgid "position must be 2-tuple"
|
||||
msgstr "position doit être un 2-tuple"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:97
|
||||
#: shared-bindings/displayio/Sprite.c:102
|
||||
#, fuzzy
|
||||
msgid "unsupported bitmap type"
|
||||
msgstr "type de bitmap non supporté"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:162
|
||||
#: shared-bindings/displayio/Sprite.c:167
|
||||
msgid "pixel_shader must be displayio.Palette or displayio.ColorConverter"
|
||||
msgstr ""
|
||||
"pixel_shader doit être un objet displayio.Palette ou displayio.ColorConverter"
|
||||
@ -2377,16 +2400,16 @@ msgstr "trop d'arguments"
|
||||
msgid "expected a DigitalInOut"
|
||||
msgstr "objet DigitalInOut attendu"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:95
|
||||
#, fuzzy
|
||||
msgid "can't convert address to int"
|
||||
msgstr "ne peut convertir %s en entier int"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:101
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
msgid "address out of bounds"
|
||||
msgstr "adresse hors limites"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:107
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:104
|
||||
msgid "addresses is empty"
|
||||
msgstr "adresses vides"
|
||||
|
||||
@ -2428,14 +2451,14 @@ msgstr "Les octets 'bytes' doivent être entre 0 et 255"
|
||||
msgid "No hardware random available"
|
||||
msgstr "Pas de source matérielle d'aléa disponible"
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:164
|
||||
#: shared-bindings/pulseio/PWMOut.c:162
|
||||
msgid ""
|
||||
"PWM duty_cycle must be between 0 and 65535 inclusive (16 bit resolution)"
|
||||
msgstr ""
|
||||
"La valeur de cycle PWM doit être entre 0 et 65535 inclus (résolution de 16 "
|
||||
"bits)"
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:195
|
||||
#: shared-bindings/pulseio/PWMOut.c:193
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"PWM frequency not writable when variable_frequency is False on construction."
|
||||
@ -2443,19 +2466,19 @@ msgstr ""
|
||||
"La fréquence de PWM n'est pas modifiable quand variable_frequency est False "
|
||||
"à la construction."
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:275
|
||||
#: shared-bindings/pulseio/PulseIn.c:272
|
||||
msgid "Cannot delete values"
|
||||
msgstr "Impossible de supprimer les valeurs"
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:281
|
||||
#: shared-bindings/pulseio/PulseIn.c:278
|
||||
msgid "Slices not supported"
|
||||
msgstr "Slices non supportées"
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:287
|
||||
#: shared-bindings/pulseio/PulseIn.c:284
|
||||
msgid "index must be int"
|
||||
msgstr "l'index doit être un entier"
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:293
|
||||
#: shared-bindings/pulseio/PulseIn.c:290
|
||||
msgid "Read-only"
|
||||
msgstr "Lecture seule"
|
||||
|
||||
@ -2624,11 +2647,20 @@ msgstr "Seules les bitmaps de 8bits par couleur ou moins sont supportées"
|
||||
msgid "row must be packed and word aligned"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Display.c:62
|
||||
#, fuzzy
|
||||
msgid "Unsupported display bus type"
|
||||
msgstr "type de bitmap non supporté"
|
||||
|
||||
#: shared-module/displayio/Group.c:39
|
||||
msgid "Group full"
|
||||
msgstr "Groupe plein"
|
||||
|
||||
#: shared-module/displayio/Group.c:48
|
||||
#: shared-module/displayio/Group.c:46
|
||||
msgid "Layer must be a Group or Sprite subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Group.c:55
|
||||
#, fuzzy
|
||||
msgid "Group empty"
|
||||
msgstr "Groupe vide"
|
||||
@ -2648,6 +2680,21 @@ msgstr "Seul les BMP non-compressé au format Windows sont supportés %d"
|
||||
msgid "Only true color (24 bpp or higher) BMP supported %x"
|
||||
msgstr "Seul les BMP 24bits ou plus sont supportés %x"
|
||||
|
||||
#: shared-module/displayio/Shape.c:60
|
||||
#, fuzzy
|
||||
msgid "y value out of bounds"
|
||||
msgstr "adresse hors limites"
|
||||
|
||||
#: shared-module/displayio/Shape.c:63
|
||||
#, fuzzy
|
||||
msgid "x value out of bounds"
|
||||
msgstr "adresse hors limites"
|
||||
|
||||
#: shared-module/displayio/Shape.c:67
|
||||
#, c-format
|
||||
msgid "Maximum x value when mirrored is %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/storage/__init__.c:155
|
||||
msgid "Cannot remount '/' when USB is active."
|
||||
msgstr "'/' ne peut être remonté quand l'USB est actif."
|
||||
@ -2673,6 +2720,18 @@ msgstr "USB occupé"
|
||||
msgid "USB Error"
|
||||
msgstr "Erreur USB"
|
||||
|
||||
#: supervisor/shared/board_busses.c:62
|
||||
msgid "No default I2C bus"
|
||||
msgstr "Pas de bus I2C par défaut"
|
||||
|
||||
#: supervisor/shared/board_busses.c:91
|
||||
msgid "No default SPI bus"
|
||||
msgstr "Pas de bus SPI par défaut"
|
||||
|
||||
#: supervisor/shared/board_busses.c:118
|
||||
msgid "No default UART bus"
|
||||
msgstr "Pas de bus UART par défaut"
|
||||
|
||||
#: supervisor/shared/safe_mode.c:97
|
||||
msgid "You requested starting safe mode by "
|
||||
msgstr "Vous avez demandé à démarrer en mode sans-échec par "
|
||||
@ -2753,6 +2812,28 @@ msgstr ""
|
||||
#~ msgid "Invalid UUID parameter"
|
||||
#~ msgstr "Paramètre UUID invalide"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "palette must be displayio.Palette"
|
||||
#~ msgstr "la palette doit être une displayio.Palette"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "value_size must be power of two"
|
||||
#~ msgstr "value_size doit être une puissance de 2"
|
||||
|
||||
#~ msgid "Cannot apply GAP parameters."
|
||||
#~ msgstr "Impossible d'appliquer les paramètres GAP"
|
||||
|
||||
#~ msgid "Invalid Service type"
|
||||
#~ msgstr "Type de service invalide"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
|
||||
#~ msgstr ""
|
||||
#~ "SVP, remontez le problème là avec le contenu du lecteur CIRCUITPY:\n"
|
||||
|
||||
#~ msgid "Can not encode UUID, to check length."
|
||||
#~ msgstr "Impossible d'encoder l'UUID pour vérifier la longueur."
|
||||
|
||||
#~ msgid "Wrong address length"
|
||||
#~ msgstr "Mauvaise longueur d'adresse"
|
||||
|
||||
@ -2760,22 +2841,13 @@ msgstr ""
|
||||
#~ msgid "Wrong number of bytes provided"
|
||||
#~ msgstr "mauvais nombre d'octets fourni'"
|
||||
|
||||
#~ msgid "Can not apply device name in the stack."
|
||||
#~ msgstr "Impossible d'appliquer le nom de périphérique dans la pile"
|
||||
|
||||
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
|
||||
#~ msgstr ""
|
||||
#~ "Il semblerait que votre code CircuitPython a durement planté. Oups!\n"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
|
||||
#~ msgstr ""
|
||||
#~ "SVP, remontez le problème là avec le contenu du lecteur CIRCUITPY:\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "value_size must be power of two"
|
||||
#~ msgstr "value_size doit être une puissance de 2"
|
||||
|
||||
#~ msgid "Cannot set PPCP parameters."
|
||||
#~ msgstr "Impossible d'appliquer les paramètres PPCP"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "enough power for the whole circuit and press reset (after ejecting "
|
||||
#~ "CIRCUITPY).\n"
|
||||
@ -2783,27 +2855,14 @@ msgstr ""
|
||||
#~ "assez de puissance pour l'ensemble du circuit et appuyez sur "
|
||||
#~ "'reset' (après avoir éjecter CIRCUITPY).\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "palette must be displayio.Palette"
|
||||
#~ msgstr "la palette doit être une displayio.Palette"
|
||||
|
||||
#~ msgid "Can not encode UUID, to check length."
|
||||
#~ msgstr "Impossible d'encoder l'UUID pour vérifier la longueur."
|
||||
|
||||
#~ msgid "Can not add Service."
|
||||
#~ msgstr "Impossible d'ajouter le Service"
|
||||
|
||||
#~ msgid "Can not add Characteristic."
|
||||
#~ msgstr "Impossible d'ajouter la Characteristic."
|
||||
|
||||
#~ msgid "Can not apply device name in the stack."
|
||||
#~ msgstr "Impossible d'appliquer le nom de périphérique dans la pile"
|
||||
|
||||
#~ msgid "Can not query for the device address."
|
||||
#~ msgstr "Impossible d'obtenir l'adresse du périphérique"
|
||||
|
||||
#~ msgid "Cannot apply GAP parameters."
|
||||
#~ msgstr "Impossible d'appliquer les paramètres GAP"
|
||||
#~ msgid "Can not add Characteristic."
|
||||
#~ msgstr "Impossible d'ajouter la Characteristic."
|
||||
|
||||
#~ msgid "Invalid Service type"
|
||||
#~ msgstr "Type de service invalide"
|
||||
#~ msgid "Cannot set PPCP parameters."
|
||||
#~ msgstr "Impossible d'appliquer les paramètres PPCP"
|
||||
|
321
locale/it_IT.po
321
locale/it_IT.po
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2019-01-10 21:32-0500\n"
|
||||
"POT-Creation-Date: 2019-01-20 17:33-0800\n"
|
||||
"PO-Revision-Date: 2018-10-02 16:27+0200\n"
|
||||
"Last-Translator: Enrico Paganin <enrico.paganin@mail.com>\n"
|
||||
"Language-Team: \n"
|
||||
@ -21,8 +21,8 @@ msgstr ""
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "periferica I2C invalida"
|
||||
|
||||
#: extmod/machine_i2c.c:340 extmod/machine_i2c.c:354 extmod/machine_i2c.c:368
|
||||
#: extmod/machine_i2c.c:392
|
||||
#: extmod/machine_i2c.c:338 extmod/machine_i2c.c:352 extmod/machine_i2c.c:366
|
||||
#: extmod/machine_i2c.c:390
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "operazione I2C non supportata"
|
||||
|
||||
@ -151,11 +151,11 @@ msgstr "argomenti non validi"
|
||||
msgid "script compilation not supported"
|
||||
msgstr "compilazione dello scrip non suportata"
|
||||
|
||||
#: main.c:150
|
||||
#: main.c:155
|
||||
msgid " output:\n"
|
||||
msgstr " output:\n"
|
||||
|
||||
#: main.c:164 main.c:237
|
||||
#: main.c:169 main.c:247
|
||||
msgid ""
|
||||
"Auto-reload is on. Simply save files over USB to run them or enter REPL to "
|
||||
"disable.\n"
|
||||
@ -163,28 +163,28 @@ msgstr ""
|
||||
"L'auto-reload è attivo. Salva i file su USB per eseguirli o entra nel REPL "
|
||||
"per disabilitarlo.\n"
|
||||
|
||||
#: main.c:166
|
||||
#: main.c:171
|
||||
msgid "Running in safe mode! Auto-reload is off.\n"
|
||||
msgstr "Modalità sicura in esecuzione! Auto-reload disattivato.\n"
|
||||
|
||||
#: main.c:168 main.c:239
|
||||
#: main.c:173 main.c:249
|
||||
msgid "Auto-reload is off.\n"
|
||||
msgstr "Auto-reload disattivato.\n"
|
||||
|
||||
#: main.c:182
|
||||
#: main.c:187
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Modalità sicura in esecuzione! Codice salvato non in esecuzione.\n"
|
||||
|
||||
#: main.c:198
|
||||
#: main.c:203
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "ATTENZIONE: Il nome del sorgente ha due estensioni\n"
|
||||
|
||||
#: main.c:244
|
||||
#: main.c:254
|
||||
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
|
||||
msgstr ""
|
||||
"Premi un qualunque tasto per entrare nel REPL. Usa CTRL-D per ricaricare."
|
||||
|
||||
#: main.c:407
|
||||
#: main.c:417
|
||||
msgid "soft reboot\n"
|
||||
msgstr "soft reboot\n"
|
||||
|
||||
@ -201,18 +201,6 @@ msgstr "la calibrazione è in sola lettura"
|
||||
msgid "calibration is out of range"
|
||||
msgstr "la calibrazione è fuori intervallo"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:59 ports/nrf/board_busses.c:39
|
||||
msgid "No default I2C bus"
|
||||
msgstr "Nessun bus I2C predefinito"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:85 ports/nrf/board_busses.c:64
|
||||
msgid "No default SPI bus"
|
||||
msgstr "Nessun bus SPI predefinito"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:112 ports/nrf/board_busses.c:91
|
||||
msgid "No default UART bus"
|
||||
msgstr "Nessun bus UART predefinito"
|
||||
|
||||
#: ports/atmel-samd/common-hal/analogio/AnalogIn.c:63
|
||||
#: ports/nrf/common-hal/analogio/AnalogIn.c:39
|
||||
msgid "Pin does not have ADC capabilities"
|
||||
@ -331,7 +319,7 @@ msgid "Not enough pins available"
|
||||
msgstr "Non sono presenti abbastanza pin"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c:78
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:171
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:176
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c:120
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c:45
|
||||
#: ports/nrf/common-hal/busio/I2C.c:84
|
||||
@ -379,6 +367,18 @@ msgstr "Nessun pin TX"
|
||||
msgid "Cannot get pull while in output mode"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:43
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:43
|
||||
#, fuzzy
|
||||
msgid "Data 0 pin must be byte aligned"
|
||||
msgstr "graphic deve essere lunga 2048 byte"
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:47
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:47
|
||||
#, fuzzy, c-format
|
||||
msgid "Bus pin %d is already in use"
|
||||
msgstr "DAC già in uso"
|
||||
|
||||
#: ports/atmel-samd/common-hal/microcontroller/__init__.c:74
|
||||
#: ports/esp8266/common-hal/microcontroller/__init__.c:64
|
||||
msgid "Cannot reset into bootloader because no bootloader is present."
|
||||
@ -901,49 +901,49 @@ msgstr "Non so come passare l'oggetto alla funzione nativa"
|
||||
msgid "[addrinfo error %d]"
|
||||
msgstr "[errore addrinfo %d]"
|
||||
|
||||
#: py/argcheck.c:44
|
||||
#: py/argcheck.c:53
|
||||
msgid "function does not take keyword arguments"
|
||||
msgstr "la funzione non prende argomenti nominati"
|
||||
|
||||
#: py/argcheck.c:54 py/bc.c:85 py/objnamedtuple.c:104
|
||||
#: py/argcheck.c:63 py/bc.c:85 py/objnamedtuple.c:108
|
||||
#, c-format
|
||||
msgid "function takes %d positional arguments but %d were given"
|
||||
msgstr ""
|
||||
"la funzione prende %d argomenti posizionali ma ne sono stati forniti %d"
|
||||
|
||||
#: py/argcheck.c:64
|
||||
#: py/argcheck.c:73
|
||||
#, c-format
|
||||
msgid "function missing %d required positional arguments"
|
||||
msgstr "mancano %d argomenti posizionali obbligatori alla funzione"
|
||||
|
||||
#: py/argcheck.c:72
|
||||
#: py/argcheck.c:81
|
||||
#, c-format
|
||||
msgid "function expected at most %d arguments, got %d"
|
||||
msgstr "la funzione prevede al massimo %d argmoneti, ma ne ha ricevuti %d"
|
||||
|
||||
#: py/argcheck.c:97
|
||||
#: py/argcheck.c:106
|
||||
msgid "'%q' argument required"
|
||||
msgstr "'%q' argomento richiesto"
|
||||
|
||||
#: py/argcheck.c:122
|
||||
#: py/argcheck.c:131
|
||||
msgid "extra positional arguments given"
|
||||
msgstr "argomenti posizonali extra dati"
|
||||
|
||||
#: py/argcheck.c:130
|
||||
#: py/argcheck.c:139
|
||||
msgid "extra keyword arguments given"
|
||||
msgstr "argomento nominato aggiuntivo fornito"
|
||||
|
||||
#: py/argcheck.c:142
|
||||
#: py/argcheck.c:151
|
||||
msgid "argument num/types mismatch"
|
||||
msgstr "discrepanza di numero/tipo di argomenti"
|
||||
|
||||
#: py/argcheck.c:147
|
||||
#: py/argcheck.c:156
|
||||
msgid "keyword argument(s) not yet implemented - use normal args instead"
|
||||
msgstr ""
|
||||
"argomento(i) nominati non ancora implementati - usare invece argomenti "
|
||||
"normali"
|
||||
|
||||
#: py/bc.c:88 py/objnamedtuple.c:108
|
||||
#: py/bc.c:88 py/objnamedtuple.c:112
|
||||
msgid "%q() takes %d positional arguments but %d were given"
|
||||
msgstr "%q() prende %d argomenti posizionali ma ne sono stati forniti %d"
|
||||
|
||||
@ -955,11 +955,11 @@ msgstr "argomento nominato inaspettato"
|
||||
msgid "keywords must be strings"
|
||||
msgstr "argomenti nominati devono essere stringhe"
|
||||
|
||||
#: py/bc.c:206 py/objnamedtuple.c:138
|
||||
#: py/bc.c:206 py/objnamedtuple.c:142
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr "la funzione ha ricevuto valori multipli per l'argomento '%q'"
|
||||
|
||||
#: py/bc.c:218 py/objnamedtuple.c:130
|
||||
#: py/bc.c:218 py/objnamedtuple.c:134
|
||||
msgid "unexpected keyword argument '%q'"
|
||||
msgstr "argomento nominato '%q' inaspettato"
|
||||
|
||||
@ -1546,11 +1546,11 @@ msgstr "pieno"
|
||||
msgid "empty"
|
||||
msgstr "vuoto"
|
||||
|
||||
#: py/objdict.c:314
|
||||
#: py/objdict.c:315
|
||||
msgid "popitem(): dictionary is empty"
|
||||
msgstr "popitem(): il dizionario è vuoto"
|
||||
|
||||
#: py/objdict.c:357
|
||||
#: py/objdict.c:358
|
||||
msgid "dict update sequence has wrong length"
|
||||
msgstr "sequanza di aggiornamento del dizionario ha la lunghezza errata"
|
||||
|
||||
@ -1814,71 +1814,71 @@ msgstr "indici della stringa devono essere interi, non %s"
|
||||
msgid "string index out of range"
|
||||
msgstr "indice della stringa fuori intervallo"
|
||||
|
||||
#: py/objtype.c:358
|
||||
#: py/objtype.c:368
|
||||
msgid "__init__() should return None"
|
||||
msgstr "__init__() deve ritornare None"
|
||||
|
||||
#: py/objtype.c:360
|
||||
#: py/objtype.c:370
|
||||
#, c-format
|
||||
msgid "__init__() should return None, not '%s'"
|
||||
msgstr "__init__() deve ritornare None, non '%s'"
|
||||
|
||||
#: py/objtype.c:623 py/objtype.c:1275 py/runtime.c:1065
|
||||
#: py/objtype.c:633 py/objtype.c:1287 py/runtime.c:1065
|
||||
msgid "unreadable attribute"
|
||||
msgstr "attributo non leggibile"
|
||||
|
||||
#: py/objtype.c:868 py/runtime.c:653
|
||||
#: py/objtype.c:878 py/runtime.c:653
|
||||
msgid "object not callable"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:870 py/runtime.c:655
|
||||
#: py/objtype.c:880 py/runtime.c:655
|
||||
#, c-format
|
||||
msgid "'%s' object is not callable"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:978
|
||||
#: py/objtype.c:988
|
||||
msgid "type takes 1 or 3 arguments"
|
||||
msgstr "tipo prende 1 o 3 argomenti"
|
||||
|
||||
#: py/objtype.c:989
|
||||
#: py/objtype.c:999
|
||||
msgid "cannot create instance"
|
||||
msgstr "impossibile creare un istanza"
|
||||
|
||||
#: py/objtype.c:991
|
||||
#: py/objtype.c:1001
|
||||
msgid "cannot create '%q' instances"
|
||||
msgstr "creare '%q' istanze"
|
||||
|
||||
#: py/objtype.c:1047
|
||||
#: py/objtype.c:1059
|
||||
msgid "can't add special method to already-subclassed class"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1091 py/objtype.c:1097
|
||||
#: py/objtype.c:1103 py/objtype.c:1109
|
||||
msgid "type is not an acceptable base type"
|
||||
msgstr "il tipo non è un tipo di base accettabile"
|
||||
|
||||
#: py/objtype.c:1100
|
||||
#: py/objtype.c:1112
|
||||
msgid "type '%q' is not an acceptable base type"
|
||||
msgstr "il tipo '%q' non è un tipo di base accettabile"
|
||||
|
||||
#: py/objtype.c:1137
|
||||
#: py/objtype.c:1149
|
||||
msgid "multiple inheritance not supported"
|
||||
msgstr "ereditarietà multipla non supportata"
|
||||
|
||||
#: py/objtype.c:1164
|
||||
#: py/objtype.c:1176
|
||||
msgid "multiple bases have instance lay-out conflict"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1205
|
||||
#: py/objtype.c:1217
|
||||
msgid "first argument to super() must be type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1370
|
||||
#: py/objtype.c:1382
|
||||
msgid "issubclass() arg 2 must be a class or a tuple of classes"
|
||||
msgstr ""
|
||||
"il secondo argomento di issubclass() deve essere una classe o una tupla di "
|
||||
"classi"
|
||||
|
||||
#: py/objtype.c:1384
|
||||
#: py/objtype.c:1396
|
||||
msgid "issubclass() arg 1 must be a class"
|
||||
msgstr "il primo argomento di issubclass() deve essere una classe"
|
||||
|
||||
@ -2076,8 +2076,8 @@ msgstr "buffer dei caratteri troppo piccolo"
|
||||
msgid "AnalogOut is only 16 bits. Value must be less than 65536."
|
||||
msgstr "AnalogOut ha solo 16 bit. Il valore deve essere meno di 65536."
|
||||
|
||||
#: shared-bindings/audiobusio/I2SOut.c:225
|
||||
#: shared-bindings/audioio/AudioOut.c:226
|
||||
#: shared-bindings/audiobusio/I2SOut.c:222
|
||||
#: shared-bindings/audioio/AudioOut.c:223
|
||||
msgid "Not playing"
|
||||
msgstr "In pausa"
|
||||
|
||||
@ -2118,27 +2118,27 @@ msgstr ""
|
||||
"il buffer di destinazione deve essere un bytearray o un array di tipo 'B' "
|
||||
"con bit_depth = 8"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:94
|
||||
#: shared-bindings/audioio/Mixer.c:91
|
||||
#, fuzzy
|
||||
msgid "Invalid voice count"
|
||||
msgstr "Tipo di servizio non valido"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:99
|
||||
#: shared-bindings/audioio/Mixer.c:96
|
||||
#, fuzzy
|
||||
msgid "Invalid channel count"
|
||||
msgstr "Argomento non valido"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:103
|
||||
#: shared-bindings/audioio/Mixer.c:100
|
||||
#, fuzzy
|
||||
msgid "Sample rate must be positive"
|
||||
msgstr "STA deve essere attiva"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:107
|
||||
#: shared-bindings/audioio/Mixer.c:104
|
||||
#, fuzzy
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr "i bit devono essere 7, 8 o 9"
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:98
|
||||
#: shared-bindings/audioio/RawSample.c:95
|
||||
msgid ""
|
||||
"sample_source buffer must be a bytearray or array of type 'h', 'H', 'b' or "
|
||||
"'B'"
|
||||
@ -2146,7 +2146,7 @@ msgstr ""
|
||||
"il buffer sample_source deve essere un bytearray o un array di tipo 'h', "
|
||||
"'H', 'b' o 'B'"
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:104
|
||||
#: shared-bindings/audioio/RawSample.c:101
|
||||
msgid "buffer must be a bytes-like object"
|
||||
msgstr ""
|
||||
|
||||
@ -2155,53 +2155,53 @@ msgstr ""
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:111 shared-bindings/bitbangio/SPI.c:121
|
||||
#: shared-bindings/busio/SPI.c:133
|
||||
#: shared-bindings/bitbangio/I2C.c:109 shared-bindings/bitbangio/SPI.c:119
|
||||
#: shared-bindings/busio/SPI.c:130
|
||||
msgid "Function requires lock"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:195 shared-bindings/busio/I2C.c:210
|
||||
#: shared-bindings/bitbangio/I2C.c:193 shared-bindings/busio/I2C.c:207
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr "Il buffer deve essere lungo almeno 1"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:151 shared-bindings/busio/SPI.c:175
|
||||
#: shared-bindings/bitbangio/SPI.c:149 shared-bindings/busio/SPI.c:172
|
||||
msgid "Invalid polarity"
|
||||
msgstr "Polarità non valida"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:155 shared-bindings/busio/SPI.c:179
|
||||
#: shared-bindings/bitbangio/SPI.c:153 shared-bindings/busio/SPI.c:176
|
||||
msgid "Invalid phase"
|
||||
msgstr "Fase non valida"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:159 shared-bindings/busio/SPI.c:183
|
||||
#: shared-bindings/bitbangio/SPI.c:157 shared-bindings/busio/SPI.c:180
|
||||
msgid "Invalid number of bits"
|
||||
msgstr "Numero di bit non valido"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:284 shared-bindings/busio/SPI.c:348
|
||||
#: shared-bindings/bitbangio/SPI.c:282 shared-bindings/busio/SPI.c:345
|
||||
msgid "buffer slices must be of equal length"
|
||||
msgstr "slice del buffer devono essere della stessa lunghezza"
|
||||
|
||||
#: shared-bindings/bleio/Address.c:119
|
||||
#: shared-bindings/bleio/Address.c:115
|
||||
#, c-format
|
||||
msgid "Address is not %d bytes long or is in wrong format"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Address.c:126
|
||||
#: shared-bindings/bleio/Address.c:122
|
||||
#, fuzzy, c-format
|
||||
msgid "Address must be %d bytes long"
|
||||
msgstr "la palette deve essere lunga 32 byte"
|
||||
|
||||
#: shared-bindings/bleio/Characteristic.c:81
|
||||
#: shared-bindings/bleio/Descriptor.c:93 shared-bindings/bleio/Service.c:78
|
||||
#: shared-bindings/bleio/Characteristic.c:74
|
||||
#: shared-bindings/bleio/Descriptor.c:86 shared-bindings/bleio/Service.c:66
|
||||
#, fuzzy
|
||||
msgid "Expected a UUID"
|
||||
msgstr "Atteso un %q"
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:68
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:61
|
||||
#, fuzzy
|
||||
msgid "buffer_size must be >= 1"
|
||||
msgstr "slice del buffer devono essere della stessa lunghezza"
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:72
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:65
|
||||
#, fuzzy
|
||||
msgid "Expected a Characteristic"
|
||||
msgstr "Non è possibile aggiungere Characteristic."
|
||||
@ -2222,20 +2222,20 @@ msgstr ""
|
||||
msgid "Can't advertise in Central mode"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:111
|
||||
#: shared-bindings/bleio/Peripheral.c:106
|
||||
msgid "services includes an object that is not a Service"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:124
|
||||
#: shared-bindings/bleio/Peripheral.c:119
|
||||
#, fuzzy
|
||||
msgid "name must be a string"
|
||||
msgstr "argomenti nominati devono essere stringhe"
|
||||
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
#: shared-bindings/bleio/Service.c:84
|
||||
msgid "characteristics includes an object that is not a Characteristic"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Service.c:96
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
msgid "Characteristic UUID doesn't match Service UUID"
|
||||
msgstr ""
|
||||
|
||||
@ -2256,19 +2256,19 @@ msgstr "i buffer devono essere della stessa lunghezza"
|
||||
msgid "not a 128-bit UUID"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/I2C.c:120
|
||||
#: shared-bindings/busio/I2C.c:117
|
||||
msgid "Function requires lock."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:106
|
||||
#: shared-bindings/busio/UART.c:103
|
||||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr "i bit devono essere 7, 8 o 9"
|
||||
|
||||
#: shared-bindings/busio/UART.c:118
|
||||
#: shared-bindings/busio/UART.c:115
|
||||
msgid "stop must be 1 or 2"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:123
|
||||
#: shared-bindings/busio/UART.c:120
|
||||
msgid "timeout >100 (units are now seconds, not msecs)"
|
||||
msgstr ""
|
||||
|
||||
@ -2294,7 +2294,7 @@ msgstr ""
|
||||
msgid "Unsupported pull value."
|
||||
msgstr "Valore di pull non supportato."
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c:84
|
||||
#: shared-bindings/displayio/Bitmap.c:84 shared-bindings/displayio/Shape.c:88
|
||||
msgid "y should be an int"
|
||||
msgstr "y dovrebbe essere un int"
|
||||
|
||||
@ -2310,47 +2310,70 @@ msgstr "valori della riga devono essere un buffer"
|
||||
msgid "color should be an int"
|
||||
msgstr "il colore deve essere un int"
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:55
|
||||
#: shared-bindings/displayio/FourWire.c:64
|
||||
#: shared-bindings/displayio/Display.c:119
|
||||
msgid "Too many displays"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Display.c:138
|
||||
msgid "Must be a Group subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:93
|
||||
#: shared-bindings/displayio/ParallelBus.c:98
|
||||
msgid "Too many display busses"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:106
|
||||
#: shared-bindings/displayio/ParallelBus.c:110
|
||||
msgid "displayio is a work in progress"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Group.c:65
|
||||
#: shared-bindings/displayio/Group.c:62
|
||||
msgid "Group must have size at least 1"
|
||||
msgstr "Il gruppo deve avere dimensione almeno 1"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:96
|
||||
#: shared-bindings/displayio/Palette.c:93
|
||||
msgid "color buffer must be a bytearray or array of type 'b' or 'B'"
|
||||
msgstr ""
|
||||
"buffer del colore deve essere un bytearray o un array di tipo 'b' o 'B'"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:102
|
||||
#: shared-bindings/displayio/Palette.c:99
|
||||
msgid "color buffer must be 3 bytes (RGB) or 4 bytes (RGB + pad byte)"
|
||||
msgstr ""
|
||||
"il buffer del colore deve esseer di 3 byte (RGB) o 4 byte (RGB + pad byte)"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:106
|
||||
#: shared-bindings/displayio/Palette.c:103
|
||||
msgid "color must be between 0x000000 and 0xffffff"
|
||||
msgstr "il colore deve essere compreso tra 0x000000 e 0xffffff"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:110
|
||||
#: shared-bindings/displayio/Palette.c:107
|
||||
msgid "color buffer must be a buffer or int"
|
||||
msgstr "il buffer del colore deve essere un buffer o un int"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:123
|
||||
#: shared-bindings/displayio/Palette.c:137
|
||||
#: shared-bindings/displayio/Palette.c:120
|
||||
#: shared-bindings/displayio/Palette.c:134
|
||||
msgid "palette_index should be an int"
|
||||
msgstr "palette_index deve essere un int"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:48
|
||||
#: shared-bindings/displayio/Shape.c:92
|
||||
#, fuzzy
|
||||
msgid "start_x should be an int"
|
||||
msgstr "y dovrebbe essere un int"
|
||||
|
||||
#: shared-bindings/displayio/Shape.c:96
|
||||
#, fuzzy
|
||||
msgid "end_x should be an int"
|
||||
msgstr "y dovrebbe essere un int"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:49
|
||||
msgid "position must be 2-tuple"
|
||||
msgstr "position deve essere una 2-tuple"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:97
|
||||
#: shared-bindings/displayio/Sprite.c:102
|
||||
msgid "unsupported bitmap type"
|
||||
msgstr "tipo di bitmap non supportato"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:162
|
||||
#: shared-bindings/displayio/Sprite.c:167
|
||||
msgid "pixel_shader must be displayio.Palette or displayio.ColorConverter"
|
||||
msgstr "pixel_shader deve essere displayio.Palette o displayio.ColorConverter"
|
||||
|
||||
@ -2362,15 +2385,15 @@ msgstr "troppi argomenti"
|
||||
msgid "expected a DigitalInOut"
|
||||
msgstr "DigitalInOut atteso"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:95
|
||||
msgid "can't convert address to int"
|
||||
msgstr "impossible convertire indirizzo in int"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:101
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
msgid "address out of bounds"
|
||||
msgstr "indirizzo fuori limite"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:107
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:104
|
||||
msgid "addresses is empty"
|
||||
msgstr "gli indirizzi sono vuoti"
|
||||
|
||||
@ -2412,14 +2435,14 @@ msgstr "I byte devono essere compresi tra 0 e 255"
|
||||
msgid "No hardware random available"
|
||||
msgstr "Nessun generatore hardware di numeri casuali disponibile"
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:164
|
||||
#: shared-bindings/pulseio/PWMOut.c:162
|
||||
msgid ""
|
||||
"PWM duty_cycle must be between 0 and 65535 inclusive (16 bit resolution)"
|
||||
msgstr ""
|
||||
"duty_cycle del PWM deve essere compresa tra 0 e 65535 inclusiva (risoluzione "
|
||||
"a 16 bit)"
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:195
|
||||
#: shared-bindings/pulseio/PWMOut.c:193
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"PWM frequency not writable when variable_frequency is False on construction."
|
||||
@ -2427,19 +2450,19 @@ msgstr ""
|
||||
"frequenza PWM frequency non è scrivibile quando variable_frequency è "
|
||||
"impostato nel costruttore a False."
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:275
|
||||
#: shared-bindings/pulseio/PulseIn.c:272
|
||||
msgid "Cannot delete values"
|
||||
msgstr "Impossibile cancellare valori"
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:281
|
||||
#: shared-bindings/pulseio/PulseIn.c:278
|
||||
msgid "Slices not supported"
|
||||
msgstr "Slice non supportate"
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:287
|
||||
#: shared-bindings/pulseio/PulseIn.c:284
|
||||
msgid "index must be int"
|
||||
msgstr "l'indice deve essere int"
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:293
|
||||
#: shared-bindings/pulseio/PulseIn.c:290
|
||||
msgid "Read-only"
|
||||
msgstr "Sola lettura"
|
||||
|
||||
@ -2608,11 +2631,20 @@ msgstr "Sono supportate solo bitmap con colori a 8 bit o meno"
|
||||
msgid "row must be packed and word aligned"
|
||||
msgstr "la riga deve essere compattata e allineata alla parola"
|
||||
|
||||
#: shared-module/displayio/Display.c:62
|
||||
#, fuzzy
|
||||
msgid "Unsupported display bus type"
|
||||
msgstr "tipo di bitmap non supportato"
|
||||
|
||||
#: shared-module/displayio/Group.c:39
|
||||
msgid "Group full"
|
||||
msgstr "Gruppo pieno"
|
||||
|
||||
#: shared-module/displayio/Group.c:48
|
||||
#: shared-module/displayio/Group.c:46
|
||||
msgid "Layer must be a Group or Sprite subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Group.c:55
|
||||
msgid "Group empty"
|
||||
msgstr "Gruppo vuoto"
|
||||
|
||||
@ -2630,6 +2662,21 @@ msgstr "Formato solo di Windows, BMP non compresso supportato %d"
|
||||
msgid "Only true color (24 bpp or higher) BMP supported %x"
|
||||
msgstr "Solo BMP true color (24 bpp o superiore) sono supportati %x"
|
||||
|
||||
#: shared-module/displayio/Shape.c:60
|
||||
#, fuzzy
|
||||
msgid "y value out of bounds"
|
||||
msgstr "indirizzo fuori limite"
|
||||
|
||||
#: shared-module/displayio/Shape.c:63
|
||||
#, fuzzy
|
||||
msgid "x value out of bounds"
|
||||
msgstr "indirizzo fuori limite"
|
||||
|
||||
#: shared-module/displayio/Shape.c:67
|
||||
#, c-format
|
||||
msgid "Maximum x value when mirrored is %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/storage/__init__.c:155
|
||||
msgid "Cannot remount '/' when USB is active."
|
||||
msgstr "Non è possibile rimontare '/' mentre l'USB è attiva."
|
||||
@ -2655,6 +2702,18 @@ msgstr "USB occupata"
|
||||
msgid "USB Error"
|
||||
msgstr "Errore USB"
|
||||
|
||||
#: supervisor/shared/board_busses.c:62
|
||||
msgid "No default I2C bus"
|
||||
msgstr "Nessun bus I2C predefinito"
|
||||
|
||||
#: supervisor/shared/board_busses.c:91
|
||||
msgid "No default SPI bus"
|
||||
msgstr "Nessun bus SPI predefinito"
|
||||
|
||||
#: supervisor/shared/board_busses.c:118
|
||||
msgid "No default UART bus"
|
||||
msgstr "Nessun bus UART predefinito"
|
||||
|
||||
#: supervisor/shared/safe_mode.c:97
|
||||
msgid "You requested starting safe mode by "
|
||||
msgstr "È stato richiesto l'avvio in modalità sicura da "
|
||||
@ -2722,15 +2781,21 @@ msgstr ""
|
||||
#~ msgid "Invalid UUID parameter"
|
||||
#~ msgstr "Parametro UUID non valido"
|
||||
|
||||
#~ msgid "Invalid Service type"
|
||||
#~ msgstr "Tipo di servizio non valido"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "Wrong number of bytes provided"
|
||||
#~ msgstr "numero di argomenti errato"
|
||||
|
||||
#~ msgid "Invalid Service type"
|
||||
#~ msgstr "Tipo di servizio non valido"
|
||||
#~ msgid "Cannot set PPCP parameters."
|
||||
#~ msgstr "Impossibile impostare i parametri PPCP."
|
||||
|
||||
#~ msgid "Can not apply advertisement data. status: 0x%02x"
|
||||
#~ msgstr "Impossible inserire dati advertisement. status: 0x%02x"
|
||||
#~ msgid "Can not add Characteristic."
|
||||
#~ msgstr "Non è possibile aggiungere Characteristic."
|
||||
|
||||
#~ msgid "Can not encode UUID, to check length."
|
||||
#~ msgstr "Non è possibile codificare l'UUID, lunghezza da controllare."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
|
||||
@ -2738,23 +2803,26 @@ msgstr ""
|
||||
#~ "Ti preghiamo di compilare una issue con il contenuto del tuo drie "
|
||||
#~ "CIRCUITPY:\n"
|
||||
|
||||
#~ msgid "Can not encode UUID, to check length."
|
||||
#~ msgstr "Non è possibile codificare l'UUID, lunghezza da controllare."
|
||||
#~ msgid "Can encode UUID into the advertisement packet."
|
||||
#~ msgstr "È possibile codificare l'UUID nel pacchetto di advertisement."
|
||||
|
||||
#~ msgid "Can not add Characteristic."
|
||||
#~ msgstr "Non è possibile aggiungere Characteristic."
|
||||
#~ msgid "Can not apply device name in the stack."
|
||||
#~ msgstr "Non è possibile inserire il nome del dipositivo nella lista."
|
||||
|
||||
#~ msgid "Can not add Service."
|
||||
#~ msgstr "Non è possibile aggiungere Service."
|
||||
|
||||
#~ msgid "Can not apply advertisement data. status: 0x%02x"
|
||||
#~ msgstr "Impossible inserire dati advertisement. status: 0x%02x"
|
||||
|
||||
#~ msgid "Can not query for the device address."
|
||||
#~ msgstr "Non è possibile trovare l'indirizzo del dispositivo."
|
||||
|
||||
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
|
||||
#~ msgstr ""
|
||||
#~ "Sembra che il codice del core di CircuitPython sia crashato malamente. "
|
||||
#~ "Whoops!\n"
|
||||
|
||||
#~ msgid "Cannot set PPCP parameters."
|
||||
#~ msgstr "Impossibile impostare i parametri PPCP."
|
||||
|
||||
#~ msgid "Cannot apply GAP parameters."
|
||||
#~ msgstr "Impossibile applicare i parametri GAP."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "enough power for the whole circuit and press reset (after ejecting "
|
||||
#~ "CIRCUITPY).\n"
|
||||
@ -2762,14 +2830,5 @@ msgstr ""
|
||||
#~ "abbastanza potenza per l'intero circuito e premere reset (dopo aver "
|
||||
#~ "espulso CIRCUITPY).\n"
|
||||
|
||||
#~ msgid "Can encode UUID into the advertisement packet."
|
||||
#~ msgstr "È possibile codificare l'UUID nel pacchetto di advertisement."
|
||||
|
||||
#~ msgid "Can not query for the device address."
|
||||
#~ msgstr "Non è possibile trovare l'indirizzo del dispositivo."
|
||||
|
||||
#~ msgid "Can not add Service."
|
||||
#~ msgstr "Non è possibile aggiungere Service."
|
||||
|
||||
#~ msgid "Can not apply device name in the stack."
|
||||
#~ msgstr "Non è possibile inserire il nome del dipositivo nella lista."
|
||||
#~ msgid "Cannot apply GAP parameters."
|
||||
#~ msgstr "Impossibile applicare i parametri GAP."
|
||||
|
298
locale/pt_BR.po
298
locale/pt_BR.po
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2019-01-10 21:32-0500\n"
|
||||
"POT-Creation-Date: 2019-01-20 17:33-0800\n"
|
||||
"PO-Revision-Date: 2018-10-02 21:14-0000\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
@ -21,8 +21,8 @@ msgstr ""
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "periférico I2C inválido"
|
||||
|
||||
#: extmod/machine_i2c.c:340 extmod/machine_i2c.c:354 extmod/machine_i2c.c:368
|
||||
#: extmod/machine_i2c.c:392
|
||||
#: extmod/machine_i2c.c:338 extmod/machine_i2c.c:352 extmod/machine_i2c.c:366
|
||||
#: extmod/machine_i2c.c:390
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "I2C operação não suportada"
|
||||
|
||||
@ -151,37 +151,37 @@ msgstr "argumentos inválidos"
|
||||
msgid "script compilation not supported"
|
||||
msgstr "compilação de script não suportada"
|
||||
|
||||
#: main.c:150
|
||||
#: main.c:155
|
||||
msgid " output:\n"
|
||||
msgstr " saída:\n"
|
||||
|
||||
#: main.c:164 main.c:237
|
||||
#: main.c:169 main.c:247
|
||||
msgid ""
|
||||
"Auto-reload is on. Simply save files over USB to run them or enter REPL to "
|
||||
"disable.\n"
|
||||
msgstr ""
|
||||
|
||||
#: main.c:166
|
||||
#: main.c:171
|
||||
msgid "Running in safe mode! Auto-reload is off.\n"
|
||||
msgstr "Rodando em modo seguro! Atualização automática está desligada.\n"
|
||||
|
||||
#: main.c:168 main.c:239
|
||||
#: main.c:173 main.c:249
|
||||
msgid "Auto-reload is off.\n"
|
||||
msgstr "A atualização automática está desligada.\n"
|
||||
|
||||
#: main.c:182
|
||||
#: main.c:187
|
||||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Rodando em modo seguro! Não está executando o código salvo.\n"
|
||||
|
||||
#: main.c:198
|
||||
#: main.c:203
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "AVISO: Seu arquivo de código tem duas extensões\n"
|
||||
|
||||
#: main.c:244
|
||||
#: main.c:254
|
||||
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
|
||||
msgstr ""
|
||||
|
||||
#: main.c:407
|
||||
#: main.c:417
|
||||
msgid "soft reboot\n"
|
||||
msgstr ""
|
||||
|
||||
@ -198,18 +198,6 @@ msgstr "Calibração é somente leitura"
|
||||
msgid "calibration is out of range"
|
||||
msgstr "Calibração está fora do intervalo"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:59 ports/nrf/board_busses.c:39
|
||||
msgid "No default I2C bus"
|
||||
msgstr "Nenhum barramento I2C padrão"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:85 ports/nrf/board_busses.c:64
|
||||
msgid "No default SPI bus"
|
||||
msgstr "Nenhum barramento SPI padrão"
|
||||
|
||||
#: ports/atmel-samd/board_busses.c:112 ports/nrf/board_busses.c:91
|
||||
msgid "No default UART bus"
|
||||
msgstr "Nenhum barramento UART padrão"
|
||||
|
||||
#: ports/atmel-samd/common-hal/analogio/AnalogIn.c:63
|
||||
#: ports/nrf/common-hal/analogio/AnalogIn.c:39
|
||||
msgid "Pin does not have ADC capabilities"
|
||||
@ -326,7 +314,7 @@ msgid "Not enough pins available"
|
||||
msgstr "Não há pinos suficientes disponíveis"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c:78
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:171
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c:176
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c:120
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c:45
|
||||
#: ports/nrf/common-hal/busio/I2C.c:84
|
||||
@ -374,6 +362,17 @@ msgstr "Nenhum pino TX"
|
||||
msgid "Cannot get pull while in output mode"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:43
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:43
|
||||
msgid "Data 0 pin must be byte aligned"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c:47
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c:47
|
||||
#, fuzzy, c-format
|
||||
msgid "Bus pin %d is already in use"
|
||||
msgstr "DAC em uso"
|
||||
|
||||
#: ports/atmel-samd/common-hal/microcontroller/__init__.c:74
|
||||
#: ports/esp8266/common-hal/microcontroller/__init__.c:64
|
||||
msgid "Cannot reset into bootloader because no bootloader is present."
|
||||
@ -890,46 +889,46 @@ msgstr "Não sabe como passar o objeto para a função nativa"
|
||||
msgid "[addrinfo error %d]"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:44
|
||||
#: py/argcheck.c:53
|
||||
msgid "function does not take keyword arguments"
|
||||
msgstr "função não aceita argumentos de palavras-chave"
|
||||
|
||||
#: py/argcheck.c:54 py/bc.c:85 py/objnamedtuple.c:104
|
||||
#: py/argcheck.c:63 py/bc.c:85 py/objnamedtuple.c:108
|
||||
#, c-format
|
||||
msgid "function takes %d positional arguments but %d were given"
|
||||
msgstr "função leva %d argumentos posicionais, mas apenas %d foram passadas"
|
||||
|
||||
#: py/argcheck.c:64
|
||||
#: py/argcheck.c:73
|
||||
#, c-format
|
||||
msgid "function missing %d required positional arguments"
|
||||
msgstr "função ausente %d requer argumentos posicionais"
|
||||
|
||||
#: py/argcheck.c:72
|
||||
#: py/argcheck.c:81
|
||||
#, c-format
|
||||
msgid "function expected at most %d arguments, got %d"
|
||||
msgstr "função esperada na maioria dos %d argumentos, obteve %d"
|
||||
|
||||
#: py/argcheck.c:97
|
||||
#: py/argcheck.c:106
|
||||
msgid "'%q' argument required"
|
||||
msgstr "'%q' argumento(s) requerido(s)"
|
||||
|
||||
#: py/argcheck.c:122
|
||||
#: py/argcheck.c:131
|
||||
msgid "extra positional arguments given"
|
||||
msgstr "argumentos extra posicionais passados"
|
||||
|
||||
#: py/argcheck.c:130
|
||||
#: py/argcheck.c:139
|
||||
msgid "extra keyword arguments given"
|
||||
msgstr "argumentos extras de palavras-chave passados"
|
||||
|
||||
#: py/argcheck.c:142
|
||||
#: py/argcheck.c:151
|
||||
msgid "argument num/types mismatch"
|
||||
msgstr ""
|
||||
|
||||
#: py/argcheck.c:147
|
||||
#: py/argcheck.c:156
|
||||
msgid "keyword argument(s) not yet implemented - use normal args instead"
|
||||
msgstr ""
|
||||
|
||||
#: py/bc.c:88 py/objnamedtuple.c:108
|
||||
#: py/bc.c:88 py/objnamedtuple.c:112
|
||||
msgid "%q() takes %d positional arguments but %d were given"
|
||||
msgstr ""
|
||||
|
||||
@ -941,11 +940,11 @@ msgstr ""
|
||||
msgid "keywords must be strings"
|
||||
msgstr ""
|
||||
|
||||
#: py/bc.c:206 py/objnamedtuple.c:138
|
||||
#: py/bc.c:206 py/objnamedtuple.c:142
|
||||
msgid "function got multiple values for argument '%q'"
|
||||
msgstr ""
|
||||
|
||||
#: py/bc.c:218 py/objnamedtuple.c:130
|
||||
#: py/bc.c:218 py/objnamedtuple.c:134
|
||||
msgid "unexpected keyword argument '%q'"
|
||||
msgstr ""
|
||||
|
||||
@ -1529,11 +1528,11 @@ msgstr "cheio"
|
||||
msgid "empty"
|
||||
msgstr "vazio"
|
||||
|
||||
#: py/objdict.c:314
|
||||
#: py/objdict.c:315
|
||||
msgid "popitem(): dictionary is empty"
|
||||
msgstr ""
|
||||
|
||||
#: py/objdict.c:357
|
||||
#: py/objdict.c:358
|
||||
msgid "dict update sequence has wrong length"
|
||||
msgstr ""
|
||||
|
||||
@ -1794,69 +1793,69 @@ msgstr ""
|
||||
msgid "string index out of range"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:358
|
||||
#: py/objtype.c:368
|
||||
msgid "__init__() should return None"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:360
|
||||
#: py/objtype.c:370
|
||||
#, c-format
|
||||
msgid "__init__() should return None, not '%s'"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:623 py/objtype.c:1275 py/runtime.c:1065
|
||||
#: py/objtype.c:633 py/objtype.c:1287 py/runtime.c:1065
|
||||
msgid "unreadable attribute"
|
||||
msgstr "atributo ilegível"
|
||||
|
||||
#: py/objtype.c:868 py/runtime.c:653
|
||||
#: py/objtype.c:878 py/runtime.c:653
|
||||
msgid "object not callable"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:870 py/runtime.c:655
|
||||
#: py/objtype.c:880 py/runtime.c:655
|
||||
#, c-format
|
||||
msgid "'%s' object is not callable"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:978
|
||||
#: py/objtype.c:988
|
||||
msgid "type takes 1 or 3 arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:989
|
||||
#: py/objtype.c:999
|
||||
msgid "cannot create instance"
|
||||
msgstr "não é possível criar instância"
|
||||
|
||||
#: py/objtype.c:991
|
||||
#: py/objtype.c:1001
|
||||
msgid "cannot create '%q' instances"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1047
|
||||
#: py/objtype.c:1059
|
||||
msgid "can't add special method to already-subclassed class"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1091 py/objtype.c:1097
|
||||
#: py/objtype.c:1103 py/objtype.c:1109
|
||||
msgid "type is not an acceptable base type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1100
|
||||
#: py/objtype.c:1112
|
||||
msgid "type '%q' is not an acceptable base type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1137
|
||||
#: py/objtype.c:1149
|
||||
msgid "multiple inheritance not supported"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1164
|
||||
#: py/objtype.c:1176
|
||||
msgid "multiple bases have instance lay-out conflict"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1205
|
||||
#: py/objtype.c:1217
|
||||
msgid "first argument to super() must be type"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1370
|
||||
#: py/objtype.c:1382
|
||||
msgid "issubclass() arg 2 must be a class or a tuple of classes"
|
||||
msgstr ""
|
||||
|
||||
#: py/objtype.c:1384
|
||||
#: py/objtype.c:1396
|
||||
msgid "issubclass() arg 1 must be a class"
|
||||
msgstr ""
|
||||
|
||||
@ -2052,8 +2051,8 @@ msgstr ""
|
||||
msgid "AnalogOut is only 16 bits. Value must be less than 65536."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiobusio/I2SOut.c:225
|
||||
#: shared-bindings/audioio/AudioOut.c:226
|
||||
#: shared-bindings/audiobusio/I2SOut.c:222
|
||||
#: shared-bindings/audioio/AudioOut.c:223
|
||||
msgid "Not playing"
|
||||
msgstr ""
|
||||
|
||||
@ -2090,32 +2089,32 @@ msgid ""
|
||||
"destination buffer must be a bytearray or array of type 'B' for bit_depth = 8"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:94
|
||||
#: shared-bindings/audioio/Mixer.c:91
|
||||
#, fuzzy
|
||||
msgid "Invalid voice count"
|
||||
msgstr "certificado inválido"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:99
|
||||
#: shared-bindings/audioio/Mixer.c:96
|
||||
#, fuzzy
|
||||
msgid "Invalid channel count"
|
||||
msgstr "certificado inválido"
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:103
|
||||
#: shared-bindings/audioio/Mixer.c:100
|
||||
msgid "Sample rate must be positive"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/Mixer.c:107
|
||||
#: shared-bindings/audioio/Mixer.c:104
|
||||
#, fuzzy
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr "bits devem ser 8"
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:98
|
||||
#: shared-bindings/audioio/RawSample.c:95
|
||||
msgid ""
|
||||
"sample_source buffer must be a bytearray or array of type 'h', 'H', 'b' or "
|
||||
"'B'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audioio/RawSample.c:104
|
||||
#: shared-bindings/audioio/RawSample.c:101
|
||||
msgid "buffer must be a bytes-like object"
|
||||
msgstr ""
|
||||
|
||||
@ -2124,53 +2123,53 @@ msgstr ""
|
||||
msgid "file must be a file opened in byte mode"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:111 shared-bindings/bitbangio/SPI.c:121
|
||||
#: shared-bindings/busio/SPI.c:133
|
||||
#: shared-bindings/bitbangio/I2C.c:109 shared-bindings/bitbangio/SPI.c:119
|
||||
#: shared-bindings/busio/SPI.c:130
|
||||
msgid "Function requires lock"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c:195 shared-bindings/busio/I2C.c:210
|
||||
#: shared-bindings/bitbangio/I2C.c:193 shared-bindings/busio/I2C.c:207
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:151 shared-bindings/busio/SPI.c:175
|
||||
#: shared-bindings/bitbangio/SPI.c:149 shared-bindings/busio/SPI.c:172
|
||||
msgid "Invalid polarity"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:155 shared-bindings/busio/SPI.c:179
|
||||
#: shared-bindings/bitbangio/SPI.c:153 shared-bindings/busio/SPI.c:176
|
||||
msgid "Invalid phase"
|
||||
msgstr "Fase Inválida"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:159 shared-bindings/busio/SPI.c:183
|
||||
#: shared-bindings/bitbangio/SPI.c:157 shared-bindings/busio/SPI.c:180
|
||||
msgid "Invalid number of bits"
|
||||
msgstr "Número inválido de bits"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c:284 shared-bindings/busio/SPI.c:348
|
||||
#: shared-bindings/bitbangio/SPI.c:282 shared-bindings/busio/SPI.c:345
|
||||
msgid "buffer slices must be of equal length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Address.c:119
|
||||
#: shared-bindings/bleio/Address.c:115
|
||||
#, c-format
|
||||
msgid "Address is not %d bytes long or is in wrong format"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Address.c:126
|
||||
#: shared-bindings/bleio/Address.c:122
|
||||
#, fuzzy, c-format
|
||||
msgid "Address must be %d bytes long"
|
||||
msgstr "buffers devem ser o mesmo tamanho"
|
||||
|
||||
#: shared-bindings/bleio/Characteristic.c:81
|
||||
#: shared-bindings/bleio/Descriptor.c:93 shared-bindings/bleio/Service.c:78
|
||||
#: shared-bindings/bleio/Characteristic.c:74
|
||||
#: shared-bindings/bleio/Descriptor.c:86 shared-bindings/bleio/Service.c:66
|
||||
#, fuzzy
|
||||
msgid "Expected a UUID"
|
||||
msgstr "Esperado um"
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:68
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:61
|
||||
#, fuzzy
|
||||
msgid "buffer_size must be >= 1"
|
||||
msgstr "buffers devem ser o mesmo tamanho"
|
||||
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:72
|
||||
#: shared-bindings/bleio/CharacteristicBuffer.c:65
|
||||
#, fuzzy
|
||||
msgid "Expected a Characteristic"
|
||||
msgstr "Não é possível adicionar Característica."
|
||||
@ -2191,20 +2190,20 @@ msgstr ""
|
||||
msgid "Can't advertise in Central mode"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:111
|
||||
#: shared-bindings/bleio/Peripheral.c:106
|
||||
msgid "services includes an object that is not a Service"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Peripheral.c:124
|
||||
#: shared-bindings/bleio/Peripheral.c:119
|
||||
#, fuzzy
|
||||
msgid "name must be a string"
|
||||
msgstr "heap deve ser uma lista"
|
||||
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
#: shared-bindings/bleio/Service.c:84
|
||||
msgid "characteristics includes an object that is not a Characteristic"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bleio/Service.c:96
|
||||
#: shared-bindings/bleio/Service.c:90
|
||||
msgid "Characteristic UUID doesn't match Service UUID"
|
||||
msgstr ""
|
||||
|
||||
@ -2225,19 +2224,19 @@ msgstr "buffers devem ser o mesmo tamanho"
|
||||
msgid "not a 128-bit UUID"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/I2C.c:120
|
||||
#: shared-bindings/busio/I2C.c:117
|
||||
msgid "Function requires lock."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:106
|
||||
#: shared-bindings/busio/UART.c:103
|
||||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:118
|
||||
#: shared-bindings/busio/UART.c:115
|
||||
msgid "stop must be 1 or 2"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c:123
|
||||
#: shared-bindings/busio/UART.c:120
|
||||
msgid "timeout >100 (units are now seconds, not msecs)"
|
||||
msgstr ""
|
||||
|
||||
@ -2263,7 +2262,7 @@ msgstr ""
|
||||
msgid "Unsupported pull value."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Bitmap.c:84
|
||||
#: shared-bindings/displayio/Bitmap.c:84 shared-bindings/displayio/Shape.c:88
|
||||
msgid "y should be an int"
|
||||
msgstr "y deve ser um int"
|
||||
|
||||
@ -2279,45 +2278,68 @@ msgstr ""
|
||||
msgid "color should be an int"
|
||||
msgstr "cor deve ser um int"
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:55
|
||||
#: shared-bindings/displayio/FourWire.c:64
|
||||
#: shared-bindings/displayio/Display.c:119
|
||||
msgid "Too many displays"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Display.c:138
|
||||
msgid "Must be a Group subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:93
|
||||
#: shared-bindings/displayio/ParallelBus.c:98
|
||||
msgid "Too many display busses"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/FourWire.c:106
|
||||
#: shared-bindings/displayio/ParallelBus.c:110
|
||||
msgid "displayio is a work in progress"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Group.c:65
|
||||
#: shared-bindings/displayio/Group.c:62
|
||||
msgid "Group must have size at least 1"
|
||||
msgstr "Grupo deve ter tamanho pelo menos 1"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:96
|
||||
#: shared-bindings/displayio/Palette.c:93
|
||||
msgid "color buffer must be a bytearray or array of type 'b' or 'B'"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:102
|
||||
#: shared-bindings/displayio/Palette.c:99
|
||||
msgid "color buffer must be 3 bytes (RGB) or 4 bytes (RGB + pad byte)"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:106
|
||||
#: shared-bindings/displayio/Palette.c:103
|
||||
msgid "color must be between 0x000000 and 0xffffff"
|
||||
msgstr "cor deve estar entre 0x000000 e 0xffffff"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:110
|
||||
#: shared-bindings/displayio/Palette.c:107
|
||||
msgid "color buffer must be a buffer or int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Palette.c:123
|
||||
#: shared-bindings/displayio/Palette.c:137
|
||||
#: shared-bindings/displayio/Palette.c:120
|
||||
#: shared-bindings/displayio/Palette.c:134
|
||||
msgid "palette_index should be an int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:48
|
||||
#: shared-bindings/displayio/Shape.c:92
|
||||
#, fuzzy
|
||||
msgid "start_x should be an int"
|
||||
msgstr "y deve ser um int"
|
||||
|
||||
#: shared-bindings/displayio/Shape.c:96
|
||||
#, fuzzy
|
||||
msgid "end_x should be an int"
|
||||
msgstr "y deve ser um int"
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:49
|
||||
msgid "position must be 2-tuple"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:97
|
||||
#: shared-bindings/displayio/Sprite.c:102
|
||||
msgid "unsupported bitmap type"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/displayio/Sprite.c:162
|
||||
#: shared-bindings/displayio/Sprite.c:167
|
||||
msgid "pixel_shader must be displayio.Palette or displayio.ColorConverter"
|
||||
msgstr ""
|
||||
|
||||
@ -2329,15 +2351,15 @@ msgstr "muitos argumentos"
|
||||
msgid "expected a DigitalInOut"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:95
|
||||
msgid "can't convert address to int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:101
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:98
|
||||
msgid "address out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:107
|
||||
#: shared-bindings/i2cslave/I2CSlave.c:104
|
||||
msgid "addresses is empty"
|
||||
msgstr ""
|
||||
|
||||
@ -2379,29 +2401,29 @@ msgstr "Os bytes devem estar entre 0 e 255."
|
||||
msgid "No hardware random available"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:164
|
||||
#: shared-bindings/pulseio/PWMOut.c:162
|
||||
msgid ""
|
||||
"PWM duty_cycle must be between 0 and 65535 inclusive (16 bit resolution)"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PWMOut.c:195
|
||||
#: shared-bindings/pulseio/PWMOut.c:193
|
||||
msgid ""
|
||||
"PWM frequency not writable when variable_frequency is False on construction."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:275
|
||||
#: shared-bindings/pulseio/PulseIn.c:272
|
||||
msgid "Cannot delete values"
|
||||
msgstr "Não é possível excluir valores"
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:281
|
||||
#: shared-bindings/pulseio/PulseIn.c:278
|
||||
msgid "Slices not supported"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:287
|
||||
#: shared-bindings/pulseio/PulseIn.c:284
|
||||
msgid "index must be int"
|
||||
msgstr "index deve ser int"
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c:293
|
||||
#: shared-bindings/pulseio/PulseIn.c:290
|
||||
msgid "Read-only"
|
||||
msgstr "Somente leitura"
|
||||
|
||||
@ -2568,11 +2590,20 @@ msgstr "Apenas bit maps de cores de 8 bit ou menos são suportados"
|
||||
msgid "row must be packed and word aligned"
|
||||
msgstr "Linha deve ser comprimida e com as palavras alinhadas"
|
||||
|
||||
#: shared-module/displayio/Display.c:62
|
||||
#, fuzzy
|
||||
msgid "Unsupported display bus type"
|
||||
msgstr "Taxa de transmissão não suportada"
|
||||
|
||||
#: shared-module/displayio/Group.c:39
|
||||
msgid "Group full"
|
||||
msgstr "Grupo cheio"
|
||||
|
||||
#: shared-module/displayio/Group.c:48
|
||||
#: shared-module/displayio/Group.c:46
|
||||
msgid "Layer must be a Group or Sprite subclass."
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Group.c:55
|
||||
msgid "Group empty"
|
||||
msgstr "Grupo vazio"
|
||||
|
||||
@ -2590,6 +2621,19 @@ msgstr "Apenas formato Windows, BMP descomprimido suportado"
|
||||
msgid "Only true color (24 bpp or higher) BMP supported %x"
|
||||
msgstr "Apenas cores verdadeiras (24 bpp ou maior) BMP suportadas"
|
||||
|
||||
#: shared-module/displayio/Shape.c:60
|
||||
msgid "y value out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c:63
|
||||
msgid "x value out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/displayio/Shape.c:67
|
||||
#, c-format
|
||||
msgid "Maximum x value when mirrored is %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/storage/__init__.c:155
|
||||
msgid "Cannot remount '/' when USB is active."
|
||||
msgstr "Não é possível remontar '/' enquanto o USB estiver ativo."
|
||||
@ -2615,6 +2659,18 @@ msgstr "USB ocupada"
|
||||
msgid "USB Error"
|
||||
msgstr "Erro na USB"
|
||||
|
||||
#: supervisor/shared/board_busses.c:62
|
||||
msgid "No default I2C bus"
|
||||
msgstr "Nenhum barramento I2C padrão"
|
||||
|
||||
#: supervisor/shared/board_busses.c:91
|
||||
msgid "No default SPI bus"
|
||||
msgstr "Nenhum barramento SPI padrão"
|
||||
|
||||
#: supervisor/shared/board_busses.c:118
|
||||
msgid "No default UART bus"
|
||||
msgstr "Nenhum barramento UART padrão"
|
||||
|
||||
#: supervisor/shared/safe_mode.c:97
|
||||
msgid "You requested starting safe mode by "
|
||||
msgstr "Você solicitou o início do modo de segurança"
|
||||
@ -2670,32 +2726,32 @@ msgid ""
|
||||
"exit safe mode.\n"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "Can not add Characteristic."
|
||||
#~ msgstr "Não é possível adicionar Característica."
|
||||
|
||||
#~ msgid "Can not query for the device address."
|
||||
#~ msgstr "Não é possível consultar o endereço do dispositivo."
|
||||
|
||||
#~ msgid "Cannot set PPCP parameters."
|
||||
#~ msgstr "Não é possível definir parâmetros PPCP."
|
||||
|
||||
#~ msgid "Can encode UUID into the advertisement packet."
|
||||
#~ msgstr "Pode codificar o UUID no pacote de anúncios."
|
||||
|
||||
#~ msgid "Invalid Service type"
|
||||
#~ msgstr "Tipo de serviço inválido"
|
||||
|
||||
#~ msgid "Cannot apply GAP parameters."
|
||||
#~ msgstr "Não é possível aplicar parâmetros GAP."
|
||||
#~ msgid "Can not apply device name in the stack."
|
||||
#~ msgstr "Não é possível aplicar o nome do dispositivo na pilha."
|
||||
|
||||
#~ msgid "Baud rate too high for this SPI peripheral"
|
||||
#~ msgstr "Taxa de transmissão muito alta para esse periférico SPI"
|
||||
|
||||
#~ msgid "Can not apply device name in the stack."
|
||||
#~ msgstr "Não é possível aplicar o nome do dispositivo na pilha."
|
||||
#~ msgid "Can not add Characteristic."
|
||||
#~ msgstr "Não é possível adicionar Característica."
|
||||
|
||||
#~ msgid "Cannot apply GAP parameters."
|
||||
#~ msgstr "Não é possível aplicar parâmetros GAP."
|
||||
|
||||
#~ msgid "Invalid UUID parameter"
|
||||
#~ msgstr "Parâmetro UUID inválido"
|
||||
|
||||
#~ msgid "Can not apply advertisement data. status: 0x%02x"
|
||||
#~ msgstr "Não é possível aplicar dados de anúncio. status: 0x%02x"
|
||||
|
||||
#~ msgid "Invalid UUID parameter"
|
||||
#~ msgstr "Parâmetro UUID inválido"
|
||||
#~ msgid "Can encode UUID into the advertisement packet."
|
||||
#~ msgstr "Pode codificar o UUID no pacote de anúncios."
|
||||
|
||||
#~ msgid "Cannot set PPCP parameters."
|
||||
#~ msgstr "Não é possível definir parâmetros PPCP."
|
||||
|
10
main.c
10
main.c
@ -49,6 +49,7 @@
|
||||
#include "supervisor/port.h"
|
||||
#include "supervisor/filesystem.h"
|
||||
#include "supervisor/shared/autoreload.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
#include "supervisor/shared/translate.h"
|
||||
#include "supervisor/shared/rgb_led_status.h"
|
||||
#include "supervisor/shared/safe_mode.h"
|
||||
@ -60,6 +61,10 @@
|
||||
#include "shared-module/network/__init__.h"
|
||||
#endif
|
||||
|
||||
#ifdef CIRCUITPY_DISPLAYIO
|
||||
#include "shared-module/displayio/__init__.h"
|
||||
#endif
|
||||
|
||||
void do_str(const char *src, mp_parse_input_kind_t input_kind) {
|
||||
mp_lexer_t *lex = mp_lexer_new_from_str_len(MP_QSTR__lt_stdin_gt_, src, strlen(src), 0);
|
||||
if (lex == NULL) {
|
||||
@ -198,10 +203,15 @@ bool run_code_py(safe_mode_t safe_mode) {
|
||||
serial_write_compressed(translate("WARNING: Your code filename has two extensions\n"));
|
||||
}
|
||||
}
|
||||
#ifdef CIRCUITPY_DISPLAYIO
|
||||
// Turn off the display before the heap disappears.
|
||||
reset_displays();
|
||||
#endif
|
||||
stop_mp();
|
||||
free_memory(heap);
|
||||
|
||||
reset_port();
|
||||
reset_board_busses();
|
||||
reset_board();
|
||||
reset_status_led();
|
||||
|
||||
|
@ -238,7 +238,6 @@ SRC_ASF := $(addprefix asf4/$(CHIP_FAMILY)/, $(SRC_ASF))
|
||||
|
||||
SRC_C = \
|
||||
audio_dma.c \
|
||||
board_busses.c \
|
||||
background.c \
|
||||
fatfs_port.c \
|
||||
mphalport.c \
|
||||
@ -306,7 +305,7 @@ SRC_COMMON_HAL = \
|
||||
busio/UART.c \
|
||||
digitalio/__init__.c \
|
||||
digitalio/DigitalInOut.c \
|
||||
displayio/FourWire.c \
|
||||
displayio/ParallelBus.c \
|
||||
i2cslave/__init__.c \
|
||||
i2cslave/I2CSlave.c \
|
||||
microcontroller/__init__.c \
|
||||
@ -379,6 +378,8 @@ SRC_SHARED_MODULE = \
|
||||
displayio/__init__.c \
|
||||
displayio/Bitmap.c \
|
||||
displayio/ColorConverter.c \
|
||||
displayio/Display.c \
|
||||
displayio/FourWire.c \
|
||||
displayio/Group.c \
|
||||
displayio/OnDiskBitmap.c \
|
||||
displayio/Palette.c \
|
||||
|
@ -30,10 +30,13 @@
|
||||
#include "supervisor/usb.h"
|
||||
|
||||
#include "py/runtime.h"
|
||||
#include "shared-module/displayio/__init__.h"
|
||||
#include "shared-module/network/__init__.h"
|
||||
#include "supervisor/shared/stack.h"
|
||||
|
||||
#ifdef CIRCUITPY_DISPLAYIO
|
||||
#include "shared-module/displayio/__init__.h"
|
||||
#endif
|
||||
|
||||
volatile uint64_t last_finished_tick = 0;
|
||||
|
||||
bool stack_ok_so_far = true;
|
||||
@ -44,7 +47,7 @@ void run_background_tasks(void) {
|
||||
audio_dma_background();
|
||||
#endif
|
||||
#ifdef CIRCUITPY_DISPLAYIO
|
||||
displayio_refresh_display();
|
||||
displayio_refresh_displays();
|
||||
#endif
|
||||
|
||||
#if MICROPY_PY_NETWORK
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
|
@ -33,12 +33,6 @@
|
||||
|
||||
#include "py/mpconfig.h"
|
||||
|
||||
#ifdef CIRCUITPY_DISPLAYIO
|
||||
#include "common-hal/displayio/FourWire.h"
|
||||
|
||||
extern displayio_fourwire_obj_t board_display_obj;
|
||||
#endif
|
||||
|
||||
// Initializes board related state once on start up.
|
||||
void board_init(void);
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_PA30) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
// This mapping only includes functional names because pins broken
|
||||
// out on connectors are labeled with their MCU name available from
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
// This mapping only includes functional names because pins broken
|
||||
// out on connectors are labeled with their MCU name available from
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
|
@ -43,3 +43,4 @@
|
||||
#define IGNORE_PIN_PA25 1
|
||||
|
||||
#define CIRCUITPY_I2CSLAVE
|
||||
#define CIRCUITPY_DISPLAYIO (1)
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PB02) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_PA05) }, // pad 1
|
||||
|
@ -46,3 +46,5 @@
|
||||
#define IGNORE_PIN_PA25 1
|
||||
|
||||
#define CIRCUITPY_I2CSLAVE
|
||||
#define CIRCUITPY_DISPLAYIO (1)
|
||||
#define CIRCUITPY_DISPLAY_LIMIT (3)
|
||||
|
@ -1,133 +1,133 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
// This mapping only includes functional names because pins broken
|
||||
// out on connectors are labeled with their MCU name available from
|
||||
// microcontroller.pin.
|
||||
STATIC const mp_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_AREF), (mp_obj_t)&pin_PA03 },
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_AREF), MP_ROM_PTR(&pin_PA03) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A0), (mp_obj_t)&pin_PA02 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A1), (mp_obj_t)&pin_PA05 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A2), (mp_obj_t)&pin_PB03 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A3), (mp_obj_t)&pin_PC00 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A4), (mp_obj_t)&pin_PC01 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A5), (mp_obj_t)&pin_PC02 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A6), (mp_obj_t)&pin_PC03 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A7), (mp_obj_t)&pin_PB04 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_PA05) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_PB03) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A3), MP_ROM_PTR(&pin_PC00) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A4), MP_ROM_PTR(&pin_PC01) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_PC02) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A6), MP_ROM_PTR(&pin_PC03) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A7), MP_ROM_PTR(&pin_PB04) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A8), (mp_obj_t)&pin_PB05 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A9), (mp_obj_t)&pin_PB06 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A10), (mp_obj_t)&pin_PB07 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A11), (mp_obj_t)&pin_PB08 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A12), (mp_obj_t)&pin_PB09 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A13), (mp_obj_t)&pin_PA04 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A14), (mp_obj_t)&pin_PA06 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A15), (mp_obj_t)&pin_PA07 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A8), MP_ROM_PTR(&pin_PB05) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A9), MP_ROM_PTR(&pin_PB06) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A10), MP_ROM_PTR(&pin_PB07) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A11), MP_ROM_PTR(&pin_PB08) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A12), MP_ROM_PTR(&pin_PB09) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A13), MP_ROM_PTR(&pin_PA04) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A14), MP_ROM_PTR(&pin_PA06) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A15), MP_ROM_PTR(&pin_PA07) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D0), (mp_obj_t)&pin_PB25 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RX), (mp_obj_t)&pin_PB25 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D1), (mp_obj_t)&pin_PB24 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TX), (mp_obj_t)&pin_PB24 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D2), (mp_obj_t)&pin_PC18 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D3), (mp_obj_t)&pin_PC19 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D4), (mp_obj_t)&pin_PC20 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D5), (mp_obj_t)&pin_PC21 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D6), (mp_obj_t)&pin_PD20 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D7), (mp_obj_t)&pin_PD21 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D8), (mp_obj_t)&pin_PB18 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D9), (mp_obj_t)&pin_PB02 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D10), (mp_obj_t)&pin_PB22 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D11), (mp_obj_t)&pin_PB23 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D12), (mp_obj_t)&pin_PB00 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D13), (mp_obj_t)&pin_PB01 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_PB25) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_PB25) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_PB24) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_PB24) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_PC18) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_PC19) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D4), MP_ROM_PTR(&pin_PC20) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D5), MP_ROM_PTR(&pin_PC21) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D6), MP_ROM_PTR(&pin_PD20) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D7), MP_ROM_PTR(&pin_PD21) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D8), MP_ROM_PTR(&pin_PB18) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D9), MP_ROM_PTR(&pin_PB02) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D10), MP_ROM_PTR(&pin_PB22) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D11), MP_ROM_PTR(&pin_PB23) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D12), MP_ROM_PTR(&pin_PB00) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_PB01) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TX3), (mp_obj_t)&pin_PB16 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D14), (mp_obj_t)&pin_PB16 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RX3), (mp_obj_t)&pin_PB17 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D15), (mp_obj_t)&pin_PB17 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TX2), (mp_obj_t)&pin_PC22 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D16), (mp_obj_t)&pin_PC22 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RX2), (mp_obj_t)&pin_PC23 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D17), (mp_obj_t)&pin_PC23 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TX1), (mp_obj_t)&pin_PB12 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D18), (mp_obj_t)&pin_PB12 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RX1), (mp_obj_t)&pin_PB13 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D19), (mp_obj_t)&pin_PB13 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D20), (mp_obj_t)&pin_PB20 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SDA), (mp_obj_t)&pin_PB20 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D21), (mp_obj_t)&pin_PB21 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCL), (mp_obj_t)&pin_PB21 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TX3), MP_ROM_PTR(&pin_PB16) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D14), MP_ROM_PTR(&pin_PB16) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RX3), MP_ROM_PTR(&pin_PB17) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D15), MP_ROM_PTR(&pin_PB17) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TX2), MP_ROM_PTR(&pin_PC22) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D16), MP_ROM_PTR(&pin_PC22) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RX2), MP_ROM_PTR(&pin_PC23) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D17), MP_ROM_PTR(&pin_PC23) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TX1), MP_ROM_PTR(&pin_PB12) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D18), MP_ROM_PTR(&pin_PB12) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RX1), MP_ROM_PTR(&pin_PB13) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D19), MP_ROM_PTR(&pin_PB13) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D20), MP_ROM_PTR(&pin_PB20) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_PB20) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D21), MP_ROM_PTR(&pin_PB21) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_PB21) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D22), (mp_obj_t)&pin_PD12 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D23), (mp_obj_t)&pin_PA15 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D24), (mp_obj_t)&pin_PC17 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCL1), (mp_obj_t)&pin_PC17 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D25), (mp_obj_t)&pin_PC16 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SDA1), (mp_obj_t)&pin_PC16 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D26), (mp_obj_t)&pin_PA12 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_DEN1), (mp_obj_t)&pin_PA12 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D27), (mp_obj_t)&pin_PA13 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_DEN2), (mp_obj_t)&pin_PA13 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D28), (mp_obj_t)&pin_PA14 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_CLK), (mp_obj_t)&pin_PA14 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D29), (mp_obj_t)&pin_PB19 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_XCLK), (mp_obj_t)&pin_PB19 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D30), (mp_obj_t)&pin_PA23 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D7), (mp_obj_t)&pin_PA23 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D31), (mp_obj_t)&pin_PA22 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D6), (mp_obj_t)&pin_PA22 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D32), (mp_obj_t)&pin_PA21 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D5), (mp_obj_t)&pin_PA21 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D33), (mp_obj_t)&pin_PA20 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D4), (mp_obj_t)&pin_PA20 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D34), (mp_obj_t)&pin_PA19 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D3), (mp_obj_t)&pin_PA19 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D35), (mp_obj_t)&pin_PA18 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D2), (mp_obj_t)&pin_PA18 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D36), (mp_obj_t)&pin_PA17 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D1), (mp_obj_t)&pin_PA17 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D37), (mp_obj_t)&pin_PA16 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D0), (mp_obj_t)&pin_PA16 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D38), (mp_obj_t)&pin_PB15 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D9), (mp_obj_t)&pin_PB15 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D39), (mp_obj_t)&pin_PB14 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D8), (mp_obj_t)&pin_PB14 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D40), (mp_obj_t)&pin_PC13 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D11), (mp_obj_t)&pin_PC13 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D41), (mp_obj_t)&pin_PC12 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D10), (mp_obj_t)&pin_PC12 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D42), (mp_obj_t)&pin_PC15 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D13), (mp_obj_t)&pin_PC15 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D43), (mp_obj_t)&pin_PC14 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D12), (mp_obj_t)&pin_PC14 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D44), (mp_obj_t)&pin_PC11 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D45), (mp_obj_t)&pin_PC10 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D46), (mp_obj_t)&pin_PC06 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D47), (mp_obj_t)&pin_PC07 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D48), (mp_obj_t)&pin_PC04 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D49), (mp_obj_t)&pin_PC05 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D50), (mp_obj_t)&pin_PD11 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MISO), (mp_obj_t)&pin_PD11 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D51), (mp_obj_t)&pin_PD08 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MOSI), (mp_obj_t)&pin_PD08 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D52), (mp_obj_t)&pin_PD09 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCK), (mp_obj_t)&pin_PD09 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D53), (mp_obj_t)&pin_PD10 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SS), (mp_obj_t)&pin_PD10 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D22), MP_ROM_PTR(&pin_PD12) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D23), MP_ROM_PTR(&pin_PA15) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D24), MP_ROM_PTR(&pin_PC17) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCL1), MP_ROM_PTR(&pin_PC17) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D25), MP_ROM_PTR(&pin_PC16) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SDA1), MP_ROM_PTR(&pin_PC16) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D26), MP_ROM_PTR(&pin_PA12) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_DEN1), MP_ROM_PTR(&pin_PA12) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D27), MP_ROM_PTR(&pin_PA13) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_DEN2), MP_ROM_PTR(&pin_PA13) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D28), MP_ROM_PTR(&pin_PA14) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_CLK), MP_ROM_PTR(&pin_PA14) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D29), MP_ROM_PTR(&pin_PB19) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_XCLK), MP_ROM_PTR(&pin_PB19) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D30), MP_ROM_PTR(&pin_PA23) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D7), MP_ROM_PTR(&pin_PA23) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D31), MP_ROM_PTR(&pin_PA22) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D6), MP_ROM_PTR(&pin_PA22) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D32), MP_ROM_PTR(&pin_PA21) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D5), MP_ROM_PTR(&pin_PA21) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D33), MP_ROM_PTR(&pin_PA20) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D4), MP_ROM_PTR(&pin_PA20) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D34), MP_ROM_PTR(&pin_PA19) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D3), MP_ROM_PTR(&pin_PA19) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D35), MP_ROM_PTR(&pin_PA18) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D2), MP_ROM_PTR(&pin_PA18) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D36), MP_ROM_PTR(&pin_PA17) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D1), MP_ROM_PTR(&pin_PA17) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D37), MP_ROM_PTR(&pin_PA16) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D0), MP_ROM_PTR(&pin_PA16) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D38), MP_ROM_PTR(&pin_PB15) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D9), MP_ROM_PTR(&pin_PB15) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D39), MP_ROM_PTR(&pin_PB14) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D8), MP_ROM_PTR(&pin_PB14) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D40), MP_ROM_PTR(&pin_PC13) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D11), MP_ROM_PTR(&pin_PC13) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D41), MP_ROM_PTR(&pin_PC12) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D10), MP_ROM_PTR(&pin_PC12) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D42), MP_ROM_PTR(&pin_PC15) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D13), MP_ROM_PTR(&pin_PC15) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D43), MP_ROM_PTR(&pin_PC14) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D12), MP_ROM_PTR(&pin_PC14) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D44), MP_ROM_PTR(&pin_PC11) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D45), MP_ROM_PTR(&pin_PC10) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D46), MP_ROM_PTR(&pin_PC06) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D47), MP_ROM_PTR(&pin_PC07) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D48), MP_ROM_PTR(&pin_PC04) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D49), MP_ROM_PTR(&pin_PC05) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D50), MP_ROM_PTR(&pin_PD11) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_PD11) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D51), MP_ROM_PTR(&pin_PD08) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_PD08) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D52), MP_ROM_PTR(&pin_PD09) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_PD09) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D53), MP_ROM_PTR(&pin_PD10) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SS), MP_ROM_PTR(&pin_PD10) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_MOSI), (mp_obj_t)&pin_PB26 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_SCK), (mp_obj_t)&pin_PB27 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_CS), (mp_obj_t)&pin_PB28 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_MISO), (mp_obj_t)&pin_PB29 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_MOSI), MP_ROM_PTR(&pin_PB26) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_SCK), MP_ROM_PTR(&pin_PB27) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_CS), MP_ROM_PTR(&pin_PB28) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_MISO), MP_ROM_PTR(&pin_PB29) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_CARD_DETECT), (mp_obj_t)&pin_PB31 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_CARD_DETECT), MP_ROM_PTR(&pin_PB31) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_NEOPIXEL), (mp_obj_t)&pin_PC24 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_PC24) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LED_RX), (mp_obj_t)&pin_PC31 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LED_TX), (mp_obj_t)&pin_PC30 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LED_RX), MP_ROM_PTR(&pin_PC31) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LED_TX), MP_ROM_PTR(&pin_PC30) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
|
||||
|
@ -27,6 +27,7 @@
|
||||
#include "boards/board.h"
|
||||
|
||||
#include "shared-bindings/displayio/FourWire.h"
|
||||
#include "shared-module/displayio/__init__.h"
|
||||
#include "shared-module/displayio/mipi_constants.h"
|
||||
|
||||
#include "tick.h"
|
||||
@ -68,13 +69,18 @@ uint8_t display_init_sequence[] = {
|
||||
};
|
||||
|
||||
void board_init(void) {
|
||||
board_display_obj.base.type = &displayio_fourwire_type;
|
||||
common_hal_displayio_fourwire_construct(&board_display_obj,
|
||||
&pin_PB23, // Clock
|
||||
&pin_PB22, // Data
|
||||
displayio_fourwire_obj_t* bus = &displays[0].fourwire_bus;
|
||||
bus->base.type = &displayio_fourwire_type;
|
||||
common_hal_displayio_fourwire_construct(bus,
|
||||
board_spi(),
|
||||
&pin_PA28, // Command or data
|
||||
&pin_PA01, // Chip select
|
||||
&pin_PA27, // Reset
|
||||
&pin_PA27); // Reset
|
||||
|
||||
displayio_display_obj_t* display = &displays[0].display;
|
||||
display->base.type = &displayio_display_type;
|
||||
common_hal_displayio_display_construct(display,
|
||||
bus,
|
||||
128, // Width
|
||||
128, // Height
|
||||
2, // column start
|
||||
@ -82,33 +88,9 @@ void board_init(void) {
|
||||
16, // Color depth
|
||||
MIPI_COMMAND_SET_COLUMN_ADDRESS, // Set column command
|
||||
MIPI_COMMAND_SET_PAGE_ADDRESS, // Set row command
|
||||
MIPI_COMMAND_WRITE_MEMORY_START); // Write memory command
|
||||
|
||||
uint32_t i = 0;
|
||||
common_hal_displayio_fourwire_begin_transaction(&board_display_obj);
|
||||
while (i < sizeof(display_init_sequence)) {
|
||||
uint8_t *cmd = display_init_sequence + i;
|
||||
uint8_t data_size = *(cmd + 1);
|
||||
bool delay = (data_size & DELAY) != 0;
|
||||
data_size &= ~DELAY;
|
||||
uint8_t *data = cmd + 2;
|
||||
common_hal_displayio_fourwire_send(&board_display_obj, true, cmd, 1);
|
||||
common_hal_displayio_fourwire_send(&board_display_obj, false, data, data_size);
|
||||
if (delay) {
|
||||
data_size++;
|
||||
uint16_t delay_length_ms = *(cmd + 1 + data_size);
|
||||
if (delay_length_ms == 255) {
|
||||
delay_length_ms = 500;
|
||||
}
|
||||
uint64_t start = ticks_ms;
|
||||
while (ticks_ms - start < delay_length_ms) {}
|
||||
} else {
|
||||
uint64_t start = ticks_ms;
|
||||
while (ticks_ms - start < 10) {}
|
||||
}
|
||||
i += 2 + data_size;
|
||||
}
|
||||
common_hal_displayio_fourwire_end_transaction(&board_display_obj);
|
||||
MIPI_COMMAND_WRITE_MEMORY_START, // Write memory command
|
||||
display_init_sequence,
|
||||
sizeof(display_init_sequence));
|
||||
}
|
||||
|
||||
bool board_requests_safe_mode(void) {
|
||||
@ -116,5 +98,4 @@ bool board_requests_safe_mode(void) {
|
||||
}
|
||||
|
||||
void reset_board(void) {
|
||||
common_hal_displayio_fourwire_show(&board_display_obj, NULL);
|
||||
}
|
||||
|
@ -1,7 +1,8 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "boards/board.h"
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
#include "shared-module/displayio/__init__.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
@ -62,6 +63,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ 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_DISPLAY), MP_ROM_PTR(&board_display_obj)}
|
||||
{ MP_ROM_QSTR(MP_QSTR_DISPLAY), MP_ROM_PTR(&displays[0].display)}
|
||||
};
|
||||
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_PA11) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
// This mapping only includes functional names because pins broken
|
||||
// out on connectors are labeled with their MCU name available from
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
|
@ -1,46 +1,46 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
// This mapping only includes functional names because pins broken
|
||||
// out on connectors are labeled with their MCU name available from
|
||||
// microcontroller.pin.
|
||||
STATIC const mp_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A0), (mp_obj_t)&pin_PA02 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A1), (mp_obj_t)&pin_PA05 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A2), (mp_obj_t)&pin_PA06 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A3), (mp_obj_t)&pin_PA04 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A4), (mp_obj_t)&pin_PB08 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A5), (mp_obj_t)&pin_PB09 },
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_PA05) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_PA06) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A3), MP_ROM_PTR(&pin_PA04) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A4), MP_ROM_PTR(&pin_PB08) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_PB09) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D0), (mp_obj_t)&pin_PA23 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RX), (mp_obj_t)&pin_PA23 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D1), (mp_obj_t)&pin_PA22 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TX), (mp_obj_t)&pin_PA22 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D2), (mp_obj_t)&pin_PB17 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D3), (mp_obj_t)&pin_PB16 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D4), (mp_obj_t)&pin_PB13 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D5), (mp_obj_t)&pin_PB14 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D6), (mp_obj_t)&pin_PB15 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D7), (mp_obj_t)&pin_PB12 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D8), (mp_obj_t)&pin_PA21 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D9), (mp_obj_t)&pin_PA20 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D10), (mp_obj_t)&pin_PA18 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D11), (mp_obj_t)&pin_PA19 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D12), (mp_obj_t)&pin_PA17 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D13), (mp_obj_t)&pin_PA16 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_PA23) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_PA23) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_PA22) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_PA22) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_PB17) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_PB16) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D4), MP_ROM_PTR(&pin_PB13) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D5), MP_ROM_PTR(&pin_PB14) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D6), MP_ROM_PTR(&pin_PB15) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D7), MP_ROM_PTR(&pin_PB12) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D8), MP_ROM_PTR(&pin_PA21) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D9), MP_ROM_PTR(&pin_PA20) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D10), MP_ROM_PTR(&pin_PA18) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D11), MP_ROM_PTR(&pin_PA19) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D12), MP_ROM_PTR(&pin_PA17) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D13),MP_ROM_PTR(&pin_PA16) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SDA), (mp_obj_t)&pin_PB02 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCL), (mp_obj_t)&pin_PB03 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SDA),MP_ROM_PTR(&pin_PB02) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCL),MP_ROM_PTR(&pin_PB03) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_NEOPIXEL), (mp_obj_t)&pin_PB22 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_NEOPIXEL),MP_ROM_PTR(&pin_PB22) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCK), (mp_obj_t)&pin_PA13 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MOSI), (mp_obj_t)&pin_PA12 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MISO), (mp_obj_t)&pin_PA14 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCK),MP_ROM_PTR(&pin_PA13) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MOSI),MP_ROM_PTR(&pin_PA12) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MISO),MP_ROM_PTR(&pin_PA14) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LED_RX), (mp_obj_t)&pin_PB06 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LED_TX), (mp_obj_t)&pin_PA27 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LED_RX),MP_ROM_PTR(&pin_PB06) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LED_TX),MP_ROM_PTR(&pin_PA27) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
// This mapping only includes functional names because pins broken
|
||||
// out on connectors are labeled with their MCU name available from
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_REMOTEIN), MP_ROM_PTR(&pin_PA28) },
|
||||
|
@ -3,7 +3,7 @@
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2018 Scott Shawcroft for Adafruit Industries
|
||||
* Copyright (c) 2019 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
@ -25,16 +25,15 @@
|
||||
*/
|
||||
|
||||
#include "boards/board.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
#include "mpconfigboard.h"
|
||||
#include "hal/include/hal_gpio.h"
|
||||
|
||||
#include "shared-bindings/displayio/FourWire.h"
|
||||
#include "shared-module/displayio/__init__.h"
|
||||
#include "shared-module/displayio/mipi_constants.h"
|
||||
|
||||
#include "tick.h"
|
||||
|
||||
displayio_fourwire_obj_t board_display_obj;
|
||||
|
||||
#define DELAY 0x80
|
||||
|
||||
uint8_t display_init_sequence[] = {
|
||||
@ -64,15 +63,21 @@ uint8_t display_init_sequence[] = {
|
||||
0x29, DELAY, 120, // Display on
|
||||
};
|
||||
|
||||
|
||||
void board_init(void) {
|
||||
board_display_obj.base.type = &displayio_fourwire_type;
|
||||
common_hal_displayio_fourwire_construct(&board_display_obj,
|
||||
&pin_PA13, // Clock
|
||||
&pin_PA12, // Data
|
||||
&pin_PB09, // Command or data
|
||||
displayio_parallelbus_obj_t* bus = &displays[0].parallel_bus;
|
||||
bus->base.type = &displayio_parallelbus_type;
|
||||
common_hal_displayio_parallelbus_construct(bus,
|
||||
&pin_PA16, // Data0
|
||||
&pin_PB05, // Command or data
|
||||
&pin_PB06, // Chip select
|
||||
&pin_PA00, // Reset
|
||||
&pin_PB09, // Write
|
||||
&pin_PB04, // Read
|
||||
&pin_PA00); // Reset
|
||||
|
||||
displayio_display_obj_t* display = &displays[0].display;
|
||||
display->base.type = &displayio_display_type;
|
||||
common_hal_displayio_display_construct(display,
|
||||
bus,
|
||||
320, // Width
|
||||
240, // Height
|
||||
0, // column start
|
||||
@ -80,33 +85,9 @@ void board_init(void) {
|
||||
16, // Color depth
|
||||
MIPI_COMMAND_SET_COLUMN_ADDRESS, // Set column command
|
||||
MIPI_COMMAND_SET_PAGE_ADDRESS, // Set row command
|
||||
MIPI_COMMAND_WRITE_MEMORY_START); // Write memory command
|
||||
|
||||
uint32_t i = 0;
|
||||
common_hal_displayio_fourwire_begin_transaction(&board_display_obj);
|
||||
while (i < sizeof(display_init_sequence)) {
|
||||
uint8_t *cmd = display_init_sequence + i;
|
||||
uint8_t data_size = *(cmd + 1);
|
||||
bool delay = (data_size & DELAY) != 0;
|
||||
data_size &= ~DELAY;
|
||||
uint8_t *data = cmd + 2;
|
||||
common_hal_displayio_fourwire_send(&board_display_obj, true, cmd, 1);
|
||||
common_hal_displayio_fourwire_send(&board_display_obj, false, data, data_size);
|
||||
if (delay) {
|
||||
data_size++;
|
||||
uint16_t delay_length_ms = *(cmd + 1 + data_size);
|
||||
if (delay_length_ms == 255) {
|
||||
delay_length_ms = 500;
|
||||
}
|
||||
uint64_t start = ticks_ms;
|
||||
while (ticks_ms - start < delay_length_ms) {}
|
||||
} else {
|
||||
uint64_t start = ticks_ms;
|
||||
while (ticks_ms - start < 10) {}
|
||||
}
|
||||
i += 2 + data_size;
|
||||
}
|
||||
common_hal_displayio_fourwire_end_transaction(&board_display_obj);
|
||||
MIPI_COMMAND_WRITE_MEMORY_START, // Write memory command
|
||||
display_init_sequence,
|
||||
sizeof(display_init_sequence));
|
||||
}
|
||||
|
||||
bool board_requests_safe_mode(void) {
|
||||
@ -114,5 +95,4 @@ bool board_requests_safe_mode(void) {
|
||||
}
|
||||
|
||||
void reset_board(void) {
|
||||
common_hal_displayio_fourwire_show(&board_display_obj, NULL);
|
||||
}
|
||||
|
@ -13,7 +13,7 @@
|
||||
// QSPI Data pins
|
||||
#define MICROPY_PORT_A ( PORT_PA08 | PORT_PA09 | PORT_PA10 | PORT_PA11 )
|
||||
// QSPI CS, and QSPI SCK
|
||||
#define MICROPY_PORT_B ( PORT_PB10 | PORT_PB11 )
|
||||
#define MICROPY_PORT_B ( PORT_PB10 | PORT_PB11 | PORT_PB22 )
|
||||
#define MICROPY_PORT_C ( 0 )
|
||||
#define MICROPY_PORT_D (0)
|
||||
|
||||
|
@ -1,78 +1,79 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "boards/board.h"
|
||||
#include "board_busses.h"
|
||||
#include "shared-module/displayio/__init__.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
// This mapping only includes functional names because pins broken
|
||||
// out on connectors are labeled with their MCU name available from
|
||||
// microcontroller.pin.
|
||||
STATIC const mp_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_AUDIO_OUT), (mp_obj_t)&pin_PA02 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A0), (mp_obj_t)&pin_PA02 }, // analog out/in
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_AUDIO_OUT), MP_ROM_PTR(&pin_PA02) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) }, // analog out/in
|
||||
|
||||
// STEMMA connectors
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A1), (mp_obj_t)&pin_PB02 }, // SDA
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A2), (mp_obj_t)&pin_PB03 }, // SCL
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A3), (mp_obj_t)&pin_PB00 }, // D3
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D3), (mp_obj_t)&pin_PB00 }, // D3
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A4), (mp_obj_t)&pin_PB01 }, // D4
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D4), (mp_obj_t)&pin_PB01 }, // D4
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_PB02) }, // SDA
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_PB03) }, // SCL
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A3), MP_ROM_PTR(&pin_PB00) }, // D3
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_PB00) }, // D3
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_A4), MP_ROM_PTR(&pin_PB01) }, // D4
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D4), MP_ROM_PTR(&pin_PB01) }, // D4
|
||||
|
||||
// Indicator LED
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D13), (mp_obj_t)&pin_PA27 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_L), (mp_obj_t)&pin_PA27 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_NEOPIXEL), (mp_obj_t)&pin_PB22 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_PA27) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_L), MP_ROM_PTR(&pin_PA27) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_NEOPIXEL),MP_ROM_PTR(&pin_PB22) },
|
||||
|
||||
// LCD pins
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TFT_RESET), (mp_obj_t)&pin_PA00 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TFT_RD), (mp_obj_t)&pin_PB04 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TFT_RS), (mp_obj_t)&pin_PB05 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TFT_CS), (mp_obj_t)&pin_PB06 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TFT_TE), (mp_obj_t)&pin_PB07 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TFT_WR), (mp_obj_t)&pin_PB09 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TFT_BACKLIGHT), (mp_obj_t)&pin_PB31 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LCD_DATA0), (mp_obj_t)&pin_PA16 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LCD_DATA1), (mp_obj_t)&pin_PA17 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LCD_DATA2), (mp_obj_t)&pin_PA18 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LCD_DATA3), (mp_obj_t)&pin_PA19 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LCD_DATA4), (mp_obj_t)&pin_PA20 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LCD_DATA5), (mp_obj_t)&pin_PA21 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LCD_DATA6), (mp_obj_t)&pin_PA22 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LCD_DATA7), (mp_obj_t)&pin_PA23 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TFT_RESET), MP_ROM_PTR(&pin_PA00) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TFT_RD), MP_ROM_PTR(&pin_PB04) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TFT_RS), MP_ROM_PTR(&pin_PB05) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TFT_CS), MP_ROM_PTR(&pin_PB06) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TFT_TE), MP_ROM_PTR(&pin_PB07) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TFT_WR), MP_ROM_PTR(&pin_PB09) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TFT_BACKLIGHT), MP_ROM_PTR(&pin_PB31) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LCD_DATA0), MP_ROM_PTR(&pin_PA16) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LCD_DATA1), MP_ROM_PTR(&pin_PA17) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LCD_DATA2), MP_ROM_PTR(&pin_PA18) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LCD_DATA3), MP_ROM_PTR(&pin_PA19) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LCD_DATA4), MP_ROM_PTR(&pin_PA20) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LCD_DATA5), MP_ROM_PTR(&pin_PA21) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LCD_DATA6), MP_ROM_PTR(&pin_PA22) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LCD_DATA7), MP_ROM_PTR(&pin_PA23) },
|
||||
|
||||
// Touch pins
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TOUCH_YD), (mp_obj_t)&pin_PA04 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TOUCH_XL), (mp_obj_t)&pin_PA05 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TOUCH_YU), (mp_obj_t)&pin_PA06 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TOUCH_XR), (mp_obj_t)&pin_PB08 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TOUCH_YD), MP_ROM_PTR(&pin_PA04) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TOUCH_XL), MP_ROM_PTR(&pin_PA05) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TOUCH_YU), MP_ROM_PTR(&pin_PA06) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TOUCH_XR), MP_ROM_PTR(&pin_PB08) },
|
||||
|
||||
// ESP control
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_ESP_CS), (mp_obj_t)&pin_PA15 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_ESP_BUSY), (mp_obj_t)&pin_PB14 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_ESP_GPIO0), (mp_obj_t)&pin_PB15 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_ESP_RESET), (mp_obj_t)&pin_PB16 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_ESP_CS), MP_ROM_PTR(&pin_PA15) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_ESP_BUSY), MP_ROM_PTR(&pin_PB14) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_ESP_GPIO0), MP_ROM_PTR(&pin_PB15) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_ESP_RESET), MP_ROM_PTR(&pin_PB16) },
|
||||
|
||||
// UART
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TX), (mp_obj_t)&pin_PB12 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RX), (mp_obj_t)&pin_PB13 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_PB12) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_PB13) },
|
||||
|
||||
// SPI
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MOSI), (mp_obj_t)&pin_PA12 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCK), (mp_obj_t)&pin_PA13 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MISO), (mp_obj_t)&pin_PA14 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MOSI),MP_ROM_PTR(&pin_PA12) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCK),MP_ROM_PTR(&pin_PA13) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_MISO),MP_ROM_PTR(&pin_PA14) },
|
||||
|
||||
// I2C
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SDA), (mp_obj_t)&pin_PB02 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCL), (mp_obj_t)&pin_PB03 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SDA),MP_ROM_PTR(&pin_PB02) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCL),MP_ROM_PTR(&pin_PB03) },
|
||||
|
||||
// SD Card
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_CS), (mp_obj_t)&pin_PB30 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_CARD_DETECT), (mp_obj_t)&pin_PA01 },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_CS),MP_ROM_PTR(&pin_PB30) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_CARD_DETECT),MP_ROM_PTR(&pin_PA01) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_DISPLAY), MP_ROM_PTR(&board_display_obj)}
|
||||
{ MP_ROM_QSTR(MP_QSTR_DISPLAY), MP_ROM_PTR(&displays[0].display) },
|
||||
};
|
||||
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
// This mapping only includes functional names because pins broken
|
||||
// out on connectors are labeled with their MCU name available from
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_PA08) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_PA08) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_X), MP_ROM_PTR(&pin_PA00) },
|
||||
|
@ -54,6 +54,17 @@ void never_reset_sercom(Sercom* sercom) {
|
||||
}
|
||||
}
|
||||
|
||||
void allow_reset_sercom(Sercom* sercom) {
|
||||
// Reset all SERCOMs except the ones being used by on-board devices.
|
||||
Sercom *sercom_instances[SERCOM_INST_NUM] = SERCOM_INSTS;
|
||||
for (int i = 0; i < SERCOM_INST_NUM; i++) {
|
||||
if (sercom_instances[i] == sercom) {
|
||||
never_reset_sercoms[i] = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void reset_sercoms(void) {
|
||||
// Reset all SERCOMs except the ones being used by on-board devices.
|
||||
Sercom *sercom_instances[SERCOM_INST_NUM] = SERCOM_INSTS;
|
||||
@ -65,12 +76,6 @@ void reset_sercoms(void) {
|
||||
if (sercom_instances[i] == MICROPY_HW_APA102_SERCOM) {
|
||||
continue;
|
||||
}
|
||||
#endif
|
||||
#ifdef CIRCUITPY_DISPLAYIO
|
||||
// TODO(tannewt): Make this dynamic.
|
||||
if (sercom_instances[i] == board_display_obj.bus.spi_desc.dev.prvt) {
|
||||
continue;
|
||||
}
|
||||
#endif
|
||||
// SWRST is same for all modes of SERCOMs.
|
||||
sercom_instances[i]->SPI.CTRLA.bit.SWRST = 1;
|
||||
@ -241,6 +246,8 @@ void common_hal_busio_spi_deinit(busio_spi_obj_t *self) {
|
||||
if (common_hal_busio_spi_deinited(self)) {
|
||||
return;
|
||||
}
|
||||
allow_reset_sercom(self->spi_desc.dev.prvt);
|
||||
|
||||
spi_m_sync_disable(&self->spi_desc);
|
||||
spi_m_sync_deinit(&self->spi_desc);
|
||||
reset_pin_number(self->clock_pin);
|
||||
|
@ -1,145 +0,0 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2018 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "shared-bindings/displayio/FourWire.h"
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#include "shared-bindings/busio/SPI.h"
|
||||
#include "shared-bindings/digitalio/DigitalInOut.h"
|
||||
|
||||
#include "tick.h"
|
||||
|
||||
void common_hal_displayio_fourwire_construct(displayio_fourwire_obj_t* self,
|
||||
const mcu_pin_obj_t* clock, const mcu_pin_obj_t* data, const mcu_pin_obj_t* command,
|
||||
const mcu_pin_obj_t* chip_select, const mcu_pin_obj_t* reset, uint16_t width,
|
||||
uint16_t height, int16_t colstart, int16_t rowstart, uint16_t color_depth,
|
||||
uint8_t set_column_command, uint8_t set_row_command, uint8_t write_ram_command) {
|
||||
|
||||
common_hal_busio_spi_construct(&self->bus, clock, data, mp_const_none);
|
||||
common_hal_busio_spi_never_reset(&self->bus);
|
||||
|
||||
common_hal_digitalio_digitalinout_construct(&self->command, command);
|
||||
common_hal_digitalio_digitalinout_switch_to_output(&self->command, true, DRIVE_MODE_PUSH_PULL);
|
||||
common_hal_digitalio_digitalinout_construct(&self->chip_select, chip_select);
|
||||
common_hal_digitalio_digitalinout_switch_to_output(&self->chip_select, true, DRIVE_MODE_PUSH_PULL);
|
||||
|
||||
common_hal_digitalio_digitalinout_construct(&self->reset, reset);
|
||||
common_hal_digitalio_digitalinout_switch_to_output(&self->reset, true, DRIVE_MODE_PUSH_PULL);
|
||||
|
||||
never_reset_pin_number(command->number);
|
||||
never_reset_pin_number(chip_select->number);
|
||||
never_reset_pin_number(reset->number);
|
||||
|
||||
self->width = width;
|
||||
self->height = height;
|
||||
self->color_depth = color_depth;
|
||||
self->set_column_command = set_column_command;
|
||||
self->set_row_command = set_row_command;
|
||||
self->write_ram_command = write_ram_command;
|
||||
self->current_group = NULL;
|
||||
self->colstart = colstart;
|
||||
self->rowstart = rowstart;
|
||||
}
|
||||
|
||||
bool common_hal_displayio_fourwire_begin_transaction(displayio_fourwire_obj_t* self) {
|
||||
if (!common_hal_busio_spi_try_lock(&self->bus)) {
|
||||
return false;
|
||||
}
|
||||
// TODO(tannewt): Stop hardcoding SPI frequency, polarity and phase.
|
||||
common_hal_busio_spi_configure(&self->bus, 48000000, 0, 0, 8);
|
||||
common_hal_digitalio_digitalinout_set_value(&self->chip_select, false);
|
||||
return true;
|
||||
}
|
||||
|
||||
void common_hal_displayio_fourwire_send(displayio_fourwire_obj_t* self, bool command, uint8_t *data, uint32_t data_length) {
|
||||
common_hal_digitalio_digitalinout_set_value(&self->command, !command);
|
||||
common_hal_busio_spi_write(&self->bus, data, data_length);
|
||||
}
|
||||
|
||||
void common_hal_displayio_fourwire_end_transaction(displayio_fourwire_obj_t* self) {
|
||||
common_hal_digitalio_digitalinout_set_value(&self->chip_select, true);
|
||||
common_hal_busio_spi_unlock(&self->bus);
|
||||
}
|
||||
|
||||
void common_hal_displayio_fourwire_show(displayio_fourwire_obj_t* self, displayio_group_t* root_group) {
|
||||
self->current_group = root_group;
|
||||
common_hal_displayio_fourwire_refresh_soon(self);
|
||||
}
|
||||
|
||||
void common_hal_displayio_fourwire_refresh_soon(displayio_fourwire_obj_t* self) {
|
||||
self->refresh = true;
|
||||
}
|
||||
|
||||
int32_t common_hal_displayio_fourwire_wait_for_frame(displayio_fourwire_obj_t* self) {
|
||||
uint64_t last_refresh = self->last_refresh;
|
||||
while (last_refresh == self->last_refresh) {
|
||||
MICROPY_VM_HOOK_LOOP
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void displayio_fourwire_start_region_update(displayio_fourwire_obj_t* self, uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1) {
|
||||
// TODO(tannewt): Handle displays with single byte bounds.
|
||||
common_hal_displayio_fourwire_begin_transaction(self);
|
||||
uint16_t data[2];
|
||||
common_hal_displayio_fourwire_send(self, true, &self->set_column_command, 1);
|
||||
data[0] = __builtin_bswap16(x0 + self->colstart);
|
||||
data[1] = __builtin_bswap16(x1-1 + self->colstart);
|
||||
common_hal_displayio_fourwire_send(self, false, (uint8_t*) data, 4);
|
||||
common_hal_displayio_fourwire_send(self, true, &self->set_row_command, 1);
|
||||
data[0] = __builtin_bswap16(y0 + 1 + self->rowstart);
|
||||
data[1] = __builtin_bswap16(y1 + self->rowstart);
|
||||
common_hal_displayio_fourwire_send(self, false, (uint8_t*) data, 4);
|
||||
common_hal_displayio_fourwire_send(self, true, &self->write_ram_command, 1);
|
||||
}
|
||||
|
||||
bool displayio_fourwire_send_pixels(displayio_fourwire_obj_t* self, uint32_t* pixels, uint32_t length) {
|
||||
// TODO: Set this up so its async and 32 bit DMA transfers.
|
||||
common_hal_displayio_fourwire_send(self, false, (uint8_t*) pixels, length*4);
|
||||
return true;
|
||||
}
|
||||
|
||||
void displayio_fourwire_finish_region_update(displayio_fourwire_obj_t* self) {
|
||||
common_hal_displayio_fourwire_end_transaction(self);
|
||||
}
|
||||
|
||||
bool displayio_fourwire_frame_queued(displayio_fourwire_obj_t* self) {
|
||||
// Refresh at ~30 fps.
|
||||
return (ticks_ms - self->last_refresh) > 32;
|
||||
}
|
||||
|
||||
bool displayio_fourwire_refresh_queued(displayio_fourwire_obj_t* self) {
|
||||
return self->refresh || (self->current_group != NULL && displayio_group_needs_refresh(self->current_group));
|
||||
}
|
||||
|
||||
void displayio_fourwire_finish_refresh(displayio_fourwire_obj_t* self) {
|
||||
if (self->current_group != NULL) {
|
||||
displayio_group_finish_refresh(self->current_group);
|
||||
}
|
||||
self->refresh = false;
|
||||
self->last_refresh = ticks_ms;
|
||||
}
|
129
ports/atmel-samd/common-hal/displayio/ParallelBus.c
Normal file
129
ports/atmel-samd/common-hal/displayio/ParallelBus.c
Normal file
@ -0,0 +1,129 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2018 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "shared-bindings/displayio/ParallelBus.h"
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#include "common-hal/microcontroller/Pin.h"
|
||||
#include "py/runtime.h"
|
||||
#include "shared-bindings/digitalio/DigitalInOut.h"
|
||||
|
||||
#include "tick.h"
|
||||
|
||||
void common_hal_displayio_parallelbus_construct(displayio_parallelbus_obj_t* self,
|
||||
const mcu_pin_obj_t* data0, const mcu_pin_obj_t* command, const mcu_pin_obj_t* chip_select,
|
||||
const mcu_pin_obj_t* write, const mcu_pin_obj_t* read, const mcu_pin_obj_t* reset) {
|
||||
|
||||
uint8_t data_pin = data0->number;
|
||||
if (data_pin % 8 != 0) {
|
||||
mp_raise_ValueError(translate("Data 0 pin must be byte aligned"));
|
||||
}
|
||||
for (uint8_t i = 0; i < 8; i++) {
|
||||
if (!pin_number_is_free(data_pin + i)) {
|
||||
mp_raise_ValueError_varg(translate("Bus pin %d is already in use"), i);
|
||||
}
|
||||
}
|
||||
PortGroup *const g = &PORT->Group[data0->number / 32];
|
||||
g->DIRSET.reg = 0xff << (data_pin % 32);
|
||||
uint32_t wrconfig = PORT_WRCONFIG_WRPINCFG | PORT_WRCONFIG_DRVSTR;
|
||||
if (data_pin % 32 > 15) {
|
||||
wrconfig |= PORT_WRCONFIG_HWSEL | (0xff << ((data_pin % 32) - 16));
|
||||
} else {
|
||||
wrconfig |= 0xff << (data_pin % 32);
|
||||
}
|
||||
g->WRCONFIG.reg = wrconfig;
|
||||
self->bus = ((uint8_t*) &g->OUT.reg) + (data0->number % 32 / 8);
|
||||
|
||||
self->command.base.type = &digitalio_digitalinout_type;
|
||||
common_hal_digitalio_digitalinout_construct(&self->command, command);
|
||||
common_hal_digitalio_digitalinout_switch_to_output(&self->command, true, DRIVE_MODE_PUSH_PULL);
|
||||
|
||||
self->chip_select.base.type = &digitalio_digitalinout_type;
|
||||
common_hal_digitalio_digitalinout_construct(&self->chip_select, chip_select);
|
||||
common_hal_digitalio_digitalinout_switch_to_output(&self->chip_select, true, DRIVE_MODE_PUSH_PULL);
|
||||
|
||||
self->reset.base.type = &digitalio_digitalinout_type;
|
||||
common_hal_digitalio_digitalinout_construct(&self->reset, reset);
|
||||
common_hal_digitalio_digitalinout_switch_to_output(&self->reset, true, DRIVE_MODE_PUSH_PULL);
|
||||
|
||||
self->write.base.type = &digitalio_digitalinout_type;
|
||||
common_hal_digitalio_digitalinout_construct(&self->write, write);
|
||||
common_hal_digitalio_digitalinout_switch_to_output(&self->write, true, DRIVE_MODE_PUSH_PULL);
|
||||
|
||||
self->read.base.type = &digitalio_digitalinout_type;
|
||||
common_hal_digitalio_digitalinout_construct(&self->read, read);
|
||||
common_hal_digitalio_digitalinout_switch_to_output(&self->read, true, DRIVE_MODE_PUSH_PULL);
|
||||
|
||||
self->data0_pin = data_pin;
|
||||
self->write_group = &PORT->Group[write->number / 32];
|
||||
self->write_mask = 1 << (write->number % 32);
|
||||
|
||||
never_reset_pin_number(command->number);
|
||||
never_reset_pin_number(chip_select->number);
|
||||
never_reset_pin_number(write->number);
|
||||
never_reset_pin_number(read->number);
|
||||
never_reset_pin_number(reset->number);
|
||||
for (uint8_t i = 0; i < 8; i++) {
|
||||
never_reset_pin_number(data_pin + i);
|
||||
}
|
||||
}
|
||||
|
||||
void common_hal_displayio_parallelbus_deinit(displayio_parallelbus_obj_t* self) {
|
||||
for (uint8_t i = 0; i < 8; i++) {
|
||||
reset_pin_number(self->data0_pin + i);
|
||||
}
|
||||
|
||||
reset_pin_number(self->command.pin->number);
|
||||
reset_pin_number(self->chip_select.pin->number);
|
||||
reset_pin_number(self->write.pin->number);
|
||||
reset_pin_number(self->read.pin->number);
|
||||
reset_pin_number(self->reset.pin->number);
|
||||
}
|
||||
|
||||
bool common_hal_displayio_parallelbus_begin_transaction(mp_obj_t obj) {
|
||||
displayio_parallelbus_obj_t* self = MP_OBJ_TO_PTR(obj);
|
||||
common_hal_digitalio_digitalinout_set_value(&self->chip_select, false);
|
||||
return true;
|
||||
}
|
||||
|
||||
void common_hal_displayio_parallelbus_send(mp_obj_t obj, bool command, uint8_t *data, uint32_t data_length) {
|
||||
displayio_parallelbus_obj_t* self = MP_OBJ_TO_PTR(obj);
|
||||
common_hal_digitalio_digitalinout_set_value(&self->command, !command);
|
||||
uint32_t* clear_write = (uint32_t*) &self->write_group->OUTCLR.reg;
|
||||
uint32_t* set_write = (uint32_t*) &self->write_group->OUTSET.reg;
|
||||
uint32_t mask = self->write_mask;
|
||||
for (uint32_t i = 0; i < data_length; i++) {
|
||||
*clear_write = mask;
|
||||
*self->bus = data[i];
|
||||
*set_write = mask;
|
||||
}
|
||||
}
|
||||
|
||||
void common_hal_displayio_parallelbus_end_transaction(mp_obj_t obj) {
|
||||
displayio_parallelbus_obj_t* self = MP_OBJ_TO_PTR(obj);
|
||||
common_hal_digitalio_digitalinout_set_value(&self->chip_select, true);
|
||||
}
|
45
ports/atmel-samd/common-hal/displayio/ParallelBus.h
Normal file
45
ports/atmel-samd/common-hal/displayio/ParallelBus.h
Normal file
@ -0,0 +1,45 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2019 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef MICROPY_INCLUDED_ATMEL_SAMD_COMMON_HAL_DISPLAYIO_PARALLELBUS_H
|
||||
#define MICROPY_INCLUDED_ATMEL_SAMD_COMMON_HAL_DISPLAYIO_PARALLELBUS_H
|
||||
|
||||
#include "common-hal/digitalio/DigitalInOut.h"
|
||||
|
||||
typedef struct {
|
||||
mp_obj_base_t base;
|
||||
uint8_t* bus;
|
||||
digitalio_digitalinout_obj_t command;
|
||||
digitalio_digitalinout_obj_t chip_select;
|
||||
digitalio_digitalinout_obj_t reset;
|
||||
digitalio_digitalinout_obj_t write;
|
||||
digitalio_digitalinout_obj_t read;
|
||||
uint8_t data0_pin;
|
||||
PortGroup* write_group;
|
||||
uint32_t write_mask;
|
||||
} displayio_parallelbus_obj_t;
|
||||
|
||||
#endif // MICROPY_INCLUDED_ATMEL_SAMD_COMMON_HAL_DISPLAYIO_PARALLELBUS_H
|
@ -100,6 +100,8 @@ void never_reset_pin_number(uint8_t pin_number) {
|
||||
}
|
||||
|
||||
void reset_pin_number(uint8_t pin_number) {
|
||||
never_reset_pins[GPIO_PORT(pin_number)] &= ~(1 << GPIO_PIN(pin_number));
|
||||
|
||||
if (pin_number >= PORT_BITS) {
|
||||
return;
|
||||
}
|
||||
@ -169,6 +171,20 @@ void claim_pin(const mcu_pin_obj_t* pin) {
|
||||
#endif
|
||||
}
|
||||
|
||||
bool pin_number_is_free(uint8_t pin_number) {
|
||||
PortGroup *const port = &PORT->Group[(enum gpio_port)GPIO_PORT(pin_number)];
|
||||
uint8_t pin_index = GPIO_PIN(pin_number);
|
||||
volatile PORT_PINCFG_Type *state = &port->PINCFG[pin_index];
|
||||
volatile PORT_PMUX_Type *pmux = &port->PMUX[pin_index / 2];
|
||||
|
||||
if (pin_number == PIN_PA30 || pin_number == PIN_PA31) {
|
||||
return state->bit.PMUXEN == 1 && ((pmux->reg >> (4 * pin_index % 2)) & 0xf) == 0x6;
|
||||
}
|
||||
|
||||
return state->bit.PMUXEN == 0 && state->bit.INEN == 0 &&
|
||||
state->bit.PULLEN == 0 && (port->DIR.reg & (1 << pin_index)) == 0;
|
||||
}
|
||||
|
||||
bool common_hal_mcu_pin_is_free(const mcu_pin_obj_t* pin) {
|
||||
#ifdef MICROPY_HW_NEOPIXEL
|
||||
if (pin == MICROPY_HW_NEOPIXEL) {
|
||||
@ -190,15 +206,5 @@ bool common_hal_mcu_pin_is_free(const mcu_pin_obj_t* pin) {
|
||||
}
|
||||
#endif
|
||||
|
||||
PortGroup *const port = &PORT->Group[(enum gpio_port)GPIO_PORT(pin->number)];
|
||||
uint8_t pin_index = GPIO_PIN(pin->number);
|
||||
volatile PORT_PINCFG_Type *state = &port->PINCFG[pin_index];
|
||||
volatile PORT_PMUX_Type *pmux = &port->PMUX[pin_index / 2];
|
||||
|
||||
if (pin->number == PIN_PA30 || pin->number == PIN_PA31) {
|
||||
return state->bit.PMUXEN == 1 && ((pmux->reg >> (4 * pin_index % 2)) & 0xf) == 0x6;
|
||||
}
|
||||
|
||||
return state->bit.PMUXEN == 0 && state->bit.INEN == 0 &&
|
||||
state->bit.PULLEN == 0 && (port->DIR.reg & (1 << pin_index)) == 0;
|
||||
return pin_number_is_free(pin->number);
|
||||
}
|
||||
|
@ -45,5 +45,6 @@ void reset_all_pins(void);
|
||||
void reset_pin_number(uint8_t pin_number);
|
||||
void never_reset_pin_number(uint8_t pin_number);
|
||||
void claim_pin(const mcu_pin_obj_t* pin);
|
||||
bool pin_number_is_free(uint8_t pin_number);
|
||||
|
||||
#endif // MICROPY_INCLUDED_ATMEL_SAMD_COMMON_HAL_MICROCONTROLLER_PIN_H
|
||||
|
@ -281,8 +281,10 @@ extern const struct _mp_obj_module_t wiznet_module;
|
||||
#endif
|
||||
|
||||
#ifdef CIRCUITPY_DISPLAYIO
|
||||
#define CIRCUITPY_DISPLAY_LIMIT (3)
|
||||
#define DISPLAYIO_MODULE { MP_OBJ_NEW_QSTR(MP_QSTR_displayio), (mp_obj_t)&displayio_module },
|
||||
#else
|
||||
#define CIRCUITPY_DISPLAY_LIMIT (0)
|
||||
#define DISPLAYIO_MODULE
|
||||
#endif
|
||||
|
||||
@ -336,6 +338,7 @@ extern const struct _mp_obj_module_t wiznet_module;
|
||||
#define MICROPY_PY_BUILTINS_COMPLEX (0)
|
||||
|
||||
#define MICROPY_BUILTIN_METHOD_CHECK_SELF_ARG (0)
|
||||
#define CIRCUITPY_DISPLAY_LIMIT (0)
|
||||
#endif
|
||||
|
||||
// Disabled for now.
|
||||
|
@ -60,7 +60,6 @@
|
||||
#include "samd/external_interrupts.h"
|
||||
#include "samd/dma.h"
|
||||
#include "shared-bindings/rtc/__init__.h"
|
||||
#include "board_busses.h"
|
||||
#include "reset.h"
|
||||
#include "tick.h"
|
||||
|
||||
@ -226,8 +225,6 @@ void reset_port(void) {
|
||||
|
||||
reset_all_pins();
|
||||
|
||||
reset_board_busses();
|
||||
|
||||
// Output clocks for debugging.
|
||||
// not supported by SAMD51G; uncomment for SAMD51J or update for 51G
|
||||
// #ifdef SAMD51
|
||||
|
@ -118,7 +118,6 @@ SRC_C += \
|
||||
fatfs_port.c \
|
||||
mphalport.c \
|
||||
tick.c \
|
||||
board_busses.c \
|
||||
boards/$(BOARD)/board.c \
|
||||
boards/$(BOARD)/pins.c \
|
||||
device/$(MCU_VARIANT)/startup_$(MCU_SUB_VARIANT).c \
|
||||
@ -156,6 +155,7 @@ SRC_COMMON_HAL += \
|
||||
busio/__init__.c\
|
||||
digitalio/DigitalInOut.c \
|
||||
digitalio/__init__.c \
|
||||
displayio/ParallelBus.c \
|
||||
microcontroller/Pin.c \
|
||||
microcontroller/Processor.c \
|
||||
microcontroller/__init__.c \
|
||||
@ -214,6 +214,16 @@ SRC_SHARED_MODULE = \
|
||||
bitbangio/OneWire.c \
|
||||
bitbangio/SPI.c \
|
||||
busio/OneWire.c \
|
||||
displayio/__init__.c \
|
||||
displayio/Bitmap.c \
|
||||
displayio/ColorConverter.c \
|
||||
displayio/Display.c \
|
||||
displayio/FourWire.c \
|
||||
displayio/Group.c \
|
||||
displayio/OnDiskBitmap.c \
|
||||
displayio/Palette.c \
|
||||
displayio/Shape.c \
|
||||
displayio/Sprite.c \
|
||||
storage/__init__.c
|
||||
|
||||
# uheap/__init__.c \
|
||||
|
@ -24,15 +24,20 @@
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifdef NRF52840
|
||||
#include "py/runtime.h"
|
||||
#include "supervisor/usb.h"
|
||||
#endif
|
||||
|
||||
#include "supervisor/shared/stack.h"
|
||||
|
||||
void run_background_tasks(void) {
|
||||
#ifdef NRF52840
|
||||
usb_background();
|
||||
#ifdef CIRCUITPY_DISPLAYIO
|
||||
#include "shared-module/displayio/__init__.h"
|
||||
#endif
|
||||
|
||||
void run_background_tasks(void) {
|
||||
usb_background();
|
||||
|
||||
#ifdef CIRCUITPY_DISPLAYIO
|
||||
displayio_refresh_displays();
|
||||
#endif
|
||||
|
||||
assert_heap_ok();
|
||||
}
|
||||
|
@ -1,114 +0,0 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2018 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "shared-bindings/busio/I2C.h"
|
||||
#include "shared-bindings/busio/SPI.h"
|
||||
#include "shared-bindings/busio/UART.h"
|
||||
|
||||
#include "shared-bindings/microcontroller/Pin.h"
|
||||
#include "supervisor/shared/translate.h"
|
||||
#include "nrf/pins.h"
|
||||
#include "py/mpconfig.h"
|
||||
#include "py/runtime.h"
|
||||
|
||||
#if !defined(DEFAULT_I2C_BUS_SDA) || !defined(DEFAULT_I2C_BUS_SCL)
|
||||
STATIC mp_obj_t board_i2c(void) {
|
||||
mp_raise_NotImplementedError(translate("No default I2C bus"));
|
||||
return NULL;
|
||||
}
|
||||
#else
|
||||
STATIC mp_obj_t i2c_singleton = NULL;
|
||||
|
||||
STATIC mp_obj_t board_i2c(void) {
|
||||
|
||||
if (i2c_singleton == NULL) {
|
||||
busio_i2c_obj_t *self = m_new_obj(busio_i2c_obj_t);
|
||||
self->base.type = &busio_i2c_type;
|
||||
|
||||
assert_pin_free(DEFAULT_I2C_BUS_SDA);
|
||||
assert_pin_free(DEFAULT_I2C_BUS_SCL);
|
||||
common_hal_busio_i2c_construct(self, DEFAULT_I2C_BUS_SCL, DEFAULT_I2C_BUS_SDA, 400000, 0);
|
||||
i2c_singleton = (mp_obj_t)self;
|
||||
}
|
||||
return i2c_singleton;
|
||||
|
||||
}
|
||||
#endif
|
||||
MP_DEFINE_CONST_FUN_OBJ_0(board_i2c_obj, board_i2c);
|
||||
|
||||
#if !defined(DEFAULT_SPI_BUS_SCK) || !defined(DEFAULT_SPI_BUS_MISO) || !defined(DEFAULT_SPI_BUS_MOSI)
|
||||
STATIC mp_obj_t board_spi(void) {
|
||||
mp_raise_NotImplementedError(translate("No default SPI bus"));
|
||||
return NULL;
|
||||
}
|
||||
#else
|
||||
STATIC mp_obj_t spi_singleton = NULL;
|
||||
|
||||
STATIC mp_obj_t board_spi(void) {
|
||||
|
||||
if (spi_singleton == NULL) {
|
||||
busio_spi_obj_t *self = m_new_obj(busio_spi_obj_t);
|
||||
self->base.type = &busio_spi_type;
|
||||
assert_pin_free(DEFAULT_SPI_BUS_SCK);
|
||||
assert_pin_free(DEFAULT_SPI_BUS_MOSI);
|
||||
assert_pin_free(DEFAULT_SPI_BUS_MISO);
|
||||
const mcu_pin_obj_t* clock = MP_OBJ_TO_PTR(DEFAULT_SPI_BUS_SCK);
|
||||
const mcu_pin_obj_t* mosi = MP_OBJ_TO_PTR(DEFAULT_SPI_BUS_MOSI);
|
||||
const mcu_pin_obj_t* miso = MP_OBJ_TO_PTR(DEFAULT_SPI_BUS_MISO);
|
||||
common_hal_busio_spi_construct(self, clock, mosi, miso);
|
||||
spi_singleton = (mp_obj_t)self;
|
||||
}
|
||||
return spi_singleton;
|
||||
}
|
||||
#endif
|
||||
MP_DEFINE_CONST_FUN_OBJ_0(board_spi_obj, board_spi);
|
||||
|
||||
#if !defined(DEFAULT_UART_BUS_RX) || !defined(DEFAULT_UART_BUS_TX)
|
||||
STATIC mp_obj_t board_uart(void) {
|
||||
mp_raise_NotImplementedError(translate("No default UART bus"));
|
||||
return NULL;
|
||||
}
|
||||
#else
|
||||
STATIC mp_obj_t uart_singleton = NULL;
|
||||
|
||||
STATIC mp_obj_t board_uart(void) {
|
||||
if (uart_singleton == NULL) {
|
||||
busio_uart_obj_t *self = m_new_obj(busio_uart_obj_t);
|
||||
self->base.type = &busio_uart_type;
|
||||
|
||||
assert_pin_free(DEFAULT_UART_BUS_RX);
|
||||
assert_pin_free(DEFAULT_UART_BUS_TX);
|
||||
|
||||
const mcu_pin_obj_t* rx = MP_OBJ_TO_PTR(DEFAULT_UART_BUS_RX);
|
||||
const mcu_pin_obj_t* tx = MP_OBJ_TO_PTR(DEFAULT_UART_BUS_TX);
|
||||
|
||||
common_hal_busio_uart_construct(self, tx, rx, 9600, 8, PARITY_NONE, 1, 1000, 64);
|
||||
uart_singleton = (mp_obj_t)self;
|
||||
}
|
||||
return uart_singleton;
|
||||
}
|
||||
#endif
|
||||
MP_DEFINE_CONST_FUN_OBJ_0(board_uart_obj, board_uart);
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_P0_04) },
|
||||
@ -46,6 +46,10 @@ STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_P1_15) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_BLUE_LED), MP_ROM_PTR(&pin_P1_10) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
|
||||
};
|
||||
|
||||
MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table);
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_AIN0), MP_ROM_PTR(&pin_P0_02) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_AIN0), MP_ROM_PTR(&pin_P0_02) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_P0_03) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_P0_03) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_P0_03) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_P0_00), MP_ROM_PTR(&pin_P0_00) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_P0_02), MP_ROM_PTR(&pin_P0_02) },
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
#include "board_busses.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_P1_15) }, // D1/TX
|
||||
|
140
ports/nrf/common-hal/displayio/ParallelBus.c
Normal file
140
ports/nrf/common-hal/displayio/ParallelBus.c
Normal file
@ -0,0 +1,140 @@
|
||||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2018 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "shared-bindings/displayio/ParallelBus.h"
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#include "common-hal/microcontroller/Pin.h"
|
||||
#include "py/runtime.h"
|
||||
#include "shared-bindings/digitalio/DigitalInOut.h"
|
||||
|
||||
#include "tick.h"
|
||||
|
||||
void common_hal_displayio_parallelbus_construct(displayio_parallelbus_obj_t* self,
|
||||
const mcu_pin_obj_t* data0, const mcu_pin_obj_t* command, const mcu_pin_obj_t* chip_select,
|
||||
const mcu_pin_obj_t* write, const mcu_pin_obj_t* read, const mcu_pin_obj_t* reset) {
|
||||
|
||||
uint8_t data_pin = data0->number;
|
||||
if (data_pin % 8 != 0) {
|
||||
mp_raise_ValueError(translate("Data 0 pin must be byte aligned"));
|
||||
}
|
||||
for (uint8_t i = 0; i < 8; i++) {
|
||||
if (!pin_number_is_free(data_pin + i)) {
|
||||
mp_raise_ValueError_varg(translate("Bus pin %d is already in use"), i);
|
||||
}
|
||||
}
|
||||
NRF_GPIO_Type *g;
|
||||
uint8_t num_pins_in_port;
|
||||
if (data0->number < P0_PIN_NUM) {
|
||||
g = NRF_P0;
|
||||
num_pins_in_port = P0_PIN_NUM;
|
||||
} else {
|
||||
g = NRF_P1;
|
||||
num_pins_in_port = P1_PIN_NUM;
|
||||
}
|
||||
g->DIRSET = 0xff << (data_pin % num_pins_in_port);
|
||||
for (uint8_t i = 0; i < 8; i++) {
|
||||
g->PIN_CNF[data_pin + i] |= NRF_GPIO_PIN_S0S1 << GPIO_PIN_CNF_DRIVE_Pos;
|
||||
}
|
||||
self->bus = ((uint8_t*) &g->OUT) + (data0->number % num_pins_in_port / 8);
|
||||
|
||||
self->command.base.type = &digitalio_digitalinout_type;
|
||||
common_hal_digitalio_digitalinout_construct(&self->command, command);
|
||||
common_hal_digitalio_digitalinout_switch_to_output(&self->command, true, DRIVE_MODE_PUSH_PULL);
|
||||
|
||||
self->chip_select.base.type = &digitalio_digitalinout_type;
|
||||
common_hal_digitalio_digitalinout_construct(&self->chip_select, chip_select);
|
||||
common_hal_digitalio_digitalinout_switch_to_output(&self->chip_select, true, DRIVE_MODE_PUSH_PULL);
|
||||
|
||||
self->reset.base.type = &digitalio_digitalinout_type;
|
||||
common_hal_digitalio_digitalinout_construct(&self->reset, reset);
|
||||
common_hal_digitalio_digitalinout_switch_to_output(&self->reset, true, DRIVE_MODE_PUSH_PULL);
|
||||
|
||||
self->write.base.type = &digitalio_digitalinout_type;
|
||||
common_hal_digitalio_digitalinout_construct(&self->write, write);
|
||||
common_hal_digitalio_digitalinout_switch_to_output(&self->write, true, DRIVE_MODE_PUSH_PULL);
|
||||
|
||||
self->read.base.type = &digitalio_digitalinout_type;
|
||||
common_hal_digitalio_digitalinout_construct(&self->read, read);
|
||||
common_hal_digitalio_digitalinout_switch_to_output(&self->read, true, DRIVE_MODE_PUSH_PULL);
|
||||
|
||||
self->data0_pin = data_pin;
|
||||
uint8_t num_pins_in_write_port;
|
||||
if (data0->number < P0_PIN_NUM) {
|
||||
self->write_group = NRF_P0;
|
||||
num_pins_in_write_port = P0_PIN_NUM;
|
||||
} else {
|
||||
self->write_group = NRF_P1;
|
||||
num_pins_in_write_port = P1_PIN_NUM;
|
||||
}
|
||||
self->write_mask = 1 << (write->number % num_pins_in_write_port);
|
||||
|
||||
never_reset_pin_number(command->number);
|
||||
never_reset_pin_number(chip_select->number);
|
||||
never_reset_pin_number(write->number);
|
||||
never_reset_pin_number(read->number);
|
||||
never_reset_pin_number(reset->number);
|
||||
for (uint8_t i = 0; i < 8; i++) {
|
||||
never_reset_pin_number(data_pin + i);
|
||||
}
|
||||
}
|
||||
|
||||
void common_hal_displayio_parallelbus_deinit(displayio_parallelbus_obj_t* self) {
|
||||
for (uint8_t i = 0; i < 8; i++) {
|
||||
reset_pin_number(self->data0_pin + i);
|
||||
}
|
||||
|
||||
reset_pin_number(self->command.pin->number);
|
||||
reset_pin_number(self->chip_select.pin->number);
|
||||
reset_pin_number(self->write.pin->number);
|
||||
reset_pin_number(self->read.pin->number);
|
||||
reset_pin_number(self->reset.pin->number);
|
||||
}
|
||||
|
||||
bool common_hal_displayio_parallelbus_begin_transaction(mp_obj_t obj) {
|
||||
displayio_parallelbus_obj_t* self = MP_OBJ_TO_PTR(obj);
|
||||
common_hal_digitalio_digitalinout_set_value(&self->chip_select, false);
|
||||
return true;
|
||||
}
|
||||
|
||||
void common_hal_displayio_parallelbus_send(mp_obj_t obj, bool command, uint8_t *data, uint32_t data_length) {
|
||||
displayio_parallelbus_obj_t* self = MP_OBJ_TO_PTR(obj);
|
||||
common_hal_digitalio_digitalinout_set_value(&self->command, !command);
|
||||
uint32_t* clear_write = (uint32_t*) &self->write_group->OUTCLR;
|
||||
uint32_t* set_write = (uint32_t*) &self->write_group->OUTSET;
|
||||
uint32_t mask = self->write_mask;
|
||||
for (uint32_t i = 0; i < data_length; i++) {
|
||||
*clear_write = mask;
|
||||
*self->bus = data[i];
|
||||
*set_write = mask;
|
||||
}
|
||||
}
|
||||
|
||||
void common_hal_displayio_parallelbus_end_transaction(mp_obj_t obj) {
|
||||
displayio_parallelbus_obj_t* self = MP_OBJ_TO_PTR(obj);
|
||||
common_hal_digitalio_digitalinout_set_value(&self->chip_select, true);
|
||||
}
|
@ -3,7 +3,7 @@
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2018 Scott Shawcroft for Adafruit Industries
|
||||
* Copyright (c) 2019 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
@ -24,16 +24,22 @@
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef MICROPY_INCLUDED_NRF_BOARD_BUSSES_H
|
||||
#define MICROPY_INCLUDED_NRF_BOARD_BUSSES_H
|
||||
#ifndef MICROPY_INCLUDED_NRF_COMMON_HAL_DISPLAYIO_PARALLELBUS_H
|
||||
#define MICROPY_INCLUDED_NRF_COMMON_HAL_DISPLAYIO_PARALLELBUS_H
|
||||
|
||||
void board_i2c(void);
|
||||
extern mp_obj_fun_builtin_fixed_t board_i2c_obj;
|
||||
#include "common-hal/digitalio/DigitalInOut.h"
|
||||
|
||||
void board_spi(void);
|
||||
extern mp_obj_fun_builtin_fixed_t board_spi_obj;
|
||||
typedef struct {
|
||||
mp_obj_base_t base;
|
||||
uint8_t* bus;
|
||||
digitalio_digitalinout_obj_t command;
|
||||
digitalio_digitalinout_obj_t chip_select;
|
||||
digitalio_digitalinout_obj_t reset;
|
||||
digitalio_digitalinout_obj_t write;
|
||||
digitalio_digitalinout_obj_t read;
|
||||
uint8_t data0_pin;
|
||||
NRF_GPIO_Type* write_group;
|
||||
uint32_t write_mask;
|
||||
} displayio_parallelbus_obj_t;
|
||||
|
||||
void board_uart(void);
|
||||
extern mp_obj_fun_builtin_fixed_t board_uart_obj;
|
||||
|
||||
#endif // MICROPY_INCLUDED_NRF_BOARD_BUSSES_H
|
||||
#endif // MICROPY_INCLUDED_NRF_COMMON_HAL_DISPLAYIO_PARALLELBUS_H
|
@ -53,7 +53,7 @@ void reset_all_pins(void) {
|
||||
}
|
||||
|
||||
for (uint32_t pin = 0; pin < NUMBER_OF_PINS; ++pin) {
|
||||
if (!(never_reset_pins[nrf_pin_port(pin)] & (1 << nrf_relative_pin_number(pin)))) {
|
||||
if ((never_reset_pins[nrf_pin_port(pin)] & (1 << nrf_relative_pin_number(pin))) != 0) {
|
||||
continue;
|
||||
}
|
||||
nrf_gpio_cfg_default(pin);
|
||||
@ -142,6 +142,11 @@ void claim_pin(const mcu_pin_obj_t* pin) {
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
bool pin_number_is_free(uint8_t pin_number) {
|
||||
return !(claimed_pins[nrf_pin_port(pin_number)] & (1 << nrf_relative_pin_number(pin_number)));
|
||||
}
|
||||
|
||||
bool common_hal_mcu_pin_is_free(const mcu_pin_obj_t *pin) {
|
||||
#ifdef MICROPY_HW_NEOPIXEL
|
||||
if (pin == MICROPY_HW_NEOPIXEL) {
|
||||
@ -163,5 +168,5 @@ bool common_hal_mcu_pin_is_free(const mcu_pin_obj_t *pin) {
|
||||
}
|
||||
#endif
|
||||
|
||||
return !(claimed_pins[nrf_pin_port(pin->number)] & (1 << nrf_relative_pin_number(pin->number)));
|
||||
return pin_number_is_free(pin->number);
|
||||
}
|
||||
|
@ -44,6 +44,7 @@ void reset_all_pins(void);
|
||||
// need to store a full pointer.
|
||||
void reset_pin_number(uint8_t pin);
|
||||
void claim_pin(const mcu_pin_obj_t* pin);
|
||||
bool pin_number_is_free(uint8_t pin_number);
|
||||
void never_reset_pin_number(uint8_t pin_number);
|
||||
|
||||
// Lower 5 bits of a pin number are the pin number in a port.
|
||||
|
@ -163,6 +163,7 @@ extern const struct _mp_obj_module_t microcontroller_module;
|
||||
extern const struct _mp_obj_module_t bitbangio_module;
|
||||
extern const struct _mp_obj_module_t analogio_module;
|
||||
extern const struct _mp_obj_module_t digitalio_module;
|
||||
extern const struct _mp_obj_module_t displayio_module;
|
||||
extern const struct _mp_obj_module_t pulseio_module;
|
||||
extern const struct _mp_obj_module_t busio_module;
|
||||
extern const struct _mp_obj_module_t board_module;
|
||||
@ -195,6 +196,7 @@ extern const struct _mp_obj_module_t bleio_module;
|
||||
{ MP_OBJ_NEW_QSTR (MP_QSTR_busio ), (mp_obj_t)&busio_module }, \
|
||||
{ MP_OBJ_NEW_QSTR (MP_QSTR_analogio ), (mp_obj_t)&analogio_module }, \
|
||||
{ MP_OBJ_NEW_QSTR (MP_QSTR_digitalio ), (mp_obj_t)&digitalio_module }, \
|
||||
{ MP_OBJ_NEW_QSTR (MP_QSTR_displayio ), (mp_obj_t)&displayio_module }, \
|
||||
{ MP_OBJ_NEW_QSTR (MP_QSTR_pulseio ), (mp_obj_t)&pulseio_module }, \
|
||||
{ MP_OBJ_NEW_QSTR (MP_QSTR_microcontroller ), (mp_obj_t)µcontroller_module }, \
|
||||
{ MP_OBJ_NEW_QSTR (MP_QSTR_neopixel_write ), (mp_obj_t)&neopixel_write_module }, \
|
||||
@ -235,5 +237,7 @@ void run_background_tasks(void);
|
||||
|
||||
//#define CIRCUITPY_BOOT_OUTPUT_FILE "/boot_out.txt"
|
||||
#define CIRCUITPY_DEFAULT_STACK_SIZE 4096
|
||||
#define CIRCUITPY_DISPLAYIO (1)
|
||||
#define CIRCUITPY_DISPLAY_LIMIT (3)
|
||||
|
||||
#endif
|
||||
|
@ -154,6 +154,14 @@ SRC_C = \
|
||||
supervisor/shared/translate.c \
|
||||
$(SRC_MOD)
|
||||
|
||||
PY_EXTMOD_O_BASENAME += \
|
||||
extmod/machine_mem.o \
|
||||
extmod/machine_pinbase.o \
|
||||
extmod/machine_signal.o \
|
||||
extmod/machine_pulse.o \
|
||||
extmod/machine_i2c.o \
|
||||
extmod/machine_spi.o
|
||||
|
||||
LIB_SRC_C = $(addprefix lib/,\
|
||||
$(LIB_SRC_C_EXTRA) \
|
||||
timeutils/timeutils.c \
|
||||
|
@ -205,9 +205,9 @@ STATIC mp_obj_t fdfile_open(const mp_obj_type_t *type, mp_arg_val_t *args) {
|
||||
return MP_OBJ_FROM_PTR(o);
|
||||
}
|
||||
|
||||
STATIC mp_obj_t fdfile_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
STATIC mp_obj_t fdfile_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
mp_arg_val_t arg_vals[FILE_OPEN_NUM_ARGS];
|
||||
mp_arg_parse_all_kw_array(n_args, n_kw, args, FILE_OPEN_NUM_ARGS, file_open_args, arg_vals);
|
||||
mp_arg_parse_all(n_args, args, kw_args, FILE_OPEN_NUM_ARGS, file_open_args, arg_vals);
|
||||
return fdfile_open(type, arg_vals);
|
||||
}
|
||||
|
||||
|
@ -304,9 +304,9 @@ STATIC mp_obj_t ffimod_addr(mp_obj_t self_in, mp_obj_t symname_in) {
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_2(ffimod_addr_obj, ffimod_addr);
|
||||
|
||||
STATIC mp_obj_t ffimod_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
STATIC mp_obj_t ffimod_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
(void)n_args;
|
||||
(void)n_kw;
|
||||
(void)kw_args;
|
||||
|
||||
const char *fname = NULL;
|
||||
if (args[0] != mp_const_none) {
|
||||
@ -481,7 +481,7 @@ STATIC const mp_obj_type_t opaque_type = {
|
||||
*/
|
||||
|
||||
STATIC mp_obj_t mod_ffi_open(size_t n_args, const mp_obj_t *args) {
|
||||
return ffimod_make_new(&ffimod_type, n_args, 0, args);
|
||||
return ffimod_make_new(&ffimod_type, n_args, args, NULL);
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(mod_ffi_open_obj, 1, 2, mod_ffi_open);
|
||||
|
||||
|
@ -325,9 +325,9 @@ STATIC mp_obj_t socket_makefile(size_t n_args, const mp_obj_t *args) {
|
||||
}
|
||||
STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(socket_makefile_obj, 1, 3, socket_makefile);
|
||||
|
||||
STATIC mp_obj_t socket_make_new(const mp_obj_type_t *type_in, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
STATIC mp_obj_t socket_make_new(const mp_obj_type_t *type_in, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
(void)type_in;
|
||||
(void)n_kw;
|
||||
(void)kw_args;
|
||||
|
||||
int family = AF_INET;
|
||||
int type = SOCK_STREAM;
|
||||
|
@ -46,11 +46,11 @@ STATIC const mp_obj_type_t mp_type_iobase;
|
||||
|
||||
STATIC mp_obj_base_t iobase_singleton = {&mp_type_iobase};
|
||||
|
||||
STATIC mp_obj_t iobase_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
STATIC mp_obj_t iobase_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
(void)type;
|
||||
(void)n_args;
|
||||
(void)n_kw;
|
||||
(void)args;
|
||||
(void)kw_args;
|
||||
return MP_OBJ_FROM_PTR(&iobase_singleton);
|
||||
}
|
||||
|
||||
@ -113,8 +113,8 @@ typedef struct _mp_obj_bufwriter_t {
|
||||
byte buf[0];
|
||||
} mp_obj_bufwriter_t;
|
||||
|
||||
STATIC mp_obj_t bufwriter_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
mp_arg_check_num(n_args, n_kw, 2, 2, false);
|
||||
STATIC mp_obj_t bufwriter_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
mp_arg_check_num(n_args, kw_args, 2, 2, false);
|
||||
size_t alloc = mp_obj_get_int(args[1]);
|
||||
mp_obj_bufwriter_t *o = m_new_obj_var(mp_obj_bufwriter_t, byte, alloc);
|
||||
o->base.type = type;
|
||||
|
@ -44,8 +44,8 @@ typedef struct _mp_obj_deque_t {
|
||||
#define FLAG_CHECK_OVERFLOW 1
|
||||
} mp_obj_deque_t;
|
||||
|
||||
STATIC mp_obj_t deque_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
mp_arg_check_num(n_args, n_kw, 2, 3, false);
|
||||
STATIC mp_obj_t deque_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
mp_arg_check_num(n_args, kw_args, 2, 3, false);
|
||||
|
||||
/* Initialization from existing sequence is not supported, so an empty
|
||||
tuple must be passed as such. */
|
||||
|
@ -91,7 +91,10 @@ STATIC mp_obj_t dict_make_new(const mp_obj_type_t *type, size_t n_args, const mp
|
||||
}
|
||||
#endif
|
||||
if (n_args > 0 || kw_args != NULL) {
|
||||
mp_obj_t args2[2] = {dict_out, args[0]}; // args[0] is always valid, even if it's not a positional arg
|
||||
mp_obj_t args2[2] = {dict_out, NULL}; // args[0] is always valid, even if it's not a positional arg
|
||||
if (n_args > 0) {
|
||||
args2[1] = args[0];
|
||||
}
|
||||
dict_update(n_args + 1, args2, kw_args); // dict_update will check that n_args + 1 == 1 or 2
|
||||
}
|
||||
return dict_out;
|
||||
|
@ -436,7 +436,7 @@ typedef mp_uint_t (*viper_fun_4_t)(mp_uint_t, mp_uint_t, mp_uint_t, mp_uint_t);
|
||||
STATIC mp_obj_t fun_viper_call(mp_obj_t self_in, size_t n_args, size_t n_kw, const mp_obj_t *args) {
|
||||
mp_obj_fun_viper_t *self = self_in;
|
||||
|
||||
mp_arg_check_num(n_args, n_kw, self->n_args, self->n_args, false);
|
||||
mp_arg_check_num_kw_array(n_args, n_kw, self->n_args, self->n_args, false);
|
||||
|
||||
void *fun = MICROPY_MAKE_POINTER_CALLABLE(self->fun_data);
|
||||
|
||||
|
@ -96,7 +96,10 @@ void namedtuple_attr(mp_obj_t self_in, qstr attr, mp_obj_t *dest) {
|
||||
mp_obj_t namedtuple_make_new(const mp_obj_type_t *type_in, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
const mp_obj_namedtuple_type_t *type = (const mp_obj_namedtuple_type_t*)type_in;
|
||||
size_t num_fields = type->n_fields;
|
||||
size_t n_kw = kw_args->used;
|
||||
size_t n_kw = 0;
|
||||
if (kw_args != NULL) {
|
||||
n_kw = kw_args->used;
|
||||
}
|
||||
if (n_args + n_kw != num_fields) {
|
||||
if (MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE) {
|
||||
mp_arg_error_terse_mismatch();
|
||||
|
181
shared-bindings/displayio/Display.c
Normal file
181
shared-bindings/displayio/Display.c
Normal file
@ -0,0 +1,181 @@
|
||||
/*
|
||||
* This file is part of the Micro Python project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2018 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "shared-bindings/displayio/Display.h"
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#include "lib/utils/context_manager_helpers.h"
|
||||
#include "py/binary.h"
|
||||
#include "py/objproperty.h"
|
||||
#include "py/runtime.h"
|
||||
#include "shared-bindings/displayio/Group.h"
|
||||
#include "shared-bindings/microcontroller/Pin.h"
|
||||
#include "shared-bindings/util.h"
|
||||
#include "shared-module/displayio/__init__.h"
|
||||
#include "supervisor/shared/translate.h"
|
||||
|
||||
//| .. currentmodule:: displayio
|
||||
//|
|
||||
//| :class:`Display` -- Manage updating a display over a display bus
|
||||
//| ==========================================================================
|
||||
//|
|
||||
//| This initializes a display and connects it into CircuitPython. Unlike other
|
||||
//| objects in CircuitPython, Display objects live until `displayio.release_displays()`
|
||||
//| is called. This is done so that CircuitPython can use the display itself.
|
||||
//|
|
||||
//| .. warning:: This will be changed before 4.0.0. Consider it very experimental.
|
||||
//|
|
||||
//| .. class:: Display(display_bus, init_sequence, *, width, height, colstart=0, rowstart=0, color_depth=16, set_column_command=0x2a, set_row_command=0x2b, write_ram_command=0x2c)
|
||||
//|
|
||||
//| Create a Display object on the given display bus (`displayio.FourWire` or `displayio.ParallelBus`).
|
||||
//|
|
||||
//| The ``init_sequence`` is bitbacked to minimize the ram impact. Every command begins with a
|
||||
//| command byte followed by a byte to determine the parameter count and if a delay is need after.
|
||||
//| When the top bit of the second byte is 1, the next byte will be the delay time in milliseconds.
|
||||
//| The remaining 7 bits are the parameter count excluding any delay byte. The third through final
|
||||
//| bytes are the remaining command parameters. The next byte will begin a new command definition.
|
||||
//| Here is a portion of ILI9341 init code:
|
||||
//|
|
||||
//| .. code-block:: python
|
||||
//|
|
||||
//| init_sequence = (b"\xe1\x0f\x00\x0E\x14\x03\x11\x07\x31\xC1\x48\x08\x0F\x0C\x31\x36\x0F" # Set Gamma
|
||||
//| b"\x11\x80\x78"# Exit Sleep then delay 0x78 (120ms)
|
||||
//| b"\x29\x80\x78"# Display on then delay 0x78 (120ms)
|
||||
//| )
|
||||
//| display = displayio.Display(display_bus, init_sequence, width=320, height=240)
|
||||
//|
|
||||
//| The first command is 0xe1 with 15 (0xf) parameters following. The second and third are 0x11 and
|
||||
//| 0x29 respectively with delays (0x80) of 120ms (0x78) and no parameters. Multiple byte literals
|
||||
//| (b"") are merged together on load. The parens are needed to allow byte literals on subsequent
|
||||
//| lines.
|
||||
//|
|
||||
//| :param displayio.FourWire or displayio.ParallelBus display_bus: The bus that the display is connected to
|
||||
//| :param buffer init_sequence: Byte-packed initialization sequence.
|
||||
//| :param int width: Width in pixels
|
||||
//| :param int height: Height in pixels
|
||||
//| :param int colstart: The index if the first visible column
|
||||
//| :param int rowstart: The index if the first visible row
|
||||
//| :param int color_depth: The number of bits of color per pixel transmitted. (Some displays
|
||||
//| support 18 bit but 16 is easier to transmit. The last bit is extrapolated.)
|
||||
//| :param int set_column_command: Command used to set the start and end columns to update
|
||||
//| :param int set_row_command: Command used so set the start and end rows to update
|
||||
//| :param int write_ram_command: Command used to write pixels values into the update region
|
||||
//|
|
||||
STATIC mp_obj_t displayio_display_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {
|
||||
enum { ARG_display_bus, ARG_init_sequence, ARG_width, ARG_height, ARG_colstart, ARG_rowstart, ARG_color_depth, ARG_set_column_command, ARG_set_row_command, ARG_write_ram_command };
|
||||
static const mp_arg_t allowed_args[] = {
|
||||
{ MP_QSTR_display_bus, MP_ARG_REQUIRED | MP_ARG_OBJ },
|
||||
{ MP_QSTR_init_sequence, MP_ARG_REQUIRED | MP_ARG_OBJ },
|
||||
{ MP_QSTR_width, MP_ARG_INT | MP_ARG_KW_ONLY | MP_ARG_REQUIRED, },
|
||||
{ MP_QSTR_height, MP_ARG_INT | MP_ARG_KW_ONLY | MP_ARG_REQUIRED, },
|
||||
{ MP_QSTR_colstart, MP_ARG_INT | MP_ARG_KW_ONLY, {.u_int = 0} },
|
||||
{ MP_QSTR_rowstart, MP_ARG_INT | MP_ARG_KW_ONLY, {.u_int = 0} },
|
||||
{ MP_QSTR_color_depth, MP_ARG_INT | MP_ARG_KW_ONLY, {.u_int = 16} },
|
||||
{ MP_QSTR_set_column_command, MP_ARG_INT | MP_ARG_KW_ONLY, {.u_int = 0x2a} },
|
||||
{ MP_QSTR_set_row_command, MP_ARG_INT | MP_ARG_KW_ONLY, {.u_int = 0x2b} },
|
||||
{ MP_QSTR_write_ram_command, MP_ARG_INT | MP_ARG_KW_ONLY, {.u_int = 0x2c} },
|
||||
};
|
||||
mp_arg_val_t args[MP_ARRAY_SIZE(allowed_args)];
|
||||
mp_arg_parse_all(n_args, pos_args, kw_args, MP_ARRAY_SIZE(allowed_args), allowed_args, args);
|
||||
|
||||
mp_obj_t display_bus = args[ARG_display_bus].u_obj;
|
||||
|
||||
mp_buffer_info_t bufinfo;
|
||||
mp_get_buffer_raise(args[ARG_init_sequence].u_obj, &bufinfo, MP_BUFFER_READ);
|
||||
|
||||
displayio_display_obj_t *self = NULL;
|
||||
for (uint8_t i = 0; i < CIRCUITPY_DISPLAY_LIMIT; i++) {
|
||||
if (displays[i].display.base.type == NULL ||
|
||||
displays[i].display.base.type == &mp_type_NoneType) {
|
||||
self = &displays[i].display;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (self == NULL) {
|
||||
mp_raise_RuntimeError(translate("Too many displays"));
|
||||
}
|
||||
self->base.type = &displayio_display_type;
|
||||
common_hal_displayio_display_construct(self,
|
||||
display_bus, args[ARG_width].u_int, args[ARG_height].u_int, args[ARG_colstart].u_int, args[ARG_rowstart].u_int,
|
||||
args[ARG_color_depth].u_int, args[ARG_set_column_command].u_int, args[ARG_set_row_command].u_int,
|
||||
args[ARG_write_ram_command].u_int, bufinfo.buf, bufinfo.len);
|
||||
|
||||
return self;
|
||||
}
|
||||
|
||||
//| .. method:: show(group)
|
||||
//|
|
||||
//| Switches to displaying the given group of layers.
|
||||
//|
|
||||
STATIC mp_obj_t displayio_display_obj_show(mp_obj_t self_in, mp_obj_t group_in) {
|
||||
displayio_display_obj_t *self = MP_OBJ_TO_PTR(self_in);
|
||||
mp_obj_t native_layer = mp_instance_cast_to_native_base(group_in, &displayio_group_type);
|
||||
if (native_layer == MP_OBJ_NULL) {
|
||||
mp_raise_ValueError(translate("Must be a Group subclass."));
|
||||
}
|
||||
displayio_group_t* group = MP_OBJ_TO_PTR(native_layer);
|
||||
common_hal_displayio_display_show(self, group);
|
||||
return mp_const_none;
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_2(displayio_display_show_obj, displayio_display_obj_show);
|
||||
|
||||
//| .. method:: refresh_soon()
|
||||
//|
|
||||
//| Queues up a display refresh that happens in the background.
|
||||
//|
|
||||
STATIC mp_obj_t displayio_display_obj_refresh_soon(mp_obj_t self_in) {
|
||||
displayio_display_obj_t *self = MP_OBJ_TO_PTR(self_in);
|
||||
common_hal_displayio_display_refresh_soon(self);
|
||||
return mp_const_none;
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_1(displayio_display_refresh_soon_obj, displayio_display_obj_refresh_soon);
|
||||
|
||||
//| .. method:: wait_for_frame()
|
||||
//|
|
||||
//| Waits until the next frame has been transmitted to the display unless the wait count is
|
||||
//| behind the rendered frames. In that case, this will return immediately with the wait count.
|
||||
//|
|
||||
STATIC mp_obj_t displayio_display_obj_wait_for_frame(mp_obj_t self_in) {
|
||||
displayio_display_obj_t *self = MP_OBJ_TO_PTR(self_in);
|
||||
return MP_OBJ_NEW_SMALL_INT(common_hal_displayio_display_wait_for_frame(self));
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_1(displayio_display_wait_for_frame_obj, displayio_display_obj_wait_for_frame);
|
||||
|
||||
|
||||
STATIC const mp_rom_map_elem_t displayio_display_locals_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_show), MP_ROM_PTR(&displayio_display_show_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_refresh_soon), MP_ROM_PTR(&displayio_display_refresh_soon_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_wait_for_frame), MP_ROM_PTR(&displayio_display_wait_for_frame_obj) },
|
||||
};
|
||||
STATIC MP_DEFINE_CONST_DICT(displayio_display_locals_dict, displayio_display_locals_dict_table);
|
||||
|
||||
const mp_obj_type_t displayio_display_type = {
|
||||
{ &mp_type_type },
|
||||
.name = MP_QSTR_Display,
|
||||
.make_new = displayio_display_make_new,
|
||||
.locals_dict = (mp_obj_dict_t*)&displayio_display_locals_dict,
|
||||
};
|
59
shared-bindings/displayio/Display.h
Normal file
59
shared-bindings/displayio/Display.h
Normal file
@ -0,0 +1,59 @@
|
||||
/*
|
||||
* This file is part of the Micro Python project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2017, 2018 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef MICROPY_INCLUDED_SHARED_BINDINGS_DISPLAYBUSIO_DISPLAY_H
|
||||
#define MICROPY_INCLUDED_SHARED_BINDINGS_DISPLAYBUSIO_DISPLAY_H
|
||||
|
||||
#include "common-hal/microcontroller/Pin.h"
|
||||
|
||||
#include "shared-module/displayio/Display.h"
|
||||
#include "shared-module/displayio/Group.h"
|
||||
|
||||
extern const mp_obj_type_t displayio_display_type;
|
||||
|
||||
#define DELAY 0x80
|
||||
|
||||
void common_hal_displayio_display_construct(displayio_display_obj_t* self,
|
||||
mp_obj_t bus, uint16_t width, uint16_t height,
|
||||
int16_t colstart, int16_t rowstart, uint16_t color_depth,
|
||||
uint8_t set_column_command, uint8_t set_row_command, uint8_t write_ram_command,
|
||||
uint8_t* init_sequence, uint16_t init_sequence_len);
|
||||
|
||||
int32_t common_hal_displayio_display_wait_for_frame(displayio_display_obj_t* self);
|
||||
|
||||
void common_hal_displayio_display_show(displayio_display_obj_t* self, displayio_group_t* root_group);
|
||||
|
||||
void common_hal_displayio_display_refresh_soon(displayio_display_obj_t* self);
|
||||
|
||||
void displayio_display_start_region_update(displayio_display_obj_t* self, uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1);
|
||||
void displayio_display_finish_region_update(displayio_display_obj_t* self);
|
||||
bool displayio_display_frame_queued(displayio_display_obj_t* self);
|
||||
|
||||
bool displayio_display_refresh_queued(displayio_display_obj_t* self);
|
||||
void displayio_display_finish_refresh(displayio_display_obj_t* self);
|
||||
bool displayio_display_send_pixels(displayio_display_obj_t* self, uint32_t* pixels, uint32_t length);
|
||||
|
||||
#endif // MICROPY_INCLUDED_SHARED_BINDINGS_DISPLAYBUSIO_DISPLAY_H
|
@ -3,7 +3,7 @@
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2018 Scott Shawcroft for Adafruit Industries
|
||||
* Copyright (c) 2018-2019 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
@ -35,6 +35,7 @@
|
||||
#include "shared-bindings/displayio/Group.h"
|
||||
#include "shared-bindings/microcontroller/Pin.h"
|
||||
#include "shared-bindings/util.h"
|
||||
#include "shared-module/displayio/__init__.h"
|
||||
#include "supervisor/shared/translate.h"
|
||||
|
||||
//| .. currentmodule:: displayio
|
||||
@ -47,14 +48,54 @@
|
||||
//|
|
||||
//| .. warning:: This will be changed before 4.0.0. Consider it very experimental.
|
||||
//|
|
||||
//| .. class:: FourWire(*, clock, data, command, chip_select, width, height, colstart, rowstart,
|
||||
//| color_depth, set_column_command, set_row_command, write_ram_command)
|
||||
//| .. class:: FourWire(spi_bus, *, command, chip_select, reset)
|
||||
//|
|
||||
//| Create a FourWire object associated with the given pins.
|
||||
//|
|
||||
//| :param busio.SPI spi_bus: The SPI bus that make up the clock and data lines
|
||||
//| :param microcontroller.Pin command: Data or command pin
|
||||
//| :param microcontroller.Pin chip_select: Chip select pin
|
||||
//| :param microcontroller.Pin reset: Reset pin
|
||||
//|
|
||||
STATIC mp_obj_t displayio_fourwire_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {
|
||||
mp_raise_NotImplementedError(translate("displayio is a work in progress"));
|
||||
return mp_const_none;
|
||||
enum { ARG_spi_bus, ARG_command, ARG_chip_select, ARG_reset };
|
||||
static const mp_arg_t allowed_args[] = {
|
||||
{ MP_QSTR_spi_bus, MP_ARG_REQUIRED | MP_ARG_OBJ },
|
||||
{ MP_QSTR_command, MP_ARG_OBJ | MP_ARG_KW_ONLY | MP_ARG_REQUIRED },
|
||||
{ MP_QSTR_chip_select, MP_ARG_OBJ | MP_ARG_KW_ONLY | MP_ARG_REQUIRED },
|
||||
{ MP_QSTR_reset, MP_ARG_OBJ | MP_ARG_KW_ONLY, {.u_obj = mp_const_none} },
|
||||
};
|
||||
mp_arg_val_t args[MP_ARRAY_SIZE(allowed_args)];
|
||||
mp_arg_parse_all(n_args, pos_args, kw_args, MP_ARRAY_SIZE(allowed_args), allowed_args, args);
|
||||
|
||||
mp_obj_t command = args[ARG_command].u_obj;
|
||||
mp_obj_t chip_select = args[ARG_chip_select].u_obj;
|
||||
assert_pin_free(command);
|
||||
assert_pin_free(chip_select);
|
||||
mp_obj_t reset = args[ARG_reset].u_obj;
|
||||
if (reset != mp_const_none) {
|
||||
assert_pin_free(reset);
|
||||
} else {
|
||||
reset = NULL;
|
||||
}
|
||||
|
||||
displayio_fourwire_obj_t* self = NULL;
|
||||
mp_obj_t spi = args[ARG_spi_bus].u_obj;
|
||||
for (uint8_t i = 0; i < CIRCUITPY_DISPLAY_LIMIT; i++) {
|
||||
if (displays[i].fourwire_bus.base.type == NULL ||
|
||||
displays[i].fourwire_bus.base.type == &mp_type_NoneType) {
|
||||
self = &displays[i].fourwire_bus;
|
||||
self->base.type = &displayio_fourwire_type;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (self == NULL) {
|
||||
mp_raise_RuntimeError(translate("Too many display busses"));
|
||||
}
|
||||
|
||||
common_hal_displayio_fourwire_construct(self,
|
||||
MP_OBJ_TO_PTR(spi), command, chip_select, reset);
|
||||
return self;
|
||||
}
|
||||
|
||||
|
||||
@ -68,50 +109,8 @@ STATIC mp_obj_t displayio_fourwire_obj_send(size_t n_args, const mp_obj_t *pos_a
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_KW(displayio_fourwire_send_obj, 1, displayio_fourwire_obj_send);
|
||||
|
||||
//| .. method:: show(group)
|
||||
//|
|
||||
//| Switches do displaying the given group of elements.
|
||||
//|
|
||||
STATIC mp_obj_t displayio_fourwire_obj_show(mp_obj_t self_in, mp_obj_t group_in) {
|
||||
displayio_fourwire_obj_t *self = MP_OBJ_TO_PTR(self_in);
|
||||
mp_obj_t native_layer = mp_instance_cast_to_native_base(group_in, &displayio_group_type);
|
||||
if (native_layer == MP_OBJ_NULL) {
|
||||
mp_raise_ValueError(translate("Must be a Group subclass."));
|
||||
}
|
||||
displayio_group_t* group = MP_OBJ_TO_PTR(native_layer);
|
||||
common_hal_displayio_fourwire_show(self, group);
|
||||
return mp_const_none;
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_2(displayio_fourwire_show_obj, displayio_fourwire_obj_show);
|
||||
|
||||
//| .. method:: refresh_soon()
|
||||
//|
|
||||
//| Queues up a display refresh that happens in the background.
|
||||
//|
|
||||
STATIC mp_obj_t displayio_fourwire_obj_refresh_soon(mp_obj_t self_in) {
|
||||
displayio_fourwire_obj_t *self = MP_OBJ_TO_PTR(self_in);
|
||||
common_hal_displayio_fourwire_refresh_soon(self);
|
||||
return mp_const_none;
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_1(displayio_fourwire_refresh_soon_obj, displayio_fourwire_obj_refresh_soon);
|
||||
|
||||
//| .. method:: wait_for_frame()
|
||||
//|
|
||||
//| Waits until the next frame has been transmitted to the display unless the wait count is
|
||||
//| behind the rendered frames. In that case, this will return immediately with the wait count.
|
||||
//|
|
||||
STATIC mp_obj_t displayio_fourwire_obj_wait_for_frame(mp_obj_t self_in) {
|
||||
displayio_fourwire_obj_t *self = MP_OBJ_TO_PTR(self_in);
|
||||
return MP_OBJ_NEW_SMALL_INT(common_hal_displayio_fourwire_wait_for_frame(self));
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_1(displayio_fourwire_wait_for_frame_obj, displayio_fourwire_obj_wait_for_frame);
|
||||
|
||||
|
||||
STATIC const mp_rom_map_elem_t displayio_fourwire_locals_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_send), MP_ROM_PTR(&displayio_fourwire_send_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_show), MP_ROM_PTR(&displayio_fourwire_show_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_refresh_soon), MP_ROM_PTR(&displayio_fourwire_refresh_soon_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_wait_for_frame), MP_ROM_PTR(&displayio_fourwire_wait_for_frame_obj) },
|
||||
};
|
||||
STATIC MP_DEFINE_CONST_DICT(displayio_fourwire_locals_dict, displayio_fourwire_locals_dict_table);
|
||||
|
||||
|
@ -27,39 +27,24 @@
|
||||
#ifndef MICROPY_INCLUDED_SHARED_BINDINGS_DISPLAYBUSIO_FOURWIRE_H
|
||||
#define MICROPY_INCLUDED_SHARED_BINDINGS_DISPLAYBUSIO_FOURWIRE_H
|
||||
|
||||
#include "common-hal/displayio/FourWire.h"
|
||||
#include "shared-module/displayio/FourWire.h"
|
||||
#include "common-hal/microcontroller/Pin.h"
|
||||
|
||||
#include "shared-module/displayio/Group.h"
|
||||
#include "supervisor/shared/board_busses.h"
|
||||
|
||||
extern const mp_obj_type_t displayio_fourwire_type;
|
||||
|
||||
// TODO(tannewt): Split this apart into FourWire and a Display object because the dimensions and
|
||||
// commands are also used for the parallel buses.
|
||||
void common_hal_displayio_fourwire_construct(displayio_fourwire_obj_t* self,
|
||||
const mcu_pin_obj_t* clock, const mcu_pin_obj_t* data, const mcu_pin_obj_t* command,
|
||||
const mcu_pin_obj_t* chip_select, const mcu_pin_obj_t* reset, uint16_t width, uint16_t height,
|
||||
int16_t colstart, int16_t rowstart, uint16_t color_depth,
|
||||
uint8_t set_column_command, uint8_t set_row_command, uint8_t write_ram_command);
|
||||
busio_spi_obj_t* spi, const mcu_pin_obj_t* command,
|
||||
const mcu_pin_obj_t* chip_select, const mcu_pin_obj_t* reset);
|
||||
|
||||
int32_t common_hal_displayio_fourwire_wait_for_frame(displayio_fourwire_obj_t* self);
|
||||
void common_hal_displayio_fourwire_deinit(displayio_fourwire_obj_t* self);
|
||||
|
||||
bool common_hal_displayio_fourwire_begin_transaction(displayio_fourwire_obj_t* self);
|
||||
bool common_hal_displayio_fourwire_begin_transaction(mp_obj_t self);
|
||||
|
||||
void common_hal_displayio_fourwire_send(displayio_fourwire_obj_t* self, bool command, uint8_t *data, uint32_t data_length);
|
||||
void common_hal_displayio_fourwire_send(mp_obj_t self, bool command, uint8_t *data, uint32_t data_length);
|
||||
|
||||
void common_hal_displayio_fourwire_end_transaction(displayio_fourwire_obj_t* self);
|
||||
|
||||
void common_hal_displayio_fourwire_show(displayio_fourwire_obj_t* self, displayio_group_t* root_group);
|
||||
|
||||
void common_hal_displayio_fourwire_refresh_soon(displayio_fourwire_obj_t* self);
|
||||
|
||||
void displayio_fourwire_start_region_update(displayio_fourwire_obj_t* self, uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1);
|
||||
void displayio_fourwire_finish_region_update(displayio_fourwire_obj_t* self);
|
||||
bool displayio_fourwire_frame_queued(displayio_fourwire_obj_t* self);
|
||||
|
||||
bool displayio_fourwire_refresh_queued(displayio_fourwire_obj_t* self);
|
||||
void displayio_fourwire_finish_refresh(displayio_fourwire_obj_t* self);
|
||||
bool displayio_fourwire_send_pixels(displayio_fourwire_obj_t* self, uint32_t* pixels, uint32_t length);
|
||||
void common_hal_displayio_fourwire_end_transaction(mp_obj_t self);
|
||||
|
||||
#endif // MICROPY_INCLUDED_SHARED_BINDINGS_DISPLAYBUSIO_FOURWIRE_H
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user