Hello,
We are trying to make a low battery indicator using ADC10. However;
the compiler gives an error saying that the ADC control registers
and relevant bits are undefined. We define them in the header file
but the error still exists. When we use "#ifdef", the error
disappears but this time we cannot debug the code. The codes are as
follows:
(In msp430x12x.h)
#define __MSP430_HAS_ADC10__
/* Definition to show that Module is available */
// ADC10CTL0
#define ADC10CTL0 (0x01B0)
#define INCH_11 (0xB000)
#define SREF_1 (0x2000)
#define ADC10SHT_2 (0x1000)
#define REFON (0x0020)
#define ADC10ON (0x0010)
#define ENC (0x0002)
#define ADC10SC (0x0001)
// ADC10CTL1
#define ADC10CTL1 (0x01B2)
#define ADC10BUSY (0x0001)
// ADC10MEM
#define ADC10MEM (0x01B4)
(In main function)
WDTCTL = WDTPW + WDTHOLD; // Stop WDT
// #ifdef __MSP430_HAS_ADC10__
ADC10CTL1 = INCH_11; // AVcc/2
ADC10CTL0 = SREF_1 + ADC10SHT_2 + REFON + ADC10ON;
P1DIR |= 0x01; // Set P1.0 to output direction
for (;;)
{
ADC10CTL0 |= ENC + ADC10SC; // Sampling and conversion start
while (ADC10CTL1 & ADC10BUSY); // ADC10BUSY?
if (ADC10MEM < 0x622) // ADC10MEM = A11 > 1.3?
P1OUT |= 0x01; // Set P1.0 LED on
else
P1OUT &= ~0x01; // Clear P1.0 LED off
}
// #endif /* __MSP430_HAS_ADC10__ */
Errors:
Error[Pe020]: identifier "ADC10CTL1" is undefined O:\3107
MSP_project\slaa302\wm430_system.c 406
Error[Pe020]: identifier "INCH_11" is undefined O:\3107
MSP_project\slaa302\wm430_system.c 406
Error[Pe020]: identifier "ADC10CTL0" is undefined O:\3107
MSP_project\slaa302\wm430_system.c 407
Error[Pe020]: identifier "SREF_1" is undefined O:\3107
MSP_project\slaa302\wm430_system.c 407
Error[Pe020]: identifier "ADC10SHT_2" is undefined O:\3107
MSP_project\slaa302\wm430_system.c 407
Error[Pe020]: identifier "REFON" is undefined O:\3107
MSP_project\slaa302\wm430_system.c 407
Error[Pe020]: identifier "ADC10ON" is undefined O:\3107
MSP_project\slaa302\wm430_system.c 407
Error[Pe020]: identifier "ENC" is undefined O:\3107
MSP_project\slaa302\wm430_system.c 411
Error[Pe020]: identifier "ADC10SC" is undefined O:\3107
MSP_project\slaa302\wm430_system.c 411
Error[Pe020]: identifier "ADC10BUSY" is undefined O:\3107
MSP_project\slaa302\wm430_system.c 412
Error[Pe020]: identifier "ADC10MEM" is undefined O:\3107
MSP_project\slaa302\wm430_system.c 413
I would be very glad if you help me solve this problem.
Thanks and regards,
Ender
Analog to Digital Conversion Question (MSP430F1222)
Started by ●August 31, 2006