Part Number: MSP432P401R
Tool/software: TI C/C++ Compiler
i have an error Encountered during linking in MSP432P401r . My code is shown below
#include "ti/devices/msp432p4xx/inc/msp.h"
#include <stdint.h>
#define Num_of_Results 1100
#define ADC_TIMER 1
#define ADC_TIMER_PERIOD 12000
volatile uint16_t A1results[Num_of_Results];
int main(void) {
volatile unsigned int i;
WDT_A->CTL = WDT_A_CTL_PW | // Stop WDT
WDT_A_CTL_HOLD;
P1->SEL0 |= BIT2 | BIT3; // set 2-UART pin as secondary function
// Configure UART
EUSCI_A0->CTLW0 |= EUSCI_A_CTLW0_SWRST; // Put eUSCI in reset
EUSCI_A0->CTLW0 = EUSCI_A_CTLW0_SWRST | // Remain eUSCI in reset
EUSCI_B_CTLW0_SSEL__SMCLK; // Configure eUSCI clock source for SMCLK
EUSCI_A0->BRW = 1; // 12000000/16/9600
EUSCI_A0->MCTLW = (10<< EUSCI_A_MCTLW_BRF_OFS) |
EUSCI_A_MCTLW_OS16;
EUSCI_A0->CTLW0 &= ~EUSCI_A_CTLW0_SWRST; // Initialize eUSCI
P5->SEL1 |= BIT4; // Configure P5.4 for ADC
P5->SEL0 |= BIT4;
ADC14->CTL0 = ADC14_CTL0_SHT0_6| ADC14_CTL0_ON | ADC14_CTL0_PDIV_2 | ADC14_CTL0_DIV_2 | ADC14_CTL0_SSEL_4 | ADC14_CTL0_MSC| ADC14_CTL0_SHP | ADC14_CTL0_CONSEQ_1;
ADC14->CTL1 = ADC14_CTL1_RES_0; // Use sampling timer, 12-bit conversion results
ADC14->CTL0= ADC14_CTL0_SHP+ADC14_CTL0_CONSEQ_1;
ADC14->MCTL[0] |= ADC14_MCTLN_INCH_1; // A1 ADC input select; Vref=AVCC
ADC14->IER0 = ADC14_IER0_IE3; // Enable ADC14IFG.3
TIMER_A1->CCTL[1]=OUTMOD_3;
TIMER_A1->CCR[0] = ((ADC_TIMER_PERIOD)/2)-1;
TIMER_A1->CCR[0] = ADC_TIMER_PERIOD-1;
ADC14->CTL0 = ADC14_CTL0_SHS_1;
ADC14->CTL0 = ADC14_CTL0_ENC;
TIMER_A1->CTL |= TIMER_A_CTL_TASSEL_2 | // mCLK
TIMER_A_CTL_MC_1; //UP mode
ADC14->CTL0 = ADC14_CTL0_SC;
__enable_irq();
// Enable ADC interrupt in NVIC module
NVIC->ISER[0] = 1 << ((ADC14_IRQn) & 31);
_no_operation();
ADC14->IER0 |= ADC14_IER0_IE0; // Enable ADC conv complete interrupt
SCB->SCR &= ~SCB_SCR_SLEEPONEXIT_Msk; // Wake up on exit from ISR
// Ensures SLEEPONEXIT takes effect immediately
__DSB();
}
void ADC14_IRQHandler(void)
{
volatile unsigned int data ;
data = ADC14->MEM[0];
while(!(EUSCI_A0->IFG & EUSCI_A_IFG_TXIFG));
// Echo the received character back
EUSCI_A0->TXBUF = data;
}
