Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

29/09/2009 #121

Avatar de Hernan83

Respuesta: Ccs c programas hechos en mplab(Proyecto completo)
Hice el circuito USB que maneja los 8 leds,grabo el .hex al micro,el programita en visual me detecta bien como port3 en la pc,bajo xp,cuando conecto la placa me hace el ruidito clasico "turu" del USB y aparece el globito con el nombre,me prende solo el led rojo en la placa,pero me pone el asistente para que busque el archivo que falta!!! que hago! como se llama el archivo que pide que busque y de donde lo saco!!! Gracias desde ya!
29/09/2009 #122

Avatar de george.manson.69

Respuesta: Ccs c programas hechos en mplab(Proyecto completo)
hernan83 dijo: Ver Mensaje
Hice el circuito USB que maneja los 8 leds,grabo el .hex al micro,el programita en visual me detecta bien como port3 en la pc,bajo xp,cuando conecto la placa me hace el ruidito clasico "turu" del USB y aparece el globito con el nombre,me prende solo el led rojo en la placa,pero me pone el asistente para que busque el archivo que falta!!! que hago! como se llama el archivo que pide que busque y de donde lo saco!!! Gracias desde ya!
Tienes el CCS C vdd? si lo tienes busca la carpaeta en archivos de programas PIC Cy luego entra y busca la carpeta de drivers y ahi habra tres archivos que son los drivers que hacen el interfaz de USB.

y saludos.
29/09/2009 #123

Avatar de Hernan83

Respuesta: Ccs c programas hechos en mplab(Proyecto completo)
Disculpame las molestias,se me instalaron los driver,todo bien,en administrador de disp. me aparece como com4,el programita visual conecta el led verde,hace el ruidito "turun" al conectar pero no me aparece el globito con el nombre y sigue prendido el led rojo de la placa,o sea no hay comunicacion,que puede ser? disculpame la insistencia,pero es mi primer proyecto USB,es hasta que le agarre la mano,gracias!!!
30/09/2009 #124


Respuesta: Ccs c programas hechos en mplab(Proyecto completo)
A todos los amigos que usan el 18f4550.
Necesito ayuda... Estaba tentado en poner "urgente" pero se (jajaja) que todo es urgente en nuestra actividad... Asi es que... Aqui va: "urgente" necesito información de lo siguiente: Estoy haciendo un proyecto donde el pic18f4550 es la base de adquisicion de datos: Por una parte 1 puerto analogico que me lee por comparacion un sensor de presion mpx7500, y al mismo tiempo un sensor sht11 de sensirion, y ademas (para no quedarme corto) necesito leer un sensor de campo hall, y un encoder (estoy usando un encoder paso a paso si... Un motor pap como encoder (jajajaja)) por ello necesito si alguien puede darme una pauta a seguir... Porque usé varios ejemplos (llevo varios meses en esto) de mplab, de css de c18 en fin ya me perdí en la cantidad de información que bajé de internet.... Resumiendo... Que me conviene usar... Hid, bulk, cdc o que tucuimas ! Si es uno de estos si alguien podria ponerme un esqueleto de programa en c, en assambler o lo que sea... Para darle fin a este tema que me hace caer el pelo... Por otro lado si existe del lado del pc... Alguna libreria ocx para leer con vbasic... En fin... Me olvidaba... Estoy usando el usb para esto está claro no ?? Jajajaj la placa la tengo fabricada... No es la que está en internet porque la que bajé como modelo tenia fallas terribles, no es tan simple como lo pintan, tuve que ponerle condensadores en todas partes asi como resistencias para que no se tilde al !pasar la mano encima!!!! Jajajajajaj cosa de locos... Bueno... Lo hice extenso pero ni modo... Tendria que poner un blog de las desventuras de desarrollar un data aad. Por medio de usb...
Un saludo muy cordial a la gente que se dedica a esto... Son fenómenos y es durisimo encontrar información digerible... Es un reto de por sí.

Abrazos.
05/10/2009 #125


grabar eeprom pic
buenas gente...
hago el cuento corto...
quiero grabar en la eeprom interna del pic 16f84a usando el compilador C de CCS

y según manual y miles de paginas...

READ_CALIBRATION(n)
READ_EEPROM(address)
WRITE_EEPROM(address, value)

esas son los comando que hay que usar...
la cosa es que me compila todo si no le coloco el read_calibration... pero no funciona

cuando lepongo el read_calibration(n), me sale un error diciendo que no esta definido el READ_CALIBRATION...
y lo defini asi...

#define read_calibration 10
Fin = read_calibration (10);

el problema,,, (nose si se definirá asi)... es que me sale un error

error en la linea X blabla "expect ;"

que lo necesita aki..

#define read_calibration (aki) 10

y no puedo hechar a andar el programa con la dichosa funcion...
la cosa es que segun manual es necesario calibrar la memoria para poder usarla (ya que es la memoria interna).

ojalá alguien me pueda ayudar, ya que esto me tiene un poco complicado...
he buscado ya hasta el aburrimiento en internet y nada, no he pillado una explicacion para esto.

bueno, saludos gente y gracias...
05/10/2009 #126


Respuesta: Ccs c programas hechos en mplab(Proyecto completo)
buenas, una consulta, ya que veo que has hecho programas grabando en la eeprom del pic...

lo que pasa es que he tratado de grabar en la eeprom y no he podido... creo que me falta configurar algo que no veo en el manual ni en internet...

ojala me puedan ayudar, aki el codigo:


Código:
#include <16f84a.h> //libreria del pic
#use delay (clock=4000000) //frecuencia del cristal k se va a ocupar.
#fuses HS,NOWDT,NOPUT,NOPROTECT

#byte port_b=0x06
#byte port_a=0x05
#byte k=0x0c
float D,I,L;




void main()
{



   set_tris_b(0); //declaramos el puerto b como salida
   port_b=0;//el valor inicial es 0
   set_tris_a(1);//declaramos el puerto a como entrada
   port_a=0;




      while(1)
      {
      output_low(pin_b1);
      output_low(pin_b0);
      if(input(pin_a0)==1)
         {
         I=0;
         While(input(pin_a0)==1)
            {
            output_high(pin_b0);
            #use delay(clock=4000000)
            delay_us(50);
            I=I+1;
            }
         }

//grabar eepromm

#define LAST_VOLUME 10

write_eeprom(0x04,I);

#use delay (clock=4000000)
delay_ms(50);


//#define LAST_VOLUME 10
L=read_EEPROM(0x04);










      while(input(pin_a1)==1)
         {
         D=0;
         //output_high(pin_b1);
         while(D<=L)
            {
            output_high(pin_b1);
            #use delay(clock=4000000)
            delay_us(50);
            D=D+1;
            }

         }
      }
}
basicamente en un temporizador, en el que el tiempo que temporiza esta configurado por un pulsador en la entrada A0... y la partida del temporizador se la da A1.

bueno, eso es... ojalá me puedan ayudar gracias
06/10/2009 #127

Avatar de Hernan83

Respuesta: Ccs c programas hechos en mplab(Proyecto completo)
Quisiera saber si el CCS tiene libreias para escribir y leer en una EEPROM 24LC256,y si puedo usarlas en conjunto con el PIC18F2550,gracias!
06/10/2009 #128

Avatar de Moyano Jonathan

Respuesta: Ccs c programas hechos en mplab(Proyecto completo)
Si si las tiene tendrías que buscar en la carpeta driver's del CCS
07/10/2009 #129


Respuesta: Ccs c programas hechos en mplab(Proyecto completo)
gracias checare la información
22/10/2009 #130


Respuesta: Ccs c programas hechos en mplab(Proyecto completo)
hola quisiera saber si alguien puede ayudarme tengo q hacer un proyecto para la escuela se trata de que con un pic controle un servo motor que cada 3 minutos gire a 180° y despues regrese a 0° otros 3 minutos y asi lo siga haciendo quien me puede ayudar???
05/11/2009 #131

Avatar de george.manson.69

Proyectos recOpilados
Aqui he juntado algunos proyectos que he hecho en este espacio
Archivos Adjuntos
Tipo de Archivo: pdf PROYECTOS CON PIC Y SIMULACION EN PROTEUS.pdf (341,6 KB (Kilobytes), 733 visitas)
19/11/2009 #132


Respuesta: Ccs c programas hechos en mplab(Proyecto completo)
Hola george.manson.69

Estoy probando el codigo USB escrito por ti, para comunicar USB del micro con el PC (CDC).
Programo el Pic con tu codigo, conecto el USB al PC, me reconoce el hardware, busco en la carpeta .../PICC/Drivers/ encuantra 3 ficheros, pero ninguno funciona, creo que es por el win7.

¿Puedes ayudarme?

Un saludo y felicidades por los proyectos, son muy utiles.
19/11/2009 #133

Avatar de george.manson.69

Respuesta: Ccs c programas hechos en mplab(Proyecto completo)
yO LO PROBE CON WINXP Y FUNCIONA...A LO MEJOR PODRIA SER ESO!!! EN LA CARPETA DONDE ESTAN LOS DRIVER HAY UN ARCHIVO QUE MODIFICAS...MRA ABRE EL ARCHIVO, "usb_desc_cdc.h" ve hasta abajo y encuentra "start device descriptors"

y busca en la linea

0x61,0x04, //vendor id (0x04D8 is Microchip, or is it 0x0461 ??) ==8,9
0x33,0x00, //product id ==10,11

esos numeros hexadecimales cambialos por estos

0xD8,0x04, //vendor id (0x04D8 is Microchip, or is it 0x0461 ??) ==8,9
0x0A,0x00, //product id ==10,11

a ver si funciona!!!

pero no se te olvide hacer una copia de seguridad!!!!
20/11/2009 #134


Respuesta: Ccs c programas hechos en mplab(Proyecto completo)
Gracias george.manson.69. Ya funciona.
20/11/2009 #135

Avatar de george.manson.69

Respuesta: Ccs c programas hechos en mplab(Proyecto completo)
Que bien que alla funcionado!!!
despues de todo que tenia el circuito? nexus148

si era lo que te habia mencionado en el mensaje pasado? o que era?
21/11/2009 #136


Respuesta: Ccs c programas hechos en mplab(Proyecto completo)
Si te refieres al primer problema, era simplemente el cristal de 20Mhz. Nunca me habia pasado que fallara 2 cristales recien comprados.
Quité uno de un circuito viejo y a funcionar a la primera.

Luego tube problemas con el debug, y lo solucioné poniendo 2 resistencia pulldown en el PGC y PGD del programador, ahora funciona perfecto.

Un saludo.
21/11/2009 #137

Avatar de george.manson.69

Control de 4 Servomotores
Este proyecto lo subo porque se me hace que es muy interesante, ya que puedes controla 4 servomotores via RS232.

Aqui se encuetra el programa el microcontrolador en CCS C

Código:
 
///////////////////////////////////////
//AUTOR:JORGE ARTURO RODRIGUEZ HERNANDEZ
//TITLE;CONTROL DE 4 SERVOS
//DATE:20/NOVIEMBRE/'09
///////////////////////////////////////
//CONFIGURACION///////////////////
#include<16F628A.h>
#include<math.h>
#fuses HS,NOWDT,NOLVP,MCLR,NOPROTECT
#use delay(clock=20000000)
#use rs232(uart1,baud=2400)
//VARIABLES QUE SE USAN EN EL PROGRAMA
int x,A=0,B=0,C=0,D=0;
float y;
long zA=0,zB=0,zC=0,zD=0;
//CONFIGURACION DEL MICROCONTROLADOR
void config(void){
  set_tris_a(0x20);
  set_tris_b(0x02);
  setup_comparator(NC_NC_NC_NC);
  enable_interrupts(INT_RDA);
  enable_interrupts(GLOBAL);
}
//INTERRUPCION POR RESEPCION
#INT_RDA
void RS232_receive(void){
  if(kbhit()){
   x=getc();
   switch (x){
    case 'A':
     A=getc();
     break;
    case 'B':
     B=getc();
     break;
    case 'C':
     C=getc();
     break;
    case 'D':
     D=getc();
     break;
   }
  }
  y=(A*6.6666666e-6)+0.9e-3;
  zA=y*1000000;
  y=(B*6.6666666e-6)+0.9e-3;
  zB=y*1000000;
  y=(C*6.6666666e-6)+0.9e-3;
  zC=y*1000000;
  y=(D*6.6666666e-6)+0.9e-3;
  zD=y*1000000;
}
//INICIO DEL PROGRAMA PRINCIPAL
void main(void){
  config();
 do{
  output_high(PIN_A0);
  delay_us(zA);
  output_low(PIN_A0);
  output_high(PIN_A1);
  delay_us(zB);
  output_low(PIN_A1);
  output_high(PIN_A2);
  delay_us(zC);
  output_low(PIN_A2);
  output_high(PIN_A3);
  delay_us(zD);
  output_low(PIN_A3);
  delay_us(80000-zA-zB-zC-zD);
 }while(TRUE);
}
nota: se usa el virtual serial port para poder simular puertos seriales
Imágenes Adjuntas
Tipo de Archivo: jpg CONTROL DE 4 SERVOS.JPG (65,4 KB (Kilobytes), 125 visitas)
Archivos Adjuntos
Tipo de Archivo: zip CONTROL DE 4 SERVOS.zip (120,0 KB (Kilobytes), 286 visitas)
07/12/2009 #138

Avatar de george.manson.69

Proyectos recOpilados V1.1
Hola de nuevo he puesto otros proyectos que hecho en este hilo...
los programas sepueden bajar buscandolos en este tema.
Archivos Adjuntos
Tipo de Archivo: pdf Proyectos con Microcontroladores.pdf (523,0 KB (Kilobytes), 520 visitas)
07/12/2009 #139

Avatar de Vegetal Digital

Respuesta: Ccs c programas hechos en mplab(Proyecto completo)
Excelente, muy buenos los proyectos con comunicación usb.
Saludos
08/12/2009 #140

Avatar de george.manson.69

Manejo de 6 display de 7 segmentos
Hola aqui esta un proyecto simple donde manejas 6 display de 7 segmentos.

Aqui etsa el codigo que contiene el PIC.

Código:
///////////////////////////////////////
//AUTOR:JORGE ARTURO RODRIGUEZ HERNANDEZ
//TITLE;LETRERO CON DISPLAY DE 7 SEGMENTOS
//DATE:18/JUNIO/'09
///////////////////////////////////////

//CONFIGURACION///////////////////
#include<16f887.h>
#fuses HS,NOWDT,NOLVP,MCLR,NOPROTECT,NOPUT
#use delay(clock=20000000)
#use rs232(uart1,baud=2400)

//DEFINIMOS PINES

//#define    EN1    PIN_C0 
//#define    EN2    PIN_C1
//#define    EN3    PIN_C2    NO SE PORQUE LO PUSE
//#define    EN4    PIN_C3  PORQUE NO SE USAN
//#define    EN5    PIN_C4
//#define    EN6    PIN_C5

//AGREGAMOS VARIABLE FIJAS
const int LETRA[]={    0b00001001,    //H
                    0b01000000,    //O
                    0b01000111,    //L
                    0b00001000, //A
                    0b11111111, //SPACE
                    0b11111111, //SPACE 
                     0b11111111, //SPACE
                    0b11111111, //SPACE
                    0b11111111, //SPACE
                    0b11111111, //SPACE
                    0b11111111};//SPACE

//AGREGAMOS VARIABLES

unsigned int x=0;
signed int y=6,z=6,n=1,VALOR=100;
unsigned long i;


//CONFIGURACION DEL PIC

void config(void){

        set_tris_c(0x80);                //RC0-RC6 SALIDAS, RC7 ENTRADAS
        set_tris_d(0x00);                //RD0-RD7 SALIDAS
        setup_comparator(NC_NC_NC_NC);    //OPAM APAGADOS
        setup_adc(ADC_OFF);                //DAC APAGADO
}

void main(void){
        
        config();    //HABLAMOS A LA CONFIGURACION DE CONFIGURACION
        output_c(0x00);
        while(TRUE){
            for(i=0;i<=VALOR;i++){                //ciclo de temporizacion
                    for(y=z;y<=6;y++){            //ciclo donde activa cada display
                            bit_set(*7,y);        //con su correspondiente letra
                            output_d(LETRA[x]);
                            delay_ms(1);        //Tiempo de vizualizacion
                            bit_clear(*7,y);    //Apaga el display antes Prendido
                            x++;                //Incrementa para saber donde debe
                            if(x>=n) x=0;        //primero empezar el principo de la palabra
                    }
            }
            VALOR=VALOR-10;                        //Cuando valla mas letras mostradas se va a tardar
            if(VALOR<=9) VALOR=100;                //mas, entonces el tiempo debe de disminuir para
            z--;                                //una vizualizacion correcta
            if(z<=-4) z=6;                        //Decrementa para vizualizar mas letras al paso del tiempo
            n++;                                //transcurrido.
            if(n>=11) n=1;                        //Incrementa el limite a donde debe de llegar                                                //cada letra con corde al tiempo transcurrio
        }
}
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.