23 #include <sys/types.h> 27 #include <sys/select.h> 31 #include <pruss_intc_mapping.h> 49 #define WAKEUP 0x02000000 50 #define STANDBY 0x04000000 51 #define RESET 0x06000000 52 #define START 0x08000000 53 #define STOP 0x0A000000 54 #define OFFSETCAL 0x1A000000 55 #define RDATAC 0x10000000 56 #define SDATAC 0x11000000 57 #define RDATA 0x12000000 58 #define RREG 0x20000000 59 #define WREG 0x40000000 65 #define CONFIG1 0x01000000 66 #define CONFIG2 0x02000000 67 #define CONFIG3 0x03000000 68 #define CH1SET 0x05000000 69 #define CH2SET 0x06000000 70 #define CH3SET 0x07000000 71 #define CH4SET 0x08000000 72 #define CH5SET 0x09000000 73 #define CH6SET 0x0A000000 74 #define CH7SET 0x0B000000 75 #define CH8SET 0x0C000000 98 #define CONFIG1DEFAULT 0x9000 99 #define CONFIG2DEFAULT 0xE000 100 #define CONFIG3DEFAULT 0xE800 105 #define MMAP_FILE "/sys/class/uio/uio0/maps/map1/" 106 #define PRU_CODE "/lib/firmware/rocketlogger_spi.bin" 114 #define PRECISION_HIGH 24 115 #define PRECISION_LOW 16 124 #define PRU_TIMEOUT 3 136 #define NUMBER_ADC_COMMANDS 12
int pru_wait_event_timeout(unsigned int event, unsigned int timeout)
rl_pru_state state
Current PRU state.
#define NUMBER_ADC_COMMANDS
Number of ADC commands.
enum pru_state rl_pru_state
Continuous sampling mode.
int pru_sample(FILE *data, struct rl_conf *conf)
uint32_t buffer_size
Shared buffer size.
uint32_t number_commands
Number of ADC commands to send.
uint32_t sample_limit
Samples to take (0 for continuous)
uint32_t sample_size
Sample size in shared memory.
int pru_data_setup(struct pru_data_struct *pru, struct rl_conf *conf, uint32_t avg_factor)
uint32_t precision
ADC precision (in bit)
void pru_set_state(rl_pru_state state)
uint32_t buffer0_location
Pointer to shared buffer 0.
uint32_t buffer1_location
Pointer to shared buffer 1.
uint32_t commands[NUMBER_ADC_COMMANDS]
ADC commands to send.
void * pru_wait_event(void *voidEvent)