Scott Shawcroft
6857f98426
Split pulseio.PWMOut into pwmio
...
This gives us better granularity when implementing new ports because
PWMOut is commonly implemented before PulseIn and PulseOut.
Fixes #3211
2020-08-18 13:08:33 -07:00
Lucian Copeland
da75445cd5
Style changes, reposition runtime errors
2020-08-18 11:42:06 -04:00
Lucian Copeland
0fc730bc5a
Expand PulseOut API, debug cleanup
2020-08-14 16:36:02 -04:00
Jeff Epler
1cf3762392
Merge remote-tracking branch 'origin/main' into stm32-sdioio
2020-08-10 12:54:12 -05:00
Jeff Epler
93b373d617
"pop from empty %q"
...
Saves 12 bytes code on trinket m0
2020-08-04 18:42:09 -05:00
Jeff Epler
c849b781c0
Combine 'index out of range' messages
2020-08-04 14:45:45 -05:00
Jeff Epler
dddd25a776
Combine similar strings to reduce size of translations
...
This is a slight trade-off with code size, in places where a "_varg"
mp_raise variant is now used. The net savings on trinket_m0 is
just 32 bytes.
It also means that the translation will include the original English
text, and cannot be translated. These are usually names of Python
types such as int, set, or dict or special values such as "inf" or
"Nan".
2020-08-04 13:34:29 -05:00
Jeff Epler
f175a49444
stm: sdioio: include header for common_hal_mcu_pin_claim
2020-07-30 07:18:12 -05:00
Jeff Epler
b57e6e9856
stm: sdioio: call common_hal_mcu_pin_claim
2020-07-30 07:18:12 -05:00
Jeff Epler
60dd5a8d7d
stm: sdioio: remove unused code related to "SD Card detect pin"
...
.. this probably came from the examples that I studied at the beginning
of implementation.
The card detection feature is unused. As a "detect pin" is not
sent from the shared-bindings, there is no way to get the correct pin
anyway. Instead, if code needs to detect the insertion state it can
directly use the pin as GPIO in Python code.
2020-07-30 07:18:02 -05:00
Jeff Epler
ccd3013396
stm: stioio: correctly claim pins
2020-07-30 07:18:02 -05:00
Jeff Epler
3cf1258c87
stm: sdioio: Get rid of debug code and useless comments
2020-07-30 07:18:02 -05:00
Jeff Epler
6a99a7b551
stm: Use 'Invalid %q pin selection' more places
2020-07-30 07:18:02 -05:00
Jeff Epler
4adbd23b75
stm: Add sdioio support for feather_stm32f405_express
...
Currently, only the bus specs of the stm32f405xx have been coded.
Other stm-family chips need (at a minimum) the specs added in their
periph.[ch] files.
2020-07-30 07:18:02 -05:00
Lucian Copeland
c1f731d62e
Claim USB pins at startup to prevent overwrites
2020-07-22 14:22:05 -04:00
hierophect
e232ec10ce
Merge branch 'main' into stm32-timer-allocator
2020-07-22 13:59:39 -04:00
Lucian Copeland
138189bad1
Free timers when modules de-init
2020-07-22 13:58:57 -04:00
Lucian Copeland
6a49766df0
Fix pulseIO reset and frequency issues, remove IRQ conflict
2020-07-16 15:45:18 -04:00
Lucian Copeland
818b96ae61
Fix IRQ enum protections
2020-07-14 16:33:36 -04:00
Scott Shawcroft
51c888d4be
Merge pull request #3003 from Flameeyes/master
...
License tagging according to REUSE specifications.
2020-07-13 16:28:49 -07:00
Lucian Copeland
eb86010176
Enable RGB Matrix
2020-07-10 11:06:12 -04:00
Lucian Copeland
2bcc5c06c2
Fix advanced claimed pin/package timer search
2020-07-09 11:42:37 -04:00
Lucian Copeland
9c38f5dcb1
Merge remote-tracking branch 'upstream/main' into stm32-timer-allocator
2020-07-08 16:03:12 -04:00
Jeff Epler
57ab4f1329
stm: SPI: revamp pin search code
...
I discussed with Hierophect on Discord about how to "de-nest" the code
for configuring SPI objects on STM, because the problems with one
nesting level per pin becomes unmanageable with the up to 10 pins of
SDIO.
This code (which is only compile-tested so far) demonstrates the concept
we discussed.
The SCK pin is always required. Loop over all possibilities of the SCK
pin. When we are considering a particular item in the mcu_spi_sck_list
we have now become committed to using a particular periph_index. If all
the other pins can be satisfied by that periph_index, then we have a
working combination. Once we have a working combination that is not
reserved, we can return that combination. On reaching the end, we have
checked all the possible possibilities and can give the same errors as
before: One if there was a possibility that worked but was reserved;
and another if no possibility worked.
2020-07-07 14:37:50 -05:00
Diego Elio Pettenò
34b4993d63
Add license to some obvious files.
2020-07-06 19:16:25 +01:00
Lucian Copeland
c72e3536f1
Merge remote-tracking branch 'upstream/main' into stm32-timer-allocator
2020-07-03 09:50:05 -04:00
Jeff Epler
fcddfd0f39
Merge pull request #3083 from tannewt/esp32s2_busio
...
Add busio support for the ESP32-S2
2020-07-01 21:02:08 -05:00
Lucian Copeland
ab9a64eafa
Add timer allocator, adjust pulsio to use general purpose timers
2020-07-01 10:35:49 -04:00
Lucian Copeland
6c91af7d56
WIP
2020-06-25 17:27:01 -04:00
Scott Shawcroft
c5fa9730a8
Compiles!
2020-06-24 12:47:59 -07:00
Scott Shawcroft
a26102607e
Add UART support
2020-06-24 12:47:58 -07:00
Scott Shawcroft
f67b307371
Merge pull request #3045 from k0d/stm32_alignment_issue
...
Fixes issue with memory alignment in STM32
2020-06-23 10:54:08 -07:00
Jeff Epler
8a760b0657
stm: Pin.c: Compute GPIO_PORT_COUNT instead of specifying manually
2020-06-22 10:45:27 -05:00
Mark Olsson
23da0fa99c
Fixes issue with memory alignment in STM32
...
When compiling with optimizations on, an issue occurs where the claimed_pins/never_reset_pins memory location is shared with another variable. This causes some bad memory read, so the USB pins ended up being reset. Setting these to have an alignment of 4 bytes resolves this.
Tested on nucleo_f746zg
2020-06-18 00:51:04 +02:00
Lucian Copeland
fd4aafacbe
Add port D to LQFP64
2020-06-16 12:33:15 -04:00
Lucian Copeland
2aac3cbdce
Revert I2C timing overrides, reduce scope to module only
2020-06-15 13:51:09 -04:00
Lucian Copeland
724637faa3
Move I2C speed to clock-style definition
2020-06-11 11:17:51 -04:00
Lucian Copeland
c08702414e
Add macros for setting correct F7 and H7 I2C timing
2020-06-10 16:36:44 -04:00
Diego Elio Pettenò
dd5d7c86d2
Fix up end of file and trailing whitespace.
...
This can be enforced by pre-commit, but correct it separately to make it easier to review.
2020-06-03 10:56:35 +01:00
Lucian Copeland
fe75c7793c
Fix SWO/Analog overlap, style changes
2020-05-29 12:19:37 -04:00
Lucian Copeland
a59798ed49
Merge branch 'mimxrt-uart-oneway' into mimxrt-busio-cleanup
2020-05-27 12:31:16 -04:00
Lucian Copeland
9f5520135c
translations
2020-05-27 11:54:52 -04:00
Lucian Copeland
53fb699436
Add pin resetting across boards, fix array size detection issue
2020-05-27 11:45:15 -04:00
Scott Shawcroft
ba724fffb4
Merge remote-tracking branch 'adafruit/master' into esp32s2_digitalio
2020-05-20 10:48:27 -07:00
Lucian Copeland
66c09efae2
Add UART one-way instance search, fix bugs in stm32 implementation
2020-05-20 12:48:01 -04:00
Scott Shawcroft
fd0420d432
Update digitalio api for other ports
2020-05-20 09:23:42 -07:00
Mark Olsson
007c92ee6a
Enable showing the console on a debug uart
2020-05-19 02:02:52 +02:00
Scott Shawcroft
c3b3eb4c21
Merge pull request #2831 from jepler/rgbmatrix-stm
...
stm: enable RGBMatrix
2020-05-06 08:35:25 -07:00
Dan Halbert
bae7a5e433
make translate again
2020-05-04 17:26:59 -04:00
Jeff Epler
e5be728c1c
stm: enable protomatter
...
Testing performed: on stm32f405 feather, all pins change in plausible ways
on a logic probe. Didn't actually drive a display yet.
2020-04-30 08:58:58 -05:00
Dan Halbert
180f5c6a94
Merge remote-tracking branch 'adafruit/master' into ringbuf-fixes
2020-04-29 22:11:22 -04:00
Scott Shawcroft
755d404edf
Merge remote-tracking branch 'adafruit/master' into lower_power
2020-04-27 16:45:10 -07:00
hierophect
d9e4155815
Merge branch 'master' into stm32f7_os
2020-04-27 12:58:15 -04:00
Mark Olsson
31d8e46063
Enables os on STM32F7
...
os.uname() works
os.urandom() doesn't work yet, will enable in another PR
2020-04-27 18:18:43 +02:00
Mark Olsson
f9096d83ac
Enables PulseIO on STM32F7
...
Tested on nucleo_f746zg
2020-04-27 17:55:07 +02:00
Mark Olsson
91fbbcab19
adds support for the stm32f746g_disco board
2020-04-24 16:43:39 +02:00
Dan Halbert
fbc8719fad
ringbuf tested
2020-04-21 22:40:12 -04:00
Dan Halbert
38ec3bc574
further ringbuf cleanup
2020-04-21 17:38:20 -04:00
Scott Shawcroft
bebf27e733
Merge remote-tracking branch 'adafruit/master' into lower_power
...
This isn't perfect and needs a bit more testing.
2020-04-20 18:25:13 -07:00
Scott Shawcroft
7dfcae6067
Tweaks from jepler
2020-04-14 17:09:48 -07:00
Lucian Copeland
5ac38c95cc
Various requested fixes
2020-04-13 12:03:05 -04:00
Lucian Copeland
92a0621e59
Add busio support, cleanup
2020-04-09 13:43:19 -04:00
Scott Shawcroft
01941c027b
Fix up STM
...
Enable the Alarm IRQ earlier and correct bit clearing.
2020-04-08 14:41:57 -07:00
Lucian Copeland
47a5d83267
Implement F7 Nucleo
2020-04-02 11:47:16 -04:00
Scott Shawcroft
8fe512c7e9
Merge remote-tracking branch 'adafruit/master' into lower_power
2020-03-31 15:13:58 -07:00
Scott Shawcroft
4b063aeb29
Hack up STM32 PulseIn so it builds
2020-03-31 15:12:11 -07:00
Scott Shawcroft
798118b74f
Update board.c's to remove remaining tick.h
2020-03-27 14:52:35 -07:00
Lucian Copeland
348df4be2b
Merge remote-tracking branch 'upstream/master' into stm32x7-setup
2020-03-26 18:16:11 -04:00
Lucian Copeland
c4db8b87e2
Add F7 and H7 Support to the STM32 port
...
Restructures the STM port of Circuitpython to be more generic about the STM32 chip lines to support
the F7 and H7 series of chips. Adds the new Packages directory to organize different chip layouts
between lines. Makes general changes to the Makefile to condense board-level flags to the minimum
and support the new chip series. Adds the new chip line to the Peripherals directory, along with
new python tools used to generate peripheral text automatically in the tools/ directory.
2020-03-26 18:01:17 -04:00
Scott Shawcroft
653b7619ec
Add back microsecond delay to STM32
2020-03-23 16:09:50 -07:00
Scott Shawcroft
c0c4c4403a
Factor out stm32f4xx_hal_conf.h
2020-03-23 14:46:25 -07:00
jgillick
a79ac35173
Rename NVM_BYTEARRAY_BUFFER_SIZE
2020-03-22 15:20:58 -07:00
jgillick
68195a8dfe
Update NVM_BYTEARRAY_BUFFER_LEN
2020-03-22 15:19:53 -07:00
jgillick
d76b76cb1d
Add non-volatile memory support to STM
2020-03-22 02:22:59 -07:00
Scott Shawcroft
2623022c84
Initial work for STM32. Need to fix us delay and PulseIn still.
2020-03-20 12:58:34 -07:00
jgillick
284073584a
Cleanup
2020-03-19 00:01:32 -07:00
jgillick
8a93a81a26
Chip specific code.
2020-03-15 22:31:36 -07:00
Lucian Copeland
18442c5b00
Merge remote-tracking branch 'upstream/master' into stm32-port-namechange
2020-03-12 15:40:44 -04:00
Lucian Copeland
53b1544f41
create copy
2020-03-11 18:13:06 -04:00