- 31 Oct, 2015 1 commit
-
-
Damien George authored
py/mphal.h contains declarations for generic mp_hal_XXX functions, such as stdio and delay/ticks, which ports should provide definitions for. A port will also provide mphalport.h with further HAL declarations.
-
- 29 Jul, 2015 1 commit
-
-
Dave Hylands authored
-
- 22 Jul, 2015 1 commit
-
-
Damien George authored
This allows a user-specified Timer for the triggering of the ADC read, mirroring the new behaviour of DAC.write_timed. Addresses issue #1129.
-
- 21 Jul, 2015 1 commit
-
-
Damien George authored
This allows the DAC to use a user-specified Timer for the triggering (instead of the default Timer(6)), while still supporting original behaviour. Addresses issues #1129 and #1388.
-
- 28 Apr, 2015 1 commit
-
-
Dave Hylands authored
-
- 22 Apr, 2015 1 commit
-
-
Dave Hylands authored
Because if the counter is above the new value of the auto-reload register then it may be a long time until the timer wraps around.
-
- 18 Apr, 2015 1 commit
-
-
Damien George authored
-
- 16 Apr, 2015 2 commits
-
-
blmorris authored
Saves 68 bytes.
-
Damien George authored
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.
-
- 20 Mar, 2015 1 commit
-
-
Dave Hylands authored
This also cleans up spurious interrupts which happen at timer initilaization time.
-
- 09 Mar, 2015 1 commit
-
-
Dave Hylands authored
-
- 23 Feb, 2015 2 commits
-
-
Damien George authored
-
Dave Hylands authored
In particular, make sure that the globals are all initialized before enabling the interrupt, and also make sure that the timer interrupt has been initialied before enabling the NVIC.
-
- 13 Feb, 2015 1 commit
-
-
Damien George authored
Addresses issue #1113.
-
- 08 Jan, 2015 1 commit
-
-
Damien George authored
-
- 07 Jan, 2015 1 commit
-
-
Damien George authored
A GC in stmhal port now only scans true root pointers, not entire BSS. This reduces base GC time from 1700ms to 900ms.
-
- 01 Jan, 2015 1 commit
-
-
Damien George authored
-
- 08 Dec, 2014 1 commit
-
-
Paul Sokolovsky authored
The function is modeled after traceback.print_exception(), but unbloated, and put into existing module to save overhead on adding another module. Compliant traceback.print_exception() is intended to be implemented in micropython-lib in terms of sys.print_exception(). This change required refactoring mp_obj_print_exception() to take pfenv_t interface arguments. Addresses #751.
-
- 10 Oct, 2014 1 commit
-
-
Dave Hylands authored
This patch enables output on the complimentary channels (TIMx_CHyN). For timers 1 and 8, deadtime can also be inserted when the channels transition. For the pyboard, TIM8_CH1/CH1N and TIM8_CH2/CH2N can take advantage of this.
-
- 05 Oct, 2014 4 commits
-
-
Damien George authored
Found these by compiling stmhal with mp_uint_t of type uint32_t instead of unsigned int. This actually makes a difference to the code, but just a curiosity.
-
Damien George authored
-
Damien George authored
-
Damien George authored
Timers now have the following new features: - can init freq using floating point; eg tim.init(freq=0.1) - tim.source_freq() added to get freq of timer clock source - tim.freq() added to get/set freq - print(tim) now prints freq
-
- 04 Oct, 2014 1 commit
-
-
Damien George authored
Eg pyb.freq(120000000) sets the CPU to 120MHz. The frequency can be set at any point in the code, and can be changed as many times as you like. Note that any active timers will need to be reconfigured after a freq change. Valid range is 24MHz to 168MHz (but not all freqs are supported). The code maintains a 48MHz clock for the USB at all times and it's possible to change the frequency at a USB REPL and keep the REPL alive (well, most of the time it stays, sometimes it resets the USB for some reason). Note that USB does not work with pyb.freq of 24MHz.
-
- 29 Sep, 2014 1 commit
-
-
Damien George authored
Also improve precision of calculating PWM percent in integer mode. Also update teensy with edge case fix.
-
- 28 Sep, 2014 1 commit
-
-
Dave Hylands authored
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.
-
- 25 Sep, 2014 1 commit
-
-
Damien George authored
Also do the same for teensy timer code.
-
- 24 Sep, 2014 1 commit
-
-
Dave Hylands authored
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
-
- 21 Sep, 2014 1 commit
-
-
Damien George authored
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.
-
- 19 Sep, 2014 1 commit
-
-
Dave Hylands authored
-
- 29 Aug, 2014 1 commit
-
-
Damien George authored
Addressing issue #50, still some way to go yet.
-
- 13 Aug, 2014 1 commit
-
-
Damien George authored
-
- 03 Jul, 2014 1 commit
-
-
Damien George authored
See discussion in issue #50.
-
- 02 Jul, 2014 1 commit
-
-
Damien George authored
-
- 30 Jun, 2014 1 commit
-
-
Dave Hylands authored
This fixes #733.
-
- 19 Jun, 2014 1 commit
-
-
Emmanuel Blot authored
-
- 03 May, 2014 2 commits
-
-
Damien George authored
Blanket wide to all .c and .h files. Some files originating from ST are difficult to deal with (license wise) so it was left out of those. Also merged modpyb.h, modos.h, modstm.h and modtime.h in stmhal/.
-
Damien George authored
Make include dependencies neater, and adheres to the coding convention that headers should not include headers.
-
- 02 May, 2014 1 commit
-
-
Damien George authored
-
- 26 Apr, 2014 1 commit
-
-
Damien George authored
-