Top level player state machine. This module keeps track of what state the player is in (Waiting to pair or Paired). The module also processes all received messages from the UART RX. Decision trees are used to determine the content of the message and then report out to other state machines to control outputs.
playerprotocolfsm.c | |
File Size: | 18 kb |
File Type: | c |
playerprotocolfsm.h | |
File Size: | 0 kb |
File Type: | h |
UART receive state machine. This machine control receiving messages from the XBee over UART. The machine does some simple checking of the message to ensure a good packet. Contents of the message are stored in memory buffer. Upon receiving a good checksum the machine alerts other machines that there is a good packet to be processed.
e128uartrxfsm.c | |
File Size: | 15 kb |
File Type: | c |
e128uartrxfsm.h | |
File Size: | 1 kb |
File Type: | h |
UART transmit state machine. This machine receives content to send over UART via the XBee. The massage is packaged correctly and then transmitted byte-by-byte via UART.
e128uarttxfsm.c | |
File Size: | 9 kb |
File Type: | c |
e128uarttxfsm.h | |
File Size: | 1 kb |
File Type: | h |
Servo control module. This module sets up servo control using Timer 1 and 2. The module also provided functions to set servo values for 5 different servos.
enchantmentservo.c | |
File Size: | 5 kb |
File Type: | c |
enchantmentservo.h | |
File Size: | 1 kb |
File Type: | h |
Event checkers. This module contains the event checker used to generate events for the Player system. These event checkers include: UART receive flag check and SPI SS check.
eventcheckers.c | |
File Size: | 8 kb |
File Type: | c |
eventcheckers.h | |
File Size: | 0 kb |
File Type: | h |
Flux capacitor light controller module. This modules takes events from the player protocol module and controls the light levels on the flux capacitor energy level display.
fluxservice.c | |
File Size: | 4 kb |
File Type: | c |
fluxservice.h | |
File Size: | 0 kb |
File Type: | h |
Player outputs service (rudders, motors, hook). The service gets events from the player protocol module and sets the control outputs of the player. Fan speeds, rudder settings, and the hook servo are all set from this module.
playeroutputsservice.c | |
File Size: | 9 kb |
File Type: | c |
playeroutputsservice.h | |
File Size: | 0 kb |
File Type: | h |
PWM control module. This module initialized the PWM system and pro ides function for setting each PWM channel.
pwm.c | |
File Size: | 6 kb |
File Type: | c |
pwm.h | |
File Size: | 0 kb |
File Type: | h |
SPI state machine. This machine initialize the SPI peripheral and controls communication with the assembly PIC used to communicate with the LiFKIM.
spi.c | |
File Size: | 7 kb |
File Type: | c |
spi.h | |
File Size: | 0 kb |
File Type: | h |
Initialization and Main. This module sets up various register and runs the Main() function.
testmain.c | |
File Size: | 2 kb |
File Type: | c |
Communication definitions. There definition are use throughout the code to provide a clear way for functions to access different parts of UART message stored in memory.
commdefines.h | |
File Size: | 0 kb |
File Type: | h |
The following ZIP archives list all source code and headers used on the Player E128.
sources.zip | |
File Size: | 146 kb |
File Type: | zip |
headers.zip | |
File Size: | 69 kb |
File Type: | zip |