MSPM0C1106HallSensoredTrapMotorControlLibrary  1.0
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
hal.h File Reference

Detailed Description

Hall Sensored Trap Motor Control Library HAL Module.


#include "ti_msp_dl_config.h"
#include <ti/iqmath/include/IQmathLib.h>
Include dependency graph for hal.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  HAL_GPIO_Instance_
 Defines a GPIO instance. More...
 
struct  HAL_ADC_instance_
 Defines a ADC instance. More...
 
struct  HAL_Timer_Instance_
 Defines a timer instance. More...
 
struct  HAL_fault_instance
 Defines a fault instance. More...
 

Macros

#define HAL_SYSTEM_FREQ_MHZ   ((int32_t)32)
 Defines the system clock frequency, MHz.
 
#define HAL_PWM_TIMER_FREQ_MHZ   ((int32_t)32)
 Defines the pwm timer frequency in MHz.
 
#define HAL_CAPTURE_TIMER_FREQ   ((int32_t)100000)
 Defines the input capture timer frequency in Hz.
 
#define HAL_VDDA_REFVOLTAGE   (3300)
 Defines default ADC refernce voltage.
 
#define MAX_ADC_VALUE   (4095)
 Defines ADC max value.
 

Typedefs

typedef struct HAL_GPIO_Instance_ HAL_GPIO_Instance
 Defines a GPIO instance.
 
typedef struct HAL_ADC_instance_ HAL_ADC_instance
 Defines a ADC instance.
 
typedef struct HAL_Timer_Instance_ HAL_Timer_Instance
 Defines a timer instance.
 
typedef struct HAL_fault_instance HAL_fault_instance
 Defines a fault instance.
 

Enumerations

enum  HAL_GPIO_STATE {
  HAL_GPIO_PIN_LOW = 0,
  HAL_GPIO_PIN_HIGH
}
 
enum  HAL_ADC_CHAN {
  HAL_ADC_CHAN_0 = 0,
  HAL_ADC_CHAN_1,
  HAL_ADC_CHAN_2,
  HAL_ADC_CHAN_3,
  HAL_ADC_CHAN_4,
  HAL_ADC_CHAN_5,
  HAL_ADC_CHAN_6,
  HAL_ADC_CHAN_MAX
}
 
enum  HAL_GPIO_IN {
  HAL_GPIO_IN_01 = 0,
  HAL_GPIO_IN_02,
  HAL_GPIO_IN_03,
  HAL_GPIO_IN_04,
  HAL_GPIO_IN_MAX
}
 
enum  HAL_GPIO_OUT {
  HAL_GPIO_OUT_01 = 0,
  HAL_GPIO_OUT_02,
  HAL_GPIO_OUT_03,
  HAL_GPIO_OUT_MAX
}
 
enum  HAL_PWM {
  HAL_PWM_01 = 0,
  HAL_PWM_02,
  HAL_PWM_03,
  HAL_PWM_MAX
}
 
enum  HAL_CAPTURE_TIMER {
  HAL_CAPTURE_TIMER_01 = 0,
  HAL_CAPTURE_TIMER_MAX
}
 
enum  HAL_FAULT_INPUT {
  HAL_FAULT_INPUT_1,
  HAL_FAULT_INPUT_MAX
}
 
enum  HAL_SPI_CHAN {
  HAL_SPI_CHAN_0 = 0,
  HAL_SPI_CHAN_MAX
}
 
enum  HAL_SPI_CS {
  HAL_SPI_CS_0 = 0,
  HAL_SPI_CS_1,
  HAL_SPI_CS_2,
  HAL_SPI_CS_3,
  HAL_SPI_CS_MAX
}
 
enum  HAL_ADC_VREF {
  HAL_ADC_VREF_VDDA = 0,
  HAL_ADC_VREF_INTERNAL,
  HAL_ADC_VREF_EXTERNAL
}
 
enum  HAL_ADC_INT_VREF {
  HAL_ADC_INT_VREF_2P5V = DL_VREF_BUFCONFIG_OUTPUT_2_5V,
  HAL_ADC_INT_VREF_1P4V = DL_VREF_BUFCONFIG_OUTPUT_1_4V
}
 
enum  HAL_ADC_IIDX {
  HAL_ADC_IIDX_OVERFLOW = DL_ADC12_IIDX_OVERFLOW,
  HAL_ADC_IIDX_TRIG_OVERFLOW = DL_ADC12_IIDX_TRIG_OVERFLOW,
  HAL_ADC_IIDX_WINDOW_COMP_HIGH = DL_ADC12_IIDX_WINDOW_COMP_HIGH,
  HAL_ADC_IIDX_WINDOW_COMP_LOW = DL_ADC12_IIDX_WINDOW_COMP_LOW,
  HAL_ADC_IIDX_INIFG = DL_ADC12_IIDX_INIFG,
  HAL_ADC_IIDX_DMA_DONE = DL_ADC12_IIDX_DMA_DONE,
  HAL_ADC_IIDX_UNDERFLOW = DL_ADC12_IIDX_UNDERFLOW,
  HAL_ADC_IIDX_MEM0_RESULT_LOADED = DL_ADC12_IIDX_MEM0_RESULT_LOADED,
  HAL_ADC_IIDX_MEM1_RESULT_LOADED = DL_ADC12_IIDX_MEM1_RESULT_LOADED,
  HAL_ADC_IIDX_MEM2_RESULT_LOADED = DL_ADC12_IIDX_MEM2_RESULT_LOADED,
  HAL_ADC_IIDX_MEM3_RESULT_LOADED = DL_ADC12_IIDX_MEM3_RESULT_LOADED,
  HAL_ADC_IIDX_MEM4_RESULT_LOADED = DL_ADC12_IIDX_MEM4_RESULT_LOADED,
  HAL_ADC_IIDX_MEM5_RESULT_LOADED = DL_ADC12_IIDX_MEM5_RESULT_LOADED,
  HAL_ADC_IIDX_MEM6_RESULT_LOADED = DL_ADC12_IIDX_MEM6_RESULT_LOADED,
  HAL_ADC_IIDX_MEM7_RESULT_LOADED = DL_ADC12_IIDX_MEM7_RESULT_LOADED,
  HAL_ADC_IIDX_MEM8_RESULT_LOADED = DL_ADC12_IIDX_MEM8_RESULT_LOADED,
  HAL_ADC_IIDX_MEM9_RESULT_LOADED = DL_ADC12_IIDX_MEM9_RESULT_LOADED,
  HAL_ADC_IIDX_MEM10_RESULT_LOADED = DL_ADC12_IIDX_MEM10_RESULT_LOADED,
  HAL_ADC_IIDX_MEM11_RESULT_LOADED = DL_ADC12_IIDX_MEM11_RESULT_LOADED
}
 

Functions

void HAL_init ()
 Initializes the hal object. More...
 
bool HAL_readGPIOPin (HAL_GPIO_IN pin)
 Reads a GPIOpin. More...
 
void HAL_writeGPIOPin (HAL_GPIO_OUT pin, HAL_GPIO_STATE value)
 Write to GPIOpin. More...
 
void HAL_setDeadband (HAL_PWM pwm, uint16_t deadband)
 Sets deadband for timer. More...
 
void HAL_setPWMFreq (HAL_PWM pwm, uint32_t PWMFreq)
 Sets PWMfreq for all timers. More...
 
void HAL_writeSPI16 (HAL_SPI_CHAN chan, HAL_SPI_CS cs, uint16_t data)
 Write data to spi. More...
 
uint16_t HAL_readSPI16 (HAL_SPI_CHAN chan, HAL_SPI_CS cs)
 Read data from spi. More...
 
void HAL_setADCRefVoltage (HAL_ADC_CHAN chan, uint16_t voltage_mV)
 Set ADC reference voltage. More...
 
uint32_t HAL_getmvFromADC (HAL_ADC_CHAN chan)
 Get milli volts from ADC. More...
 
_iq20 HAL_getIQ20VoltageFromADC (HAL_ADC_CHAN chan)
 Get volts from ADC in _IQ20. More...
 
HAL_ADC_IIDX HAL_processADCIRQ (ADC12_Regs *adcInst)
 Read ADC values from results. More...
 
void HAL_enableADCInterrupt (HAL_ADC_CHAN chan)
 Enables ADC interrupts. More...
 
void HAL_enableGPIOInterrupt (HAL_GPIO_IN pin)
 Enables GPIO interrupts. More...
 
void HAL_enablePWMInterrupt (HAL_PWM PWM)
 Enables PWM interrupts. More...
 
void HAL_enableCaptureInterrupt (HAL_CAPTURE_TIMER capture)
 Enables capture interrupts. More...
 
void HAL_setADCVRefVDDA (HAL_ADC_CHAN chan)
 Set ADC voltage reference to VDDA. More...
 
void HAL_setADCVRefInternal (HAL_ADC_CHAN chan, HAL_ADC_INT_VREF internalVRef)
 Set ADC voltage reference to internal reference. More...
 
void HAL_setADCVRefExternal (HAL_ADC_CHAN chan, uint16_t externalVRef)
 Set ADC voltage reference to external reference. More...
 
void HAL_clearTimerFault (HAL_FAULT_INPUT fault)
 Clear the PWM timer fault bit. More...
 
bool HAL_getTimerFaultStatus (HAL_FAULT_INPUT fault)
 Read the PWM timer fault bit. More...
 
uint32_t HAL_getCaptureFrequency (HAL_CAPTURE_TIMER capture)
 Calculates the capture frequency. More...
 
void HAL_ADCVRefSel (HAL_ADC_VREF adcRef, HAL_ADC_CHAN chan, HAL_ADC_INT_VREF internalVRef, uint16_t externalVRef)
 updates the adc voltage reference More...
 
__STATIC_INLINE void HAL_delayMicroSeconds (uint32_t microSeconds)
 Delays for specific time in microseconds. More...
 
__STATIC_INLINE void HAL_updatePWM (const HAL_PWM posPhase, const HAL_PWM gndPhase, const HAL_PWM opnPhase, const uint16_t PWMDuty)
 Writes the pwm to the pinouts. More...
 
__STATIC_INLINE void HAL_PWMOutputLow (const HAL_PWM gndPhase_1, const HAL_PWM gndPhase_2, const HAL_PWM gndPhase_3)
 Set all PWM outputs low. More...
 
__STATIC_INLINE void HAL_PWMOutputHigh (const HAL_PWM gndPhase_1, const HAL_PWM gndPhase_2, const HAL_PWM gndPhase_3)
 Set complementary PWM outputs high. More...
 

Variables

HAL_Timer_Instance PWMBase [HAL_PWM_MAX]
 Array for storing the PWM instances.
 
HAL_Timer_Instance inputCapture [HAL_CAPTURE_TIMER_MAX]
 Array to store the capture instances.
 
HAL_ADC_instance ADCChannel [HAL_ADC_CHAN_MAX]
 Array for storing the ADC instances.
 
HAL_fault_instance faultInput [HAL_FAULT_INPUT_MAX]
 Array to store the fault instances.
 
© Copyright 1995-2025, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale