summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* cortexelf-v1: Hook up hex keypad using matrix input driverKeith Packard2017-04-02
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Allow buttons to be high when pressed rather than lowKeith Packard2017-04-02
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: add button matrix driverKeith Packard2017-04-02
| | | | | | Scans the matrix once per clock tick queuing events for changed keys. Signed-off-by: Keith Packard <keithp@keithp.com>
* cortexelf-v1: Hook up AS1107 in test modeKeith Packard2017-04-02
| | | | | | Provide a 'L' command to display values Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add AS1107 LED display driverKeith Packard2017-04-02
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* cortexelf-v1: Add buttonsKeith Packard2017-04-02
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* cortexelf-v1: Add serialblather command.Keith Packard2017-04-02
| | | | | | This reads from stdin and dumps it to both serial ports until you type ~ Signed-off-by: Keith Packard <keithp@keithp.com>
* lisp: Fix up lisp build so projects can get ao_lisp_const.h built as neededKeith Packard2017-04-02
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* stm: Use common flash wait loop instead of inliningKeith Packard2017-04-02
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* cortexelf: Add lisp interpreterKeith Packard2017-04-02
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* cortexelf-v1: Use new memory map to access all flash and ram. Add fat.Keith Packard2017-04-02
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* cortexelf-v1: Hook up serial consoles for debuggingKeith Packard2017-04-02
| | | | | | This will make playing with serial ports easier for now. Signed-off-by: Keith Packard <keithp@keithp.com>
* cortexelf-v1: Fix clock to drive VGA at 640/480. Add sdcard, remove othersKeith Packard2017-04-02
| | | | | | VGA requires the CPU to run at 24MHz. Signed-off-by: Keith Packard <keithp@keithp.com>
* cortexelf-v1: Add ps/2 and vga with graphicsKeith Packard2017-04-02
| | | | | | Start hooking up devices with known drivers. Signed-off-by: Keith Packard <keithp@keithp.com>
* capture pnpservo makefiles tooBdale Garbee2017-04-02
|
* makefiles tooBdale Garbee2017-04-02
|
* initial skeleton of CortexELF supportBdale Garbee2017-04-02
|
* first rough cut at skeleton of code for pnpservo .. altos boots and runsBdale Garbee2017-04-01
|
* altos/nucleo-32: Update lisp files, add beeper supportKeith Packard2017-02-20
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Not quite ready to start making it look like scheme yetKeith Packard2017-02-20
| | | | | | Lots more code to write before these symbols can be exposed. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Support timer 2/3 for the beeperKeith Packard2017-02-20
| | | | | | Tested on timer 2, all four channels. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Support tim1 beeper channel other than 3Keith Packard2017-02-20
| | | | | | ch1 was broken and ch2 didn't have any code at all. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telemini-v3.0: Add beeper defines needed for more general beeper codeKeith Packard2017-02-20
| | | | | | The beeper code now wants to know which timer, port and pin are in use. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add stm-vga demo projectKeith Packard2017-02-20
| | | | | | Uses the VGA and PS/2 drivers to provide an interactive console. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stm: Add draw and lisp to make search paths.Keith Packard2017-02-20
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add console driver using VGA and PS/2Keith Packard2017-02-20
| | | | | | Provides an interactive text console. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add PS/2 keyboard driverKeith Packard2017-02-20
| | | | | | Interrupt driven, includes standard US keymap. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add VGA driver for STM32L processorsKeith Packard2017-02-20
| | | | | | | Generates vsync/hsync using timers and pixel data using the SPI port. 320x240 video using 640x480 mode and a 24MHz "pixel" clock. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add bitmap drawing codeKeith Packard2017-02-20
| | | | | | Includes solid fills, text and lines. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stm: Add nvic priority register fields. Add more TIM234 defines.Keith Packard2017-02-20
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stm: Make i2c code handle PCLK1 of 24MHzKeith Packard2017-02-20
| | | | | | Just adds the necessary defines to the code. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stm: Allow DMA channels to be hijacked by other codeKeith Packard2017-02-20
| | | | | | | This lets code which needs finer control over DMA to use the channel without interference, and leaves the DMA engine running so that it can. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Allow for console to be used for stdioKeith Packard2017-02-20
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/avr: Avoid warning about unused args in stdio_put and stdio_getKeith Packard2017-02-20
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stm: Allow use basepri instead of primask for masking interruptsKeith Packard2017-02-20
| | | | | | | | | | | | This allows for high priority interrupts (priority 0) to run, even when other interrupts are blocked. Code executing in such interrupt handlers must not attempt to control task execution as that will race with the scheduler. Select this by defining AO_NONMASK_INTERRUPT in ao_pins.h. non-maskable interrupt priority is AO_STM_NVIC_NONMASK_PRIORITY Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stm: Interrupt priority is in the upper bits of the priority maskKeith Packard2017-02-20
| | | | | | | | | | Because the STM32L only offers 16 priority levels, the bottom four bits of each priority mask are not used. All of the interrupt priority settings in the system were using values < 16, making them all effectively the same. Fix that by moving them into the upper 4 bits and using symbolic constants everywhere. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Don't wait while idle if trying to minimize interrupt latencyKeith Packard2017-02-20
| | | | | | | | Keeping the scanout running reasonably means keeping interrupt latency constant, and that requires leaving the CPU running. Don't wait for interrupts when the system is running in this mode. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/cc1111: Remove unneeded initialization in ao_timer.cKeith Packard2017-02-20
| | | | | | | | The timers are all stopped when the chip boots, so no need to stop them. This saves some text space, allowing the current code to (just barely) fit. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telemini-v3.0: Swap main and apogee sense pins.Keith Packard2017-02-20
| | | | | | These were just hooked up wrong in the software. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Split out TeleMini v3 log/telem labelingKeith Packard2017-02-20
| | | | | | | Allow the ground software to know which TeleMini version is in use, even though they are very similar with only ADC values differing. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telemini-v3.0: Finish initial turn-onKeith Packard2017-02-20
| | | | | | | TeleMini v3.0 is nearly working; there are some ADC issues still, and lots of altosui work left to decode the new telemetry packet. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telemini-v3.0: Update to second prototype versionKeith Packard2017-02-20
| | | | | | | | Separate radio xtal means we run the processor at 48MHz. Fix the battery monitoring voltage divider resistor values. Disable most of the code until we've got the radio working. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Initial TeleMini v3.0 codeKeith Packard2017-02-20
| | | | | | For first prototype, which attempted to use the SoC clock for the radio. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Add adc and beep support for TeleMini v3.0Keith Packard2017-02-20
| | | | | | | Note that the ADC code is running very slowly as required by the high impedance dividers on the TeleMini v3.0 pyro circuits. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Require SPI speed to be declared for cc1200Keith Packard2017-02-20
| | | | | | | The cc1200 can't run SPI faster than 10MHz, so make sure every device picks a SPI clock slower than that. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Allow applications to define LEDs for ao_report.cKeith Packard2017-02-20
| | | | | | In case they don't have both a red and green LED. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Allow projects to not use the USB boot loaderKeith Packard2017-02-20
| | | | | | Let applications define HAS_BOOT_LOADER on their own if desired. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Complain if the SPI configuration isn't completeKeith Packard2017-02-20
| | | | | | | | If the pin usage values SPI_1_PA5_PA6_PA7 or SPI_1_PB3_PB4_PB5 aren't defined, then the speed values for the pins aren't going to get set correctly, which results in erratic SPI behaviour. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Allow apps to leave interrupt vectors at 0Keith Packard2017-02-20
| | | | | | | | TeleMini v3.0 doesn't need a boot loader, so we'll have the app run its interrupt vector right at the bottom of the address space instead of copying it to the bottom of ram and reconfiguring the chip to use that. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Eliminate printf format warning with long vs intKeith Packard2017-02-20
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>