Commit Graph

56 Commits

Author SHA1 Message Date
Mark Olsson 007c92ee6a Enable showing the console on a debug uart 2020-05-19 02:02:52 +02:00
Dan Halbert bae7a5e433 make translate again 2020-05-04 17:26:59 -04: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 8fe512c7e9
Merge remote-tracking branch 'adafruit/master' into lower_power 2020-03-31 15:13:58 -07:00
William Moser c961ed9025 Added 31250 and 56000 to baudrate_map in UART.c, to parallel definitions in nrfx/mdk/nrf*_bitfields.h files 2020-03-24 13:25:02 -04:00
Scott Shawcroft 6f60afe8c5
First try at lowering the power consumption 2020-03-13 11:12:30 -07:00
Dan Halbert b6206406de new pin validation routines; don't use mp_const_none if NULL will do 2020-02-28 23:43:04 -05:00
Dave Marples 24405cabaf Edits as a result of review 2020-02-19 00:07:01 +00:00
Dave Marples 490a808bf6 Addition of stubs for rs485/CTS/RTS handling on non-implemented chips 2020-02-18 23:16:40 +00:00
Scott Shawcroft cfd71d9023
Fix nRF UART reset
disable only turns off ENABLE but doesn't set the init tracking that
nrfx uses. uninit hangs if ENABLE is off and is called because it
waits forever for TX to stop.
2019-12-27 20:18:07 -08:00
hathach 894cad2e17 upgrade nrfx API to v2 2019-12-17 21:39:52 +07:00
Jeff Epler 95d9c49e43 Merge remote-tracking branch 'origin/master' into tick-refactor 2019-11-29 11:27:09 -06:00
Dan Halbert b32a9192df make UART.write be blocking on SAMD; add timeout property 2019-11-27 13:05:29 -05:00
Jeff Epler 7f744a2369 Supervisor: move most of systick to the supervisor
This code is shared by most parts, except where not all the #ifdefs
inside the tick function were present in all ports.  This mostly would
have broken gamepad tick support on non-samd ports.

The "ms32" and "ms64" variants of the tick functions are introduced
because there is no 64-bit atomic read.  Disabling interrupts avoids
a low probability bug where milliseconds could be off by ~49.5 days
once every ~49.5 days (2^32 ms).

Avoiding disabling interrupts when only the low 32 bits are needed is a minor
optimization.

Testing performed: on metro m4 express, USB still works and
time.monotonic_ns() still counts up
2019-11-18 11:01:23 -06:00
Jeff Epler 11dd3a260e nrf: Use RUN_BACKGROUND_TASKS 2019-08-11 08:53:02 -05:00
iot49 6e5d70fa19 changed type of receiver_buffer_size to uint16_t 2019-07-03 12:02:01 -07:00
Dan Halbert ab4194f752 don't allocate DMA buffer as long-lived 2019-02-13 19:49:57 -05:00
Dan Halbert e92d90ce9c Add second UARTE to busio.UART. Init uarts on startup. 2019-02-12 22:34:05 -05:00
Dan Halbert 28cfd8a513 CharacteristicBuffer: make it be a stream class; add locking 2019-01-19 19:45:35 -05:00
hathach 3ee766bc01
put received bytes to fifo when error 2018-12-28 01:05:30 +07:00
hathach d092722ae8
fix #1407 keep receiving in case of error 2018-12-28 00:40:29 +07:00
hathach b37b2fa7e7 overwrite old data if fifo is full 2018-12-13 23:56:06 +07:00
hathach e136222ae2 use rbuf for busio uart 2018-12-13 23:48:53 +07:00
Dan Halbert 63cd9209f1 allow KeyboardInterrupt on UART read; fix nrf UART pin claiming; rename feather 52840 UART pins 2018-12-04 15:05:39 -05:00
Dan Halbert 80db2cec99 UART changes: timeout in secs, write bytes, etc. 2018-12-03 12:04:32 -05:00
Scott Shawcroft 9d91111b1b
Move atmel-samd to tinyusb and support nRF flash.
This started while adding USB MIDI support (and descriptor support is
in this change.) When seeing that I'd have to implement the MIDI class
logic twice, once for atmel-samd and once for nrf, I decided to refactor
the USB stack so its shared across ports. This has led to a number of
changes that remove items from the ports folder and move them into
supervisor.

Furthermore, we had external SPI flash support for nrf pending so I
factored out the connection between the usb stack and the flash API as
well. This PR also includes the QSPI support for nRF.
2018-11-08 17:25:30 -08:00
Dan Halbert 2262efc311 PulseOut working 2018-10-16 11:05:02 -04:00
hathach 08cbb03bdd implement common_hal_busio_uart_clear_rx_buffer 2018-10-03 11:39:01 +07:00
hathach f543c8415d "busio.UART not yet implemented -> not available 2018-10-03 11:30:31 +07:00
hathach 76d6fb03f0 more clean up 2018-09-26 02:12:06 +07:00
hathach eba80f7a99 update translate string 2018-09-26 02:10:44 +07:00
hathach 52328c88cd remove space 2018-09-26 02:06:32 +07:00
hathach 74cc55b107 change error type to runtime 2018-09-25 17:31:53 +07:00
hathach dec5c50c45 clean up 2018-09-25 16:22:14 +07:00
hathach 2f0e0bdcaf migrate serial from uart to uarte 2018-09-25 16:14:44 +07:00
hathach 9017c9d29a clean up 2018-09-25 14:29:45 +07:00
hathach d3e5ba83eb update nrfx to 1.3.0 2018-09-25 13:00:57 +07:00
hathach d714479924 clean up 2018-09-25 12:48:48 +07:00
hathach 01c1296197 nrf52 uart io rx work reliably 2018-09-25 12:37:31 +07:00
hathach 1782ceab35 uarte malloc if buffer is not in SRAM 2018-09-24 16:18:49 +07:00
hathach 4015023e01 clean up uart io 2018-09-24 16:12:05 +07:00
hathach 7bbd449f06 uarte rx work fine 2018-09-24 15:54:32 +07:00
hathach fdd3e91753 changing to nrf uarte, tx works fine 2018-09-24 14:56:52 +07:00
hathach 7a1b4ccc9b Merge branch 'master' into nrf52_uart_io 2018-09-24 12:50:48 +07:00
hathach 816ff05253 clean up 2018-09-21 03:53:35 +07:00
hathach dddc437ea7 got rx working finally 2018-09-21 03:48:13 +07:00
hathach fe1a297889 still have issue with initial uart rx 2018-09-21 01:27:52 +07:00
hathach 9c25306877 uart rx got some issue with irq 2018-09-20 02:12:21 +07:00
hathach c5593ec074 got uart tx work 2018-09-19 17:59:15 +07:00