summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-09-29Merge pull request #880 from dhylands/irq-alignDamien George
teensy: Enable 8-byte stack alignment for IRQ Handlers.
2014-09-29Merge pull request #878 from bvernoux/masterDamien George
Fix error: unknown type name 'size_t'
2014-09-29Merge pull request #877 from dhylands/timer-overflowDamien George
Fix timer overflow code.
2014-09-28teensy: Enable 8-byte stack alignment for IRQ Handlers.Dave Hylands
2014-09-28Fix error: unknown type name 'size_t'bvernoux
2014-09-27Fix timer overflow code.Dave Hylands
Teensy doesn't need to worry about overflows since all of its timers are only 16-bit. For PWM, the pulse width needs to be able to vary from 0..period+1 (pulse-width == period+1 corresponds to 100% PWM) I couldn't test the 0xffffffff cases since we can't currently get a period that big in python. With a prescaler of 0, that corresponds to a freq of 0.039 (i.e. cycle every 25.56 seconds), and we can't set that using freq or period. I also tested both stmhal and teensy with floats disabled, which required a few other code changes to compile.
2014-09-26stmhal, modcc3k: Add ioctl to cc3k sockets so select works.Damien George
2014-09-26py: Clean up nlr*.S to make it easier to read; fix clang .bss error.Damien George
It seems that newer versions of clang don't like the .bss directive, so we don't use it for OSX. Addressing issues #865 and #875.
2014-09-26stmhal: Initial implementation of cc3k module and driver.Damien George
Pulled in and modified work done by mux/iabdalkader on cc3k driver, from iabdalkader-cc3k-update branch. That branch was terribly messy and had too many conflicts to merge neatly.
2014-09-26drivers, cc3k: Move cc3000 driver from stmhal to drivers directory.Damien George
2014-09-25docs: Make images and youtube video links work for LCD and AMP docs.v1.3.2Damien George
Images are currently served from micropython.org/static. I don't know if there is a better way to handle images.
2014-09-25py: Simplify JSON str printing (while still conforming to JSON spec).Damien George
The JSON specs are relatively flexible and allow us to use one function to print strings, be they ascii, bytes or utf-8 encoded.
2014-09-25docs: Imported tutorials from previous documentation system.Damien George
2014-09-25docs: Initial commit of Sphinx documentation framework.Damien George
2014-09-25Change allows tests/unix/ffi_float.py to pass on OSXblmorris
2014-09-25tests: Add test for exception matching of a tuple of exceptions.Damien George
2014-09-25py: Tidy up exception matching; allow matching of tuple of exceptions.Damien George
Addresses issue #864.
2014-09-25Updated CODECONVENTIONS to clarify use of integer types.Damien George
2014-09-25py: For malloc and vstr functions, use size_t exclusively for int type.Damien George
It seems most sensible to use size_t for measuring "number of bytes" in malloc and vstr functions (since that's what size_t is for). We don't use mp_uint_t because malloc and vstr are not Micro Python specific.
2014-09-25stmhal: Enable 8-byte stack alignment for IRQ handlers.Damien George
2014-09-25stmhal, timer: Factor code to compute PWM percent; improve 32bit case.Damien George
Also do the same for teensy timer code.
2014-09-25Merge pull request #868 from dhylands/fix-teensy-floatDamien George
Add pulse_width_percent to teensy.
2014-09-23Add pulse_width_percent to teensy.Dave Hylands
Fix stmhal and teensy print routines to report actual prescaler an period. Fix teensy build to use soft-float Add USE_ARDUINO_TOOLCHAIN option to teensy build
2014-09-23py: Free non-interned strings in the parser when not needed.Damien George
mp_parse_node_free now frees the memory associated with non-interned strings. And the parser calls mp_parse_node_free when discarding a non-used node (such as a doc string). Also, the compiler now frees the parse tree explicitly just before it exits (as opposed to relying on the caller to do this). Addresses issue #708 as best we can.
2014-09-23py: Make native emitter handle multi-compare and not/is not/not in ops.Damien George
2014-09-23tests: Fix uctypes tests to run on 64bit arch; enable more native tests.Damien George
2014-09-23Merge pull request #869 from stinos/windows-upDamien George
windows: Enable input(), sys.maxsize(), ujson module, emergency exceptio...
2014-09-23Merge pull request #871 from blmorris/osx_build_fixDamien George
Fix unix/Makefile to build on OSX
2014-09-23Clean up logical flow for setting LDFLAGS to build for Linux and OSXblmorris
Add more specific comments describing what is going on.
2014-09-23stmhal: Initialise stack pointer correctly.Damien George
Stack is full descending and must be 8-byte aligned. It must start off pointing to just above the last byte of RAM. Previously, stack started pointed to last byte of RAM (eg 0x2001ffff) and so was not 8-byte aligned. This caused a bug in combination with alloca. This patch also updates some debug printing code. Addresses issue #872 (among many other undiscovered issues).
2014-09-22Incorporate change in assignment logic suggested by dhylandsblmorris
2014-09-22Fix unix/Makefile to build on OSXblmorris
Force OSX to compile with clang even if gcc is available Change LDFLAGS syntax to be compatible with clang Fix questionable syntax on line 90 Remove extraneous tab character
2014-09-22windows: Enable input(), sys.maxsize(), ujson module, emergency exception ↵stijn
buf, os module
2014-09-21extmod, ujson: Add test and comment for loads.Damien George
2014-09-21extmod, ujson: Add \uxxxx parsing in json strings.Damien George
2014-09-21extmod, ujson: Slight reduction in code size.Damien George
2014-09-21extmod: Add loads to ujson module.Damien George
2014-09-21Merge branch 'dhylands-timer-pwm2'Damien George
2014-09-21stmhal: Add pulse_width_ratio to timer channel object.Damien George
This allows to set the pulse width (for PWM mode) as a ratio relative to the period of the timer. Eg, 0.5 is a 50% duty cycle. You can set the ratio in the channel init, or using channel.pulse_width_ratio; the latter can also read the pulse width as a ratio.
2014-09-19Add Timer support (PWM, OC, IC) for stmhal and teensyDave Hylands
2014-09-17stmhal: Fix bugs in documentation so it compiles.Damien George
2014-09-18lib: Add basic README.Damien George
2014-09-17py: Add 'builtins' module.Damien George
2014-09-17py: Add native json printing using existing print framework.Damien George
Also add start of ujson module with dumps implemented. Enabled in unix and stmhal ports. Test passes on both.
2014-09-17py: Make dict use a bit less RAM when iterating; properly del values.Damien George
Heap RAM was being allocated to print dicts and do some other types of iterating. Now these iterations use 1 word of state on the stack. Deleting elements from a dict was not allowing the value to be reclaimed by the GC. This is now fixed.
2014-09-15stmhal: Change 64-bit arithmetic to 32-bit for SD card block addressing.Damien George
By measuring SD card addresses in blocks and not bytes, one can get away with using 32-bit numbers. This patch also uses proper atomic lock/unlock around SD card read/write, adds SD.info() function, and gives error code for failed read/writes.
2014-09-15stmhal/sdcard.c: add pyb.SD.writeFelix Domke
2014-09-15stmhal/hal/src/stm32f4xx_hal_sd.c: fix SDHC card capacityFelix Domke
2014-09-15py: Make asm_arm_less_op take destination register as first arg.Damien George
This gets ARM native emitter working againg and addresses issue #858.
2014-09-15py: Move definition of mp_sys_exit to core.Damien George
sys.exit always raises SystemExit so doesn't need a special implementation for each port. If C exit() is really needed, use the standard os._exit function. Also initialise mp_sys_path and mp_sys_argv in teensy port.