Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Control Velocidad Motor DC Con Pic
Control Velocidad Motor DC Con Pic
//////////
//
//
//
CONTROL VELOCIDAD MOTOR DC CON PIC
//
//
//
//
(c) RobotyPic 2012
//
//
//
//////////////////////////////////////////////////////////////////////
//////////
#include <16f876a.h>
16f876a
#device adc=8
8 bits
//Configuracin conversor AD a
#fuses XT,NOWDT
#use delay(clock=4000000)
#byte
#byte
#byte
#byte
trisb=0x86
portb=0x06
trisc=0x87
portc=0x07
//Configuracin puerto b
//archivo para control del lcd
//funcin principal
//funcin por interrupcin
/
**********************************************************************
********/
/******************* FUNCIN GENERACIN MODULACIONES PWM
**********************/
#int_ccp2
void ccp2_int(){
if(++cambio==1){
salida CCP2
setup_ccp2(CCP_COMPARE_CLR_ON_MATCH);
conmutacin salida a 0
//Conmutacin estado
//Modo comparacin,
ccp_2=lectura_AD;
semiperiodo alto
}
else{
setup_ccp2(CCP_COMPARE_SET_ON_MATCH);
conmutacin salida a 1
ccp_2=255-lectura_AD;
valor semiperiodo bajo
}
set_timer1(0);
temporizador para comparacin
}
//Modo comparacin,
//Carga del ccp2 con
//Reinicio del
/
**********************************************************************
********/
/******************** FUNCIN PRINCIPAL
***************************************/
void main(){
float velocidad;
trisc=0x00;
datos
port_b_pullups(TRUE);
puerto b
lcd_init();
//Porcentaje velocidad
//Puerto C como salida de
//Habilitacin resistencias pullups
//Inicializacin del lcd
setup_timer_1(T1_INTERNAL|T1_DIV_BY_1);
para comparacin
setup_ccp2(CCP_COMPARE_SET_ON_MATCH);
conmutacin salida a 1
//Configuracin Timer
setup_adc_ports(AN0);
analgico AN0
setup_adc(ADC_CLOCK_INTERNAL);
conversor AD
//Canal de entrada
enable_interrupts(int_ccp2);
comparacin
enable_interrupts(GLOBAL);
interrupciones
AD
while (true){
set_adc_channel(0);
delay_us(20);
lectura_AD=read_adc();
velocidad=(lectura_AD/2.55);
}
//Modo comparacin,
//Habiliatacin lectura
//Estabilizacin
//Lectura canal analgico
//Clculo % de velocidad