CROSS Technical Documentation User Manual and Technical Doc.
INFN Milano Bicocca
Loading...
Searching...
No Matches
Multiplexer_strutture_funzioni_definizioni.h File Reference
#include <stdint.h>

Go to the source code of this file.

Macros

#define Analog_Mux_0_chip_select   0x80
 
#define Analog_Mux_1_chip_select   0x02
 
#define Analog_Mux_maschera_quali_linee   0x07
 
#define Analog_Mux_maschera_quale_chip   (Analog_Mux_maschera_quali_linee +1)
 
#define posizione_del_pattern_delle_linee   4
 
#define MUX_analog_board_down   1<<5
 This is the offset to sum to manage the mux lines of mainboard down.
 
#define MUX_analog_postboard_0   0 << 3
 
#define MUX_analog_postboard_1   1 << 3
 
#define MUX_analog_postboard_2   2 << 3
 
#define MUX_analog_postboard_3   3 << 3
 

Enumerations

enum  node_voltage_Mux_0 {
  node_voltage_Analog_Mux_0_offset = 32 , node_voltage_Analog_Mux_meas_bias_pos_ch0 = node_voltage_Analog_Mux_0_offset , node_voltage_Analog_Mux_meas_bias_neg_ch0 , node_voltage_Analog_Mux_meas_bias_pos_ch1 ,
  node_voltage_Analog_Mux_meas_bias_neg_ch1 , node_voltage_Analog_Mux_meas_bias_pos_ch2 , node_voltage_Analog_Mux_meas_bias_neg_ch2 , node_voltage_Analog_Mux_meas_bias_pos_ch3 ,
  node_voltage_Analog_Mux_meas_bias_neg_ch3
}
 
enum  node_voltage_Mux_1 {
  node_voltage_Analog_Mux_1_offset =40 , node_voltage_Analog_Mux_meas_bias_pos_ch4 = node_voltage_Analog_Mux_1_offset , node_voltage_Analog_Mux_meas_bias_neg_ch4 , node_voltage_Analog_Mux_meas_bias_pos_ch5 ,
  node_voltage_Analog_Mux_meas_bias_neg_ch5 , node_voltage_Analog_Mux_meas_input_bias_pos , node_voltage_Analog_Mux_meas_input_bias_neg
}
 
enum  node_res_fisse_Mux_1 { node_voltage_Analog_Mux_1_res_fissa =48 , node_voltage_Analog_Mux_meas_none , node_voltage_Analog_Mux_meas_10k_to_gnd }
 
enum  Mux_analog_postmainboard_lines_0 {
  Mux_analog_postmainboard_lines_0_Analog_Mux_2_out = 0 << 3 , Mux_analog_postmainboard_lines_0_Analog_Mux_1_out , Mux_analog_postmainboard_lines_0_PRE_neg_1 , Mux_analog_postmainboard_lines_0_PRE_neg_2 ,
  Mux_analog_postmainboard_lines_0_PRE_neg_3 , Mux_analog_postmainboard_lines_0_PRE_neg_4 , Mux_analog_postmainboard_lines_0_PRE_neg_5 , Mux_analog_postmainboard_lines_0_PRE_neg_6
}
 
enum  Mux_analog_postmainboard_lines_1 {
  Mux_analog_postmainboard_lines_1_PRE_pos_1 = 1 << 3 , Mux_analog_postmainboard_lines_1_PRE_pos_2 , Mux_analog_postmainboard_lines_1_PRE_pos_3 , Mux_analog_postmainboard_lines_1_PRE_pos_4 ,
  Mux_analog_postmainboard_lines_1_PRE_pos_5 , Mux_analog_postmainboard_lines_1_PRE_pos_6 , Mux_analog_postmainboard_lines_1_SenseVreg_p , Mux_analog_postmainboard_lines_1_SenseVreg_n
}
 
enum  Mux_analog_postmainboard_lines_2 {
  Mux_analog_postmainboard_lines_2_SenseGA = 2 << 3 , Mux_analog_postmainboard_lines_2_Vcc_meas , Mux_analog_postmainboard_lines_2_PGA_Output_pos_1 , Mux_analog_postmainboard_lines_2_PGA_Output_pos_2 ,
  Mux_analog_postmainboard_lines_2_PGA_Output_pos_3 , Mux_analog_postmainboard_lines_2_PGA_Output_pos_4 , Mux_analog_postmainboard_lines_2_PGA_Output_pos_5 , Mux_analog_postmainboard_lines_2_PGA_Output_pos_6
}
 
enum  Mux_analog_postmainboard_lines_3 {
  Mux_analog_postmainboard_lines_3_Vee_meas = 3 << 3 , Mux_analog_postmainboard_lines_3_Vdig_5V_meas , Mux_analog_postmainboard_lines_3_PGA_Output_neg_1 , Mux_analog_postmainboard_lines_3_PGA_Output_neg_2 ,
  Mux_analog_postmainboard_lines_3_PGA_Output_neg_3 , Mux_analog_postmainboard_lines_3_PGA_Output_neg_4 , Mux_analog_postmainboard_lines_3_PGA_Output_neg_5 , Mux_analog_postmainboard_lines_3_PGA_Output_neg_6
}
 

Functions

void Analog_mux_line_to_select_deselect (uint8_t scheda_su_scheda_giu, uint8_t line_to_select, uint8_t select_1_deselect_0)
 Selection of the line to mesure with the analog MUX of the mainboard, driven by the I2C->parallel mux.
 
void Analog_mux_line_to_select_deselect_for_postmainboard (uint8_t scheda_su_scheda_giu, uint8_t line_to_select, uint8_t select_1_deselect_0)
 Selection of the line to measure with the analog MUX's of the postmainboard, directely driven by the microprocessor port.