主题中讨论的其他器件:TM4C123
工具/软件:Code Composer Studio
您好! 我很新使用这个平台、我在使用时间较长触发的 ADC 转换时遇到问题。 有人能帮我找出代码中的错误吗?
// Inclusão ó n de Arquivos/Bibliotecas
#include
#include
#include
#include
#include "inc/hw_types.h"
#include "inc/hw_memmap.h"
#include "inc/hw_ints.h"
#include "driverlib/adc.h"
#include "driverlib/gpio.h"
#include "driverlib/interrupt.iptexample.h"
;"driveriptex_intradt1 intrust_ipt1 (intrust_ipt1)#def_ipt1 (intrintrust_ipt1)#def_ipt1 (intrintrust_ipt1)#def_ipt1 (intrust_ipt1)#def_ipt1 (intrust_ipt1 intrust_ipt1 (intrust_ipt_ipt_ipt1)#include "intrintrust_ipt1 (intrust_ipt_ipt_ipt_ipt1)#def_ipt1 (intrust_ipt1 (intrintrintrust_ipt_ipt_ipt_ipt.ipt1);
UART_CLOCK_PIOSC);
GPIOPinTypeUART (GPIO_Porta_base、GPIO_PIN_0 | GPIO_PIN_1);
UARTStdioConfig (0、115200、 16000000);
}
void InitADC (void)
{
SysCtlPeripheralEnable (SYSCTL_Periph_ADC0);
SysCtlPeripheralEnable (SYSCTL_Periph_GPIOE);
while (!SysCtlPeripheralReady (SYSCTL_Periph_GPIOE))
;{
SysCtlPinTypeADC (SYSCTL_ADC_CL_CLUST_CLOCK_CLK)
;GP0_CL_CL_CLUS_ADCK_CL_CK_CL_CLOCK (SYSD_CL_CL_CL_CL_CL_CL_CL_CL_CL_CLUS_CLK); 5);
SysCtlDelay (10U);
IntDisable (INT_ADC0SS0);
ADCIntDisable (ADC0_BASE、3);
ADCSequenceDisable (ADC0_BASE、3);
ADCSequenceConfigure (ADC0_BASE、3、ADC_TRIGGER_TIMER、 0);
ADCSequenceStepConfigure (ADC0_BASE、3、0、ADC_CTL_CH0 | ADC_CTL_IE | ADC_CTL_END);
ADCIntClear (ADC0_BASE、3);
IntEnable (INT_ADC0SS3);
ADCIntEnable (ADC0_BASE、 3);
ADCSequenceEnable (ADC0_BASE、3);
}
void InitGPIO (void)
{
SysCtlPeripheralEnable (SYSCTL_Periph_GPION);
while (!SysCtlPeripheralReady (SYSCTL_Periph_GPION))
}{
GPIOTypeGPIOOutput (GPIO_PORTn_BASE);0x03_GPIO_PIN_0
;GPIO_PIN_0;GPIO_PIN_0_PIN_1;GPIO_PIN_0
空 InitTimer0 (空)
{
SysCtlPeripheralEnable (SYSCTL_Periph_TIMER0);
TimerConfigure (TIMER0_BASE、TIMER_CFG_SPLIT_PAIR | TIMER_CFG_B_PERIODICRAY);
TimerLoadSet (TIMER0_BASE、TIMER_B、 SysCtlClockGet ()/ 1000);
TimerControlTrigger (TIMER0_BASE、TIMER_B、TRUE);
TimerIntEnable (TIMER0_BASE、 Timer_TIMB_TIMEOUT);
IntMasterEnable ();
TimerEnable (TIMER0_BASE、TIMER_B);
}
void ADC0SS3IntHandler (void)
{
CONT+2;
ADCIntClear (ADC0_BASE、3);
ADCSequenceDataGet (ADC0_BASE、3、 ADC0Value);
}
int main (void)
{
SysCtlClockFreqSet (SYSCTL_XTAL_25MHz | SYSCTL_OSC_main | SYSCTL_USE_PLL | SYSCTL_CFG_VCO_480、120000000);
InitGPIO ();
InitConsole ();
InitADC ();
InitTimer0 ();
while (1)
{
UARTprintf ("AIN0 =%d\t"、ADC0Value[0]);
GPIOPinWrite (GPIO_PORTN_BASE、GPIO_PIN_0 | GPIO_PIN_1、var);
UARTprintf ("var =%d\n"var);
SysCtlDelay (10000000);
if (var = 4)
var = 1;
否则
var*=2;
}