Commit Graph

393 Commits

Author SHA1 Message Date
5ac91933ff stm32: No need to enable GPIO clocks manually 2021-07-23 17:54:13 +02:00
13873df30b Auto-enable all GPIOs during init(). 2021-07-23 11:32:19 -04:00
d68f2617e6 Add a Dbgmcu struct capable of enabling all relevant DBGMCU.cr fields.
Includes the addition of a `dbgmcu!(...)` macro table which currently takes
the form of

	(cr, $fn_name:ident)

where `$fn_name` is something like `set_dbgsleep_d1` etc.

The method is unsafe, since it's performing unsafe PAC operations.

Two examples modified to demonstrate its usage.
2021-07-22 14:18:48 -04:00
3655ceff27 Merge pull request #308 from timokroeger/stmf4-example-cleanup
Cleanup stm32f4 examples
2021-07-21 23:21:28 +02:00
5e998d1a6c Cleanup stm32f4 examples
* Remove dependency on stm32f4 pac crate
* Remove unused `ZeroClock`
2021-07-21 23:12:36 +02:00
25b870d811 Merge pull request #302 from embassy-rs/rp-spi-fixes
Rp spi fixes
2021-07-20 10:11:58 +02:00
451e342961 rp/examples: add spi_display example 2021-07-20 10:06:57 +02:00
b04dc7e783 Merge pull request #226 from huntc/mpsc
Multi Producer Single Consumer channel
2021-07-20 08:01:42 +02:00
1799938187 rp/examples: add spi example 2021-07-19 23:54:18 +02:00
d7176da37c stm32/examples: update DMA channel names 2021-07-17 08:04:33 +02:00
0119ea809d Get DMA on H7 working, add usart_dma example for H7. 2021-07-16 14:41:20 -04:00
63a0e188ea stm32/dma: fix h7 impls 2021-07-16 14:41:20 -04:00
3d1391ef2d stm32/dma: impl all variants 2021-07-16 14:41:20 -04:00
697f93ad42 stm32: Add F0 example 2021-07-15 13:50:39 -03:00
3778f55d80 Provides a cleaner construction of the channel with the common "new" naming 2021-07-15 12:31:53 +10:00
f159beec1c Use of a NoopMutex 2021-07-15 12:31:52 +10:00
5f87c7808c Remove the cell and trait
At the expense of exposing the channel types again. We do this as we want to avoid using dyn traits given their overhead for embedded environments.
2021-07-15 12:31:52 +10:00
ae62948d6c Replace UnsafeCell
Using a new ChannelCell so that there's no leaking of the abstraction
2021-07-15 12:31:52 +10:00
816b78c0d9 Reduces the types on sender and receiver
In exchange for an UnsafeCell being passed into split
2021-07-15 12:31:52 +10:00
1b9d5e5071 Multi Producer Single Consumer channel
An MPSC inspired by Tokio and Crossbeam. The MPSC is designed to support both single and multi core processors, with only single core implemented at this time. The allocation of the channel’s buffer is inspired by the const generic parameters that Heapless provides.
2021-07-15 12:31:52 +10:00
71c8d7aa7d stm32l4/examples: remove old-pac uses. 2021-07-15 00:37:00 +02:00
21e94972dc Fix more warnings and examples. 2021-07-14 14:55:20 -04:00
3fd9023fce Fix the h7 example. 2021-07-14 14:45:54 -04:00
a88f0028ef First shot at async dma usart for stm32. 2021-07-14 14:14:14 -04:00
f01ddd5f5c Mix dmamux into bdma_v1. 2021-07-13 10:09:35 -04:00
043f0ea508 Checkpoint DMAMUX channel setup. 2021-07-13 10:08:43 -04:00
7547c8d8d6 rp/timer: add 2021-07-12 03:45:57 +02:00
ecc151d4e2 stm32/adc: simplify delay handling 2021-07-05 03:18:23 +02:00
3ce32d6624 Merge pull request #273 from rukai/fix_warnings_again
fix stm32 warnings
2021-07-05 02:00:51 +02:00
25d4b2ea26 fix stm32 warnings 2021-07-05 01:54:29 +02:00
56d0c5ffe1 Fix warnings in std and rp 2021-07-04 12:46:04 +10:00
0920c0cb1d Make UART pins Rx/Tx/etc in addition to USART. 2021-07-01 11:30:54 -04:00
54ada5bae1 Stub in the DMA bits that aren't yet there. 2021-07-01 11:30:54 -04:00
f83559c6ab Add L4+ example for USART. 2021-07-01 11:30:54 -04:00
e55c89f890 Merge pull request #262 from Liamolucko/nrf-rng
Add an nRF RNG driver
2021-07-01 01:55:55 +02:00
a64dec517c Update RNG example 2021-06-30 12:55:30 +10:00
d5fb558005 Fix non-DMA USART example. 2021-06-29 13:08:18 -04:00
24f18819c8 Adjust example for RCC and DMA. 2021-06-29 11:01:57 -04:00
8a4ab29819 Add an nRF RNG driver
Resolves #187

Like the stm32 driver, this has both a non-blocking and blocking API, and implements `rand_core::RngCore` for the blocking API.
2021-06-29 17:26:16 +10:00
cdb0c72849 Merge pull request #255 from thalesfragoso/od-pin
stm32: Allow for open drain configuration for output pin
2021-06-27 19:29:18 +02:00
0eaadfc125 stm32: Update gpio examples 2021-06-25 18:16:43 -03:00
c7c897bb72 rp/gpio: add infallible inherent methods 2021-06-25 06:24:14 +02:00
5a6384d199 rp: clock setup 2021-06-25 03:38:21 +02:00
aca0fb1065 net: Make the user pass in the StackResources in init
By having the user pass in the resources, we can make them generic, this way
the user can choose the size of the individual resources
2021-06-20 17:15:18 -03:00
098ce6e740 stm32h7: Add ethernet example 2021-06-16 16:48:35 +02:00
b6a8703698 Add support for generating PAC for dual cores
* Chips that have multiple cores will be exposed as chipname_corename,
  i.e. stm32wl55jc_cm4
* Chips that have single cores will use the chip family as feature name
  and pick the first and only core from the list
* Add support for stm32wl55 chip family
2021-06-16 15:12:07 +02:00
d58fb11b2e ADCv3 and example. 2021-06-14 13:20:42 -04:00
95532726b2 Add minimal RCC impls for L4 and F4 2021-06-14 11:33:11 +02:00
97e2f10665 Merge pull request #242 from Tiwalun/stm32wb55-metapac
Initial support and example for STM32WB55
2021-06-12 16:33:40 +02:00
b82e2627aa Add STM32WB55 examples to CI, fix example crate name 2021-06-12 07:06:42 +02:00