various: Spelling fixes
This commit is contained in:
parent
e5e49bedcb
commit
ca16c38210
@ -138,7 +138,7 @@ If `WIPY_IP`, `WIPY_USER` or `WIPY_PWD` are omitted the default values (the ones
|
||||
## Regarding old revisions of the CC3200-LAUNCHXL
|
||||
|
||||
First silicon (pre-release) revisions of the CC3200 had issues with the ram blocks, and MicroPython cannot run
|
||||
there. Make sure to use a **v4.1 (or higer) LAUNCHXL board** when trying this port, otherwise it won't work.
|
||||
there. Make sure to use a **v4.1 (or higher) LAUNCHXL board** when trying this port, otherwise it won't work.
|
||||
|
||||
### Note regarding FileZilla
|
||||
|
||||
|
@ -69,7 +69,7 @@ Functions
|
||||
|
||||
Open a database from a random-access `stream` (like an open file). All
|
||||
other parameters are optional and keyword-only, and allow to tweak advanced
|
||||
paramters of the database operation (most users will not need them):
|
||||
parameters of the database operation (most users will not need them):
|
||||
|
||||
* `flags` - Currently unused.
|
||||
* `cachesize` - Suggested maximum memory cache size in bytes. For a
|
||||
|
@ -34,7 +34,7 @@ Methods
|
||||
|
||||
.. method:: SD.init(id=0, pins=('GP10', 'GP11', 'GP15'))
|
||||
|
||||
Enable the SD card. In order to initalize the card, give it a 3-tuple:
|
||||
Enable the SD card. In order to initialize the card, give it a 3-tuple:
|
||||
``(clk_pin, cmd_pin, dat0_pin)``.
|
||||
|
||||
.. method:: SD.deinit()
|
||||
|
@ -16,7 +16,7 @@ UART objects can be created and initialised using::
|
||||
uart = UART(1, 9600) # init with given baudrate
|
||||
uart.init(9600, bits=8, parity=None, stop=1) # init with given parameters
|
||||
|
||||
Supported paramters differ on a board:
|
||||
Supported parameters differ on a board:
|
||||
|
||||
Pyboard: Bits can be 7, 8 or 9. Stop can be 1 or 2. With `parity=None`,
|
||||
only 8 and 9 bits are supported. With parity enabled, only 7 and 8 bits
|
||||
|
@ -15,11 +15,11 @@ be implemented:
|
||||
|
||||
* SHA1 - A previous generation algorithm. Not recommended for new usages,
|
||||
but SHA1 is a part of number of Internet standards and existing
|
||||
applications, so boards targetting network connectivity and
|
||||
applications, so boards targeting network connectivity and
|
||||
interoperatiability will try to provide this.
|
||||
|
||||
* MD5 - A legacy algorithm, not considered cryptographically secure. Only
|
||||
selected boards, targetting interoperatibility with legacy applications,
|
||||
selected boards, targeting interoperatibility with legacy applications,
|
||||
will offer this.
|
||||
|
||||
Constructors
|
||||
|
@ -146,8 +146,8 @@ Functions
|
||||
too distant inbetween, see below). The function returns **signed** value in the range
|
||||
[``-TICKS_PERIOD/2`` .. ``TICKS_PERIOD/2-1``] (that's a typical range definition for
|
||||
two's-complement signed binary integers). If the result is negative, it means that
|
||||
``ticks1`` occured earlier in time than ``ticks2``. Otherwise, it means that
|
||||
``ticks1`` occured after ``ticks2``. This holds ``only`` if ``ticks1`` and ``ticks2``
|
||||
``ticks1`` occurred earlier in time than ``ticks2``. Otherwise, it means that
|
||||
``ticks1`` occurred after ``ticks2``. This holds ``only`` if ``ticks1`` and ``ticks2``
|
||||
are apart from each other for no more than ``TICKS_PERIOD/2-1`` ticks. If that does
|
||||
not hold, incorrect result will be returned. Specifically, if two tick values are
|
||||
apart for ``TICKS_PERIOD/2-1`` ticks, that value will be returned by the function.
|
||||
|
@ -66,7 +66,7 @@ index for PDF, just the same as for HTML.
|
||||
search_auto_exclude
|
||||
-------------------
|
||||
|
||||
Even if you exclude soem documents from toctree:: using only::
|
||||
Even if you exclude some documents from toctree:: using only::
|
||||
directive, they will be indexed for full-text search, so user may
|
||||
find them and get confused. This plugin follows very simple idea
|
||||
that if you didn't include some documents in the toctree, then
|
||||
|
@ -2,7 +2,7 @@
|
||||
# This is a Sphinx documentation tool extension which allows to
|
||||
# exclude some Python modules from the generated indexes. Modules
|
||||
# are excluded both from "modindex" and "genindex" index tables
|
||||
# (in the latter case, all members of a module are exlcuded).
|
||||
# (in the latter case, all members of a module are excluded).
|
||||
# To control exclusion, set "modindex_exclude" variable in Sphinx
|
||||
# conf.py to the list of modules to exclude. Note: these should be
|
||||
# modules (as defined by py:module directive, not just raw filenames).
|
||||
|
@ -100,7 +100,7 @@ programming).
|
||||
|
||||
__WiFi__
|
||||
|
||||
Initally, the device configures itself as a WiFi access point (AP).
|
||||
Initially, the device configures itself as a WiFi access point (AP).
|
||||
- ESSID: MicroPython-xxxxxx (x’s are replaced with part of the MAC address).
|
||||
- Password: micropythoN (note the upper-case N).
|
||||
- IP address of the board: 192.168.4.1.
|
||||
|
@ -93,7 +93,7 @@ void pyb_rtc_set_us_since_2000(uint64_t nowus) {
|
||||
int64_t delta = nowus - (((uint64_t)rtc_last_ticks * cal) >> 12);
|
||||
|
||||
// As the calibration value jitters quite a bit, to make the
|
||||
// clock at least somewhat practially usable, we need to store it
|
||||
// clock at least somewhat practically usable, we need to store it
|
||||
system_rtc_mem_write(MEM_CAL_ADDR, &cal, sizeof(cal));
|
||||
system_rtc_mem_write(MEM_DELTA_ADDR, &delta, sizeof(delta));
|
||||
};
|
||||
|
@ -8,7 +8,7 @@ lcd.light(1)
|
||||
def conway_step():
|
||||
for x in range(128): # loop over x coordinates
|
||||
for y in range(32): # loop over y coordinates
|
||||
# count number of neigbours
|
||||
# count number of neighbours
|
||||
num_neighbours = (lcd.get(x - 1, y - 1) +
|
||||
lcd.get(x, y - 1) +
|
||||
lcd.get(x + 1, y - 1) +
|
||||
@ -25,7 +25,7 @@ def conway_step():
|
||||
if self and not (2 <= num_neighbours <= 3):
|
||||
lcd.pixel(x, y, 0) # not enough, or too many neighbours: cell dies
|
||||
elif not self and num_neighbours == 3:
|
||||
lcd.pixel(x, y, 1) # exactly 3 neigbours around an empty cell: cell is born
|
||||
lcd.pixel(x, y, 1) # exactly 3 neighbours around an empty cell: cell is born
|
||||
|
||||
# randomise the start
|
||||
def conway_rand():
|
||||
|
@ -170,7 +170,7 @@ SRC_QSTR_AUTO_DEPS +=
|
||||
include $(MPTOP)/py/mkrules.mk
|
||||
|
||||
# Value of configure's --host= option (required for cross-compilation).
|
||||
# Deduce it from CROSS_COMPILE by default, but can be overriden.
|
||||
# Deduce it from CROSS_COMPILE by default, but can be overridden.
|
||||
ifneq ($(CROSS_COMPILE),)
|
||||
CROSS_COMPILE_HOST = --host=$(patsubst %-,%,$(CROSS_COMPILE))
|
||||
else
|
||||
|
@ -18,7 +18,7 @@ Building the example is as simple as running:
|
||||
It's worth to trace what's happening behind the scenes though:
|
||||
|
||||
1. As a first step, a MicroPython library is built. This is handled by a
|
||||
seperate makefile, Makefile.upylib. It is more or less complex, but the
|
||||
separate makefile, Makefile.upylib. It is more or less complex, but the
|
||||
good news is that you won't need to change anything in it, just use it
|
||||
as is, the main Makefile shows how. What may require editing though is
|
||||
a MicroPython configuration file. MicroPython is highly configurable, so
|
||||
|
@ -373,7 +373,7 @@ STATIC err_t _lwip_tcp_recv(void *arg, struct tcp_pcb *tcpb, struct pbuf *p, err
|
||||
}
|
||||
|
||||
/*******************************************************************************/
|
||||
// Functions for socket send/recieve operations. Socket send/recv and friends call
|
||||
// Functions for socket send/receive operations. Socket send/recv and friends call
|
||||
// these to do the work.
|
||||
|
||||
// Helper function for send/sendto to handle UDP packets.
|
||||
@ -805,7 +805,7 @@ STATIC mp_obj_t lwip_socket_connect(mp_obj_t self_in, mp_obj_t addr_in) {
|
||||
mp_raise_OSError(MP_EINPROGRESS);
|
||||
}
|
||||
}
|
||||
// Register our recieve callback.
|
||||
// Register our receive callback.
|
||||
tcp_recv(socket->pcb.tcp, _lwip_tcp_recv);
|
||||
socket->state = STATE_CONNECTING;
|
||||
err = tcp_connect(socket->pcb.tcp, &dest, port, _lwip_tcp_connected);
|
||||
|
@ -132,7 +132,7 @@ STATIC mp_uint_t websocket_read(mp_obj_t self_in, void *buf, mp_uint_t size, int
|
||||
|
||||
self->buf_pos = 0;
|
||||
self->to_recv = to_recv;
|
||||
self->msg_sz = sz; // May be overriden by FRAME_OPT
|
||||
self->msg_sz = sz; // May be overridden by FRAME_OPT
|
||||
if (to_recv != 0) {
|
||||
self->state = FRAME_OPT;
|
||||
} else {
|
||||
|
@ -165,7 +165,7 @@ mp_uint_t timeutils_mktime(mp_uint_t year, mp_int_t month, mp_int_t mday,
|
||||
//
|
||||
// tm_tomorrow = list(time.localtime())
|
||||
// tm_tomorrow[2] += 1 # Adds 1 to mday
|
||||
// tomorrow = time.mktime(tm_tommorrow)
|
||||
// tomorrow = time.mktime(tm_tomorrow)
|
||||
//
|
||||
// And not have to worry about all the weird overflows.
|
||||
//
|
||||
|
@ -9,7 +9,7 @@
|
||||
* implementation below can be used.
|
||||
*/
|
||||
|
||||
// Send "cooked" string of given length, where every occurance of
|
||||
// Send "cooked" string of given length, where every occurrence of
|
||||
// LF character is replaced with CR LF.
|
||||
void mp_hal_stdout_tx_strn_cooked(const char *str, size_t len) {
|
||||
while (len--) {
|
||||
|
@ -52,7 +52,7 @@ void asm_thumb_end_pass(asm_thumb_t *as) {
|
||||
|
||||
#if defined(MCU_SERIES_F7)
|
||||
if (as->base.pass == MP_ASM_PASS_EMIT) {
|
||||
// flush D-cache, so the code emited is stored in memory
|
||||
// flush D-cache, so the code emitted is stored in memory
|
||||
SCB_CleanDCache_by_Addr((uint32_t*)as->base.code_base, as->base.code_size);
|
||||
// invalidate I-cache
|
||||
SCB_InvalidateICache();
|
||||
|
@ -271,7 +271,7 @@ mp_obj_t mp_builtin___import__(size_t n_args, const mp_obj_t *args) {
|
||||
if (level != 0) {
|
||||
// What we want to do here is to take name of current module,
|
||||
// chop <level> trailing components, and concatenate with passed-in
|
||||
// module name, thus resolving relative import name into absolue.
|
||||
// module name, thus resolving relative import name into absolute.
|
||||
// This even appears to be correct per
|
||||
// http://legacy.python.org/dev/peps/pep-0328/#relative-imports-and-name
|
||||
// "Relative imports use a module's __name__ attribute to determine that
|
||||
@ -441,7 +441,7 @@ mp_obj_t mp_builtin___import__(size_t n_args, const mp_obj_t *args) {
|
||||
#if MICROPY_CPYTHON_COMPAT
|
||||
// Store module as "__main__" in the dictionary of loaded modules (returned by sys.modules).
|
||||
mp_obj_dict_store(MP_OBJ_FROM_PTR(&MP_STATE_VM(mp_loaded_modules_dict)), MP_OBJ_NEW_QSTR(MP_QSTR___main__), module_obj);
|
||||
// Store real name in "__main__" attribute. Choosen semi-randonly, to reuse existing qstr's.
|
||||
// Store real name in "__main__" attribute. Chosen semi-randonly, to reuse existing qstr's.
|
||||
mp_obj_dict_store(MP_OBJ_FROM_PTR(o->globals), MP_OBJ_NEW_QSTR(MP_QSTR___main__), MP_OBJ_NEW_QSTR(mod_name));
|
||||
#endif
|
||||
}
|
||||
|
@ -939,7 +939,7 @@ STATIC void c_del_stmt(compiler_t *comp, mp_parse_node_t pn) {
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// some arbitrary statment that we can't delete (eg del 1)
|
||||
// some arbitrary statement that we can't delete (eg del 1)
|
||||
goto cannot_delete;
|
||||
}
|
||||
|
||||
@ -1090,7 +1090,7 @@ STATIC void compile_import_name(compiler_t *comp, mp_parse_node_struct_t *pns) {
|
||||
STATIC void compile_import_from(compiler_t *comp, mp_parse_node_struct_t *pns) {
|
||||
mp_parse_node_t pn_import_source = pns->nodes[0];
|
||||
|
||||
// extract the preceeding .'s (if any) for a relative import, to compute the import level
|
||||
// extract the preceding .'s (if any) for a relative import, to compute the import level
|
||||
uint import_level = 0;
|
||||
do {
|
||||
mp_parse_node_t pn_rel;
|
||||
|
@ -197,7 +197,7 @@ int DEBUG_printf(const char *fmt, ...);
|
||||
extern mp_uint_t mp_verbose_flag;
|
||||
|
||||
// This is useful for unicode handling. Some CPU archs has
|
||||
// special instructions for efficient implentation of this
|
||||
// special instructions for efficient implementation of this
|
||||
// function (e.g. CLZ on ARM).
|
||||
// NOTE: this function is unused at the moment
|
||||
#ifndef count_lead_ones
|
||||
|
@ -32,7 +32,7 @@ ifeq ($(BUILD_VERBOSE),0)
|
||||
$(info Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.)
|
||||
endif
|
||||
|
||||
# default settings; can be overriden in main Makefile
|
||||
# default settings; can be overridden in main Makefile
|
||||
|
||||
PY_SRC ?= $(TOP)/py
|
||||
BUILD ?= build
|
||||
|
@ -32,7 +32,7 @@
|
||||
|
||||
// mpconfigport.h is a file containing configuration settings for a
|
||||
// particular port. mpconfigport.h is actually a default name for
|
||||
// such config, and it can be overriden using MP_CONFIGFILE preprocessor
|
||||
// such config, and it can be overridden using MP_CONFIGFILE preprocessor
|
||||
// define (you can do that by passing CFLAGS_EXTRA='-DMP_CONFIGFILE="<file.h>"'
|
||||
// argument to make when using standard MicroPython makefiles).
|
||||
// This is useful to have more than one config per port, for example,
|
||||
|
2
py/obj.c
2
py/obj.c
@ -401,7 +401,7 @@ mp_obj_t mp_obj_id(mp_obj_t o_in) {
|
||||
return MP_OBJ_NEW_SMALL_INT(id);
|
||||
} else {
|
||||
// If that didn't work, well, let's return long int, just as
|
||||
// a (big) positve value, so it will never clash with the range
|
||||
// a (big) positive value, so it will never clash with the range
|
||||
// of small int returned in previous case.
|
||||
return mp_obj_new_int_from_uint((mp_uint_t)id);
|
||||
}
|
||||
|
@ -798,7 +798,7 @@ STATIC mp_obj_t str_uni_strip(int type, size_t n_args, const mp_obj_t *args) {
|
||||
}
|
||||
|
||||
assert(last_good_char_pos >= first_good_char_pos);
|
||||
//+1 to accomodate the last character
|
||||
//+1 to accommodate the last character
|
||||
size_t stripped_len = last_good_char_pos - first_good_char_pos + 1;
|
||||
if (stripped_len == orig_str_len) {
|
||||
// If nothing was stripped, don't bother to dup original string
|
||||
@ -1811,7 +1811,7 @@ STATIC mp_obj_t str_islower(mp_obj_t self_in) {
|
||||
}
|
||||
|
||||
#if MICROPY_CPYTHON_COMPAT
|
||||
// These methods are superfluous in the presense of str() and bytes()
|
||||
// These methods are superfluous in the presence of str() and bytes()
|
||||
// constructors.
|
||||
// TODO: should accept kwargs too
|
||||
STATIC mp_obj_t bytes_decode(size_t n_args, const mp_obj_t *args) {
|
||||
|
2
py/py.mk
2
py/py.mk
@ -25,7 +25,7 @@ ifeq ($(MICROPY_SSL_AXTLS),1)
|
||||
CFLAGS_MOD += -DMICROPY_SSL_AXTLS=1 -I../lib/axtls/ssl -I../lib/axtls/crypto -I../lib/axtls/config
|
||||
LDFLAGS_MOD += -Lbuild -laxtls
|
||||
else ifeq ($(MICROPY_SSL_MBEDTLS),1)
|
||||
# Can be overriden by ports which have "builtin" mbedTLS
|
||||
# Can be overridden by ports which have "builtin" mbedTLS
|
||||
MICROPY_SSL_MBEDTLS_INCLUDE ?= ../lib/mbedtls/include
|
||||
CFLAGS_MOD += -DMICROPY_SSL_MBEDTLS=1 -I$(MICROPY_SSL_MBEDTLS_INCLUDE)
|
||||
LDFLAGS_MOD += -L../lib/mbedtls/library -lmbedx509 -lmbedtls -lmbedcrypto
|
||||
|
@ -33,7 +33,7 @@ typedef struct _ringbuf_t {
|
||||
uint16_t iput;
|
||||
} ringbuf_t;
|
||||
|
||||
// Static initalization:
|
||||
// Static initialization:
|
||||
// byte buf_array[N];
|
||||
// ringbuf_t buf = {buf_array, sizeof(buf_array)};
|
||||
|
||||
|
@ -51,7 +51,7 @@ STATIC mp_obj_t stream_readall(mp_obj_t self_in);
|
||||
#define STREAM_CONTENT_TYPE(stream) (((stream)->is_text) ? &mp_type_str : &mp_type_bytes)
|
||||
|
||||
// Returns error condition in *errcode, if non-zero, return value is number of bytes written
|
||||
// before error condition occured. If *errcode == 0, returns total bytes written (which will
|
||||
// before error condition occurred. If *errcode == 0, returns total bytes written (which will
|
||||
// be equal to input size).
|
||||
mp_uint_t mp_stream_rw(mp_obj_t stream, void *buf_, mp_uint_t size, int *errcode, byte flags) {
|
||||
byte *buf = buf_;
|
||||
|
4
py/vm.c
4
py/vm.c
@ -947,7 +947,7 @@ unwind_jump:;
|
||||
DECODE_UINT;
|
||||
// unum & 0xff == n_positional
|
||||
// (unum >> 8) & 0xff == n_keyword
|
||||
// We have folowing stack layout here:
|
||||
// We have following stack layout here:
|
||||
// fun arg0 arg1 ... kw0 val0 kw1 val1 ... seq dict <- TOS
|
||||
sp -= (unum & 0xff) + ((unum >> 7) & 0x1fe) + 2;
|
||||
#if MICROPY_STACKLESS
|
||||
@ -1018,7 +1018,7 @@ unwind_jump:;
|
||||
DECODE_UINT;
|
||||
// unum & 0xff == n_positional
|
||||
// (unum >> 8) & 0xff == n_keyword
|
||||
// We have folowing stack layout here:
|
||||
// We have following stack layout here:
|
||||
// fun self arg0 arg1 ... kw0 val0 kw1 val1 ... seq dict <- TOS
|
||||
sp -= (unum & 0xff) + ((unum >> 7) & 0x1fe) + 3;
|
||||
#if MICROPY_STACKLESS
|
||||
|
@ -4,7 +4,7 @@ provided by QEMU (http://qemu.org).
|
||||
The purposes of this port are to enable:
|
||||
|
||||
1. Continuous integration
|
||||
- run tests agains architecture-specific parts of code base
|
||||
- run tests against architecture-specific parts of code base
|
||||
2. Experimentation
|
||||
- simulation & prototyping of anything that has architecture-specific
|
||||
code
|
||||
|
@ -76,7 +76,7 @@ T4 = namedtuple("TupTuple", ("foo", "bar"))
|
||||
t = T4(1, 2)
|
||||
print(t.foo, t.bar)
|
||||
|
||||
# Try single string with comma field seperator
|
||||
# Try single string with comma field separator
|
||||
# Not implemented so far
|
||||
#T2 = namedtuple("TupComma", "foo,bar")
|
||||
#t = T2(1, 2)
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Reraise not the latest occured exception
|
||||
# Reraise not the latest occurred exception
|
||||
def f():
|
||||
try:
|
||||
raise ValueError("val", 3)
|
||||
|
@ -158,7 +158,7 @@ print(can.recv(1))
|
||||
|
||||
del can
|
||||
|
||||
# Testing asyncronous send
|
||||
# Testing asynchronous send
|
||||
can = CAN(1, CAN.LOOPBACK)
|
||||
can.setfilter(0, CAN.MASK16, 0, (0, 0, 0, 0))
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
#
|
||||
# The AES code comes first (code originates from a C version authored by D.P.George)
|
||||
# and then the test harness at the bottom. It can be tuned to be more/less
|
||||
# agressive by changing the amount of data to encrypt, the number of loops and
|
||||
# aggressive by changing the amount of data to encrypt, the number of loops and
|
||||
# the number of threads.
|
||||
#
|
||||
# MIT license; Copyright (c) 2016 Damien P. George on behalf of Pycom Ltd
|
||||
|
@ -95,7 +95,7 @@ print(uart1.read() == None)
|
||||
print(uart1.write(b'123') == 3)
|
||||
print(uart0.read() == b'123')
|
||||
|
||||
# no pin assignemnt
|
||||
# no pin assignment
|
||||
uart0 = UART(0, 1000000, pins=(None, None))
|
||||
print(uart0.write(b'123456789') == 9)
|
||||
print(uart1.read() == None)
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Reads the USB VID and PID from the file specifed by sys.arg[1] and then
|
||||
# Reads the USB VID and PID from the file specified by sys.argv[1] and then
|
||||
# inserts those values into the template file specified by sys.argv[2],
|
||||
# printing the result to stdout
|
||||
|
||||
|
@ -69,7 +69,7 @@ class TelnetToSerial:
|
||||
self.tn.write(bytes(password, 'ascii') + b"\r\n")
|
||||
|
||||
if b'for more information.' in self.tn.read_until(b'Type "help()" for more information.', timeout=read_timeout):
|
||||
# login succesful
|
||||
# login successful
|
||||
from collections import deque
|
||||
self.fifo = deque()
|
||||
return
|
||||
|
@ -262,7 +262,7 @@ coverage_test: coverage
|
||||
gcov -o build-coverage/extmod ../extmod/*.c
|
||||
|
||||
# Value of configure's --host= option (required for cross-compilation).
|
||||
# Deduce it from CROSS_COMPILE by default, but can be overriden.
|
||||
# Deduce it from CROSS_COMPILE by default, but can be overridden.
|
||||
ifneq ($(CROSS_COMPILE),)
|
||||
CROSS_COMPILE_HOST = --host=$(patsubst %-,%,$(CROSS_COMPILE))
|
||||
else
|
||||
|
@ -58,7 +58,7 @@
|
||||
from socket_more_funcs2 import *
|
||||
-------------------
|
||||
I.e. this module should stay lean, and more functions (if needed)
|
||||
should be add to seperate modules (C or Python level).
|
||||
should be add to separate modules (C or Python level).
|
||||
*/
|
||||
|
||||
#define MICROPY_SOCKET_EXTRA (0)
|
||||
|
@ -72,7 +72,7 @@ void mp_hal_stdio_mode_orig(void) {
|
||||
// Previous versions of the mp_hal code would install a handler whenever Ctrl-C input is
|
||||
// allowed and remove the handler again when it is not. That is not necessary though (1),
|
||||
// and it might introduce problems (2) because console notifications are delivered to the
|
||||
// application in a seperate thread.
|
||||
// application in a separate thread.
|
||||
// (1) mp_hal_set_interrupt_char effectively enables/disables processing of Ctrl-C via the
|
||||
// ENABLE_PROCESSED_INPUT flag so in raw mode console_sighandler won't be called.
|
||||
// (2) if mp_hal_set_interrupt_char would remove the handler while Ctrl-C was issued earlier,
|
||||
|
@ -36,7 +36,7 @@
|
||||
#include "extmod/utime_mphal.h"
|
||||
|
||||
STATIC mp_obj_t mod_time_time(void) {
|
||||
/* The absense of FP support is deliberate. The Zephyr port uses
|
||||
/* The absence of FP support is deliberate. The Zephyr port uses
|
||||
* single precision floats so the fraction component will start to
|
||||
* lose precision on devices with a long uptime.
|
||||
*/
|
||||
|
Loading…
Reference in New Issue
Block a user