Merge remote-tracking branch 'upstream/master' into stm32-lsetimeout
This commit is contained in:
commit
248704b262
@ -1 +1 @@
|
||||
Subproject commit 1b8f461f6401d6418bba5c6ec0108375c2c1b62f
|
||||
Subproject commit 9f71088d2c32206c6f0495704ae0c040426d5764
|
@ -20,7 +20,7 @@ CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_ROTARYIO = 0
|
||||
CIRCUITPY_RTC = 0
|
||||
|
||||
CFLAGS_INLINE_LIMIT = 60
|
||||
CFLAGS_INLINE_LIMIT = 55
|
||||
SUPEROPT_GC = 0
|
||||
|
||||
# Include these Python libraries in firmware.
|
||||
|
@ -3,12 +3,15 @@ LONGINT_IMPL = MPZ
|
||||
INTERNAL_LIBM = 1
|
||||
USB_SERIAL_NUMBER_LENGTH = 24
|
||||
|
||||
ifeq ($(MCU_VARIANT),STM32F405xx)
|
||||
CIRCUITPY_FRAMEBUFFERIO = 1
|
||||
CIRCUITPY_RGBMATRIX = 1
|
||||
endif
|
||||
|
||||
ifeq ($(MCU_SERIES),F4)
|
||||
# Not yet implemented common-hal modules:
|
||||
CIRCUITPY_AUDIOBUSIO = 0
|
||||
CIRCUITPY_AUDIOIO = 0
|
||||
CIRCUITPY_FRAMEBUFFERIO = 1
|
||||
CIRCUITPY_RGBMATRIX = 1
|
||||
CIRCUITPY_ROTARYIO = 0
|
||||
CIRCUITPY_RTC = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
|
@ -53,36 +53,39 @@
|
||||
//| PixelBuf
|
||||
|
||||
|
||||
//| .. function:: wheel(n)
|
||||
//| .. function:: colorwheel(n)
|
||||
//|
|
||||
//| C implementation of the common wheel() function found in many examples.
|
||||
//| Returns the colorwheel RGB value as an integer value for n (usable in :py:class:`PixelBuf`, neopixel, and dotstar).
|
||||
//|
|
||||
//| .. function:: wheel(n)
|
||||
//| Use of wheel() is deprecated. Please use colorwheel().
|
||||
|
||||
STATIC mp_obj_t pixelbuf_wheel(mp_obj_t n) {
|
||||
STATIC mp_obj_t pixelbuf_colorwheel(mp_obj_t n) {
|
||||
return MP_OBJ_NEW_SMALL_INT(colorwheel(MP_OBJ_IS_SMALL_INT(n) ? MP_OBJ_SMALL_INT_VALUE(n) : mp_obj_float_get(n)));
|
||||
}
|
||||
STATIC MP_DEFINE_CONST_FUN_OBJ_1(pixelbuf_wheel_obj, pixelbuf_wheel);
|
||||
STATIC MP_DEFINE_CONST_FUN_OBJ_1(pixelbuf_colorwheel_obj, pixelbuf_colorwheel);
|
||||
|
||||
const int32_t colorwheel(float pos) {
|
||||
if (pos > 255) {
|
||||
pos = pos - ((uint32_t)(pos / 256) * 256);
|
||||
}
|
||||
if (pos < 85)
|
||||
return (uint8_t)(pos * 3) << 16 | (uint8_t)(255 - (pos * 3)) << 8;
|
||||
return (uint8_t)(255 - (pos * 3)) << 16 | (uint8_t)(pos * 3) << 8;
|
||||
else if (pos < 170) {
|
||||
pos -= 85;
|
||||
return (uint8_t)(255 - (pos * 3)) << 16 | (uint8_t)(pos * 3);
|
||||
return (uint8_t)(255 - (pos * 3)) << 8 | (uint8_t)(pos * 3);
|
||||
} else {
|
||||
pos -= 170;
|
||||
return (uint8_t)(pos * 3) << 8 | (uint8_t)(255 - pos * 3);
|
||||
return (uint8_t)(pos * 3) << 16 | (uint8_t)(255 - (pos * 3));
|
||||
}
|
||||
}
|
||||
|
||||
STATIC const mp_rom_map_elem_t pixelbuf_module_globals_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR___name__), MP_ROM_QSTR(MP_QSTR__pixelbuf) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_PixelBuf), MP_ROM_PTR(&pixelbuf_pixelbuf_type) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_wheel), MP_ROM_PTR(&pixelbuf_wheel_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_wheel), MP_ROM_PTR(&pixelbuf_colorwheel_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_colorwheel), MP_ROM_PTR(&pixelbuf_colorwheel_obj) },
|
||||
};
|
||||
|
||||
STATIC MP_DEFINE_CONST_DICT(pixelbuf_module_globals, pixelbuf_module_globals_table);
|
||||
|
@ -65,7 +65,7 @@ STATIC mp_obj_t rtc_rtc_make_new(const mp_obj_type_t *type, size_t n_args, const
|
||||
//| import time
|
||||
//|
|
||||
//| r = rtc.RTC()
|
||||
//| r.datetime = rtctime.struct_time((2019, 5, 29, 15, 14, 15, 0, -1, -1))
|
||||
//| r.datetime = time.struct_time((2019, 5, 29, 15, 14, 15, 0, -1, -1))
|
||||
//|
|
||||
//|
|
||||
//| Once set, the RTC will automatically update this value as time passes. You can read this
|
||||
|
Loading…
Reference in New Issue
Block a user