Cómo utilizar el programa para iniciar el microcontrolador STC AD (programa C) qué chip es el pin de entrada STC12C2052AD
;Frecuencia de reloj 18.432MHz, velocidad en baudios = 9600.
;El resultado de la conversión también se muestra en el puerto P1 a través de un LED para una fácil observación.
LED_MCU_START EQU P3.7
Registro de conversión ADC_CONTR EQU 0BCH; A/D
Registro de resultado de conversión ADC_RES EQU bit A/D0BDH 8
Los bits correspondientes en el puerto P1ASF EQU sirven como registros de control para las funciones analógicas. 9DH; si se utiliza P1 para A/D, el bit correspondiente debe establecerse en 1
ADC_Power_On_Speed_Channel_0 EQU 11100000B como entrada A/D
ADC_Power_On_Speed_Channel_1 EQU 11100001B como A; Entrada /D ;P1.1
ADC_Power_On_Speed_Channel_1 EQU 11100001B como entrada A/D.
4
ADC_Power_On_Speed_Channel_5 EQU 11100101B como entrada A/D
ADC_Power_On_Speed_Channel_6 EQU 11100110B como entrada A/D
ADC_Power_On_Speed_Channel_7 EQU 111 00111B; como entrada A/D; P1.7
; P1.77
; --------------------------
;Definir variables
ADC_Channel_0_Result Resultado de conversión A/D del canal EQU 30H ; 0
ADC_Channel_1_Result Resultado de conversión A/D EQU 31H ;
ADC_Channel_2_Result Resultado de conversión A/D EQU 32H
ADC_Channel_3_Result Canal Resultado de conversión A/D EQU 33H;
ADC_Channel_4_Result resultado de conversión A/D EQU 34H
ADC_Channel_5_Result resultado de conversión A/D EQU 35H
ADC_Channel_6_Result resultado de conversión A/D del canal EQU 36H
ADC_Channel_7_Result resultado de conversión A/D del canal EQU 37H
ORG 0000H
LJMP MAIN <; /p>
ORG 0050H
PRINCIPAL:
CLR LED_MCU_START indicador de trabajo LED_MCU_START; MCU EQU P3.7
MOV SP, # 7FH Pila de configuración;
ACALL Initiate_RS232 inicializa el puerto serie;
ACALL ADC_Power_On; enciende la alimentación del ADC y enciende la alimentación analógica interna cuando lo usas por primera vez;
Encienda la alimentación del ADC, puede aumentar correctamente el retardo a menos de 1 ms;
ACALL ACALL Set_P12_ASF establece P1.2 como puerto analógico;
ACALL Set_ADC_Channel_2 establece P1. 2 como canal del convertidor A/D;
ACALL Get_AD_Result mide el voltaje y obtiene el resultado de la conversión A/D
ACALL Send_AD_Result envía el resultado de la conversión a la PC;
ACALL Send_AD_Result envía el resultado a la PC.
MOV A, ADC_Channel_2_Result muestra el resultado de la conversión A/D usando el puerto P1
CPL A
MOV P1, A <
Wait_Loop:
Detención de SJMP Wait_Loop
----------------------------; ----------------------------------
Iniciar_RS232; Iniciar_RS232;
<. p> CLR ES desactiva la interrupción en serie;MOV TMOD, #20H establece T1 como generador de velocidad en baudios;
MOV SCON, #50H bits de datos, sin verificación de paridad 0101; 0000 8
MOV TH1, #0FBH Oscilador de cristal, velocidad en baudios = 9600. 18.432MHz
MOV TL1, #0FBH
SETB TR1 inicio T1 ; p>
RET
------------------------------- ----- ---------------------------
Enviar_Byte:
CLR TI
MOV SBUF, A
Send_Byte_Wait_Finish:
JNB TI, Send_Byte_Wait_Finish
CLR TI
RET
p>