Microcontroladores PIC
-
Ya pasó el verano y no he tenido tiempo de probar nada, a ver si me sorprendeis y me enseñais un adelanto por vuestra parte… jeje..
Ahora tengo en mente también un control por GSM, pero me llega la epoca de exámenes y quizás lo aplace...
Tengo tanto que hacer y tan poco tiempo... jeje -
tengo que realizar el siguiente proyecto para una materia: crear un interfaz tanto harware como software para comunicarme con el pc, a traves del puerto USB.
Tengo que utilizar el pic 18f2550, visual c# la idea es: conectar una memoria usb al circuito que voy a hacer con el pic seguidamente concectarlo al pc que lo reconozca y hacer un programa en c# que me sirva para leer/ecribir datos en la memoria USB.
Ahora necesito sabe si alguien sabe donde encontrar informacion(tecnica) sobre ese PIC, que herramientas tengo que utilizar(compilador,librerias etc) , como debo empezar, no se toda la informacion que me sea posible para orientarme como empezar, ya que es la primera vez que voy a hacer algo asi.por fis LarryAg o alguien que me ayude…
-
Ahora mismo no puedo ayudarte en nada puesto que tengo trabajos pendientes.. pero te voy a dar una página que se ha iniciado ahora en el mundo de los USB y que maneja todo tipo de pics. Tiene un manual muy bueno para ello aunque aún hay que esperar que experimente con los dispositivos de almacenamiento de datos que es realmente lo que tu quieres… de todos modos en la página de microchip tienes información al respecto, aunque eso sí viene en ingles...
La página interesante es picmania.garcia-cuervo
attachment_p_372844_0_mmc_card.zip -
para que es el codigo
-
LarryAg tengo un problema, soy estudiante de Ing. tec industrial en Alcala.
El caso es que para el proyecto fin de carrera tengo que realizar un montaje de una placa basada en el 8051 con teclado matricial 4x4 y display Lcd, entradas y salidas analogicas/digitales y bueno en ningun laboratorio he montado todo eso.
El caso es que mi tutor me ha dado una placa "tini m400 de maxim" pero tiene puertos I2C, CAN, SPI pero en ninguno puedo conectar todo eso que te acabo de comentar entonces no se que hacer.
He pensado pasarme a la tecnica wrapping y montarme un circuito simple montando todo eso.
¿Que me recominedas? no se que hacer, si tienes algun esquema de algo te estaría eternamente agradecido.
Muchas gracias.
PD. el proyecto es un sistema empotrado basado en el 8051 para la automatizacion de una casa, la programacion es sencilla (todo en C) y con eso no voy a tener ningun problema.
Muchas gracias
-
Bueno la verdad que el 8051 se presta a mucho, en concreto no se nada de esa placa, me informaré un poco en cuanto tenga algo de tiempo.
Después de haber visto tu mensaje lo único que se me ocurre decirte es que uses el puerto i2c que existen diversos dispotivos tanto del fabricante philips, como maxim, microchips, con los que puedes conseguir puertos de entrada salida, relojes en tiempo real, conversores A/D usando sólo dos líneas. Otra opcion sería usar el puerto can que es muy utilizado en los vehiculos o el puerto spi, que es más rápido que el i2c aunque también conlleva mayor número de cables…
Espero haberte ayudado a tomar una decisión, importante para comenzar...
También espero que me mantengas informado de tus avances... -
Hola LarryAg.
En primer lugar darte las gracias por contestarme
Me podrias facilitar alguna pagina o documento donde poder usar el puerto I2C?? Asi podre saber mas sobre este puerto y asi poder utilizarlo para la conversion A/D.
En cuanto a lo de conectar el display y el teclado me voy a fabricar una tarjeta con wrapping, en ella montare el teclado y el display con sus respectivos integrados y los colocare en el puerto I/O de la placa. Creo que es la forma más sencilla, además tambien colocare los sensores del sistema y en el caso de que me quede sin espacio de pines del micro los multiplexaré.
En cuanto tenga algo hecho si quieres te mando fotos o información de como va el proyecto.
Muchas gracias por tu tiempo, espero que me puedas facilitar la información del puerto I2C.
Muchas gracias
-
Muy agradecido estaría de la información recibida por tu parte, aunque creo que no entendí bien tu pregunta.
Bueno por partes: aún no he mirado nada acerca de la placa que vas a usar (fallo por mi parte).
La verdad que la opción más lógica es la que vas a usar, pines I/O y en caso de falta multiplexas.La opción que yo te decía era ampliar la placa colocando integrados que se comunican via i2c, can o spi y manejas infinidad de puertos como por ejemplo max7300 de maxim; en microchip también dispones de algunos. Puedes encontrar en maxim más dispositivos en interface and interconnect y buscando I/O port expander.
En cuanto a la información, lo único que debes hacer es mirar la documentación del integrado que vayas a usar y, por lo menos en maxim, y que yo halla visto te detallan los tiempos y protocolos de comunicación necesarias.
-
He estado hablando con el tutor del proyecto y me ha comentado que quiere que la conexion del teclado matricial y el display sean mediante el puerto ISP.
Yo no he visto nada en la carrera sobre ese tipo de comunicación asi que lo que hare será lo que me has aconsejado (me lo han dicho en una tienda de electrónica también, conectrol) que es que en la página de microchip mire aplicaciones que existen y haber que tal.
El tutor me ha comentado que con el ISP se puede controlar diversos periféricos pero supongo que sera mucho más dificil controlar un display y un teclado de esa forma que mediante el puerto paralelo I/O.
Muchas gracias y en cuanto tenga algo te lo mando.
Gracias
-
Hola de nuevo, he estado leyendo el datasheet del max7300. (Losiento donde antes quría decir ISP era I2C)
Esta opción es buena porque mediante el puerto I2C obtendría 28 puertos espandidos, lo malo es que serían comunicación serie, entonces tendría que usar registros de desplazamiento para poder comunicar los puertos del integrado max7300 con el display, ¿no? y al igual con el teclado llevar el codigo binario generado al pulsar una tecla a un registro de desplazamiento.
Lo que no llego a comprender mirando las hojas de caracteristicas del integrado es como se llega a hacer la comunicación, lo miraré más detenidamente.
Muchas gracias
-
La verdad es que es la mejor opción si tienes que prescindir de las entrada salidas digitales.
En cuanto a lo del registro de desplazamiento, este expansor te permite escribir/leer bit a bit o mediante byte, y puede que incluso mediante word; todo es cuestión de ver que es lo que más te conviene.Puedes leer bytes y a cada byte leido le corresponderá una tecla pulsada, al igual para la escritura en lcd, un byte determinará un caracter en el lcd, o contraste o posición… no creo que tenga muchos problemas, eso sí, un poco de paciencia...
Sigue comentandonos que cada vez tiene mejor pinta ... jeje...
-
hola, he pedido muestras a maxim del componente max7300, falta que me las traigan. al mismo tiempo ya he montado en una placa entrenadora (board normal) el teclado matricial con un componente integrado que controla la captura de las filas y de las columnas mas un registro para que se mantengan hasta que se produzca otro pilso en el teclado.
Muchas gracias por el aporte del componete max7300, en cuanto lo tenga empezare a cacharrear con el a ver que sale, segun he leido en el datasheet no es muy complicado de usarlo asi que haber que tal.
una duda tengo ahora, veras tengo que programas el sistema basado en 8051, yo me tiraria a hacerlo con el keil Uvision pero solo tengo la version de prueba pero no consigo en la mula el bueno con las claves, o he pensado en el IAR pero me pasa lo mismo que para Dallas/Maxim no encuentro una version que no sea de prueba.
Si sabes algun sitio de descarga, bueno comentamelo, gracias
Seguire informando, Gracias
-
Bueno, en la mula encontré la siguiente dirección
ed2k://|file|Keil%20Software%20uVision%207.20(PK51+Serial).iso|43069440|437DBF4B8440478F0FE82D42C34FC1B9|/
que seria una versión del keil como tu solicitas, supongo que no hago mal haciendo esto. Espero que te sirva…
Por curiosidad, programarás en ensamblador o usando C.??
-
Hola, lo siento por no contestar antes pero he estado liado con la asignatura que me queda (electronica de potencia) y con el proyecto.
Bueno pues a tu pregunta de como lo voy a programar sera en c todo el codigo menos las rutinas del display LCD (4lineas y 20 caracteres: para hacer menus accesibles desde usuario).
Hoy he recibido los "Samples" de Maxim, la verdad es que se han portado muy bien, me han mandado e-mails con las posibilidades que tiene el max7300 (no se como ponerlos aqui asi que si quieres me das tu email y te los mando). He recibido muchos max7300 pero he tenido el problema de que ninguno tiene el "pacage" (pcbfootprint) para hacer todas las pruebas en una placa board de estas de pincha los componentes.
Lo que primero voy a hacer es montar todo en una placa board (teclado, LCD, max7300, puertos…) y de ahi la conecto a la placa que tengo tini400 peo claro como el max7300 no se pincha, es de los que se sueldan (SSOP) pues me diseñare una placa impresa con lo necesario para que funcione y listo, otra posibilidad es poder encontar un zocalo que lo adapte que los he visto pero en internet y de estados unidos.
¿tu no sabras alguna tienda por casualidad que lo tengan?Lo que acabo de probar hoy es el teclado conectrado a un componente 74c922 para que me de la tecla que he pulsado en binario (asi me evito que hacer el control por i2c mediante software) y llevado aun registro para que almacene el dato hasta que pulse otra vez de nuevo.
He tenido problemas pero es que tenia que haber usado dos condensadores uno de 1uF y otro de 10uF y yo los he usado los dos de 1uF, espero que sea eso, lo habia leido mal de los datasheet del componente.
Bueno esto es todo que no es poco, cuando me funcione el teclado y encuentre el zocalo que espero que sea pronto (la proxima semana) te comento que tal va todo.
Ahhhhh, tembien me estoy leyendo los protocolos de i2c de la placa tini400 porque me ha dicho un profesor que no puedo usar las funciones tipicas de i2c porque al incorporar i2c de hardware tendre que usar lo que me proporcionen, tendre que hacerle caso al profesor por que es un hacha en electronica, se llama Julio Pastor Mendoza, y bueno a mi no me clase pero es una institucion en mi facultad.
Bueno muchas gracias por el link, ahora lo pondre a bajar. Muchas gracias porque sin tu aportación no hubiera encontrado la pieza clabe. Gracias.
-
Podías haber pedido el max7300 en encapsulado pdip que sí que los tienen, son los que yo pedí y por lo menos para las pruebas…
En cuanto a la ayuda, no hay de que, simplemente aporta tus avances así como nosotros te ayudamos... y nada más...
-
Hola
Te acabo de mandar los pdf´s de la placa de maxim que estoy usando y los manuales de microcontrolador tambien que son muy utiles para la gente que no sabe manejar un microcontrolador. Un manual que te he mandado es una asignatura de mi carrera, no se como colgarlos en el foro o si se puede asi que te los doy mejor a ti que haras un buen uso de ellos.
te comentaba en el email (ya sabes mi nombre y de donde soy, jejeje) que vaya chasco que me mandasen con encapsulado SSOP, no es mucho problema porque despues voy a desarrollar una tarjeta impresa y los soldare en ella los SSOP pero bueno para hacer las pruebas en la placa board pues necesitaba unos PDIP.
He preguntado en Electronica Alcala y en Conectrol pero no tienen asi que vaya chasco, ¿sabes donde los puedo conseguir en la comunidad de Madrid o en Internet pero que me tarden poco?
otro tema es la programacion de la comunicacion I2c, he estado leyendo y ya se como funciona la comunicacion I2c, pero aun asi me gustaria profundizar un poco más.
En los pdfs de la placa que estoy usando, tini400 no explica como usar la comunicacion I2c, les he mandado un email diciendo si me pueden facilitar algun documento de como poder hacerlo, porque me supongo que no sera con las funciones estandar de I2c:
*Inicio comunicacion.
*Delay
*…
*StopBueno con lo que me respindan yo te comento y bueno espero que me puedas decir algun sitio para comprar los componentes max7300 y max7318
-
Ahhhh el teclado ya funciona, al final he usado el componente que comente pero el registro lo he quitado porque no me funcionaba bien, no se porque pero no cambia bien cuando pulsaba la tecla.
Lo que he hecho ha sido montar el controlador con los dos condensdores y la sorpresa fue que el propio componente actua como un registro, es decir hasta que no pulso una tecla no cambian de nivel los pines y con la salida da "data available" que me genera un pulso a nivel alto me indica que se ha producido un cambio, con lo que solo tengo que leer directamente de las salidas y espero que ya este.
Por lo menos me cambiaba bien, algunas veces tenia que pulsar 2 veces para que cambiase pero aumentare la capacidad del segundo condensador para haber si aumenta la frecuencia de muestreo.
gracias y haber si me puedes orientar de donde comprar eso. garcias.
-
Pues la verdad es que he tenido problemas para recibir tu correo…
En cuando a donde encontrar los integrados, no te lo puedo decir, soy de Málaga y la verdad que madrid...me pilla lejos... Te vas a tener que dar prisa en hacer la placa o esperar a que te lleguen en otro encapsulado.
Puedes hacer una placa sencilla para no tener calentarte la cabeza ahora, y simplemente poner más accesibles los pines. Te adjunto un ejemplo para soic.
-
OK. te mando luego desde casa otro email a la direccion de hotmail. Muchas gracias por la ayuda. Me estoy creando una plaquita con Capture y Layout sencillita y luego la imprimire en la uni (sale muy barato hacerlo en la uni), la placa consta de 2 MAX7300AAX, 2 MAX7318AAG y conectores de pines para soldar de la libreria BCONT100 y listo. La verdad es que la complicacion sera cuando todo me funcione bien en la placa de entrenamiento hacer la placa final. Gracias por tu ayuda
He decidido poner 2 componentes de cada porque si luego probando necesito más pues solo tendria que soldar otro componente y no hacer otra placa que seria mas gasto para mi.
En cuanto a lo de pedir los PDIP me han contestado que no los fabrican ya con ese encapsulado, me ha dicho el que me ha contestado que se gastaba mucho plomo y por eso se han retirado ¿? No se porque pero bueno ya pues nada.
Yo creo que voy a usar tambien el 7318 porque es mas facil que el 7300 y bueno para conectar el teclado por ejemplo, he pensado hasta en controlar el display tambien con otro 7318 y dejar el 7300 para los sensores y las salidas digitales, analogicas y para sacar etapas de potencia pero bueno luego puedo de idea y hacerlo al reves.
Cuando termine la placa, que espero mañana por la mañana si quieres te mando el archivo *.DSN y *.MAX por si acaso algun dia pues lo usas.
Anda que envidia estar en Malaga, solete, playita y dentro de poco Sierra Nevada cerca.
Muchas gracias, esto ya va funcionando. jejeje
-
La verdad que no se está mal por akí… jeje
Veo que avanzas a pasos grandes, ya mismo tienes el proyecto listo; En realidad el manejo de LCD, analógico y demás tiene algún objetivo o simplemente lo implementas para investigar sobre ese campo??
Suerte en tus avances...