![Logo](ti_logo.svg) |
AM243x Motor Control SDK
09.00.00
|
|
Go to the documentation of this file.
41 #include <drivers/soc.h>
51 #define PRU_ICSSG_DRAM0_SLV_RAM ( CSL_PRU_ICSSG0_DRAM0_SLV_RAM_BASE )
52 #define PRU_ICSSG_DRAM1_SLV_RAM ( CSL_PRU_ICSSG0_DRAM1_SLV_RAM_BASE )
55 #define DEF_SD_CH_CTRL_CH_EN ( 0 )
56 #define BF_CH_EN_MASK ( 0x1 )
57 #define SDFM_CH_CTRL_CH_EN_BF_CH0_EN_SHIFT ( 0 )
58 #define SDFM_CH_CTRL_CH_EN_BF_CH0_EN_MASK ( BF_CH_EN_MASK << SDFM_CH_CTRL_CH_EN_BF_CH0_EN_SHIFT )
59 #define SDFM_CH_CTRL_CH_EN_BF_CH1_EN_SHIFT ( 1 )
60 #define SDFM_CH_CTRL_CH_EN_BF_CH1_EN_MASK ( BF_CH_EN_MASK << SDFM_CH_CTRL_CH_EN_BF_CH1_EN_SHIFT )
61 #define SDFM_CH_CTRL_CH_EN_BF_CH2_EN_SHIFT ( 2 )
62 #define SDFM_CH_CTRL_CH_EN_BF_CH2_EN_MASK ( BF_CH_EN_MASK << SDFM_CH_CTRL_CH_EN_BF_CH2_EN_SHIFT )
63 #define SDFM_CH_CTRL_CH_EN_BF_CH3_EN_SHIFT ( 3 )
64 #define SDFM_CH_CTRL_CH_EN_BF_CH3_EN_MASK ( BF_CH_EN_MASK << SDFM_CH_CTRL_CH_EN_BF_CH3_EN_SHIFT )
65 #define SDFM_CH_CTRL_CH_EN_BF_CH4_EN_SHIFT ( 4 )
66 #define SDFM_CH_CTRL_CH_EN_BF_CH4_EN_MASK ( BF_CH_EN_MASK << SDFM_CH_CTRL_CH_EN_BF_CH4_EN_SHIFT )
67 #define SDFM_CH_CTRL_CH_EN_BF_CH5_EN_SHIFT ( 5 )
68 #define SDFM_CH_CTRL_CH_EN_BF_CH5_EN_MASK ( BF_CH_EN_MASK << SDFM_CH_CTRL_CH_EN_BF_CH5_EN_SHIFT )
69 #define SDFM_CH_CTRL_CH_EN_BF_CH6_EN_SHIFT ( 6 )
70 #define SDFM_CH_CTRL_CH_EN_BF_CH6_EN_MASK ( BF_CH_EN_MASK << SDFM_CH_CTRL_CH_EN_BF_CH6_EN_SHIFT )
71 #define SDFM_CH_CTRL_CH_EN_BF_CH7_EN_SHIFT ( 7 )
72 #define SDFM_CH_CTRL_CH_EN_BF_CH7_EN_MASK ( BF_CH_EN_MASK << SDFM_CH_CTRL_CH_EN_BF_CH7_EN_SHIFT )
73 #define SDFM_CH_CTRL_CH_EN_BF_CH8_EN_SHIFT ( 8 )
74 #define SDFM_CH_CTRL_CH_EN_BF_CH8_EN_MASK ( BF_CH_EN_MASK << SDFM_CH_CTRL_CH_EN_BF_CH8_EN_SHIFT )
75 #define SDFM_CH_CTRL_CH_EN_BF_CH9_EN_SHIFT ( 9 )
76 #define SDFM_CH_CTRL_CH_EN_BF_CH9_EN_MASK ( BF_CH_EN_MASK << SDFM_CH_CTRL_CH_EN_BF_CH9_EN_SHIFT )
77 #define SDFM_CH_CTRL_CH_EN_SHIFT ( SDFM_CH_CTRL_CH_EN_BF_CH0_EN_SHIFT )
78 #define SDFM_CH_CTRL_CH_EN_MASK \
79 ( SDFM_CH_CTRL_CH_EN_BF_CH0_EN_MASK | \
80 SDFM_CH_CTRL_CH_EN_BF_CH1_EN_MASK | \
81 SDFM_CH_CTRL_CH_EN_BF_CH2_EN_MASK | \
82 SDFM_CH_CTRL_CH_EN_BF_CH3_EN_MASK | \
83 SDFM_CH_CTRL_CH_EN_BF_CH4_EN_MASK | \
84 SDFM_CH_CTRL_CH_EN_BF_CH5_EN_MASK | \
85 SDFM_CH_CTRL_CH_EN_BF_CH6_EN_MASK | \
86 SDFM_CH_CTRL_CH_EN_BF_CH7_EN_MASK | \
87 SDFM_CH_CTRL_CH_EN_BF_CH8_EN_MASK | \
88 SDFM_CH_CTRL_CH_EN_BF_CH9_EN_MASK )
90 #define SDFM_MAIN_FILTER_MASK ( 1 )
91 #define SDFM_MAIN_FILTER_SHIFT ( 0 )
93 #define SDFM_MAIN_INTERRUPT_MASK ( 1 )
94 #define SDFM_MAIN_INTERRUPT_SHIFT ( 1 )
97 #define SDFM_RECFG_REINIT ( SDFM_RECFG_BF_RECFG_REINIT_MASK )
99 #define SDFM_RECFG_CLK ( SDFM_RECFG_BF_RECFG_CLK_MASK )
101 #define SDFM_RECFG_OSR ( SDFM_RECFG_BF_RECFG_OSR_MASK )
103 #define SDFM_RECFG_TRIG_SAMP_TIME ( SDFM_RECFG_BF_RECFG_TRIG_SAMPLE_TIME_MASK )
105 #define SDFM_RECFG_TRIG_SAMP_CNT ( SDFM_RECFG_BF_RECFG_TRIG_SAMPLE_CNT_MASK )
107 #define SDFM_RECFG_CH_EN ( 1<<6 )
109 #define SDFM_RECFG_FD ( SDFM_RECFG_BF_RECFG_FD_MASK )
111 #define SDFM_RECFG_TRIG_OUT_SAMP_BUF ( SDFM_RECFG_BF_RECFG_TRIG_OUT_SAMP_BUF_MASK )
113 #define IEP_DEFAULT_INC 0x1
119 #define ICSSG_SD_SAMP_CH_BUF_SZ ( 128 )
120 #define NUM_CH_SUPPORTED ( 3 )
132 typedef struct SDFM_CfgSdClk_s
148 typedef struct SDFM_CfgTrigger_s
166 typedef struct SDFM_CfgIep_s
183 typedef struct SDFM_GpioParams_s{
195 typedef struct SDFM_ChCtrl_s
216 typedef struct SDFM_ClkSourceParms_s
230 typedef struct SDFM_ThresholdParms_s
246 typedef struct SDFM_Cfg_s
273 typedef struct SDFM_Ctrl_s
283 typedef struct SDFM_Interface_s{
306 typedef struct SDFM_s {
volatile uint32_t sdfm_ch_id
Definition: sdfm_drv.h:198
volatile uint8_t sd_clk_inv
Definition: sdfm_drv.h:137
volatile uint8_t iep_inc_value
Definition: sdfm_drv.h:169
SDFM_CfgTrigger sdfm_cfg_trigger
Definition: sdfm_drv.h:295
volatile uint16_t reserved2
Definition: sdfm_drv.h:206
uint32_t iep_clock
Definition: sdfm_drv.h:310
Structure defining SDFM configuration interface.
Definition: sdfm_drv.h:247
volatile uint8_t ch_id
Definition: sdfm_drv.h:249
SDFM_CfgIep sdfm_cfg_iep_ptr
Definition: sdfm_drv.h:287
SDFM_ClkSourceParms sdfm_clk_parms
Definition: sdfm_drv.h:261
volatile uint32_t reserved1
Definition: sdfm_drv.h:257
SDFM_Ctrl sdfm_ctrl
Definition: sdfm_drv.h:285
volatile uint32_t reserved3
Definition: sdfm_drv.h:237
volatile uint8_t sdfm_pru_id
Definition: sdfm_drv.h:280
volatile uint16_t enable_comparator
Definition: sdfm_drv.h:200
#define NUM_CH_SUPPORTED
Definition: sdfm_drv.h:120
volatile uint8_t sdfm_en_ack
Definition: sdfm_drv.h:278
uint32_t sdfm_clock
Definition: sdfm_drv.h:309
Structure defining SDFM base address and values to toggle GPIO pins.
Definition: sdfm_drv.h:183
volatile uint8_t osr
Definition: sdfm_drv.h:253
volatile uint32_t clr_val_addr
Definition: sdfm_drv.h:186
volatile uint32_t cnt_epwm_prd
Definition: sdfm_drv.h:172
Structure defining SDFM thresholds parametrs.
Definition: sdfm_drv.h:231
volatile uint32_t second_samp_trig_time
Definition: sdfm_drv.h:155
volatile uint32_t set_val_addr
Definition: sdfm_drv.h:185
SDFM_Interface * p_sdfm_interface
Definition: sdfm_drv.h:312
volatile uint8_t clk_inv
Definition: sdfm_drv.h:221
SDFM_ChCtrl sdfm_ch_ctrl
Definition: sdfm_drv.h:291
uint8_t iep_inc
Definition: sdfm_drv.h:311
Definition: sdfm_drv.h:283
volatile uint8_t filter_type
Definition: sdfm_drv.h:251
volatile uint8_t reserved2
Definition: sdfm_drv.h:259
Structure defining SDFM IEP configuration.
Definition: sdfm_drv.h:167
volatile uint8_t sd_prd_clocks
Definition: sdfm_drv.h:135
volatile uint32_t first_samp_trig_time
Definition: sdfm_drv.h:153
volatile uint8_t sdfm_en
Definition: sdfm_drv.h:276
Structure defining SDFM clock configuration parameters.
Definition: sdfm_drv.h:133
SDFM_ThresholdParms sdfm_threshold_parms
Definition: sdfm_drv.h:255
volatile uint16_t reserved1
Definition: sdfm_drv.h:204
Structure defining clk source for sdfm ch.
Definition: sdfm_drv.h:217
Structure defining SDFM triggered mode trigger times.
Definition: sdfm_drv.h:149
volatile uint16_t en_double_nc_sampling
Definition: sdfm_drv.h:151
Structure defining SDFM control fields.
Definition: sdfm_drv.h:274
volatile uint32_t nc_prd_iep_cnt
Definition: sdfm_drv.h:157
SDFM_CfgSdClk sd_clk
Definition: sdfm_drv.h:289
uint8_t pru_id
Definition: sdfm_drv.h:308
volatile uint16_t output_data_format
Definition: sdfm_drv.h:202
Structure defining SDFM interface.
Definition: sdfm_drv.h:306
volatile uint32_t high_threshold
Definition: sdfm_drv.h:233
Structure defining SDFM channel control fields.
Definition: sdfm_drv.h:196
volatile uint32_t write_val
Definition: sdfm_drv.h:184
volatile uint32_t low_threshold
Definition: sdfm_drv.h:235
volatile uint32_t clk_source
Definition: sdfm_drv.h:219