aboutsummaryrefslogtreecommitdiff
path: root/altimeter.c
Commit message (Collapse)AuthorAge
* First cut of UI state machineDavid Phillips2021-03-13
| | | | | | | This patch adds a first skeleton/draft of the UI state machine, with the altimeter setting logic implemented at a basic level. It also adds a Python script which uses GDB/MI to simulate/inject UI events on a GDB remote (i.e. qemu-avr running the sim copy of the firmware).
* Re-add basic display-only logicDavid Phillips2021-02-27
| | | | This module will be extended later with input and UI/menu logic
* Move debug macros to dedicated headerDavid Phillips2021-02-27
| | | | Also removes use of debug macros from altimeter.c
* Migrate display to new peripheral modelDavid Phillips2021-02-27
|
* Use more generic interface for barometer and timerDavid Phillips2021-02-27
| | | | | | | | | | | This patch abstracts the global symbols for getting barometer readings behind a "struct of function pointers" interface as popular in Linux Kernel, U-Boot and others. This means that unit testing can take place with mocked hardware peripherals. The old "global" drivers are still available, behind explicit function calls required to access the now-static functions. This patch also introduces a timer peripheral software module with the same model, to support future unit testing of altitude rate etc.
* Refactor data_manager to use contextsDavid Phillips2021-02-14
| | | | | | This should be more testable and flexible. Note that the barometer has internal non-resettable state which enforces a certain test order. This should be fixed soon.
* Initialise data manager with ISA pressureDavid Phillips2021-02-13
|
* Add dep files to MakefileDavid Phillips2021-02-13
| | | | Also includes WIP data manager code.
* Set GPIOs for profiling/debugDavid Phillips2020-12-20
|
* Use float-enabled printf implementationDavid Phillips2020-12-20
| | | | | I hadn't realised there is a float-enabled printf implementation in AVR libc, so let's use that instead of our own hack.
* Set a 2 second watchdog timerDavid Phillips2020-12-13
|
* Derive OCR1A from F_CPUDavid Phillips2020-12-13
|
* Initial prototypeDavid Phillips2020-12-13
This patch adds a skeleton of AVR code for a "simulator" target (atmega2560) and for the real intended hardware target (atmega32u4). The simulator target is one that is supported by the QEMU AVR emulator, while the 32u4 is currently not.