⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 adc.c

📁 一个DSP2812的AD采样程序
💻 C
字号:
  #include"DSP281x_Device.h"
  interrupt void adc_isr(void);
  float a=0,b[100];
  unsigned int k=0; 
void main()
{
  InitSysCtrl();
  EALLOW;
  GpioMuxRegs.GPAMUX.all=0x00FF;
  GpioMuxRegs.GPBMUX.all=0x00FF;
  SysCtrlRegs.HISPCP.all=0x3;
  EDIS;
  DINT;
  IER=0x0000;
  IFR=0X0000;
  InitPieCtrl();
  InitPieVectTable();
  InitAdc();
  EALLOW;
  PieVectTable.ADCINT=&adc_isr;
  EDIS;
  PieCtrlRegs.PIEIER1.bit.INTx6=1;
  IER |=M_INT1; 
  EINT;
  ERTM;
  
  AdcRegs.ADCMAXCONV.all=0x0000;
  AdcRegs.ADCCHSELSEQ1.bit.CONV00=0x0;
  AdcRegs.ADCTRL2.bit.EVA_SOC_SEQ1=1;
  AdcRegs.ADCTRL2.bit.INT_ENA_SEQ1=1;
  EvaRegs.T1CMPR=0x0000;
  EvaRegs.T1PR=0x0FFF;
  EvaRegs.GPTCONA.bit.T1TOADC=2;
  EvaRegs.T1CON.all=0x842;             //00,0,01,000,0,1,00,00,1,0;842//10,000,0,1,00,00,1,0;1042
  
  EvaRegs.GPTCONA.bit.TCMPOE=1;                 //???????????????
  EvaRegs.GPTCONA.bit.T1PIN=1;
  EvaRegs.GPTCONA.bit.T2PIN=2;
  EvaRegs.CMPR1=0x0C00;
  EvaRegs.CMPR2=0x3C00;
  EvaRegs.CMPR3=0xFC00;
  EvaRegs.ACTRA.all=0x0666;
  EvaRegs.DBTCONA.all=0x0000;
  EvaRegs.COMCONA.all=0xA600;
  
  
  for(;;);
 }
   interrupt void adc_isr(void)
   {
      EvaRegs.T1CMPR=(AdcRegs.ADCRESULT0>>4);
      a=((float)((AdcRegs.ADCRESULT0)>>4))*3.0/4095.0;
      b[k]=a;
      k++;
      if(k==100)
      k=0;	  
   AdcRegs.ADCTRL2.bit.RST_SEQ1=1;
   AdcRegs.ADCST.bit.INT_SEQ1_CLR=1;      
   PieCtrlRegs.PIEACK.all=PIEACK_GROUP1;
   return;
   }
   

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -