beautypg.com

Texas Instruments MSC1210 User Manual

Page 251

background image

Summation/Shifter

17-23

Keil Simulator

to a LONG integer*/

long j;

j = ACR3;

j <<= 8;

j += ACR2;

j <<= 8;

j += ACR1;

j <<= 8;

j += ACR0;

return (j);

}

long read_a_to_d_result ()

{

long j;

/*Convert A/D Conversion results from the ADRESH:ADRESM:ADRESL

register string to a LONG integer ith sign extension*/

j = ADRESH;

j <<= 8;

j += ADRESM;

j <<= 8;

j += ADRESL;

j &= 0x00ffffff; //eleminate upper nibble

if (j & 0x00800000)

{//is result negative?

j |= 0x0ff000000;

}

return (j);

}

char init_a_to_d ()

{

char i, j;

/* Setup ADC */

//

ADCON0 = 0x30;

// Vref on 2.5V, Buff on, BOD off

ADCON0 = 0x20;

// Vref on 1.25V, Buff on, BOD off

ADCON1 = 0X00;

ADCON2 = 0xFF;

// decimation ratio

ADCON3 = 0x00;

ADCON1 = 0x05;

// bipolar, Filter = auto, self calibration, offset, gain

//wait for the calibration to take place

printf (”\n\nCalibrating....\n”);