RTEMS  5.1
Macros | Functions
acc.h File Reference
#include "chip.h"
#include <stdint.h>
#include <assert.h>

Go to the source code of this file.

Macros

#define ACC_SELPLUS_AD12B0   0
 
#define ACC_SELPLUS_AD12B1   1
 
#define ACC_SELPLUS_AD12B2   2
 
#define ACC_SELPLUS_AD12B3   3
 
#define ACC_SELPLUS_AD12B4   4
 
#define ACC_SELPLUS_AD12B5   5
 
#define ACC_SELPLUS_AD12B6   6
 
#define ACC_SELPLUS_AD12B7   7
 
#define ACC_SELMINUS_TS   0
 
#define ACC_SELMINUS_ADVREF   1
 
#define ACC_SELMINUS_DAC0   2
 
#define ACC_SELMINUS_DAC1   3
 
#define ACC_SELMINUS_AD12B0   4
 
#define ACC_SELMINUS_AD12B1   5
 
#define ACC_SELMINUS_AD12B2   6
 
#define ACC_SELMINUS_AD12B3   7
 
#define ACC_CfgModeReg(pAcc, mode)
 
#define ACC_GetModeReg(pAcc)   ((pAcc)->ACC_MR)
 
#define ACC_StartConversion(pAcc)   ((pAcc)->ACC_CR = ACC_CR_START)
 
#define ACC_SoftReset(pAcc)   ((pAcc)->ACC_CR = ACC_CR_SWRST)
 
#define ACC_EnableChannel(pAcc, dwChannel)
 
#define ACC_DisableChannel(pAcc, dwChannel)
 
#define ACC_EnableIt(pAcc, dwMode)
 
#define ACC_DisableIt(pAcc, dwMode)
 
#define ACC_EnableDataReadyIt(pAcc)   ((pAcc)->ACC_IER = AT91C_ACC_DRDY)
 
#define ACC_GetStatus(pAcc)   ((pAcc)->ACC_ISR)
 
#define ACC_GetChannelStatus(pAcc)   ((pAcc)->ACC_CHSR)
 
#define ACC_GetInterruptMaskStatus(pAcc)   ((pAcc)->ACC_IMR)
 
#define ACC_GetLastConvertedData(pAcc)   ((pAcc)->ACC_LCDR)
 
#define ACC_CfgAnalogCtrlReg(pAcc, dwMode)
 
#define ACC_CfgExtModeReg(pAcc, extmode)
 
#define ACC_GetAnalogCtrlReg(pAcc)   ((pAcc)->ACC_ACR)
 

Functions

void ACC_Configure (Acc *pAcc, uint8_t idAcc, uint8_t ucSelplus, uint8_t ucSelminus, uint16_t wAc_en, uint16_t wEdge, uint16_t wInvert)
 Initialize the ACC controller. More...
 
void ACC_SetComparisonPair (Acc *pAcc, uint8_t ucSelplus, uint8_t ucSelminus)
 
uint32_t ACC_GetComparisonResult (Acc *pAcc, uint32_t dwStatus)
 

Detailed Description

Purpose

Interface for configuration the Analog-to-Digital Converter (ACC) peripheral.

Usage

  1. Configurate the pins for ACC
  2. Initialize the ACC with ACC_Initialize().
  3. Select the active channel using ACC_EnableChannel()
  4. Start the conversion with ACC_StartConversion()
  5. Wait the end of the conversion by polling status with ACC_GetStatus()
  6. Finally, get the converted data using ACC_GetConvertedData()

Macro Definition Documentation

◆ ACC_CfgAnalogCtrlReg

#define ACC_CfgAnalogCtrlReg (   pAcc,
  dwMode 
)
Value:
{\
assert(((dwMode) & 0xFFFCFF3C) == 0);\
(pAcc)->ACC_ACR = (dwMode);\
}

◆ ACC_CfgExtModeReg

#define ACC_CfgExtModeReg (   pAcc,
  extmode 
)
Value:
{\
assert(((extmode) & 0xFF00FFFE) == 0);\
(pAcc)->ACC_EMR = (extmode);\
}

◆ ACC_CfgModeReg

#define ACC_CfgModeReg (   pAcc,
  mode 
)
Value:
{ \
(pAcc)->ACC_MR = (mode);\
}

◆ ACC_DisableChannel

#define ACC_DisableChannel (   pAcc,
  dwChannel 
)
Value:
{\
assert(dwChannel < 16);\
(pAcc)->ACC_CHDR = (1 << (dwChannel));\
}

◆ ACC_DisableIt

#define ACC_DisableIt (   pAcc,
  dwMode 
)
Value:
{\
assert(((dwMode)&0xFFF00000)== 0);\
(pAcc)->ACC_IDR = (dwMode);\
}

◆ ACC_EnableChannel

#define ACC_EnableChannel (   pAcc,
  dwChannel 
)
Value:
{\
assert(dwChannel < 16);\
(pAcc)->ACC_CHER = (1 << (dwChannel));\
}

◆ ACC_EnableIt

#define ACC_EnableIt (   pAcc,
  dwMode 
)
Value:
{\
assert(((dwMode)&0xFFF00000)== 0);\
(pAcc)->ACC_IER = (dwMode);\
}

Function Documentation

◆ ACC_Configure()

void ACC_Configure ( Acc pAcc,
uint8_t  idAcc,
uint8_t  ucSelplus,
uint8_t  ucSelminus,
uint16_t  wAc_en,
uint16_t  wEdge,
uint16_t  wInvert 
)

Initialize the ACC controller.

Parameters
pAccPointer to an Acc instance.
idAccACC identifier
ucSelplusinput connected to inp, 0~7
ucSelminusinput connected to inm,0~7
wAc_enAnalog comparator enabled/disabled
wEdgeCF flag triggering mode
wInvertINVert comparator output,use pattern defined in the device header file

◆ ACC_GetComparisonResult()

uint32_t ACC_GetComparisonResult ( Acc pAcc,
uint32_t  dwStatus 
)

Return Comparison Result

Parameters
pAccPointer to an Acc instance.
dwStatusvalue of ACC_ISR

◆ ACC_SetComparisonPair()

void ACC_SetComparisonPair ( Acc pAcc,
uint8_t  ucSelplus,
uint8_t  ucSelminus 
)

Return the Channel Converted Data

Parameters
pAccPointer to an Acc instance.
ucSelplusinput applied on ACC SELPLUS
ucSelminusinput applied on ACC SELMINUS