Commit Graph

96 Commits

Author SHA1 Message Date
Paul Sokolovsky af5b509c75 examples/unix/ffi_example: Clean up and update the ffi example.
1. Use uctypes.bytearray_at().

Implementation of the "ffi" module predates that of "uctypes", so
initially some convenience functions to access memory were added
to ffi. Later, they landed in uctypes (which follows CPython's
ctype module).

So, replace undocumented experimental functions from ffi to
documented ones from uctypes.

2. Use more suitable type codes for arguments (e.g. "P" (const void*)
instead of "p" (void*).

3. Some better var naming.

4. Clarify some messages printed by the example.
2018-10-23 11:50:39 +11:00
Damien George 0f4d595beb examples/embedding: Fix hard-coded MP_QSTR_ value. 2018-09-14 13:33:08 +10:00
Dave Hylands 1a2c511e5d examples/embedding: Fix reference to freed memory, lexer src name.
This issue was brought up by BramPeters in the forum:
https://forum.micropython.org/viewtopic.php?p=30066
2018-09-14 13:27:43 +10:00
Damien George 31cf49c672 examples/embedding: Add code markup and fix typo in README.md. 2018-06-18 12:29:22 +10:00
Damien George 6b40a06057 examples/embedding: Don't prefix $(MPTOP) to ports/unix source files.
Otherwise the build process puts the corresponding output object files in
two directories lower, not in build/ports/unix.
2018-02-23 13:15:01 +11:00
talljosh c2f4f36010 examples/embedding: Update broken paths to use correct $(MPTOP).
Some ".." need to be changed to $(MPTOP), and in some places "ports/" needs
to be inserted to get to the "ports/unix/" subdir.
2018-02-22 14:50:45 +11:00
Damien George 24c513cbc3 unix/Makefile,embedding/Makefile: Remove obsolete use of STMHAL_SRC_C. 2018-02-14 15:24:21 +11:00
Paul Sokolovsky 53966fd9a8 examples: hwconfig_console: Add .on()/.off() methods.
Add these methods to this "GPIO output emulated with console prints"
config.
2017-10-09 00:22:30 +03:00
Damien George 4a93801c12 all: Update Makefiles and others to build with new ports/ dir layout.
Also renames "stmhal" to "stm32" in documentation and everywhere else.
2017-09-06 14:09:13 +10:00
Damien George 4ec803a42a all: Make static dicts use mp_rom_map_elem_t type and MP_ROM_xxx macros. 2017-08-21 21:34:23 +10:00
Alexander Steffen 55f33240f3 all: Use the name MicroPython consistently in comments
There were several different spellings of MicroPython present in comments,
when there should be only one.
2017-07-31 18:35:40 +10:00
Damien George 761e4c7ff6 all: Remove trailing spaces, per coding conventions. 2017-07-19 13:12:10 +10:00
Damien George 4d2778c9fb examples/embedding: Use core-provided KeyboardInterrupt object. 2017-06-07 20:28:18 +10:00
Ville Skyttä ca16c38210 various: Spelling fixes 2017-05-29 11:36:05 +03:00
Paul Sokolovsky 0af974b777 examples/hwapi/soft_pwm2_uasyncio: Update for call_later_ms().
Following finalized naming in uasyncio.
2017-05-17 00:44:00 +03:00
Paul Sokolovsky 5feeba8897 examples/hwapi/hwconfig*: Use inline Signal() args where possible. 2017-05-12 01:19:13 +03:00
Paul Sokolovsky 11a962099e examples/hwapi: Add config for Zephyr port of 96Boards Carbon. 2017-04-27 18:08:05 +03:00
Damien George 61616e84ce extmod/machine_signal: Rename "inverted" arg to "invert", it's shorter.
A shorter name takes less code size, less room in scripts and is faster to
type at the REPL.

Tests and HW-API examples are updated to reflect the change.
2017-04-15 21:01:47 +03:00
Damien George 4c307bfba1 all: Move BYTES_PER_WORD definition from ports to py/mpconfig.h
It can still be overwritten by a port in mpconfigport.h but for almost
all cases one can use the provided default.
2017-04-01 11:39:38 +11:00
Damien George b6c7e4b143 all: Use full path name when including mp-readline/timeutils/netutils.
This follows the pattern of how all other headers are now included, and
makes it explicit where the header file comes from.  This patch also
removes -I options from Makefile's that specify the mp-readline/timeutils/
netutils directories, which are no longer needed.
2017-03-31 22:29:39 +11:00
Krzysztof Blazewicz 75589272ef all/Makefile: Remove -ansi from GCC flags, its ignored anyway.
The -ansi flag is used for C dialect selection and it is equivalent to -std=c90.
Because it goes right before -std=gnu99 it is ignored as for conflicting flags
GCC always uses the last one.
2017-03-23 15:32:12 +11:00
Damien George 21420b13c0 examples/embedding: Place lexer constructor within NLR handler block.
The lexer constructor may now raise an exception and it needs to be caught.
2017-03-14 11:52:05 +11:00
Paul Sokolovsky eb101a2701 examples/embedding/README: Convert to markdown, grammar and clarity fixes. 2017-02-15 13:27:24 +03:00
Paul Sokolovsky dd00d0134b examples/hwapi/soft_pwm: Use Signal on()/off() methods.
Just one sample is updated with  on()/off() for now, there should be
remaining sample(s) showing .value() use (but more can be converted later,
as long as 1 or so good samples of .value() remains).
2017-02-14 13:13:41 +03:00
Damien George c66c393130 examples/hwapi: Be sure to import Signal when it's used. 2017-02-09 15:21:57 +11:00
Kai Fricke c8febe631a examples/hwapi: Add hwconfig_pyboard.py for pyboard. 2017-02-09 15:19:28 +11:00
Paul Sokolovsky a4a439caa3 examples/button_reaction: Update for time_pulse_us() no longer raising exc. 2017-02-05 18:01:42 +03:00
Paul Sokolovsky a5bed53738 examples/hwapi: Consistently use Signal class to define LEDs. 2017-01-29 19:09:33 +03:00
Paul Sokolovsky 297af6036e examples/hwapi: Use Signal for inverted LED on ESP-12. 2017-01-29 18:57:37 +03:00
Paul Sokolovsky 1e9093f8cb examples/hwapi/hwconfig_console: Don't alloc memory in value(). 2016-12-23 17:24:24 +03:00
Damien George c28fed6b64 examples/accellog.py: Change 1: to /sd/, and update comment about FS. 2016-11-18 17:00:54 +11:00
Paul Sokolovsky 00d6f99cf1 examples/hwapi: Add hwconfig for console tracing of LED operations. 2016-11-18 07:20:26 +03:00
Paul Sokolovsky b188d6e9db examples/hwapi: Add example for machine.time_pulse_us(). 2016-11-17 01:10:00 +03:00
Damien George 6b239c271c py: Factor out persistent-code reader into separate files.
Implementations of persistent-code reader are provided for POSIX systems
and systems using FatFS.  Macros to use these are MICROPY_READER_POSIX and
MICROPY_READER_FATFS respectively.  If an alternative implementation is
needed then a port can define the function mp_reader_new_file.
2016-11-16 18:13:50 +11:00
Paul Sokolovsky bf318801d2 examples/hwapi: Add uasyncio example of fading 2 LEDs in parallel. 2016-11-14 01:37:27 +03:00
Paul Sokolovsky 00a9590e3a examples/http_client: Use read() instead of readall(). 2016-11-14 00:24:45 +03:00
Paul Sokolovsky 99e5badeb1 examples/hwapi: Add soft_pwm example converted to uasyncio. 2016-11-13 17:00:24 +03:00
Paul Sokolovsky 3c0da6a359 examples/hwapi: button_led: Add GPIO pin read example.
Requires BUTTON defined in hwconfig, so far tested on DragonBoard 410c.
2016-11-12 00:09:43 +03:00
Paul Sokolovsky 29f3f84fbd examples/hwapi: Add hwconfig for DragonBoard 410c.
This requires recently added implementation of machine.Pin from
micropython-lib.
2016-11-10 01:59:10 +03:00
Paul Sokolovsky 8f068e84ee examples/hwapi: Example showing best practices for HW API usage in apps.
Showing and providing detailed instructions and motivation.
2016-11-06 22:08:35 +03:00
Paul Sokolovsky 73b72799f3 examples/http_server_simplistic: Add "not suitable for real use" note. 2016-10-26 12:25:33 +03:00
Paul Sokolovsky fa5ac678fc examples/network/http_client*: Use \r\n line-endings in request. 2016-10-09 19:36:04 +03:00
Philip Potter c777b6950e stmhal: Update boot.py files to use VCP instead of CDC. 2016-08-29 15:17:34 +10:00
Damien George 675d1c9c60 ports: Remove typedef of machine_ptr_t, it's no longer needed.
This type was used only for the typedef of mp_obj_t, which is now defined
by the object representation.  So we can now remove this unused typedef,
to simplify the mpconfigport.h file.
2016-08-15 11:02:59 +10:00
Paul Sokolovsky 3d19adf9b3 examples/network: Split recv- and read-based HTTP servers.
Name recv() based a "simplistic", as it can't work robustly in every
environment. All this is to let people concentreate on proper, read()-
based one (and to turn recv() based into a "negative showcase",
explaining what are the pitfalls of such approach).
2016-08-06 01:59:51 +03:00
Paul Sokolovsky eb0e3bab1e tests/machine_mem.py: Too non-portable, rework as an example for unix port. 2016-07-31 04:22:09 +03:00
Paul Sokolovsky 614deb82c7 examples/http_client*: Be sure to close socket.
Otherwise, on bare-metal/RTOS systems can lead to resource leaks.
2016-07-23 00:41:19 +03:00
Paul Sokolovsky 4d4cfc2ee6 examples/embedding: Add README. 2016-07-22 22:13:03 +03:00
Paul Sokolovsky 1e77e25675 examples/embedding: Example for embedding MicroPython in an app. 2016-07-22 22:13:03 +03:00
Paul Sokolovsky e3f0f31e07 examples/http_server*: Update for buffered-like streams (read line by line).
Since "read-exactly" stream refactor, where stream.read(N) will read
exactly N bytes (unless EOF), http_server* examples can't any longer do
client_socket.read(4096) and expect to get full request (it will block
on HTTP/1.1 client). Instead, read request line by line, as the HTTP
protocol requires.
2016-07-10 23:01:52 +03:00