Scott Shawcroft
97fcdfbd08
docs: Update design guide for new DigitalInOut API.
2017-06-19 09:06:46 -07:00
Scott Shawcroft
a715bf6bac
atmel-samd: Introduce board reset mechanic used on CircuitPlayground
...
Express to ensure the Neopixels are off after reloads.
2017-06-16 15:40:15 -07:00
Scott Shawcroft
3e23464b1e
atmel-samd: Add user initiated safe mode and rework board.c for
...
board specific functionality.
Fixes #155
2017-06-16 14:55:53 -07:00
Scott Shawcroft
c7efd2cae9
shared-bindings: Move enum-like classes out of DigitalInOut into digitalio.
...
Also, rename Direction.IN to Direction.INPUT and Direction.OUT to Direction.OUTPUT.
This simplifies using them. Prior to the nativeio split this would have led to
clutter in the top-level namespace but having digitalio prevents this.
Fixes #152
2017-06-16 13:47:01 -07:00
Scott Shawcroft
58ab5844cb
atmel-samd: Fix sharing TCCs by statically storing the current period.
...
A previous fix improved the duty_cycle channel value computation by
removing the reliance on the PER register which gave old values. It
saved the period on the object but failed to set anything for reused
timers. So, this breaks it out into a separate array that can be
shared across all object regardless of whether it used a new or
existing timer.
2017-06-12 15:37:09 -07:00
Scott Shawcroft
c61e1b89aa
atmel-samd: Fix TCC1, its two channels and four wave outputs.
...
Previously it was configured as four and four which configured
the incorrect channels.
2017-06-12 15:36:09 -07:00
Scott Shawcroft
736a63e85a
atmel-samd: Set up the tcc_instance when using an already active TCC.
...
This fixes a hard lock that happens when using a second channel on an
in use TCC. The lock occurred when setting the duty cycle on the channel
because the hw address was not available to ASF.
Thanks to @ladyada for finding the bug.
2017-06-09 17:16:33 -07:00
Scott Shawcroft
3658c92270
atmel-samd: Reset TCC channel in use array on reset.
...
This fixes spurious "All timers in use" exceptions. Thanks to
@ladyada for finding this issue.
2017-06-09 17:15:31 -07:00
Scott Shawcroft
9434db07b2
atmel-samd: Handle TCC2 correctly. Unlike the other TCCs its 16bit
...
rather than 24bit. Setting the period for more than a 16bit number
caused the TCC to be in a weird state where resetting it would hard
crash.
Fixes #153
2017-06-09 15:29:02 -07:00
Scott Shawcroft
43881f933d
py: Prevent mp_arg_check_num from being optimized away by the compiler.
...
Also, change the MICROPY_ERROR_REPORTING checks to macros to make it
clear the compiler can handle it immediately.
Fixes #154
2017-06-09 11:20:53 -07:00
Scott Shawcroft
a884acc7f6
atmel-samd: Fix PWMOut duty_cycle when used with TCC peripherals.
...
Fixes #148 . Fixes #151
2017-06-08 18:56:13 -07:00
Scott Shawcroft
9345562cc8
docs: Add note about composition to the design guide.
2017-06-07 14:57:55 -07:00
Scott Shawcroft
714521a4c7
shared-bindings: Update docs to remove with statements from examples but add more detail to the design guide about their use.
2017-06-07 14:39:12 -07:00
Scott Shawcroft
c5e515b8fe
docs: Add module support matrix.
2017-06-07 12:00:15 -07:00
Scott Shawcroft
2ecb9a3dbf
docs: Fix header lines that are too short.
2017-06-07 11:58:04 -07:00
Scott Shawcroft
c0e1f58b67
shared-bindings: Allow for switching direction with the attribute.
2017-06-06 17:45:39 -07:00
Scott Shawcroft
c8dc091288
shared-bindings: Fix duty_cycle parameter description and error message.
2017-06-06 16:23:06 -07:00
Scott Shawcroft
b5f50fadf9
atmel-samd: Change Metro PID to 0x8014 so it doesn't conflict with Arduino's PID.
2017-06-06 16:18:34 -07:00
Scott Shawcroft
9805abd858
Merge pull request #146 from dhalbert/stack_check-fix
...
Fix broken mp_stack_check() when using -flto
2017-06-05 11:51:27 -07:00
Dan Halbert
88b449a8cd
Fix broken mp_stack_check: force mp_stack_ctrl_init() and mp_stack_usage() not to be inlined even with -flto
2017-06-04 22:05:55 -04:00
Scott Shawcroft
66c421f401
atmel-samd: Correct the USB PID of the CircuitPlayground Express.
2017-05-29 14:35:38 -07:00
Scott Shawcroft
aaf01481aa
Change the approach for input so that its not included in every single build. Put it next to readline instead.
2017-05-25 12:14:42 -07:00
Scott Shawcroft
32a4eb2c53
atmel-samd: Add input support. Fixes #143
2017-05-25 11:55:38 -07:00
Scott Shawcroft
1280e9122b
Doc tweaks to clarify external libraries, new boards and add HID library.
2017-05-24 11:44:23 -07:00
Scott Shawcroft
3cad7b7b03
atmel-samd: correctly reset the REPL history on reload. Fixes #141
2017-05-24 10:53:52 -07:00
Scott Shawcroft
b444788451
Merge pull request #135 from robomike/pins
...
Renamed spi flash to ext flash not to confuse with the actual spi flash
2017-05-23 11:43:20 -07:00
robomike
517590a58a
atmel-samd:renamed spi flash to confuse with the actual spi flash
2017-05-23 14:09:28 -04:00
Scott Shawcroft
907188972c
Merge pull request #138 from dhalbert/add-ure-et-al
...
Enable ure, center, partition, frozenset, splitlines, reversed for Express builds.
2017-05-21 22:00:19 -07:00
Dan Halbert
5c7071e92a
Merge branch 'master' into add-ure-et-al
2017-05-21 23:20:47 -04:00
Scott Shawcroft
eeced45bed
Remove code size check. Its causing builds to fail because the new GCC made it slightly larger.
2017-05-21 07:53:19 -07:00
Dan Halbert
253bdf7739
Enable ure, center, partition, frozenset, splitlines, reversed for Express builds.
2017-05-20 14:02:37 -04:00
Scott Shawcroft
0a6bed491f
atmel-samd: Enable autoreload by default again.
2017-05-20 08:11:06 -07:00
Scott Shawcroft
d275d5bcf7
Update README with new boards and new differences.
2017-05-16 11:15:35 -07:00
Scott Shawcroft
b1925b1bd8
atmel-samd: Fixup autoreset after switching boot to running once.
2017-05-15 20:21:26 -07:00
Scott Shawcroft
3f5028c666
atmel-samd: Support wav file playback. Tested up to 16bit 22.1khz. Must be mono file!
...
SD card support may work but likely needs buffer tuning. Its untested.
Fixes #105
2017-05-15 19:52:38 -07:00
Scott Shawcroft
292ba89ac2
tools: Make now runs uf2conv itself.
2017-05-15 15:44:43 -07:00
Scott Shawcroft
974847ac8d
atmel-samd: Add a safe mode which detects hard faults and reboots without running user code again.
2017-05-15 15:29:04 -07:00
Scott Shawcroft
790c38e18c
atmel-samd: Rework boot, main and REPL order.
...
Boot will only run once now before USB is started. Its output goes to
boot_out.txt. After main and REPL will run with VM and hardware resets
between each.
2017-05-12 18:26:14 -07:00
Scott Shawcroft
7672bf7736
atmel-samd: Rename auto-reset to auto-reload to reduce confusion with physical reset buttons.
2017-05-12 16:45:38 -07:00
Scott Shawcroft
e0f931afd3
atmel-samd: Fix pin reset to ensure USB and SWD are not reset.
2017-05-12 16:09:13 -07:00
Scott Shawcroft
e1a6f6d584
atmel-samd: Rework SPI flash defines for clarity.
...
Also add sector protection support for the SAMD Xplained board.
2017-05-12 14:47:39 -07:00
Scott Shawcroft
7ea76e0889
atmel-samd: Pin reset improvements.
...
* Reset SWD lines to SWD rather than GPIO. This makes OpenOCD happier.
* Default speaker enable lines to False for CircuitPlayground to prevent
the speaker from buzzing when no sound is playing. Fixes #126
2017-05-12 13:14:01 -07:00
Scott Shawcroft
6984425f5d
atmel-samd: Correctly wait for the SPI DMA transaction to finish.
2017-05-12 13:13:50 -07:00
Scott Shawcroft
c138d0f025
Merge pull request #128 from ntoll/master
...
Rename LEFT_BUTTON -> BUTTON_A, RIGHT_BUTTON -> BUTTON_B.
2017-05-11 10:04:05 -07:00
Nicholas H.Tollervey
f3152571c6
Rename LEFT_BUTTON -> BUTTON_A, RIGHT_BUTTON -> BUTTON_B.
2017-05-11 14:48:17 +01:00
Scott Shawcroft
ef1a4847b3
shared-bindings: Correct PulseIn.resume to match docs. Fixes #125
2017-05-08 11:14:23 -07:00
Scott Shawcroft
c6d539ace3
atmel-samd: Fix sporadic "syntax errors"
...
The GC was deleting memory that was in use because its scan of the
stack missed the very top. Switching to _estack fixes this by relying
on the location from the linker.
Fixes #124
2017-05-05 12:04:20 -07:00
Scott Shawcroft
5ad426124b
atmel-samd: Move heap objects into MICROPY_PORT_ROOT_POINTERS so they don't get garbage collected while we are using them.
2017-05-04 11:57:51 -07:00
Scott Shawcroft
6512ccf32e
atmel-samd: Use DMA for user SPI.
...
Also replace use of PINMUX_DEFAULT with PINMUX_UNUSED to prevent any
accidental pin changes. This caused user SPI to break internal SPI
flash on the Feather M0 Express.
Fixes #100
2017-05-03 10:50:29 -07:00
Scott Shawcroft
24a5752f94
atmel-samd: Use DMA for SPI flash block transfers.
...
Fixes #99
2017-05-02 15:25:06 -07:00