1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-12-04 12:24:11 +01:00
LibrePilot/flight/AHRS/inc
stac e3824a6d78 ahrs spi: Add AHRS SPI link management FSM
To the outside world, the AHRS can be in one of only a few
primary states:
 Not present - AHRS is absent or non-responsive via SPI
 Inactive - Only link-level status messages are processed
 Ready - Ready to receive the next application level message
 Busy - Application level message is being processed

Internal to the AHRS, there are many more states that need to be
managed.  This FSM provides the necessary decoupling between the
ISR (which is being driven by the SPI link) and the AHRS main
processing loop which must continue to run its filters independently
of the SPI messaging rate.

With this structure, SPI messages can be received at any time but
processed at only specific points within the filter chains.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1005 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-07-04 02:21:22 +00:00
..
ahrs_fsm.h ahrs spi: Add AHRS SPI link management FSM 2010-07-04 02:21:22 +00:00
ahrs.h Initial commit of AHRS project code base. 2010-02-28 12:10:48 +00:00
pios_board.h ahrs spi: Add AHRS SPI link management FSM 2010-07-04 02:21:22 +00:00
pios_config.h pios spi: support both master and slave configs 2010-06-13 04:23:44 +00:00