DSP281x_Adc.c
上传用户:qingfan3
上传日期:2014-10-27
资源大小:31439k
文件大小:2k
源码类别:

DSP编程

开发平台:

C/C++

  1. //###########################################################################
  2. //
  3. // FILE: DSP281x_Adc.c
  4. //
  5. // TITLE: DSP281x ADC Initialization & Support Functions.
  6. //
  7. //###########################################################################
  8. //
  9. //  Ver | dd mmm yyyy | Who  | Description of changes
  10. // =====|=============|======|===============================================
  11. //  1.00| 11 Sep 2003 | L.H. | Changes since previous version (v.58 Alpha)
  12. //      |             |      | ADC_usDELAY changed from 5000L to 8000L
  13. //###########################################################################
  14. #include "DSP281x_Device.h"     // DSP281x Headerfile Include File
  15. #include "DSP281x_Examples.h"   // DSP281x Examples Include File
  16. #define ADC_usDELAY  8000L
  17. #define ADC_usDELAY2 20L
  18. //---------------------------------------------------------------------------
  19. // InitAdc: 
  20. //---------------------------------------------------------------------------
  21. // This function initializes ADC to a known state.
  22. //
  23. void InitAdc(void)
  24. {
  25. extern void DSP28x_usDelay(Uint32 Count);
  26.     // To powerup the ADC the ADCENCLK bit should be set first to enable
  27.     // clocks, followed by powering up the bandgap and reference circuitry.
  28.     // After a 5ms delay the rest of the ADC can be powered up. After ADC
  29.     // powerup, another 20us delay is required before performing the first
  30.     // ADC conversion. Please note that for the delay function below to
  31.     // operate correctly the CPU_CLOCK_SPEED define statement in the
  32.     // DSP28_Examples.h file must contain the correct CPU clock period in
  33.     // nanoseconds. For example:
  34. AdcRegs.ADCTRL3.bit.ADCBGRFDN = 0x3; // Power up bandgap/reference circuitry
  35. DELAY_US(ADC_usDELAY);                  // Delay before powering up rest of ADC
  36. AdcRegs.ADCTRL3.bit.ADCPWDN = 1; // Power up rest of ADC
  37. DELAY_US(ADC_usDELAY2);                 // Delay after powering up ADC
  38. }
  39. //===========================================================================
  40. // No more.
  41. //===========================================================================