Other Parts Discussed in Thread: C2000WARE
Hello
I am trying to implement a simple ADC sampling in the F28379D. My main file is :
/*
* main.c
*
* Created on: 26 Apr 2024
* Author: CR
*/
#include "F28x_Project.h"
#include "driverlib.h"
#include "device.h"
void initADC(void);
void configureDAC(void);
int S;
void main(void)
{
InitSysCtrl();
InitGpio();
initADC();
configureDAC();
AdcaRegs.ADCSOCFRC1.bit.SOC2 = 1;
S=AdcaResultRegs.ADCRESULT1;
DacaRegs.DACVALS.all = S;
}
void initADC(void)
{
EALLOW;
//To enable all the ADC modules
CpuSysRegs.PCLKCR13.bit.ADC_A=1;
CpuSysRegs.PCLKCR13.bit.ADC_B=1;
CpuSysRegs.PCLKCR13.bit.ADC_C=1;
CpuSysRegs.PCLKCR13.bit.ADC_D=1;
//write configurations ADC power up sequence - page 1407
AdcaRegs.ADCCTL2.bit.PRESCALE = 6; //set ADCCLK divider to /4 ADclk=48.125Mhz = 0.02usec
// AdcbRegs.ADCCTL2.bit.PRESCALE = 6; //set ADCCLK divider to /4
// AdccRegs.ADCCTL2.bit.PRESCALE = 6;
// AdcdRegs.ADCCTL2.bit.PRESCALE = 6;
AdcaRegs.ADCCTL2.bit.RESOLUTION=0; //ADCa will operate in 12bit
// AdcbRegs.ADCCTL2.bit.RESOLUTION=0; //ADCb will operate in 12bit
// AdccRegs.ADCCTL2.bit.RESOLUTION=0;
// AdcdRegs.ADCCTL2.bit.RESOLUTION=0;
AdcaRegs.ADCCTL2.bit.SIGNALMODE=0; //ADCa eill have single ended operation
// AdcbRegs.ADCCTL2.bit.SIGNALMODE=0; //ADCb will have single mode operation
// AdccRegs.ADCCTL2.bit.SIGNALMODE=0;
// AdcdRegs.ADCCTL2.bit.SIGNALMODE=0;
//Set pulse positions to late
AdcaRegs.ADCCTL1.bit.INTPULSEPOS = 1; //ADC interrupt pulse generated at the end of acquisition window
// AdcbRegs.ADCCTL1.bit.INTPULSEPOS = 1;
// AdccRegs.ADCCTL1.bit.INTPULSEPOS = 1;
// AdcdRegs.ADCCTL1.bit.INTPULSEPOS = 1;
//power up the ADCs
AdcaRegs.ADCCTL1.bit.ADCPWDNZ = 1;
// AdcbRegs.ADCCTL1.bit.ADCPWDNZ = 1;
// AdccRegs.ADCCTL1.bit.ADCPWDNZ = 1;
// AdcdRegs.ADCCTL1.bit.ADCPWDNZ = 1;
EDIS;
}
void configureDAC(void)
{
EALLOW;
CpuSysRegs.PCLKCR16.bit.DAC_A = 1 ;
CpuSysRegs.PCLKCR16.bit.DAC_B = 1 ;
CpuSysRegs.PCLKCR16.bit.DAC_C = 1 ;
DacaRegs.DACCTL.bit.DACREFSEL= 1;
DacaRegs.DACCTL.bit.LOADMODE=0;
DacaRegs.DACOUTEN.bit.DACOUTEN=1;
DacaRegs.DACLOCK.bit.DACOUTEN = 1;
DelayUs(5); // Delay for buffered DAC to power up
DacbRegs.DACCTL.bit.DACREFSEL=1;
DacbRegs.DACCTL.bit.LOADMODE=0;
DacbRegs.DACOUTEN.bit.DACOUTEN=1;
DacaRegs.DACLOCK.bit.DACOUTEN = 1;
EDIS;
}
However, I am facing the following error:
I have the following include files:
Kindly help to solve the undefined symbol error.
Regards
RC