MityDSP Documentation Index
Classes | Public Member Functions
MityDSP::tcDspAdc9235 Class Reference

Instances of this class create an interface to an ADC9235 12-bit analog to digital converter. More...

#include <core/DspAdc9235.h>

Inheritance diagram for MityDSP::tcDspAdc9235:
MityDSP::tcDspAdcBase

List of all members.

Classes

union  tuFifoData
union  tuFifoDataPacked

Public Member Functions

 tcDspAdc9235 (void *apAddress, tcDspAdcBaseConfig *apConfig=NULL, int anLevel=gnAutoLevel)
 This constructor is used to open a tcDspAdc9235 interface with the the specified settings (optional).
 ~tcDspAdc9235 ()
 Default destructor.
bool CheckOverFlowPacked (unsigned int anLword, int anEvenOdd)
 Given a packed data word from the ADC9235 FIFO, this routine will indicate whether or not an overflow condition exists.
unsigned int GetUserDataPacked (unsigned int anLword, int anEvenOdd)
 Given a packed data word from the ADC9235 FIFO, this routine will return any associated user data.
bool CheckOverFlow (unsigned int anLword)
 Given an unpacked data word from the ADC9235 FIFO, this routine will indicate whether or not an overflow condition exists.
unsigned int GetUserData (unsigned int anLword)
 Given an unpacked data word from the ADC9235 FIFO, this routine will return any associated user data.
virtual void SetCaptureLength (unsigned short Length)
 Sets burst capture quantity.
virtual void SetPack (bool abPackFIFO)
 Sets whether the ADC data should be packed two samples per 32 bit FIFO word.
- Public Member Functions inherited from MityDSP::tcDspAdcBase
 tcDspAdcBase (void *apAddress, int anLevel=gnAutoLevel)
 This constructor is used to open a DspAdc interface with the specified settings (optional).
 ~tcDspAdcBase ()
 This destructor is used to close up and free the resources tied to the associated ADC interface.
virtual void SetFlipBit (bool abFlipBit)
 Sets whether the ADC data should flip the most significant bit.
virtual void SetUDClear (bool abABClear)
 Sets whether the user data sent to the ADC should be masked with zeros.
virtual void SetExtTrigger (bool abTrigger)
 Sets trigger mode of device.
virtual void SetBurstCapture (bool abBurstCapture)
 Sets capture mode of device.
virtual void SetCaptureDelay (unsigned short Delay)
 Sets burst capture delay of device.
virtual void SetSaturationMode (bool abEnable)
 Sets saturation mode.
virtual void SetDifferentialMode (bool abEnable)
 Sets differential mode.
virtual void SetChannelMask (unsigned int anMask)
 Sets the channel mask bits.
virtual bool GetPack (void)
 Gets packing mode.
virtual bool GetFlipBit (void)
 Gets Flip Bit Mode.
virtual bool GetUDClear (void)
 Gets User Data Clearing Mode.
virtual bool GetExtTrigger (void)
 Gets External Trigger Mode.
virtual bool GetBurstCapture (void)
 Gets Capture Mode.
virtual unsigned short GetCaptureDelay (void)
 Gets Capture Delay Length (minus 1).
virtual unsigned short GetCaptureLength (void)
 Gets Capture Length.
virtual bool GetSaturationMode (void)
 Returns the saturation mode.
virtual bool GetDifferentialMode (void)
 Returns the differential mode.
virtual unsigned int GetChannelMask (void)
 Returns the channel mask.
virtual void Enable (bool abEnable)
 Enables the capture enginer for the ADC.
virtual bool IsEnabled (void)
 Returns the enabled state of the capture engine.
virtual bool GetFIFOLevel (teFIFOLevel level)
 Gets FIFO Level flag.
virtual unsigned short GetFIFOLevel (void)
 Gets FIFO Level.
virtual bool IsBurstComplete (void)
 Gets Burst Complete flag.
virtual void ClearBurstComplete (void)
 Clears Burst Complete flag.
virtual void DisableFIFOInterrupts (void)
 Clears Any Set FIFO Interrupt Enables.
virtual void SetFIFOInterruptLevel (teFIFOLevel aeLevel)
 Sets the FIFO interrupt based on the level specified.
virtual void SetBCInterrupt (bool Enable)
 Sets the Burst Complete Interrupt Enable Flag based on the Enable Flag.
virtual void RegisterFIFOHandler (teFIFOLevel aeLevel, tfIsrCallback afCallback)
 Registers the specified ISR callback for the given FIFO level interrupt.
virtual void RegisterFIFOHandler (teFIFOLevel aeLevel, tfIsrCallbackWithArg afCallback, void *apUserArg=NULL)
 Registers the specified ISR callback for the given FIFO level interrupt.
virtual void RegisterBCHandler (tfIsrCallback afCallback)
 Registers the specified ISR callback for the burst complete interrupt.
virtual void RegisterBCHandler (tfIsrCallbackWithArg afCallback, void *apUserArg=NULL)
 Registers the specified ISR callback for the burst complete interrupt.
virtual unsigned int * GetFIFODataPtr (void)
 Returns the pointer to the FIFO containing captured ADC data.
virtual unsigned int GetFIFODepth (void)
 Returns the depth (in 32 bit words) of the FIFO.
virtual bool DrainFIFO (void)
 This routine will drain the FIFO on the engine.

Additional Inherited Members

- Public Types inherited from MityDSP::tcDspAdcBase
typedef void(* tfIsrCallback )(tcDspAdcBase *)
 prototype for the ISR callbacks.
typedef void(* tfIsrCallbackWithArg )(tcDspAdcBase *, void *)
- Static Public Member Functions inherited from MityDSP::tcDspAdcBase
static int interrupt_dispatch (Arg arMyObject)
 Static interrupt dispatch routine.
- Public Attributes inherited from MityDSP::tcDspAdcBase
unsigned int mnInterruptCount
 ISR counter (debug).
- Protected Member Functions inherited from MityDSP::tcDspAdcBase
virtual void adcInterrupt (void)
 Interrupt service routine for the ADC cores.
- Protected Attributes inherited from MityDSP::tcDspAdcBase
tfIsrCallback mfOneQCallback
tfIsrCallbackWithArg mfOneQCallbackWithArg
void * mpOneQUserArg
tfIsrCallback mfHalfCallback
tfIsrCallbackWithArg mfHalfCallbackWithArg
void * mpHalfUserArg
tfIsrCallback mfThreeQCallback
tfIsrCallbackWithArg mfThreeQCallbackWithArg
void * mpThreeQUserArg
tfIsrCallback mfFullCallback
tfIsrCallbackWithArg mfFullCallbackWithArg
void * mpFullUserArg
tfIsrCallback mfBurstCallback
tfIsrCallbackWithArg mfBurstCallbackWithArg
void * mpBurstUserArg
bool mbHasUDClear
bool mbHasFlipBit
bool mbHasSaturationMode
bool mbHasDifferentialMode
bool mbHasChannelMask
bool mbHasPackFIFO
bool mbHasExtTrigger
bool mbHasBurstCapture
bool mbHasCaptureDelay
bool mbHasCaptureLength
volatile unsigned int * mpBaseAddr
unsigned short mnMyIntMask
 core interrupt mask.
int mnMyIntLevel
 core interrupt level.
int mnMyIntVector
 core interrupt vector.

Detailed Description

Instances of this class create an interface to an ADC9235 12-bit analog to digital converter.

Note:
When using packed mode, the burst capture length must be even.
See also:
tcDspAdc9235 Page

Constructor & Destructor Documentation

tcDspAdc9235::tcDspAdc9235 ( void *  apAddress,
tcDspAdcBaseConfig apConfig = NULL,
int  anLevel = gnAutoLevel 
)

This constructor is used to open a tcDspAdc9235 interface with the the specified settings (optional).

The interface is not yet enabled for capture following construction.

This constructor registers the capabilities of this particular ADC with the base class.

Parameters:
[in]apAddress- Base Address of the ADC core
[in]apConfig- Optional Configuration Structure
[in]anLevel- The interrupt vector used by the core (default: gnAutoLevel).
Returns:
None.
See also:
DspAdc9235.h
DspAdcBase.h
DspIntDispatch.h
tcDspAdc9235::~tcDspAdc9235 ( )

Default destructor.

Returns:
None.

Member Function Documentation

bool tcDspAdc9235::CheckOverFlowPacked ( unsigned int  anLword,
int  anEvenOdd 
)

Given a packed data word from the ADC9235 FIFO, this routine will indicate whether or not an overflow condition exists.

Parameters:
[in]anLwordData word from FIFO.
[in]anEvenOddExtract data from even or odd word of packed data (even int = even).
Returns:
Boolean indicating if overflow occurred.
See also:
DspAdc9235.h
unsigned int tcDspAdc9235::GetUserDataPacked ( unsigned int  anLword,
int  anEvenOdd 
)

Given a packed data word from the ADC9235 FIFO, this routine will return any associated user data.

Note:
Bit zero is not valid if saturation mode is enabled (it is used for the overflow indicator in this case).
Parameters:
[in]anLwordData word from FIFO.
[in]anEvenOddExtract data from even or odd word of packed data (even int = even).
Returns:
Extracted user data.
See also:
DspAdc9235.h
bool tcDspAdc9235::CheckOverFlow ( unsigned int  anLword)

Given an unpacked data word from the ADC9235 FIFO, this routine will indicate whether or not an overflow condition exists.

Parameters:
[in]anLwordData word from FIFO.
Returns:
Boolean indicating if overflow occurred.
See also:
DspAdc9235.h
unsigned int tcDspAdc9235::GetUserData ( unsigned int  anLword)

Given an unpacked data word from the ADC9235 FIFO, this routine will return any associated user data.

Parameters:
[in]anLwordData word from FIFO.
Returns:
Extracted user data.
See also:
DspAdc9235.h
void tcDspAdc9235::SetCaptureLength ( unsigned short  Length)
virtual

Sets burst capture quantity.

Parameters:
[in]LengthThe number of samples to capture in burst capture mode.
Returns:
None.
Note:
When in packed mode, the length typically refers to number of pairs of samples. For this device, the length still means number of samples. When in packed mode, the capture length must be even and if the supplied length is odd, it is increased by 1 to make it even.
See also:
DspAdc9235.h

Reimplemented from MityDSP::tcDspAdcBase.

void tcDspAdc9235::SetPack ( bool  abPackFIFO)
virtual

Sets whether the ADC data should be packed two samples per 32 bit FIFO word.

Parameters:
[in]abPackFIFOWhen true two word packing is enabled.
Returns:
None.
Note:
After setting the pack mode, the capture length is reset to make sure it becomes even if it needs to be.
See also:
DspAdc9235.h

Reimplemented from MityDSP::tcDspAdcBase.


  
Generated on Mon Apr 22 2013 11:33:03 for MityDSP Core by  Doxygen Version 1.8.1.1
Copyright © 2009, Critical Link LLC, All rights reserved.