Documentos de Académico
Documentos de Profesional
Documentos de Cultura
R1
10k
VDD
VSS
VEE
RW
RS
D0
D1
D2
D3
D4
D5
D6
D7
U1 +5v
E
1 4
MCLR RB0/CN4/RP0/C2IN-/AN2/EMUD1/PGD1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
20 5
VCAP/VDDCORE RB1/CN5/RP1/C2IN+/AN3/EMUC1/PGC1
6
RB2/CN6/RP2/AN4
2 7
RA0/CN2/VREF+/AN0 RB3/CN7/RP3/AN5
3 11
RA1/CN3/VREF-/AN1 RB4/CN1/RP4/SOSCI
9 14
1
RA2/CN30/CLKI/OSCI RB5/CN27/RP5/ASDA1/EMUD3/PGD3
10 15
RA3/CN29/CLKO/OSCO RB6/CN24/RP6/ASCL1/EMUC3/PGC3
X1 12
RA4/CN0/T1CK/SOSCO RB7/CN23/RP7/INT0
16
CRYSTAL RB8/CN22/RP8/SCL1/PWM2H1/TCK
17 RV1
18 10k
15%
RB9/CN21/RP9/SDA1/PWM2L1/TDO
2
21
RB10/CN16/RP10/PWM1H3/TDI/EMUD2/PGD2
22
RB11/CN15/RP11/PWM1L3/TMS/EMUC2/PGC2
23
+5v RB12/CN14/RP12/PWM1H2
24
RB13/CN13/RP13/PWM1L2
28 25
AVDD RB14/CN12/RP14/PWM1H1
27 26
AVSS RB15/CN11/RP15/PWM1L1
DSPIC33FJ32MC202
BR1 R2
RV3 43K
C1
100%
2200uF
R7
2W08G 1k C3 1k C2
2200uF 47uF
#include "config.h"
#include "reloj.h"
#include <libpic30.h>
#include "xlcd.h"
#include <p33FJ32MC202.h>
#include <stdio.h>
#include <math.h>
char vector[4] = ""; //Caracter usado en la visualizacion de valores del
LCD
int result = 0; //Valor medido en bruto de AN0/RA0-AN1/RA1
int result1 = 0; //Valor medido en bruto de AN2/RB0
float vm = 0; //Valor medido como float
//Variables usadas en el calculo del programa
float temp=0;
int main(){
}
}
void adc0 (void){
TRISA = 0x0001; // Entrada analógica RA0
AD1PCFGL = 0xFFFF; // Todas entradas analógicas
AD1CON1bits.AD12B=1; // Resolucion de 12 bits y muestreo
secuencial de los canales
AD1CON1bits.ASAM=0; // El muestreo inicia cuando bit SAMP=1
*muestreo manual
AD1CON1bits.SSRC=0; // Termina el muestreo e inicia la conversión
AD1CHS0bits.CH0NA =0; // La entrada negativa será Vss
AD1CHS0bits.CH0SA =0; // Entrada positiva será AN0
AD1CON2bits.CSCNA =0; // Muestreo secuencial (scan) deshabilitado
AD1CON2bits.VCFG =0; // Referencia para la conversión: Referencia
positiva=AVdd, Negativa=AVss
AD1CON2bits.BUFM =0; // Configurado como buffer de 16 palabras
AD1CON2bits.SMPI =0; // Después de la conversión se genera la
interrupción
AD1CON2bits.ALTS =0; // Muestra 1 canal: AN0
AD1CON3bits.ADRC =0; // Reloj del ADC es derivado del sistema
AD1CON3bits.ADCS =21; // Tiempo de conversión.
}