Red de conocimiento informático - Problemas con los teléfonos móviles - Cómo el microcontrolador STC89C51 utiliza la conversión AD interna

Cómo el microcontrolador STC89C51 utiliza la conversión AD interna

Hay ejemplos de esto en el sitio web oficial de STC. El proceso aproximado es el siguiente:

ADC_CONTR=ADC_CONTR|0X80; //10000000 enciende la fuente de alimentación de conversión

Delay1ms(1. ); //Retraso, espera a que se estabilice la fuente de alimentación interna

//P1M0=P1M0|0X07; //Establece el canal donde se encuentra p1.0. 0 Los canales donde se encuentran P1.1 y p1.3 están configurados en modo abierto/drenaje

//P1M1=P1M1|0X07;

ADC_CONTR=0xe0; //11100000 Gire en P1, inicia la conversión

Delay25us(10); //Retrasa un final del tiempo para estabilizar el voltaje de entrada

ADC_DATA =0x00; registro de resultados de conversión

p>

ADC_LOW2 =0x00;

ADC_CONTR |= 0x08; //ADC_START=1, iniciar conversión

while(!(ADC_CONTRamp;0x10 )); //0001, 0000 Espere a que finalice la conversión A/D

temp1=ADC_DATA; //Lea el resultado de la conversión

temp1=ADC_LOW2;

El resultado final de la conversión es de 10 bits: advalue= temp1*4 temp2