Microcontroladores PIC en Linux.
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

Codigo para USB, botones y transmisor .

2 participantes

Ir abajo

Codigo para USB, botones y transmisor . Empty Codigo para USB, botones y transmisor .

Mensaje por Libi Mar 7 Mayo 2013 - 3:09

Buenas soy novata en esto de programacion con microcontroladores y no e por donde empezar es un trabajo asignado en mi universidad, les explico para que me ayuden por favor, tengo un circuito con un PIC de la familia de los 18F, Debo crear un algritmo que me permita la comunicacion PC-PIC, y otro algoritmo de pulsadores con eliminacion de rebotes!... quiero que me ayuden que programas usar paso a paso.. El sistema obligatorio es debian. ahora no se como compilar donde hacer el algoritmo y muchos menos como sera esa transferencia de datos al PIC. Auxiliooooooooooooooooooooo. pale

Libi
Nuevo Usuario
Nuevo Usuario

Mensajes : 5
Fecha de inscripción : 07/05/2013

Volver arriba Ir abajo

Codigo para USB, botones y transmisor . Empty Re: Codigo para USB, botones y transmisor .

Mensaje por maigke Mar 7 Mayo 2013 - 5:20

Hola y bienvenida, como opción muy rápida puedes usar el proyecto pinguino, el cual usa un microcontrolador PIC18F2550 o su para el PIC18F4550 el envio de datos entre el micro y el PC mediante el formato CDC de USB.

En mi caso tengo una Fedora 18, pero en un tiempo también lo probé con debian Sarge y ubuntu 10.04 y anteriores.

Este ejemplo lee un canal analógico y lo envia a una LCD

Código:

#include <math.h>

int sensorPin = A0;   
int ledPin = 13;     
int sensorValue = 0; 
float tv,tr,y,yy,temp;
void setup() {
      //lcd(8, 9, 1, 2, 3, 4, 0, 0, 0, 0);//modo 4 bits-relacion pines usados
    /*
    Manejo de LCD con Pingino
    lcd.pins(pinRS, pinE, pinD4, pinD5, pinD6, pinD7, 0, 0, 0, 0);
        */
   
    lcd.pins(8,9,4,5,6,7,0,0,0,0);
   
    //Numero de columnas = 16 y renglones 2
    lcd.begin(16, 2);
  pinMode(ledPin, OUTPUT); 
}

void loop() {
  lcd.setCursor(2,0);;
  lcd.print("Temperatura");
  digitalWrite(ledPin,HIGH );
  sensorValue = analogRead(sensorPin);   
  tv= 5.0*sensorValue/1024.0;
  tr=tv *10000.0/(5.0-tv);
  yy=(tr/20000.0);
  y=logf(yy);
 
  y*=(1.0/4050.0);
  y+= (1.0/298.15);
  temp = 1.0/y;
  temp-= 273.15;
  lcd.setCursor(7,1);
  lcd.printf("%f",temp);
  lcd.print(" C");
  digitalWrite(ledPin,LOW );
  delay(300);               
}
maigke
maigke
Asiduo del Foro
Asiduo del Foro

Mensajes : 210
Fecha de inscripción : 12/04/2009
Edad : 47
Localización : Mexico

Volver arriba Ir abajo

Codigo para USB, botones y transmisor . Empty Re: Codigo para USB, botones y transmisor .

Mensaje por maigke Mar 7 Mayo 2013 - 5:21

En este otro se muestra la comunicación USB CDC, se pulsa un boton y cada vez que se hace se envia una letra por el puerto USB, así como a una pantalla LCD, como si fuera un contador de anillo

Código:

/*-----------------------------------------------------
Author:  --<>
Date: Wed Apr 24 00:00:18 2013
Description:

-----------------------------------------------------*/
    u8 n=0;
    unsigned char contador=0;
    unsigned char buttonstate=0;
   
void setup() {
    //run once:
    //lcd(8, 9, 1, 2, 3, 4, 0, 0, 0, 0);//modo 4 bits-relacion pines usados
    /*
    Manejo de LCD con Pingino
    lcd.pins(pinRS, pinE, pinD4, pinD5, pinD6, pinD7, 0, 0, 0, 0);
        */
   
    lcd.pins(8,9,4,5,6,7,0,0,0,0);
   
    //Numero de columnas = 16 y renglones 2
    lcd.begin(16, 2);
    pinMode(12,INPUT);
    }

void loop() {



    digitalWrite(13, HIGH);
    delay(100);
    digitalWrite(13,LOW);
    delay(100);
    lcd.setCursor(1,1);
    lcd.print("Rally Meca");
    buttonstate = digitalRead(12);
    if(buttonstate == LOW)
    {
        digitalWrite(13,LOW); //para pruebas
        delay(500);
        contador++;
        lcd.setCursor(14,0);
        lcd.printf("%d",contador);
        if(contador < 7)
        {
                switch(contador)
                {
                    case 1:
                        lcd.setCursor(5,0);
                        lcd.print("a");
                        CDC.print("a");
                        break;
                 
                    case 2:
                        lcd.setCursor(5,0);
                        lcd.print("b"); 
                        CDC.print("b");
                        break;
                    case 3:
                        lcd.setCursor(5,0);
                        lcd.print("c"); 
                        CDC.print("c");
                        break;
                    case 4:
                        lcd.setCursor(5,0);
                        lcd.print("d"); 
                        CDC.print("d");
                        break;
                    case 5:
                        lcd.setCursor(5,0);
                        lcd.print("e"); 
                        CDC.print("e");
                        break;
                    case 6:
                        lcd.setCursor(5,0);
                        lcd.print("f"); 
                        CDC.print("f");
                        break;
                    default:
                        lcd.clear();
                        //contador=0;
                }
              digitalWrite(13,HIGH);
              lcd.setCursor(14,0);
              lcd.printf("%d",contador);
              delay(500);
        }
        else
            {contador = 0;}     
    }
   
    }
maigke
maigke
Asiduo del Foro
Asiduo del Foro

Mensajes : 210
Fecha de inscripción : 12/04/2009
Edad : 47
Localización : Mexico

Volver arriba Ir abajo

Codigo para USB, botones y transmisor . Empty Re: Codigo para USB, botones y transmisor .

Mensaje por maigke Mar 7 Mayo 2013 - 5:24

Codigo para USB, botones y transmisor . RallyMecaProto_bb
maigke
maigke
Asiduo del Foro
Asiduo del Foro

Mensajes : 210
Fecha de inscripción : 12/04/2009
Edad : 47
Localización : Mexico

Volver arriba Ir abajo

Codigo para USB, botones y transmisor . Empty Re: Codigo para USB, botones y transmisor .

Mensaje por maigke Mar 7 Mayo 2013 - 5:25

Codigo para USB, botones y transmisor . RallyMecaProto_esquema
maigke
maigke
Asiduo del Foro
Asiduo del Foro

Mensajes : 210
Fecha de inscripción : 12/04/2009
Edad : 47
Localización : Mexico

Volver arriba Ir abajo

Codigo para USB, botones y transmisor . Empty Re: Codigo para USB, botones y transmisor .

Mensaje por maigke Mar 7 Mayo 2013 - 5:26

circuito funcionando, espero te sirva Very Happy
Codigo para USB, botones y transmisor . RallyMecaProtoFoto
maigke
maigke
Asiduo del Foro
Asiduo del Foro

Mensajes : 210
Fecha de inscripción : 12/04/2009
Edad : 47
Localización : Mexico

Volver arriba Ir abajo

Codigo para USB, botones y transmisor . Empty Re: Codigo para USB, botones y transmisor .

Mensaje por maigke Mar 7 Mayo 2013 - 5:30

La página del proyecto es esta: http://www.pinguino.cc/
El software para programar el micro, puedes bajarlo de aquí:
http://wiki.pinguino.cc/index.php/Main_Page#Download
y el diagrama para ensamblar un pinguino en proto, como el de la imagen anterior, aquí te lo muestro
Codigo para USB, botones y transmisor . PIC18F2550_diagram
maigke
maigke
Asiduo del Foro
Asiduo del Foro

Mensajes : 210
Fecha de inscripción : 12/04/2009
Edad : 47
Localización : Mexico

Volver arriba Ir abajo

Codigo para USB, botones y transmisor . Empty Re: Codigo para USB, botones y transmisor .

Mensaje por Libi Vie 10 Mayo 2013 - 23:37

HOla maigke! como estas? te agradezco toda esta valiosa informacion, pero me podrías dar tu correo electronico! necesito mucha ayuda sobre esto y manejo muy poca información gracias. libi

Libi
Nuevo Usuario
Nuevo Usuario

Mensajes : 5
Fecha de inscripción : 07/05/2013

Volver arriba Ir abajo

Codigo para USB, botones y transmisor . Empty Re: Codigo para USB, botones y transmisor .

Mensaje por Libi Sáb 11 Mayo 2013 - 1:47

CUales son las características funcionales de un modulo usb? lcd y botones?

Libi
Nuevo Usuario
Nuevo Usuario

Mensajes : 5
Fecha de inscripción : 07/05/2013

Volver arriba Ir abajo

Codigo para USB, botones y transmisor . Empty Re: Codigo para USB, botones y transmisor .

Mensaje por maigke Mar 14 Mayo 2013 - 5:27

inbox
maigke
maigke
Asiduo del Foro
Asiduo del Foro

Mensajes : 210
Fecha de inscripción : 12/04/2009
Edad : 47
Localización : Mexico

Volver arriba Ir abajo

Codigo para USB, botones y transmisor . Empty Re: Codigo para USB, botones y transmisor .

Mensaje por Libi Jue 16 Mayo 2013 - 3:00

no tengo nada en inbox

Libi
Nuevo Usuario
Nuevo Usuario

Mensajes : 5
Fecha de inscripción : 07/05/2013

Volver arriba Ir abajo

Codigo para USB, botones y transmisor . Empty Re: Codigo para USB, botones y transmisor .

Mensaje por maigke Jue 16 Mayo 2013 - 5:31

Revisa tus mensajes privados en este foro, saludos
maigke
maigke
Asiduo del Foro
Asiduo del Foro

Mensajes : 210
Fecha de inscripción : 12/04/2009
Edad : 47
Localización : Mexico

Volver arriba Ir abajo

Codigo para USB, botones y transmisor . Empty Re: Codigo para USB, botones y transmisor .

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.