| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
| |
- Changed: ValueError, TypeError, NotImplementedError
- OSError invocations unchanged, because the corresponding utility
function takes ints, not strings like the long form invocation.
- OverflowError, IndexError and RuntimeError etc. not changed for now
until we decide whether to add new utility functions.
|
|
|
|
|
| |
$(TOP) is defined in py/mkenv.mk and should be used to refer to the top
level of this repository.
|
|
|
|
|
| |
"STATIC inline" can expand to "inline" if STATIC is defined to nothing, and
this case can lead to link errors.
|
|
|
|
|
| |
There were several different spellings of MicroPython present in comments,
when there should be only one.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The code conventions suggest using header guards, but do not define how
those should look like and instead point to existing files. However, not
all existing files follow the same scheme, sometimes omitting header guards
altogether, sometimes using non-standard names, making it easy to
accidentally pick a "wrong" example.
This commit ensures that all header files of the MicroPython project (that
were not simply copied from somewhere else) follow the same pattern, that
was already present in the majority of files, especially in the py folder.
The rules are as follows.
Naming convention:
* start with the words MICROPY_INCLUDED
* contain the full path to the file
* replace special characters with _
In addition, there are no empty lines before #ifndef, between #ifndef and
one empty line before #endif. #endif is followed by a comment containing
the name of the guard macro.
py/grammar.h cannot use header guards by design, since it has to be
included multiple times in a single C file. Several other files also do not
need header guards as they are only used internally and guaranteed to be
included only once:
* MICROPY_MPHALPORT_H
* mpconfigboard.h
* mpconfigport.h
* mpthreadport.h
* pin_defs_*.h
* qstrdefs*.h
|
| |
|
|
|
|
|
| |
There are never any instances of these objects so there is no need to have
a print function.
|
|
|
|
|
|
| |
Prior to this patch Servo numbers 1, 2, 3, 4 mapped to pins X3, X4, X1, X2
on PYBLITE which doesn't match the standard PYB mapping. This patch fixes
the mapping.
|
|
|
|
|
|
|
| |
The default frozen modules are no longer included (but users can still
specify their own via FROZEN_MPY_DIR), complex numbers are disabled and so
are the native, viper and asm_thumb emitters. Users needing these features
can tune the build to disable other things.
|
|
|
|
|
| |
This dev board only has a single USB connector, connected to the FS
peripheral.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
The name used in py/mpconfig.h is MICROPY_FLOAT_IMPL so rename this
Makefile variable to mirror that.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
By default the firmware is built with single-precision floating point.
To build a particular board using double precision instead, put the
following line in the mpconfigboard.mk file:
FLOAT_IMPL = double
|
| |
|
|
|
|
|
|
|
| |
And and FLASH_FS, and use "K" values instead of hex numbers for lengths.
The increase of FLASH_TEXT is to allow more frozen bytecode for a
particular user's project. It's not used for anything else.
|
| |
|
| |
|
|
|
|
|
| |
They disable all interrupts except for SysTick and are useful for doing
certain low-level timing operations.
|
|
|
|
|
| |
It provides sys.stdin, sys.stdout, sys.stderr for bare-metal targets based
on mp_hal functions.
|
| |
|
|
|
|
|
|
| |
This method follows the new HW API and allows to set a hard or soft IRQ
callback when a Pin has a level change. It still remains to make this
method return a IRQ object.
|
| |
|
| |
|
|
|
|
|
| |
The default for the GIL is to enable it if threading is enabled, and this
is the recommended way to use threading with the stmhal port.
|
|
|
|
|
| |
Currently just a dummy command that returns "success", but it's needed for
some O/S's to correctly talk with the SCSI layer.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
For consistent Pin/Signal class hierarchy. With it, Signal is a proper
(while still ducktyped) subclass of a Pin, and any (direct) usage of Pin
can be replace with Signal.
As stmhal's class is reused both as machine.Pin and legacy pyb.Pin,
high/low methods actually retained there.
|
| |
|
|
|
|
|
| |
pyb.UART has a superset of machine.UART functionality so can be used to
provide compatibility with other ports that also implement machine.UART.
|
| |
|
| |
|
|
|
|
|
| |
extmod/crypto-algorithms/sha256.c was recently fixed so that it didn't
include this header.
|
|
|
|
|
|
| |
Prior to making this a config option it was previously available on these
(and all other) ports, and it makes sense to keep it enabled for mpy-cross
as well as ports that have a decent amount of space for the code.
|
|
|
|
|
|
|
|
|
|
| |
Sometimes when setting a channel callback the callback fires immediately,
even if the compare register is set to a value far into the future. This
happens when the free running counter has previously been equal to what
happens to be in the compare register.
This patch make sure that there is no pending interrupt when setting a
callback.
|
| |
|
|
|
|
|
|
|
|
| |
This should be a little more efficient (since we anyway scan the input
packet for the interrupt char), and it should also fix any non-atomic read
issues with the buffer state being changed during an interrupt.
Throughput tests show that RX rate is unchanged by this patch.
|
|
|
|
|
|
|
| |
The previous timeout value of 150ms could lead to data being lost (ie never
received by the host) in some rare cases, eg when the host is under load.
A value of 500ms is quite conservative and allows the host plenty of time
to read our data.
|