工具/软件:Code Composer Studio
HII
我已经编写了代码来读取不同的 ADC 通道。
通道0和通道1的连接
PE3-AIN0-连接到外部电压
PE2-AIN1----短接 launchpad GND
外部电压接地与 launchad GND 短接
无论我施加到 AIN0上的电压是多少、我都会得到相同的电压、但当我在通道2和通道3上进行相同的连接时、它将无法正常工作
PE1-AIN2--连接到外部电压
PE0-AIN3--与 Launchpad GND 短接
以下代码我曾尝试过一次、如果我做了任何错误、请告知我
void DifferentialADCInit()
{
SysCtlPeripheralEnable (SYSCTL_Periph_ADC0);
SysCtlPeripheralEnable (SYSCTL_Periph_GPIOD);
GPIOPinTypeADC (GPIO_PORTD_base、GPIO_PIN_6 | GPIO_PIN_7);
ADCSequenceConfigure (ADC0_BASE、3、ADC_TRIGGER_PROCESSOR、0);
ADCSequenceStepConfigure (ADC0_BASE、3、0、ADC_CTL_CH2 | ADC_CTL_D | ADC_CTL_IE | ADC_CTL_END);
ADCSequenceEnable (ADC0_BASE、3);
}
void DifferentialADCRead()
{
ADCIntClear (ADC0_BASE、3);
ADCProcessorTrigger (ADC0_BASE、3);
while (!ADCIntStatus (ADC0_BASE、3、false));
ADCSequenceDataGet (ADC0_BASE、3、Diff_Read);
DIFF_OUT1 =((Diff 读取[0]-2048)*3.3)/2048.0;
}
int main (空)
{
ui32SysClock = SysCtlClockFreqSet ((SYSCTL_XTAL_25MHz | SYSCTL_OSC_MAIN | SYSCTL_USE_PLL | SYSCTL_CFG_VCO_480)、120000000);
DifferentialADCInit();
while (1)
{
DifferentialADCRead();
SysCtlDelay (4000000);
}
}