<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/stmhal/modstm.c, branch 2.2.4</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=2.2.4</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=2.2.4'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2017-07-31T08:35:40+00:00</updated>
<entry>
<title>all: Use the name MicroPython consistently in comments</title>
<updated>2017-07-31T08:35:40+00:00</updated>
<author>
<name>Alexander Steffen</name>
<email>devel.20.webmeister@spamgourmet.com</email>
</author>
<published>2017-06-30T07:22:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=55f33240f3d7051d4213629e92437a36f1fac50e'/>
<id>urn:sha1:55f33240f3d7051d4213629e92437a36f1fac50e</id>
<content type='text'>
There were several different spellings of MicroPython present in comments,
when there should be only one.
</content>
</entry>
<entry>
<title>stmhal: Clean up some header includes.</title>
<updated>2017-07-03T07:37:22+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2017-07-03T07:37:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=80b31dc0972eca3f67dd2be7518b133e316e8f32'/>
<id>urn:sha1:80b31dc0972eca3f67dd2be7518b133e316e8f32</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal: Convert all module and method tables to use MP_ROM macros.</title>
<updated>2017-05-06T07:03:40+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2017-05-06T07:03:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=0986675451edbdcbe31d90ddacf8f6dc3327a4ae'/>
<id>urn:sha1:0986675451edbdcbe31d90ddacf8f6dc3327a4ae</id>
<content type='text'>
</content>
</entry>
<entry>
<title>all: Remove 'name' member from mp_obj_module_t struct.</title>
<updated>2016-09-21T14:23:16+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2016-09-21T00:52:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=93c4a6a3f70e389b466fbc7a4f1ad2e1df87c93f'/>
<id>urn:sha1:93c4a6a3f70e389b466fbc7a4f1ad2e1df87c93f</id>
<content type='text'>
One can instead lookup __name__ in the modules dict to get the value.
</content>
</entry>
<entry>
<title>stmhal: Make stm constants big ints when they don't fit in a small int.</title>
<updated>2016-01-07T16:34:11+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2016-01-07T15:09:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=2621f8a3409fc0290190adb86c25504e43420115'/>
<id>urn:sha1:2621f8a3409fc0290190adb86c25504e43420115</id>
<content type='text'>
Adds 924 bytes of code, but means that no more hacks and work-arounds are
needed due to large constants becoming negative.
</content>
</entry>
<entry>
<title>stmhal: Add mem8/mem16/mem32 operations to machine module.</title>
<updated>2015-12-19T01:05:44+00:00</updated>
<author>
<name>Dave Hylands</name>
<email>dhylands@gmail.com</email>
</author>
<published>2015-12-14T01:40:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=b61336483b8b4729309f95d232306ced97b00840'/>
<id>urn:sha1:b61336483b8b4729309f95d232306ced97b00840</id>
<content type='text'>
This uses the newly factored machine_mem functions.
</content>
</entry>
<entry>
<title>stmhal: Make stm.mem* support large integers.</title>
<updated>2015-11-26T22:19:42+00:00</updated>
<author>
<name>Dave Hylands</name>
<email>dhylands@gmail.com</email>
</author>
<published>2015-11-26T02:54:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=30484338092bfaad9f4ecff13b4219d94157fa06'/>
<id>urn:sha1:30484338092bfaad9f4ecff13b4219d94157fa06</id>
<content type='text'>
With these you can now do things like:

stm.mem32[0x20000000] = 0x80000000

and read 32-bit values. You can also read all the way to the end
of memory using either stm.mem32[0xfffffffc] or stm.mem32[-4].

IRQs shouldn't use mem32 at all since they'd fail if the top 2 bits
weren't equal, so IRQs should be using 16-bit I/O.
</content>
</entry>
<entry>
<title>stmhal: Generate modstm constants per build</title>
<updated>2015-08-07T07:46:43+00:00</updated>
<author>
<name>Dave Hylands</name>
<email>dhylands@gmail.com</email>
</author>
<published>2015-08-02T17:42:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=be66a9ecf60eac18e08eda7bddf4b3481459c9f2'/>
<id>urn:sha1:be66a9ecf60eac18e08eda7bddf4b3481459c9f2</id>
<content type='text'>
This causes unnecessary constants to no longer be generated.
Some constants (like UART_BRR) are different between the F4 and F7
</content>
</entry>
<entry>
<title>stmhal: Replace #include "stm32f4xx_hal.h" with #include STM32_HAL_H.</title>
<updated>2015-07-29T23:38:25+00:00</updated>
<author>
<name>Dave Hylands</name>
<email>dhylands@gmail.com</email>
</author>
<published>2015-07-28T15:36:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=ea8bf8105812b36fbf1596a78c6e14aa0a0c5a36'/>
<id>urn:sha1:ea8bf8105812b36fbf1596a78c6e14aa0a0c5a36</id>
<content type='text'>
</content>
</entry>
<entry>
<title>py: Overhaul and simplify printf/pfenv mechanism.</title>
<updated>2015-04-16T14:30:16+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-04-09T22:56:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=7f9d1d6ab923096582622b700bedb6a571518eac'/>
<id>urn:sha1:7f9d1d6ab923096582622b700bedb6a571518eac</id>
<content type='text'>
Previous to this patch the printing mechanism was a bit of a tangled
mess.  This patch attempts to consolidate printing into one interface.

All (non-debug) printing now uses the mp_print* family of functions,
mainly mp_printf.  All these functions take an mp_print_t structure as
their first argument, and this structure defines the printing backend
through the "print_strn" function of said structure.

Printing from the uPy core can reach the platform-defined print code via
two paths: either through mp_sys_stdout_obj (defined pert port) in
conjunction with mp_stream_write; or through the mp_plat_print structure
which uses the MP_PLAT_PRINT_STRN macro to define how string are printed
on the platform.  The former is only used when MICROPY_PY_IO is defined.

With this new scheme printing is generally more efficient (less layers
to go through, less arguments to pass), and, given an mp_print_t*
structure, one can call mp_print_str for efficiency instead of
mp_printf("%s", ...).  Code size is also reduced by around 200 bytes on
Thumb2 archs.
</content>
</entry>
</feed>
