MotorWare f2806x Module API Documentation

- Main Page
- Modules
- Data Structures
- Files

- File List
- Globals

drv8312kit_revD/f28x/f2806x/src/float/hal_obj.h
Go to the documentation of this file.
1 #ifndef _HAL_OBJ_H_
2 #define _HAL_OBJ_H_
3 /* --COPYRIGHT--,BSD
4 * Copyright (c) 2012, Texas Instruments Incorporated
5 * All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
9 * are met:
10 *
11 * * Redistributions of source code must retain the above copyright
12 * notice, this list of conditions and the following disclaimer.
13 *
14 * * Redistributions in binary form must reproduce the above copyright
15 * notice, this list of conditions and the following disclaimer in the
16 * documentation and/or other materials provided with the distribution.
17 *
18 * * Neither the name of Texas Instruments Incorporated nor the names of
19 * its contributors may be used to endorse or promote products derived
20 * from this software without specific prior written permission.
21 *
22 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
23 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
24 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
25 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
26 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
27 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
28 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
29 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
30 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
31 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
32 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33 * --/COPYRIGHT--*/
34
39
40
41 // drivers
42 #include "sw/drivers/adc/src/32b/f28x/f2806x/adc.h"
43 #include "sw/drivers/clk/src/32b/f28x/f2806x/clk.h"
44 #include "sw/drivers/cpu/src/32b/f28x/f2806x/cpu.h"
45 #include "sw/drivers/flash/src/32b/f28x/f2806x/flash.h"
46 #include "sw/drivers/gpio/src/32b/f28x/f2806x/gpio.h"
47 #include "sw/drivers/osc/src/32b/f28x/f2806x/osc.h"
48 #include "sw/drivers/pie/src/32b/f28x/f2806x/pie.h"
49 #include "sw/drivers/pll/src/32b/f28x/f2806x/pll.h"
50 #include "sw/drivers/pwm/src/32b/f28x/f2806x/pwm.h"
51 #include "sw/drivers/pwmdac/src/32b/f28x/f2806x/pwmdac.h"
52 #include "sw/drivers/pwr/src/32b/f28x/f2806x/pwr.h"
53 #include "sw/drivers/qep/src/32b/f28x/f2806x/qep.h"
54 #include "sw/drivers/spi/src/32b/f28x/f2806x/spi.h"
55 #include "sw/drivers/timer/src/32b/f28x/f2806x/timer.h"
56 #include "sw/drivers/wdog/src/32b/f28x/f2806x/wdog.h"
57
58 #ifdef QEP
59 #include "sw/drivers/qep/src/32b/f28x/f2806x/qep.h"
60 #endif
61
62 // modules
63 #include "sw/modules/offset/src/32b/offset.h"
64 #include "sw/modules/types/src/types.h"
65 #include "sw/modules/usDelay/src/32b/usDelay.h"
66 #include "sw/modules/hal/src/float/hal_data.h"
67
68
69
70 // platforms
71 #include "user.h"
72
73
78
79
80
81 #ifdef __cplusplus
82 extern "C" {
83 #endif
84
85
91 typedef struct _HAL_Obj_
92 {
93 ADC_Handle adcHandle;
94
95 CLK_Handle clkHandle;
96
97 CPU_Handle cpuHandle;
98
99 FLASH_Handle flashHandle;
100
101 GPIO_Handle gpioHandle;
102
103 OSC_Handle oscHandle;
104
105 PIE_Handle pieHandle; //<! the PIE handle
106
107 PLL_Handle pllHandle;
108
109 PWM_Handle pwmHandle[3]; //<! the PWM handles
110
111 PWMDAC_Handle pwmDacHandle[3]; //<! the PWMDAC handles
112
113 PWR_Handle pwrHandle; //<! the power handle
114
115 TIMER_Handle timerHandle[3]; //<! the timer handles
116
117 WDOG_Handle wdogHandle;
118
119 HAL_AdcData_t adcBias;
120
121 float_t current_sf;
122
123 float_t voltage_sf;
124
125 uint_least8_t numCurrentSensors;
126 uint_least8_t numVoltageSensors;
127
128 SPI_Handle spiAHandle;
129
130 SPI_Handle spiBHandle;
131 SPI_Obj spiB;
132
133 #ifdef QEP
134 QEP_Handle qepHandle[2];
135 #endif
136 } HAL_Obj;
137
138
144 typedef struct _HAL_Obj_ *HAL_Handle;
145
146
149 extern HAL_Obj hal;
150
151
152 #ifdef __cplusplus
153 }
154 #endif // extern "C"
155
157 #endif // end of _HAL_OBJ_H_ definition
158
types.h
Contains the public interface to the types definitions.
_HAL_Obj_::pwmHandle
PWM_Handle pwmHandle[3]
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:152
_HAL_Obj_::spiBHandle
SPI_Handle spiBHandle
the SPI handle
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:172
offset.h
Contains the public interface to the offset (OFFSET) module routines.
_HAL_Obj_::clkHandle
CLK_Handle clkHandle
the clock handle
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:132
_HAL_Obj_::current_sf
_iq current_sf
the current scale factor, amps_pu/cnt
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:164
hal_data.h
Contains the HAL data structures.
_HAL_Obj_::spiB
SPI_Obj spiB
the SPIB object
Definition: hal_obj_both.h:175
_HAL_Obj_::adcBias
HAL_AdcData_t adcBias
the ADC bias
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:162
_HAL_Obj_::flashHandle
FLASH_Handle flashHandle
the flash handle
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:136
_HAL_Obj_::pwmDacHandle
PWMDAC_Handle pwmDacHandle[3]
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:154
usDelay.h
Contains public interface to the micro-second delay function.
HAL_Handle
struct _HAL_Obj_ * HAL_Handle
Defines the HAL handle.
Definition: drv8312kit_revD/f28x/f2806x/src/float/hal_obj.h:144
_HAL_Obj_::numCurrentSensors
uint_least8_t numCurrentSensors
the number of current sensors
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:168
_HAL_Obj_::spiAHandle
SPI_Handle spiAHandle
the SPI handle
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:171
_HAL_Obj_::voltage_sf
_iq voltage_sf
the voltage scale factor, volts_pu/cnt
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:166
_HAL_Obj_::wdogHandle
WDOG_Handle wdogHandle
the watchdog handle
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:160
_HAL_Obj_::oscHandle
OSC_Handle oscHandle
the oscillator handle
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:146
_HAL_Obj_::adcHandle
ADC_Handle adcHandle
the ADC handle
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:130
_HAL_Obj_::pieHandle
PIE_Handle pieHandle
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:148
_HAL_Obj_::cpuHandle
CPU_Handle cpuHandle
the CPU handle
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:134
HAL_Obj
struct _HAL_Obj_ HAL_Obj
Defines the hardware abstraction layer (HAL) data.
hal
HAL_Obj hal
Defines the HAL object.
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal.c:61
_HAL_Obj_::timerHandle
TIMER_Handle timerHandle[3]
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:158
_HAL_AdcData_t_
Defines the ADC data.
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:88
_HAL_Obj_::pwrHandle
PWR_Handle pwrHandle
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:156
_HAL_Obj_::pllHandle
PLL_Handle pllHandle
the PLL handle
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:150
_HAL_Obj_::numVoltageSensors
uint_least8_t numVoltageSensors
the number of voltage sensors
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:169
float_t
float float_t
Defines the portable data type for 32 bit, signed floating-point data.
Definition: types.h:121
_HAL_Obj_
Defines the hardware abstraction layer (HAL) data.
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:128
_HAL_Obj_::gpioHandle
GPIO_Handle gpioHandle
the GPIO handle
Definition: boostxldrv8301_revB/f28x/f2806x/src/hal_obj.h:138