ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Control Pwm


Enviado por   •  18 de Octubre de 2013  •  786 Palabras (4 Páginas)  •  267 Visitas

Página 1 de 4

INICIO DEL PROGRAMA EN CCS COMPILER

================================================================================

A continuación se presenta un programa que nos permitirá controlar la velocidad de un motor de cc. (Corriente continua). Atravez de los pines de interrupción del puerto B en este caso pb4 y pb5 tenga en cuenta que este código está diseñado para generar tonos al aumentar o disminuir la velocidad.

Nota: Para tener en cuenta.

1. Identificar el tipo de micro controlador pic que está usando.

2. Recuerde configurar las funciones necesarias para que el micro funcione.

3. Debe activar las correspondientes interrupciones en este caso (enable_interrupts(global);) y (enable_interrupts(int_rb);).

4. Configurar los puertos de entrada y salida correspondientes.

================================================================================ ================= INCLUSION DE ARCHIVOS CABECERA .h =========================

#include <16F877A.h> // busca en el directorio include del compilador

#include <stdio.h>

========================= CONFIGURACION DEL PIC (BK0) =======================

#fuses HS,NOWDT,PUT,NODEBUG,NOPROTECT,NOBROWNOUT,NOLVP,NOCPD,NOWRT

#use delay(clock = 20M) //CRISTAL DEL PIC = 20MHz

================= INCLUSION DE LIBRERIAS EXTRAS .c =========================

#include <lcd.c> //lcd 2x16

======= DECLARACION DE PUERTOS Y REGISTROS ESPECIALES DEL PIC (BK5) ========

#BYTE pta = 0x5 // dirección en RAM

#BYTE ptb = 0x6 // dirección en RAM

#BYTE ptc = 0x7 // dirección en RAM

#BYTE ptd = 0x8 // dirección en RAM

#BYTE pte = 0x9 // dirección en RAM

#BYTE status = 0x3 // dirección en RAM

#BYTE intcon = 0x0B // dirección en RAM

#BYTE option = 0x1 // dirección en RAM

#BYTE adcon0 = 0x1F // dirección en RAM

#BYTE adcon1 = 0x9B // dirección en RAM

#BYTE pir1 = 0x0C // dirección en RAM

#BYTE pie1 = 0x8C // dirección en RAM

#BYTE pir2 = 0x0D // dirección en RAM

#BYTE pie2 = 0x8D // dirección en RAM

//===== DECLARACION GLOBAL DE VARIABLES, VECTORES Y MATRICES EN RAM (BK3) ======

int8 cnt1 =0; int16 i;

// ================ NOMINACION DE PINES DEL HARDWARE (BK2) ====================

#BIT up = ptb.4

#BIT down = ptb.5

#BIT sounder = ptc.0

#BIT salida = pta.0

// ============== DECLARACION DE INTERRUPCIONES DEL PIC (BK8) ====================

void sonido_up() {

for(i=1;i<=100;i++) {

sounder=!sounder;

delay_Us(900); }

}

void sonido_down() {

for(i=1;i<=100;i++) {

sounder=!sounder;

...

Descargar como (para miembros actualizados) txt (5 Kb)
Leer 3 páginas más »
Disponible sólo en Clubensayos.com