Version 1.20 release candidate #1 - beta testers wanted :)

A project log for Teensy 3.0 & 3.1 & 3.2 & 3.5 & 3.6

32 bit ARM-based boards for use with the Arduino IDE

Paul StoffregenPaul Stoffregen 07/06/2014 at 23:210 Comments

Development on the Arduino support code is continuing, with quite a number of new features added for the upcoming 1.20 release.

If you have a Teensy 3.0 or 3.1 board, I could sure use your feedback and help with testing some of this new stuff.  There's a new DMAChannel object which is intended to make accessing the power DMA hardware easier (but you can still access the hardware registers through it, if you like), and to allow libraries using DMA to dynamically allocate channels to avoid conflicts.

IntervalTimer now supports setting the interrupt priority level, so you can cause your timer interrupt to interrupt almost all other interrupts, or set it to a low priority if you want something to run, but not block more urgent interrupts, or somewhere in between.  The Freescale Kinetis chip supports 16 distinct interrupt priority levels, so you have a lot of flexibility to configure.

The FASTRUN attribute was added, so you can cause any function to be allocated in RAM (with zero wait states).  Normally the flash memory is fine, but if you're using the extreme overclocking (enable by uncommenting lines in boards.txt), adding FASTRUN to the key functions makes them run faster.  How much improvement this really makes is still a good question....