summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* Add support for multiple serial ports on STM32LKeith Packard2012-03-28
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* Save/restore PRIMASK register on Cortex-M3Keith Packard2012-03-28
| | | | | | This preserves the interrupt-enabled bit across context switches Signed-off-by: Keith Packard <keithp@keithp.com>
* Don't disable interrupts before saving interrupt flag on AVRKeith Packard2012-03-28
| | | | | | | This ignores the interrupt disabled state, so we'd always leave ao_yield with interrupts disabled. Signed-off-by: Keith Packard <keithp@keithp.com>
* Add .gitignore file to stm-bringupKeith Packard2012-03-28
| | | | | | Ignore generated binaries Signed-off-by: Keith Packard <keithp@keithp.com>
* Fix STM LED driver and blink LEDs on discovery boardKeith Packard2012-03-28
| | | | | | | | 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>
* Basic OS running on STM32LKeith Packard2012-03-28
| | | | | | This gets stm-demo working Signed-off-by: Keith Packard <keithp@keithp.com>
* Add AO_PANIC_STACKKeith Packard2012-03-28
| | | | | | Provide a panic code for stack overflow. Signed-off-by: Keith Packard <keithp@keithp.com>
* When debugging, send ao_panic message to ao_debug_outKeith Packard2012-03-28
| | | | | | | Use the low-level debug hooks to get the panic state sent to the serial port. Signed-off-by: Keith Packard <keithp@keithp.com>
* When debugging, send pre-init output to ao_debug_outKeith Packard2012-03-28
| | | | | | | Before tasking is running, send output to ao_debug_out to help debug system initialization. Signed-off-by: Keith Packard <keithp@keithp.com>
* Incorrect type in ao_task_info for wchanKeith Packard2012-03-28
| | | | | | Would truncate 32-bit pointers on arm. Signed-off-by: Keith Packard <keithp@keithp.com>
* Add stm-demo programKeith Packard2012-03-28
| | | | | | This runs AltOS and talks over the serial port. Signed-off-by: Keith Packard <keithp@keithp.com>
* Add stm bringup timers and move most of the setup code to the stm dirKeith Packard2012-03-28
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* Add STM platform and stm-bringup demo programKeith Packard2012-03-28
| | | | | | | | The stm-bringup doesn't run altos, it just initializes the device and writes stuff over a serial port. Works on the STM32L Discovery board at least, should do stuff on other boards too. Signed-off-by: Keith Packard <keithp@keithp.com>
* 'stdin' is a special name in some compiler environments, don't use it.Keith Packard2012-03-28
| | | | | | Switch to 'in' in the prototype for altos_serial_set_stdin. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make sure config values are loaded in 'c s' commandKeith Packard2012-03-28
| | | | | | | | ao_config_get may not have been called when ao_config_show is invoked by the user, so make sure the config values are loaded before showing uninitialized data. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Reset config version if it's too large as wellKeith Packard2012-03-27
| | | | | | | | Any future config values will get trashed if we down grade the firmware, so we must reset the firmware version whenever it gets written. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Optimize ao_freq_to_set a bitKeith Packard2012-03-27
| | | | | | Reduces size from 327 bytes to 287 bytes Signed-off-by: Keith Packard <keithp@keithp.com>
* Do radio settings solely by frequencyKeith Packard2012-03-26
| | | | | | | Compute the radio setting needed based on the calibration value provided and the requested frequency. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Require callsign match in packet codeKeith Packard2012-03-26
| | | | | | | | | | | Ignore packets with mismatching callsigns to avoid accidental connections between devices controlled by different stations. As a special case, if the device is configured with the default callsign (N0CALL), then let anyone connect. This allows configuration of new devices without needing to change the ground station callsign. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Set correct registers for serial0 baudKeith Packard2012-01-03
| | | | | | oops. not going to work very well setting serial 1. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: flush stdout when fifo from arduino serial port is emptyKeith Packard2012-01-03
| | | | | | This avoids leaving bytes pending inside altos Signed-off-by: Keith Packard <keithp@keithp.com>
* Build teleshield by defaultKeith Packard2012-01-03
|
* altos: Add support for UART0 in async modeKeith Packard2012-01-03
| | | | | | And copy bytes from it to stdout. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: More _asm -> __asm changesKeith Packard2011-12-30
| | | | | | Missed a few last time Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Clean up for SDCC 3.1 - more keywordsKeith Packard2011-12-30
| | | | | | | | _asm -> __asm sbit -> __sbit remove variables named 'data' Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: SDCC 3.1 wants __at instead of atKeith Packard2011-12-30
| | | | | | Older SDCC would accept __at, so just replace all occurances unconditionally. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch teleshield to use radio slave modeKeith Packard2011-12-27
| | | | | | And bring it up at startup time by default Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add teleshield directory and bring-up codeKeith Packard2011-12-27
| | | | | | | This is cobbled together from various existing bits, but should at least provide some ability to test a teleshield board. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Create TeleMetrum v1.2 directoryKeith Packard2011-12-17
| | | | | | | The hardware is software-compatible with v1.1, but it's nice to have the right version number in all of the files. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Fix pad orientation for pre-1.1 boardsKeith Packard2011-11-13
| | | | | | | They use a different code path for accel as they don't have the VCC compensation code in place. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add startup and config (view only) pages to TTKeith Packard2011-11-12
| | | | | | The config page needs a pile of work before it's useful. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Enable packet master and debug in TTKeith Packard2011-11-12
| | | | | | The code was already getting linked in, so we might as well use it. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Fix sdcdb settings for telemetrum v1.0Keith Packard2011-11-12
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Trim skytraq NMEA messages. Shrink NMEA header matching codeKeith Packard2011-11-12
| | | | | | | | | | Tell the skytraq to not bother sending a bunch of the NMEA messages that we don't parse. Explicitly look for 'G' follows by 'P' instead of having some general header matching code. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Allow TT/TBT reports to escape landed stateKeith Packard2011-11-12
| | | | | | | The TM altitude reporting code kept beeping out state and altitude forever, which isn't very useful on TBT or TT. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Remove LCD debugging codeKeith Packard2011-11-12
| | | | | | This isn't needed anymore. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosui: Add ao_lcd_cursor_on/offKeith Packard2011-11-12
| | | | | | This shows or hides a blinking cursor on the LCD. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add configurable set of channels for TTKeith Packard2011-11-12
| | | | | | | This adds the channel list for TT, which will be configured by AltosUI. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Export 'ao_cmd_is_white' for use by other codeKeith Packard2011-11-12
| | | | | | This function tests the current input character. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Set default flight log max to 127k on TM v0.1Keith Packard2011-11-12
| | | | | | The flash part on v0.1 boards is only 128kB. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Handle internal and external telem monitoring requestsKeith Packard2011-11-12
| | | | | | | | | | | | Record separate internal vs external monitoring state, allowing both to happen at the same time, and when either is turned off, the other keeps working. This also adds disable/enable so that other radio users can temporarily take over the radio; monitoring will resume when the other radio user is finished. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Check pdata+xdata memory usage during buildKeith Packard2011-11-12
| | | | | | | | | | | The sdcc linker doesn't check the sum of pdata+xdata memory usage, it only ensures that xdata itself is small enough. This doesn't keep xdata below the end of usable ram on the cc1111 though (0xfe000). Fix up the check-stack program to also make sure all of xdata fits in available memory. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Set SPI fill value each time it is used.Keith Packard2011-11-12
| | | | | | | This ensures that the final MOSI pin value will be high after a receive is finished. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Initialize DMA config address at boot timeKeith Packard2011-11-12
| | | | | | | Instead of resetting these each time a transfer is started, just set them once at boot time. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: debounce buttonsKeith Packard2011-11-12
| | | | | | | Provide API to clear out any button events that happen during startup, and then discard button events 'too close' together. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Build TeleTerra v0.2 by defaultKeith Packard2011-11-12
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make ao_xmem funcs require __xdata void * instead of castingKeith Packard2011-11-11
| | | | | | | | | | | | Having an explicit cast in the ao_xmem wrapper macros caused the compiler to generate garbage values for pdata addresses, making the upper byte 0x00 instead of the required 0xf0. Removing the casts from the ao_xmem macros exposed this problem, so a new PDATA_TO_XDATA macros was added, along with a CODE_TO_XDATA macro which serve to cast pointers, with suitable address modifications, so that things work again. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Shrink Skytraq NMEA parsing - common nmea_finish codeKeith Packard2011-11-11
| | | | | | | This shares the checksum testing across all three lines, saving another 103 bytes. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: shrink Skytraq NMEA parsing moreKeith Packard2011-11-11
| | | | | | This cuts another 78 bytes Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Shrink code size of Skytraq NMEA parserKeith Packard2011-11-11
| | | | | | | Just mess around with the code to make it smaller. These patches save 173 bytes. Signed-off-by: Keith Packard <keithp@keithp.com>