##// END OF EJS Templates
The flight software is now compatible with the VHDL 0.1.32...
The flight software is now compatible with the VHDL 0.1.32 Still some bugs at startup, may be due to the VHDL

File last commit:

r167:6c1a4ac855d5 patch rev 2
r171:13f27d43af32 VHDL_0_1_28
Show More
fsw_spacewire.h
53 lines | 1.9 KiB | text/x-c | CLexer
paul
timegen-qt project rebuilt
r167 #ifndef FSW_SPACEWIRE_H_INCLUDED
#define FSW_SPACEWIRE_H_INCLUDED
#include <rtems.h>
#include <grspw.h>
#include <fcntl.h> // for O_RDWR
#include <unistd.h> // for the read call
#include <sys/ioctl.h> // for the ioctl call
#include <errno.h>
#include "fsw_params.h"
#include "tc_handler.h"
#include "TC_types.h"
extern spw_stats spacewire_stats;
extern spw_stats spacewire_stats_backup;
extern rtems_id rtems_task_id_updt;
void resetLocalCoarseTime();
void setLocalCoarseTime( unsigned int value );
unsigned int getLocalCoarseTime();
void incrementLocalCoarseTime();
// TC_LFR_UPDATE_TIME
void initLookUpTableForCRC( void );
void GetCRCAsTwoBytes(unsigned char* data, unsigned char* crcAsTwoBytes, unsigned int sizeOfData);
unsigned int Crc_opt( unsigned char D, unsigned int Chk);
void updateTimePacket(unsigned int time, Packet_TC_LFR_UPDATE_TIME_WITH_HEADER_t *packet);
// RTEMS TASK
rtems_task spiq_task( rtems_task_argument argument );
rtems_task recv_task( rtems_task_argument unused );
rtems_task send_task( rtems_task_argument argument );
rtems_task wtdg_task( rtems_task_argument argument );
rtems_task updt_task( rtems_task_argument unused );
int spacewire_open_link( void );
int spacewire_start_link( int fd );
int spacewire_stop_and_start_link( int fd );
int spacewire_configure_link(int fd );
int spacewire_reset_link( void );
void spacewire_set_NP( unsigned char val, unsigned int regAddr ); // No Port force
void spacewire_set_RE( unsigned char val, unsigned int regAddr ); // RMAP Enable
void spacewire_compute_stats_offsets( void );
void spacewire_update_statistics( void );
void timecode_irq_handler( void *pDev, void *regs, int minor, unsigned int tc );
rtems_timer_service_routine user_routine( rtems_id timer_id, void *user_data );
void (*grspw_timecode_callback) ( void *pDev, void *regs, int minor, unsigned int tc );
#endif // FSW_SPACEWIRE_H_INCLUDED