您好!
如果将 PIOSC 同时用于系统时钟和 ADC 时钟、我遇到这个 ADC 原始中断问题不会触发。 下面是我用于执行测试的代码。 如果 注释了 SysCtlClockFreqSet()、则不会触发 ADC 不会中断。 只是想知道可以解决什么问题?
#include
#include
#include
#include "sysctl.h"
#include "gpio.h"
#include "adc.h"
int main (空)
{
uint32_t pui32ADC0Value;
//SysCtlClockFreqSet ((SYSCTL_XTAL_25MHz | SYSCTL_OSC_MOSC| SYSCTL_USE_PLL |
// sysctl_CFG_VCO_480)、120000000);
SysCtlPeripheralEnable (SYSCTL_Periph_ADC0);
SysCtlPeripheralEnable (SYSCTL_Periph_GPIOD);
GPIODirModeSet (GPIO_PORTD_AHB_BASE、GPIO_PIN_4、GPIO_DIR_MODE_IN);
GPIOPadConfigSet (GPIO_PORTD_AHB_BASE、GPIO_PIN_4、GPIO_Strength _2mA、GPIO_PIN_TYPE_ANALOG);
ADCSequenceConfigure (ADC0_BASE、3、ADC_TRIGGER_PROCESSOR、0);
ADCSequenceStepConfigure (ADC0_BASE、3、0、ADC_CTL_CH7 | ADC_CTL_IE | ADC_CTL_END);
ADCSequenceEnable (ADC0_BASE、3);
ADCIntClear (ADC0_BASE、3);
ADCProcessorTrigger (ADC0_BASE、3);
while (!ADCIntStatus (ADC0_BASE、3、false));
ADCIntClear (ADC0_BASE、3);
ADCSequenceDataGet (ADC0_BASE、3、&pui32ADC0Value);
while (1);
}