Autor Tema: Complemento de ejemplo con 18F4550  (Leído 2730 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado Diego E.

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1086
Complemento de ejemplo con 18F4550
« en: 07 de Noviembre de 2009, 13:26:24 »
Hola grupo, les cuento que ya pude implementar en mi ejemplo el módulo USB en modo CDC (puerto virtual)

Para el módulo USB utilicé los ejemplos disponibles en le foro, en especial RedPic,

Agradezco infinitamente a todos los colaboradores del FORO, sin su ayuda seria poco menos que imposible desarrollar estas aplicaciones

nota: Me sorprende la cantidad de memoria que exige este módulo, 4060 posiciones de ROM y aprox. 1200 posiciones de RAM.

cualquier inquietud o sugerencia si está a mi alcance con gusto la resolveré.

Saludos.


Acá les comparto el ejemplo completo:
Lo pueden simular perfectamente en proteus 7.4 (en la versión 7.5 no me funcionó), para verificar el puerto virtual USB pueden utilizar hyperterminal.

En esta aplicación utilicé los módulos básicos del PIC:
1- Display LCD a 4 bit
2- Conversión AD a 10 bit
3- Timer1, con interrupción
4- Transmisión serial RS-232 a 9600 bps, con interrupción en recepción RX
5- Cominicación I2C, con RTC DS1307
6- Teclado matricial de 4x4
7- Memoria EEPROM interna
8- Puerto USB en modo CDC

Descripción:
1- El PIC realiza un conversión AD tomando la señal por RA0
2- Se toma el valor entero de 0-1023 y se calcula además en porcentaje, ambos valores son convertidos en cadena y llevados al LCD
3- Esta cadena, resultado AD, es enviada al PC via RS-232 y por medio del puerto USB, Ejemplo: RA0 = 0000 - 000%
4- El dato recibido del PC, un caracter ASCII tando a través de puerto 232 como del USB, son presentado en el LCD y alamacenados en la EEPROM en la dirección 0.
5- Se lee las variables de tiempo real del DS-1307, se convierten en cadena y se presentan en el lcd, ejemplo:"12:00:00 01/01/2000"
5- Por medio del teclado, presionando primero la tecla reloj, se habilita la programación de la hora y fecha, haciendo oscilar el cursor del LCD en la variable correspondiente le llevamos el número deseado desde el teclado, luego el dato es grabado en el DS-1307.

Nota: El puerto USB crea un COM virtual el cual requiere para su reconocimiento el driver de la Micro-chip mchpcdc.inf
Pasos para verificar el USB:
1- Conecte el circuito al PC a través del USB
2- El PC pide la instalación del driver, está el la carpeta raiz del proyento
3- El dispositivo es reconocido, lo podemos verificar en el administrador de dispositivos, normalmente aparece COM5
4- Inicie una sesión con Hyperterminal, seleccionar COM5 o el puerto asignado al dispositivo, configurar 9600 bps
5- Inmediátamante debe aparecer valores tales como: "RA0 = 0511 - 049%" además al presionar cualquiera tecla, debe aparecer en el lcd ejemplo "USB = A

El ejemplo completo lo pueden obtener en esta dirección

http://rapidshare.com/files/303685444/Ejemplo_18F4550.rar.html

Desconectado jhozate

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1698
Re: Complemento de ejemplo con 18F4550
« Respuesta #1 en: 07 de Noviembre de 2009, 13:36:10 »
 :-/ :-/ :-/ estas engomado con los pic...buena esa por el aporte
Ser Colombiano es un Premio, Saludos desde CALI-COLOMBIA

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: Complemento de ejemplo con 18F4550
« Respuesta #2 en: 07 de Noviembre de 2009, 16:35:34 »
Hola.

Por AQUI esta la forma de ahorrar RAM cuando usas USB con CCS.
El papel lo aguanta todo

Desconectado Diego E.

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1086
Re: Complemento de ejemplo con 18F4550
« Respuesta #3 en: 07 de Noviembre de 2009, 23:30:39 »
Hola MLO_, la verdad ya había visto este apunte de yopepe pero como no manejaba en absoluto el tema USB no lo comprendía; pero ahora que ya lo puedo experimentar y pude ver la diferencia me parece genial, el programa me ahorro 40% de memoria RAM.

saludos.

Desconectado bigluis

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 511
    • Tutoriales de Qt C++
Re: Complemento de ejemplo con 18F4550
« Respuesta #4 en: 06 de Abril de 2010, 20:28:23 »
Hola a todos, antes que todo muchas gracias por el proyecto, esta muy interesante.

 :( no he podido descargar el archivo, porque ha sido borrado o algo asi,  :oops: me pregunto si es posible que vuelvan a subirlo.

gracias
Tutoriales de Qt C++

No es necesario que hagamos Grandes cosas, sino que lo que hagamos sea importante.

SI la NECESIDAD es la MADRE del CONOCIMIENTO, SEGURAMENTE la PEREZA su TÍA.

Cuando el ARTE requiere de PRECISION le llamamos CIENCIA

Desconectado Diego E.

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1086
Re: Complemento de ejemplo con 18F4550
« Respuesta #5 en: 06 de Abril de 2010, 21:56:30 »
Hola bigluis, desde luego acá tienes el link ejemplo

saludos.

Desconectado bigluis

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 511
    • Tutoriales de Qt C++
Re: Complemento de ejemplo con 18F4550
« Respuesta #6 en: 07 de Abril de 2010, 14:43:19 »
 :-/ Gracias Diego
Tutoriales de Qt C++

No es necesario que hagamos Grandes cosas, sino que lo que hagamos sea importante.

SI la NECESIDAD es la MADRE del CONOCIMIENTO, SEGURAMENTE la PEREZA su TÍA.

Cuando el ARTE requiere de PRECISION le llamamos CIENCIA


 

anything