| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
| |
This allows SPI to be entirely interrupt driven, with callbacks for
completion. It's not tested yet...
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
This lets the user know which DMA has finished.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
This makes sure that a reboot will reliably cause the device to
disconnect from the USB bus.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
This waits for the stop signal to appear on the bus, necessary before
starting another transaction.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
Transaction appears to be clean on the i2c bus now; correct number of
bytes received, and the nack and stop at the right time. This tests >
2 length reads; should try that too.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
Start now driven by interrupts
Send now done with DMA and interrupts
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Recv doesn't appear to work with more than one byte
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
TX is 6, RX is 7
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
This does "something" in radio test mode, appearing to generate a
730MHz signal.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
Configure endpoint registers correctly now.
Restructure code to make sure we send the right IN packets.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
Support multiple serial ports more cleanly
Split out parts of ao.h into separate feature header files
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
|
| |
Clean all of the RCC configuration up after turning on the clocks.
Use the MSI clock during initialization to avoid messing around with
the HSI clock temporarily.
Allow for an external clock on the HSE line.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Emulates the usual CDC-ACM device
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Uses the AIRCR register to force a reset
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The STM32L151 has several SPI busses, and we want to use more than
one, so add a 'bus' parameter to the SPI interfaces. To avoid wasting
time on AVR and CC1111 processors which only use one SPI bus, elide
those parameters from the actual functions by wrapping them with
macros.
Configuring chip select is now all macroized so that each chip can
have its own version, allowing the STM to share the various SPI device
drivers with the cc1111 and avr processors. Note that only the M25
driver has been ported; porting the others is 'trivial', but not
necessary at this point.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
The pressure sensor seems happy at this speed.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
|
| |
This moves all of the STM clock configuration into ao_pins.h so that
each product can configure it separately. While doing this, I
discovered that the flash memory mode (64-bit, prefetch, latency 1)
wasn't actually getting set, which is why the CPU refused to work at
32MHz.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Drives the MegaMetrum beeper
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Not well tested yet...
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
It's still not working right, but at least it returns something other
than all zeros...
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
| |
This allows a single user of a DMA channel to reserve it for use
without needing to lock the mutex; this is required for DMA from the
ADC to work on megametrum as it wants to start DMA from an interrupt
handler, which cannot block on a mutex.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
This is plenty fast, and provides nice stable readings.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
Each stm32l has two-point factory temperature calibration data.
Provide access to that for displaying temperature data.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
All SPI transfers are done via DMA, so the DMA interrupts suffice.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
DMA-based driver for the STM analog to digital converter.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Eliminates a cast when assigning to them.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Should save a bit of power
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Should save a bit of power.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
Some architecture specific stuff needs to use core altos code, so
create new ao_arch_funcs.h files per architecture that get pulled in
at the end of ao.h
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
Was accidentally always setting usart1 instead of the per-usart
register. Didn't work too well for other usarts...
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
|
|
| |
Without .rodata*, it would stick the flash copy of the data on top of
any further .rodata* sections. Fortunately, the linker catches that
and complains...
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
This stubs out enough stuff to let ao_config link and work
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Shortens default Makefile a bit
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Rather than requiring the caller to do it.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
When selecting an alternate function, set the pin to alternate mode as
well; there's no sense requiring two separate calls everywhere.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
This also adds the alternate pin configurations for the other two
usarts
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
It's all very specific to the 14-segment display, so
stick it there.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
This enables the 6-digit 14-character display on the STM32L discovery
board and provides an ascii output to it.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
And move USART1 to PB6/PB7 to avoid conflicting with
the LCD pins.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
This preserves the interrupt-enabled bit across context switches
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
This adds a task to blink the LEDs, after first fixing up the LED
output code to enable the GPIO and talk to the right pins for the
discovery board.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
This gets stm-demo working
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
This runs AltOS and talks over the serial port.
Signed-off-by: Keith Packard <keithp@keithp.com>
|