TODOPIC
Microcontroladores PIC => Primeros pasos - Iniciación a los microcontroladores => Mensaje iniciado por: Nanashi en 03 de Junio de 2012, 13:24:29
-
Hola me llamo David, quiero hacer un proyecto y necesitaba que me pasarais presupuesto:
Lo que necesito es presupuesto de lo siguiente:
1º Diseños de una placa no mayor a 120x60mm con lo necesario para montar un PIC con salida a 22 conectores hembra Jack de 2,5mm, a esos Jack se les unirá un tramo de 40m de cable a pulsadores.
La idea es que cuando se accione cualquier pulsador, la PIC recoja la información y envié al PC el pulsador que ha sido accionado por USB.
Los pulsadores habrá momentos en que no esté pulsado ninguno, otros 3, 15, etc, pero se quedaran pulsados durante horas. No sé si habrá algún problema, como cuando mantienes pulsadas muchas teclas de un teclado.
2º Un led verde que indique el correcto funcionamiento de la placa.
3º El listado de todos los componentes necesarios, con nombres y referencias para poder adquirirlos y montar yo la placa.
4º También necesito la programación necesaria para el PIC entregando el código fuente.
5º También que me presupuestara el fabricar él la placa, con envío a España (Madrid)
Gracias y espero vuestras contestaciones.
-
Parece un proyecto más orientado a PLC ¿Puedes comentar cuál va a ser el entorno de trabajo de la placa? Si hay suciedad, ruido eléctrico, si es necesario que trabaje 24 horas/365 días, etc.
La placa que describes trabajará bien en una oficina sin ningún ruido eléctrico. En otro entorno es necesario adaptar las entradas y aislarlas con optoacopladores.
Saludos.
-
Lo que yo necesito es poner 22 botones (separados de la placa unos 40 metros) y cuando pulse uno el PIC mande al PC la información de cuál ha sido pulsado.
Los cables de los botones se conectaran a la placa por jack de 2,5mm, si no me propones algun conector mejor.
El tiempo que el botón estará pulsado será de unos 30 minutos. Y podrán mantenerse pulsados todos a la vez.
El tiempo de funcionamiento será de unas 12 horas seguidas.
La placa se situara en una caja de PVC, y trabajara en entornos limpios.
Un saludo.
-
¿Que protocolo de transmisión buscas para enviar la información al PC?
A través del USB se puede emular un teclado, de manera que al pulsar un pulsador el PC reciba la letra 'A' al pulsar otro pulsador, el PC reciba la letra 'B' etc.
Otro protocolo más adecuado podría ser una emulación del RS232 a través del USB y que cada segundo se envíen al PC los datos de los pulsadores que se encuentran pulsados y los que no se encuentran pulsados.
Saludos.
-
Lo que busco es precisamente la segunda opcion que has puesto porque quiero desarrollar una aplicacion que recogera esos datos y los utilizara
-
Creo que ya hay placas diseñadas y montadas que te pueden servir. Sólo haría falta reprogramarlas para lo que necesitas.
Voy a mirar por la red.
Saludos.
Edito:
y añadir una tarjeta de expansión de entrada con 22 jack.
-
Creo que ya hay placas diseñadas y montadas que te pueden servir. Sólo haría falta reprogramarlas para lo que necesitas.
Voy a mirar por la red.
Saludos.
Muchas gracias, asi da gusto, jeje. Gracias y un saludo
-
¿Qué tipo de jack quieres montar?
Saludos.
-
Otra punto a tener en cuenta es que la emulación de RS232 por USB no es muy fiable.
Si el conector pierde comunicación durante un momento, el identificador del RS232 cambia y la comunicación se pierde.
Con el RS232 verdadero esto no ocurre. Es mucho más seguro y merece la pena colocar una tarjeta RS232 al PC.
Además la programación se simplifica mucho, y al final ahorras dinero en diseño y mantenimiento.
Saludos.
-
(http://rocky.digikey.com/weblib/CUI%20Inc/Web%20Photo/New%20Photos/MJ-2508N.jpg)
He mirado esto, la placa estara en una caja, y tendrá estas salidas, Jack 2,5mm MONO.
A los cables le meteria un pulsador o un bumper y acabaria en un jack macho de 2,5.
(http://3.bp.blogspot.com/_ZUXDpHABK4I/R-onog-4kJI/AAAAAAAAABs/XZMD8WK213A/s320/BUMPER1.jpg)
Si me recomiendas rs232 te hare caso y lo usare en lugar de usb.
-
¿Habria problemas por la longitud del cable?
Tanto el RS232 como el de los Jack.
Gracias
-
Depende del ruido ambiente. Por lo que has comentado la entrada no importa que sea rápida, de forma que se puede colocar un filtro para que no le afecte el ruido.
El RS232 no necesita ser rápido y podría llegar a 40 metros sin problemas en un entorno con poco ruido eléctrico y con cable aislado.
Saludos.
-
tengo algo parecido a lo que necesitas el problema es que soy de Mexico :undecided:
-
Hola, con un PIC16f883, te seria facil la implementacion, ya que dispones de oscilador interno, y tendrias dejando 2 para comunicacion, otros 23 pines libres... 22 son los que necesitas, y uno para el led destellando indicador de funcionamiento...
Como no tienen problemas con los tiempos, se puede realizar con pooling en las entradas, y transmitir 3 bytes con las lecturas correspondiente, por ejemplo cada segundo...
Imperioso el uso de optoacopladores, porque serán muchos metros de cable...
Ahora subo un esquema... :mrgreen:
-
Yo había pensado en un PIC18F4550 en una placa premontada:
http://www.tiertex.com/index.php?route=product/product&product_id=52
La placa se compra en e-bay a bajo precio y te ahorras la parte de diseño del PIC, sólo hay que añadir un shield de entradas/salidas.
Edito:
Tienes cerca de 33 I/O:
22 para las entradas.
3 para RS232 / bootloader
8 para posibles expansiones.
Saludos.
-
O una de tipo Pinguino:
http://www.hackinglab.org/pinguino/index_pinguino.html
Añadiendo el shield de entradas.
Saludos.
-
yo creo que todo se soluciona con el 16f88 o el 12f675 no se requiere de mucho para lo que el necesita
-
esquema de entradas optoacopladas, con led indicador de estado, como verificación de los pulsadores
-
Muchas gracias por todas las respuestas.
La PIC 18F4550 USB Demo Board que me recomiendas Picuino la veo soberbia.
¿Esa me valdria sin mas? ¿Solo conectar los jack y el led?
Perdona mi ignorancia pero las conoces? quiero decir viene con manual que te indica donde soldar?
Porque no sabria donde soldar cada conectorde los jack,XD
Muchas gracias por todas las respuestas
-
esquema de entradas optoacopladas, con led indicador de estado, como verificación de los pulsadores
+1 Por la distancia que hay entre la placa y los pulsadores... Ayuda a filtrar cualquier ruido
-
Muchas gracias por todas las respuestas.
La PIC 18F4550 USB Demo Board que me recomiendas Picuino la veo soberbia.
¿Esa me valdria sin mas? ¿Solo conectar los jack y el led?
Perdona mi ignorancia pero las conoces? quiero decir viene con manual que te indica donde soldar?
Porque no sabria donde soldar cada conectorde los jack,XD
Muchas gracias por todas las respuestas
La placa necesita un filtro o un optoacoplador a la entrada, como te comentan.
El manual de la placa es este:
http://www.tiertex.com/download/files/TDSDB14550.pdf
Saludos.
-
Gracias por las ideas, si me sugeris optoacopladores los usare, mi idea de placa, para lo que necesito es esta:
(http://img684.imageshack.us/img684/7991/placapa.png)
Un posible uso para que entendais como funcionaria, seria como en un hotel con varias habitaciones en el que cada una tiene un pulsador que al accionarse
envien una señal al PIC y este al Pc, el Pc otro programa interpretaria la informacion del PIC y sabria que boton se pulso.
(http://img100.imageshack.us/img100/8165/practica.png)
Y la presentación seria en una caja de pvc, con las 22 salidas Jack de 2,5 el led de funcionamiento y en la imagen pone UBS, pero usare el RS232.
(http://img403.imageshack.us/img403/4079/protor.png)
Espero que asi se entienda mejor el proyecto.
Muchas gracias por las respuestas.
-
Un artículo sobre cómo proteger entradas digitales:
http://www.digikey.com/us/en/techzone/microcontroller/resources/articles/protecting-inputs-in-digital-electronics.html
Saludos
-
Otro esquema sencillo de protección:
http://www.opencircuits.com/Input_protection
Saludos.
-
Creo que a las entradas les bastaría con una protección por resistencia, condensador y diodos.
La comunicación con el PC si debería estar aislada con optoacopladores. Ya existen circuitos montados.
Además se debería alimentar con un transformador a 9 voltios por ejemplo. ¿Valdría un transformador externo?
El espacio no es muy grande ¿Qué altura puede tener el montaje?
¿Los jack deben estar soldados a la PCB o montados sobre la caja?
Saludos.
-
Creo que a las entradas les bastaría con una protección por resistencia, condensador y diodos.
La comunicación con el PC si debería estar aislada con optoacopladores. Ya existen circuitos montados.
Además se debería alimentar con un transformador a 9 voltios por ejemplo. ¿Valdría un transformador externo?
El espacio no es muy grande ¿Qué altura puede tener el montaje?
¿Los jack deben estar soldados a la PCB o montados sobre la caja?
Saludos.
La comunicación con el PC si debería estar aislada con optoacopladores. Ya existen circuitos montados.
Ok, ¿entonces a los pulsadores no seria necesario poner optoacopladores?
Además se debería alimentar con un transformador a 9 voltios por ejemplo. ¿Valdría un transformador externo?
Si se podria usar un transformador, o en su defecto una pila de 9v o bateria, pero ¿Seria necesario realmente no se podria hacer sin fuente de energia externa?
El espacio no es muy grande ¿Qué altura puede tener el montaje?
Podria ampliar espacio, todo depende de la caja que usase, tengo pensado una caja de proyecto electronico, si la placa fuese muy grande cambio de caja a una mayor
¿Los jack deben estar soldados a la PCB o montados sobre la caja?
Tenia pensado que estubiesen soldados en el PCB, y simplemente acercar la tarjeta a un lado de la caja.
Aunque tambien podria soldar de la PCB al concetor Jack un cable
-
Una forma sencilla de implementar las entradas puede ser con varios circuitos 74HC165 en serie conectados a un pic sencillo del tipo 16F628.
Los circuitos 74HC165, son baratos y sencillos de encontrar.
¿Sigues pensando en contratar la placa o prefieres hacerla tú mismo?
Saludos.
-
Ok, ¿entonces a los pulsadores no seria necesario poner optoacopladores?
Creo que no. Bastaría con desacoplar el RS232. ¿Qué opinas Norberto?
(http://www.digikey.com/Web%20Export/techzone/microcontroller/article2012-protecting-inputs-in-digital-fig13.jpg)
Si se podria usar un transformador, o en su defecto una pila de 9v o bateria, pero ¿Seria necesario realmente no se podria hacer sin fuente de energia externa?
Conviene que los interruptores conduzcan cierta corriente. Una batería de 9 voltios se descargará muy rápido.
Hace falta fuente externa para aislar las señales del PC.
Se podría intentar alimentar con el USB y enviar señales tambien por él, pero creo que no es muy fiable. (que me corrijan si alguien tiene otra idea)
Saludos.
-
Una forma sencilla de implementar las entradas puede ser con varios circuitos 74HC165 en serie conectados a un pic sencillo del tipo 16F628.
Los circuitos 74HC165, son baratos y sencillos de encontrar.
¿Sigues pensando en contratar la placa o prefieres hacerla tú mismo?
Saludos.
Pues visto lo visto, creo que la contrataré, aver que me cuesta que me la hagan, tengo miedo de comprar los materiales y cagarla, jeje.
A ver cuanto me cuesta y luego evaluo.
De montarla yo sería que me dieran un esquema detallado, donde simplemente me diga que elementos necesito y como montarlos.
Gracias
-
Ok, ¿entonces a los pulsadores no seria necesario poner optoacopladores?
Creo que no. Bastaría con desacoplar el RS232. ¿Qué opinas Norberto?
(http://www.digikey.com/Web%20Export/techzone/microcontroller/article2012-protecting-inputs-in-digital-fig13.jpg)
Si se podria usar un transformador, o en su defecto una pila de 9v o bateria, pero ¿Seria necesario realmente no se podria hacer sin fuente de energia externa?
Conviene que los interruptores conduzcan cierta corriente. Una batería de 9 voltios se descargará muy rápido.
Hace falta fuente externa para aislar las señales del PC.
Se podría intentar alimentar con el USB y enviar señales tambien por él, pero creo que no es muy fiable. (que me corrijan si alguien tiene otra idea)
Saludos.
¿Que consumo puede llegar a tener una placa asi? me seria muy sencillo usar baterias de radiocontrol, las tipicas de 8,4v a 2000mA con conector tamiya. No se si servirian.
Ademas, el propio cargador de la bateria me valdria?
-
El consumo de la placa puede ser mínimo (menos de 1mA)
Las entradas conectadas a pulsadores podrían consumir muy poco, pero es preferible que consuman unos 2mA cuando estén activados, para evitar el ruido.
Así es como funcionan los PLC:
https://support.automation.siemens.com/WW/llisapi.dll/csfetch/59753552/et200sp_di_8x24vdc_st_manual_en-US_en-US.pdf?func=cslib.csFetch&nodeid=59753559&forcedownload=true
Mira la página 20: 2.5mA de consumo para cada entrada.
Si se conectan 10 entradas: 25mA
Con una batería de litio de 2.5A tendrías para 100horas, pero piensa que recargarlas es un engorro.
Saludos.
-
El consumo de la placa puede ser mínimo (menos de 1mA)
Las entradas conectadas a pulsadores podrían consumir muy poco, pero es preferible que consuman unos 2mA cuando estén activados, para evitar el ruido.
Así es como funcionan los PLC:
https://support.automation.siemens.com/WW/llisapi.dll/csfetch/59753552/et200sp_di_8x24vdc_st_manual_en-US_en-US.pdf?func=cslib.csFetch&nodeid=59753559&forcedownload=true
Mira la página 20: 2.5mA de consumo para cada entrada.
Si se conectan 10 entradas: 25mA
Con una batería de litio de 2.5A tendrías para 100horas, pero piensa que recargarlas es un engorro.
Saludos.
Usaria de NiMh, que son mas sencillas de cargar, o alimentarlo por usb se podria? Yo digo un rs232 para datos y un usb de alimentador.
Gracias
-
Piensa que hasta las lámparas halógenas del techo tienen su transformador a 12v cada una.
Se podrían instalar dos entradas de alimentación: USB y jack de 2.1mm para conectar una batería o un trafo.
Saludos.
-
Pues visto lo visto, creo que la contrataré, aver que me cuesta que me la hagan, tengo miedo de comprar los materiales y cagarla, jeje.
A ver cuanto me cuesta y luego evaluo.
De montarla yo sería que me dieran un esquema detallado, donde simplemente me diga que elementos necesito y como montarlos.
Gracias
Si comentas rango de presupuesto, es posible que te puedan ofrecer soluciones.
Si te lo ofrezco yo, creo que me pasaría de precio. Además lo que necesitas te lo pueden enviar desde cualquier parte del mundo.
Saludos.
-
Pues visto lo visto, creo que la contrataré, aver que me cuesta que me la hagan, tengo miedo de comprar los materiales y cagarla, jeje.
A ver cuanto me cuesta y luego evaluo.
De montarla yo sería que me dieran un esquema detallado, donde simplemente me diga que elementos necesito y como montarlos.
Gracias
Si comentas rango de presupuesto, es posible que te puedan ofrecer soluciones.
Si te lo ofrezco yo, creo que me pasaría de precio. Además lo que necesitas te lo pueden enviar desde cualquier parte del mundo.
Saludos.
El problema de siempre, presupuestar.
Pues depende de lo que me dieran:
- Una "guia" o esquema de como montarlo yo.
- O una placa ya montada.
El precio lo teneis que poner vosotros que sois los profesionales.
Yo tenia pensado en gastar 50€ en hacer la placa con la caja y el cable rs232. Pero tampoco se que PIC necesito, ni que resistencias, etc. Si saber materiales hacer presupuesto es imposible.
Tambien comprendo que pasarme esa guia, esquemas, etc, para que yo lo haga cuenta con un trabajo de conocimientos y estudios. Y ese "cache" y trabajo se paga.
Yo ofreceria en 1º instancia 30€.
IMPORTANTE, son cifras de dinero sin tener ni idea del tema, no quiero ofender a nadie, ni que me respondais enfadados. En este mundo la negociacion y al hablar es lo 1º, jeje.
Vosotros me direis si es un trato justo o no.
Muchas gracias a todos.
-
A mi me parece un precio muy bajo para un diseño a medida.
Por otra parte lo que necesitas es tan común que no me extrañaría que alguna empresa venda una placa que puedas adaptar o que alguien en el foro haya hecho ya ese montaje y quiera pasártelo por ese precio a cambio de alguna modificación, por lo que no necesitarías un diseño a medida.
Algunas placas a la venta:
http://www.emc.es/adq/piod64.html
http://www.xbot.es/microplans/controlpc2.htm
http://www.pc-control.co.uk/digibee_info.htm
http://accesio.com/go.cgi?p=../104/104-idi-48.html
http://www.embeddedarm.com/products/board-detail.php?product=TS-DIO64
Si quieres ayuda para diseñarla tú mismo, puedes encontrarla en el foro, así como consejos para elegir componentes sin equivocarte y programar el PIC.
En caso de que no conozcas bien la programación PIC puedes intentarlo con arduíno. Una vez que comiences verás que es más fácil de lo que pensabas.
Saludos.
-
A mi me parece un precio muy bajo para un diseño a medida.
Por otra parte lo que necesitas es tan común que no me extrañaría que alguna empresa venda una placa que puedas adaptar o que alguien en el foro haya hecho ya ese montaje y quiera pasártelo por ese precio a cambio de alguna modificación, por lo que no necesitarías un diseño a medida.
Algunas placas a la venta:
http://www.emc.es/adq/piod64.html
http://www.xbot.es/microplans/controlpc2.htm
http://www.pc-control.co.uk/digibee_info.htm
http://accesio.com/go.cgi?p=../104/104-idi-48.html
http://www.embeddedarm.com/products/board-detail.php?product=TS-DIO64
Si quieres ayuda para diseñarla tú mismo, puedes encontrarla en el foro, así como consejos para elegir componentes sin equivocarte y programar el PIC.
En caso de que no conozcas bien la programación PIC puedes intentarlo con arduíno. Una vez que comiences verás que es más fácil de lo que pensabas.
Saludos.
Cuanto cobrarias mas o menos? para saber como estan los precios.
O por buscar una placa de empresa que me valga barata y hacerme el esquema de conexiones.
Un saludo
-
Desarrollar una placa desde cero lleva mucho tiempo y cuesta mucho dinero. Para contratar cualquier trabajo a medida piensa en un mínimo de 25 Euros la hora que es menos de lo que cobra cualquier profesional como un albañil, fontanero, electricista, etc. Un desarrollo desde cero y a medida entregando planos y código puede llevar varios días... a lo que hay que añadir las pruebas y puesta en marcha. Se calcula en miles de euros.
Otra cosa es que te entreguen una caja negra que enchufas y ya está. Con un pequeño manual de usuario de una hoja.
Eso es lo que se suele entregar con los kits del tipo "montaló tu mismo" o con una placa estandar.
En tu caso tienes la suerte de necesitar algo que ya existe, por lo que no necesitas un desarrollo a medida. Piensa que un desarrollo a medida es igual que pedir a un carrocero que te diseñe una carrocería a medida. Te puede salir más caro el Tunning que el propio coche.
Deberías buscar placas que se adapten a tus necesidades y que te lo den todo hecho. Por ejemplo:
Dos módulos USB de 16 entradas aisladas cada uno: http://accesio.com/go.cgi?p=../usb/usb-idio-16.html
Si tienes dudas sobre el funcionamiento, puedes preguntar en el foro.
Saludos.
-
Aquí tienes toda la gama de tarjetas USB de entrada/salida:
http://accesio.com/go.cgi?p=/cat/usbdio.html
Saludos.
-
Hay otra solución intermedia que consiste en que alguien que ya haya construido una placa semejante a la que buscas, te la venda con algún cambio que necesites.
Eso no lleva mucho tiempo ni dinero y se puede adaptar mejor a lo que quieres.
darck_khronos había comentado que tenía lo que buscabas:
tengo algo parecido a lo que necesitas el problema es que soy de Mexico :undecided:
Puedes enviarle un privado a ver si os ponéis de acuerdo.
Saludos.
-
Desarrollar una placa desde cero lleva mucho tiempo y cuesta mucho dinero. Para contratar cualquier trabajo a medida piensa en un mínimo de 25 Euros la hora que es menos de lo que cobra cualquier profesional como un albañil, fontanero, electricista, etc. Un desarrollo desde cero y a medida entregando planos y código puede llevar varios días... a lo que hay que añadir las pruebas y puesta en marcha. Se calcula en miles de euros.
Otra cosa es que te entreguen una caja negra que enchufas y ya está. Con un pequeño manual de usuario de una hoja.
Eso es lo que se suele entregar con los kits del tipo "montaló tu mismo" o con una placa estandar.
En tu caso tienes la suerte de necesitar algo que ya existe, por lo que no necesitas un desarrollo a medida. Piensa que un desarrollo a medida es igual que pedir a un carrocero que te diseñe una carrocería a medida. Te puede salir más caro el Tunning que el propio coche.
Deberías buscar placas que se adapten a tus necesidades y que te lo den todo hecho. Por ejemplo:
Dos módulos USB de 16 entradas aisladas cada uno: http://accesio.com/go.cgi?p=../usb/usb-idio-16.html
Si tienes dudas sobre el funcionamiento, puedes preguntar en el foro.
Saludos.
Me decantare como bien dices, por la opcion de una placa comercial, de todas las que he visto, PIC 18F4550 USB Demo Board es le que mas me ha llamado la atención, por precio principalmente.
(http://www.tiertex.com/image/cache/data/TDSDB14550sml-500x500.jpg)
¿Porque esta placa me funcionaria para lo que necesito?
Quedaria soldar los Jack y programar el Pic?
Porque en esta los optoacopladores los necesitaria?
Muchas gracias
-
Esa placa es demasiado simple. No tiene las entradas protegidas. Deberías hacer una placa sencilla para añadir protección a cada una de las entradas:
(http://www.digikey.com/Web%20Export/techzone/microcontroller/article2012-protecting-inputs-in-digital-fig13.jpg)
La resistencia de 10 Ohms la quitaría y pondría el diodo schottky en paralelo con el diodo zener (después de la resistencia).
Todos los componentes son baratos.
Puedes utilizar 1N5819 para los diodos schottky (unos 0.12 € cada uno)
El zener de 1/2 vatios y 4.7voltios (0.06€) aguantará bastante tensión en la entrada sin quemarse.
La resistencia puedes aumentarla hasta 2k2 y 1/2 vatio (resistirá 30 voltios de forma continua en la entrada sin quemarse)
Puedes colocar un condensador MKT de 100nF (100K) (unos 0.10€).
El diseño ya lo tienes, solo hay que repetirlo muchas veces y pasarlo a PCB. Te recomiendo KiCad si no tienes otro soft.
También puedes montarlo sobre placa pretaladrada, lo más barato y sencillo:
(http://img.alibaba.com/wsphoto/v0/433092864/50pcs-5-7-universal-board-test-board-5CM-7CM.jpg)
Saludos.
-
Entonces tendria que cojer la placa PIC 18F4550 USB Demo Board y todas las salidas soldarlas a otra placa, en cada salida montar el esquema que me dices. Seria asi?
-
Eso es.
Luego pones los jack en la placa pretaladrada o al aire y ya tienes tu placa.
Saludos.
Edito:
La USB Demo Board se puede acoplar a la placa de protección de entradas a través de una tira de pines hembra:
(http://i1125.photobucket.com/albums/l596/tdsl2010/sockets.jpg)
Saludos.
-
Pues si no encuentro una placa comercial con las entradas optoacopladas baratilla y que me valga hare eso. Porque las otras que me pasaste estaban muy bien pero de precio se ivan un poco.
La PIC 18F47J53 USB Demo Board me gusta porque por 20€ la tengo en casa.
Y la otra placa para los optoacopladores usare la pretaladrada.
A lo que me entran dudas, la Demo board se alimenta por usb, pero a la pretaladrada tendria que ponerle alimentacion tambien no?
(http://static.shoptronica.com/608-3543-large/conectores-jack-alimentacion-hembra-circimpreso.jpg)
Uno de estos con un transformador de 8.4v valdria?
Yo tengo de estos:
(http://www.airsoftismamoa.com/fotos/airismsc10/airismsb48/g_101122071635_1.jpg)
8.4v 250mA OUTPUT.
Tambien veo que el switch tiene 3 salidas, la numero 3 no se usaria verdad?
y tambien el enganche a tierra, Donde seria recomendable enchufarlo?
Muchas gracias por la ayuda
-
La otra placa se puede alimentar con la USB Demo Board (en total no consumirá más de 100mA)
El problema es que el conector es muy debil. Deberás tener cuidado con él.
Además no vas a tener aislamiento entre el PC y los pulsadores (espero que no te de problemas)
Los cables hasta los pulsadores deberían ser como mínimo de hilos trenzados (como los hilos del teléfono o de los cables de red)
Saludos.
-
La otra placa se puede alimentar con la USB Demo Board (en total no consumirá más de 100mA)
Ok, perfecto asi puedo usarla sin depender de red electrica, usando eso y un portatil
El problema es que el conector es muy debil. Deberás tener cuidado con él.
Cual conector me hablas? el de placa a placa o el jack
Además no vas a tener aislamiento entre el PC y los pulsadores (espero que no te de problemas)
No entiendo de que no voy a tener aislamiento, te refieres a aislamiento termico del cable o electronico?
Los cables hasta los pulsadores deberían ser como mínimo de hilos trenzados (como los hilos del teléfono o de los cables de red)
Tenia pensado usar los tipicos de altavoces de coches, rojo-negro de 12v, ¿si aumento el grosor del cable? Mejorará algo, como menos ruido, etc.
La verdad que no tenia pensado aun el cable para los pulsadores, pero el grosor me es indiferente, lo unico que varia el el precio.
Y una vez mas muchas gracias por la ayuda, estaria perdido sin ella.
-
La otra placa se puede alimentar con la USB Demo Board (en total no consumirá más de 100mA)
Ok, perfecto asi puedo usarla sin depender de red electrica, usando eso y un portatil
El problema es que el conector es muy debil. Deberás tener cuidado con él.
Cual conector me hablas? el de placa a placa o el jack
El conector mini usb tiene poca resistencia mecánica
Además no vas a tener aislamiento entre el PC y los pulsadores (espero que no te de problemas)
No entiendo de que no voy a tener aislamiento, te refieres a aislamiento termico del cable o electronico?
El pulsador tendrá un cable conectado directamente a los +5V del ordenador, no estará aislado del ordenador.
Los cables hasta los pulsadores deberían ser como mínimo de hilos trenzados (como los hilos del teléfono o de los cables de red)
Tenia pensado usar los tipicos de altavoces de coches, rojo-negro de 12v, ¿si aumento el grosor del cable? Mejorará algo, como menos ruido, etc.
La verdad que no tenia pensado aun el cable para los pulsadores, pero el grosor me es indiferente, lo unico que varia el el precio.
Lo que importa es que sean trenzados, aunque el cable sea fino.
Saludos.
-
El pulsador tendrá un cable conectado directamente a los +5V del ordenador, no estará aislado del ordenador.
Lo que importa es que sean trenzados, aunque el cable sea fino.
¿Seria entonces recomendable aislar el pc de los pulsadores?
-
Si, pero complicarías mucho la placa y no es lo que quieres.
Creo que por ahora puedes hacerla funcionar así. Si más adelante tienes problemas, puedes aislar la placa con un RS232 optoacoplado y una alimentación independiente.
A propósito ¿Sábes diseñar circuitos en KiCad o Eagle?
Saludos.
-
Si, pero complicarías mucho la placa y no es lo que quieres.
Creo que por ahora puedes hacerla funcionar así. Si más adelante tienes problemas, puedes aislar la placa con un RS232 optoacoplado y una alimentación independiente.
A propósito ¿Sábes diseñar circuitos en KiCad o Eagle?
Saludos.
Me he bajado el DIP TRACE con ese estoy practicando, me recomiendas alguno?
El ingles no me duele mucho pero si es en español mejor.
Gracias
-
Yo conozco sólo el KiCad. Para este proyecto te sobra. Es gratuíto y open-source.
Saludos.
-
Yo conozco sólo el KiCad. Para este proyecto te sobra. Es gratuíto y open-source.
Saludos.
Bajando... muchas gracias
-
Mis primeros pasos con el Kicad, diseño del esquema que ha puesto picuino, ya en SCH
(http://img12.imageshack.us/img12/3536/subplaca.png)
Aun ando torpe pero poco a poco. Jeje.
Como lo veis? Con fallos seguro, ademas picuino me comentaste cambios en este esquema:
Esa placa es demasiado simple. No tiene las entradas protegidas. Deberías hacer una placa sencilla para añadir protección a cada una de las entradas:
(http://www.digikey.com/Web%20Export/techzone/microcontroller/article2012-protecting-inputs-in-digital-fig13.jpg)
La resistencia de 10 Ohms la quitaría y pondría el diodo schottky en paralelo con el diodo zener (después de la resistencia).
Todos los componentes son baratos.
Puedes utilizar 1N5819 para los diodos schottky (unos 0.12 € cada uno)
El zener de 1/2 vatios y 4.7voltios (0.06€) aguantará bastante tensión en la entrada sin quemarse.
La resistencia puedes aumentarla hasta 2k2 y 1/2 vatio (resistirá 30 voltios de forma continua en la entrada sin quemarse)
Puedes colocar un condensador MKT de 100nF (100K) (unos 0.10€).
El diseño ya lo tienes, solo hay que repetirlo muchas veces y pasarlo a PCB. Te recomiendo KiCad si no tienes otro soft.
Saludos.
Voy a ver si soy capaz de hacerlos.
Gracias
-
Pues esto me salio siguiendo los consejos de Picuino, como lo veis?
(http://img201.imageshack.us/img201/6181/subplaca2.png)
Un saludo.
-
Los valores de las resistencias se colocan en la letra R (dentro de la resistencia) y la referencia (R1, R2) fuera de la resistencia.
La resistencia de 1K mejor cambiarla a 2K2 o 3K3 ohmios y debes colocarla entre el pulsador y los diodos.
Mejor quitar uno de los dos diodos 1N5819.
Uno de los dos condensadores sobra.
Ahora puedes etiquetar el conector con texto que coincida con la USB Demo Board.
(http://www.tiertex.com/image/cache/data/18F4550DB2SML-500x500.jpg)
Saludos.
-
Los valores de las resistencias se colocan en la letra R (dentro de la resistencia) y la referencia (R1, R2) fuera de la resistencia.
La resistencia de 1K mejor cambiarla a 2K2 o 3K3 ohmios y debes colocarla entre el pulsador y los diodos.
Mejor quitar uno de los dos diodos 1N5819.
Uno de los dos condensadores sobra.
Ahora puedes etiquetar el conector con texto que coincida con la USB Demo Board.
Saludos.
¿Asi seria entonces?
(http://img836.imageshack.us/img836/440/subplaca3.png)
Solo quedaria repetir lo mismo 22 veces.
Otra cosa, el pulsador deberia poderse mantener pulsado unos 5 - 10 minutos. ¿algun problema?
Gracias
-
Los valores de las resistencias se colocan en la letra R (dentro de la resistencia) y la referencia (R1, R2) fuera de la resistencia.
La resistencia de 1K mejor cambiarla a 2K2 o 3K3 ohmios y debes colocarla entre el pulsador y los diodos.
Mejor quitar uno de los dos diodos 1N5819.
Uno de los dos condensadores sobra.
Ahora puedes etiquetar el conector con texto que coincida con la USB Demo Board.
Saludos.
Un fallo, no lo cambie de sitio
-
Me he bajado el DIP TRACE con ese estoy practicando, me recomiendas alguno?
El ingles no me duele mucho pero si es en español mejor.
Gracias
Si queres, a KiCad lo podes poner en español, la traducción que trae esta bastante desactualizada, pero yo estoy traduciéndolo y ya esta bastante completa.
La podes bajar desde acá (http://www.diguito69.nixiweb.com/kicad.mo), y guardar ese archivo en la carpeta "C:\Archivos de programa\KiCad\share\internat\es".
Cualquier duda pregunta en este post (http://www.todopic.com.ar/foros/index.php?topic=37541.0).
Saludos.
-
Me he bajado el DIP TRACE con ese estoy practicando, me recomiendas alguno?
El ingles no me duele mucho pero si es en español mejor.
Gracias
Si queres, a KiCad lo podes poner en español, la traducción que trae esta bastante desactualizada, pero yo estoy traduciéndolo y ya esta bastante completa.
La podes bajar desde acá (http://www.diguito69.nixiweb.com/kicad.mo), y guardar ese archivo en la carpeta "C:\Archivos de programa\KiCad\share\internat\es".
Cualquier duda pregunta en este post (http://www.todopic.com.ar/foros/index.php?topic=37541.0).
Saludos.
Ya tengo el Kicad, en español, y efectivamente con algunos fallos de traduccion, pondre el archivo que me dices, si veo posibles mejoras te avisare, muchas gracias.
-
Una vez cambiada R1 en horizontal, separando entre sí el pulsador y los diodos, ya está el filtro terminado.
Ahora seleccionas todo, pulsas el botón derecho y clickeas copiar bloque, mueves todo el bloque a otra parte de la hoja y pulsas el botón izquierdo.
Ya tienes 2 filtros
Vuelves a repetirlo y ya tienes 4 filtros, luego 8... así hasta 22.
Saludos.
-
Una vez cambiada R1 en horizontal, separando entre sí el pulsador y los diodos, ya está el filtro terminado.
Ahora seleccionas todo, pulsas el botón derecho y clickeas copiar bloque, mueves todo el bloque a otra parte de la hoja y pulsas el botón izquierdo.
Ya tienes 2 filtros
Vuelves a repetirlo y ya tienes 4 filtros, luego 8... así hasta 22.
Saludos.
Aver si es esto lo que buscamos:
(http://img841.imageshack.us/img841/9148/subplaca4.png)
Si me confirmas que es asi me pongo a duplicar, jeje, un saludo.
-
Bueno he estado trasteando y tengo hecho algo para usar algo en vez del la placa USB Demo Board, no encontraba en el programa el 18F4550 y puse el 16F84A, a lo que aprovecho para preguntar si hay manera de meterlo en el Kicad. U otro PIC mas adecuado.
(http://img407.imageshack.us/img407/6846/tfrcc84tmp.jpg)
Un saludo
-
El PIC16F84 está completamente obsoleto.
Eso mismo lo puedes hacer con el PIC16F628 (mucho más avanzado y mucho más barato)
El problema es que pierdes el USB.
Saludos.
-
El PIC16F84 está completamente obsoleto.
Eso mismo lo puedes hacer con el PIC16F628 (mucho más avanzado y mucho más barato)
El problema es que pierdes el USB.
Saludos.
Y el 18F2550?, creo que es usb y me valdria, aunque no estoy seguro.
Un saludo
-
Una vez cambiada R1 en horizontal, separando entre sí el pulsador y los diodos, ya está el filtro terminado.
Ahora seleccionas todo, pulsas el botón derecho y clickeas copiar bloque, mueves todo el bloque a otra parte de la hoja y pulsas el botón izquierdo.
Ya tienes 2 filtros
Vuelves a repetirlo y ya tienes 4 filtros, luego 8... así hasta 22.
Saludos.
Aver si es esto lo que buscamos:
(http://img841.imageshack.us/img841/9148/subplaca4.png)
Si me confirmas que es asi me pongo a duplicar, jeje, un saludo.
Está bien, pero en el camino has perdido los 5 voltios.
Otra corrección es cambiar el pulsador por un conector de 2 puntos (CONN_2) que es lo que realmente va a montarse en la placa.
Si quieres ahorrar dinero, podrías poner pines macho en la placa de tipo molex:
Macho para PCB: (http://www.electroipartes.com/images/Mmolex2.JPG)
Hembra: (http://mybroadband.co.za/photos/data/500/2_pin1.png)
Saludos.
-
Y el 18F2550?, creo que es usb y me valdria, aunque no estoy seguro.
Un saludo
Si, te valdría pero tienes que aumentarle las entradas (con un multiplexor como el de antes por ejemplo).
Saludos.
-
BUENO, pues voy avanzando con el Kicad, tremendo programa, aqui os dejo un enlace de dropbox con el placa.shc:
https://www.dropbox.com/s/kjvfvrkrcje8pdu/Placa.sch
Peeeero, aviso a quien no halla seguido el hilo y el esquema no es de fiar, en caso de usarse yo aseguro un 100% de error, jeje.
Aver si me echais una mano con las uniones, y aprovecho para preguntar donde deveria poner las conexiones de 5v y los ground de los diodos.
No pongo imagen porque el esquema me ha salido enorme, cuando verifique que esta bien hecha lo intentare reducir.
Un saludo
-
BUENO, pues creo que lo tenemos, probablemente, quizas, jeje.
Asique reactualizo el enlace anterior.
PERO repito que esta hecha por mi, no se si vale, si me dais el visto bueno ya lo confirmo y me pongo con el PCB.
Un saludo.
-
Está bastante bien, pero he pensado que hay una forma de simplificar tantos circuitos y es multiplexando directamente la linea positiva con transistores.
Voy a hacer un esbozo y lo cuelgo.
Saludos.
-
Ya tengo un circuito. Voy a repasarlo y subo el esquema de KiCad.
Saludos.
-
Está bastante bien, pero he pensado que hay una forma de simplificar tantos circuitos y es multiplexando directamente la linea positiva con transistores.
Voy a hacer un esbozo y lo cuelgo.
Saludos.
Pero una duda que tengo desde ayer, las conexiones al PIC son correctas? Quiero decir, aunque el esquema sea enorme y tal. Valdria?
Aunque la opcion que pasas en el PDF realmente parece mas simple.
Gracias.
-
Y me ha dado tambien por al final añadir 2 LED, uno rojo que se encienda simplemente cuando a la placa le entre energia por el USB y uno verde al PIC que se encienda cuando el PIC este trabajando, la duda es si como están valdria o habria que ponerles alguna resistencia.
Un saludo.
-
En principio si valdría, pero le falta el oscilador a cristal y sería conveniente añadir resistencias de protección para el USB.
Saludos.
-
Y me ha dado tambien por al final añadir 2 LED, uno rojo que se encienda simplemente cuando a la placa le entre energia por el USB y uno verde al PIC que se encienda cuando el PIC este trabajando, la duda es si como están valdria o habria que ponerles alguna resistencia.
Un saludo.
Hay que poner una resistencia entre el micro y el led (1k para leds de alta luminosidad va bien)
-
En principio si valdría, pero le falta el oscilador a cristal y sería conveniente añadir resistencias de protección para el USB.
Saludos.
No encuentro el oscilador en el Kicad, jeje. Y las resistencias del USB, donde irian en los 4 puntos del USB? y de cuanto?
El otro sistema que me pasaste en el PDF me resulta muy interesante aunque no entiendo muy bien el funcionamiento
Muchas gracias
-
Para simplificar, deberías aprovechar una placa ya montada. Por ejemplo la placa pinguino que tiene lo más básico:
http://wiki.pinguino.cc/index.php/PIC18F4550_Pinguino
Saludos.
Edito: Esta placa es más sencilla
http://wiki.pinguino.cc/index.php/PIC18F2550_Pinguino
Saludos
-
Para simplificar, deberías aprovechar una placa ya montada. Por ejemplo la placa pinguino que tiene lo más básico:
http://wiki.pinguino.cc/index.php/PIC18F4550_Pinguino
Saludos.
Tenia pensado usar la comercial, pero me entro el gusanillo y me gustaria intentar hacerla desde 0, lo unico que me hecha atras es el quemador del pic, y saber elegir bien los componentes.
Pero me gustaria intentar hacer la placa, estoy mirando precios de los componentes, en cuanto los tenga subo la tabla de precios.
-
Por cierto que resistencias poner en el usb?
ACTUALIZO EL ENLACE DE DROPBOX
Gracias
-
Adjunto esquema KiCad con un cto para PIC18F2550 con 25 entradas protegidas.
Saludos.
-
Voy a dejar en la lista de tareas pendientes hacer una tarjeta de 16 entradas digitales protegidas para mi placa Picuino.
Saludos.
-
Entonces picuino cual de los esquemas me recomiendas?, el que tengo hecho o el que me acabas de pasar??
y para que serviria el boton de reset? ademas hay un condensador entre vdd y gnd suelto que no se para que serviria exactamente.
Muchas gracias, me pongo a diseñar la PCB.
Un saludo
-
Te recomiendo el esquema que te he pasado. Es más sencillo porque tiene menos componentes.
El condensador suelto debe estar cerca de las entradas y salidas para filtrar los picos de corriente.
El esquema que he pasado tiene dos circuitos. Uno es el de las entradas (con protecciones) y el otro es el de las salidas.
Sólo se activa una de las salidas y así se pueden leer los 5 pulsadores que tienen tensión. Luego se activa otra de las salidas y se pueden leer los otros 5 pulsadores que tienen tensión. Así hasta el final.
Saludos
-
Te recomiendo el esquema que te he pasado. Es más sencillo porque tiene menos componentes.
El condensador suelto debe estar cerca de las entradas y salidas para filtrar los picos de corriente.
El esquema que he pasado tiene dos circuitos. Uno es el de las entradas (con protecciones) y el otro es el de las salidas.
Sólo se activa una de las salidas y así se pueden leer los 5 pulsadores que tienen tensión. Luego se activa otra de las salidas y se pueden leer los otros 5 pulsadores que tienen tensión. Así hasta el final.
Saludos
Ya lo entiendo, muy bueno jejeje. Ya estoy trasteando con el creador de PCB, en cuanto tenga algo lo subo, aunque me estoy fijando que los led, inductor, etc tienen posicion, espero no liarla mucho jeje.
Gracias.
-
Una ayudita, no consigo enganchar las pistas a los componenetes, me dice PISTA CERCA DE ISLETA:
(http://img407.imageshack.us/img407/4569/subplaca5.png)
En que fallo?
gracias.
-
¿Has importado el netlist?
¿Comienzas las pistas desde una isleta?
-
¿Has importado el netlist?
¿Comienzas las pistas desde una isleta?
No he importado nada, si las empiezo, pero no me deja, tengo que empezar un poco separado.
Como importo el netlist? no se ni lo que es, jejej.
Gracias
-
Menú Tools... Netlist... Read Netlist.
Además te recomiendo que cambies el ancho de pista a un poco más gruesa (0,020 por ejemplo)
Se cambia en el menú Design Rules... Design Rules... Global Design Rules... Custom Track Widths y pones el tamaño que quieras en la lista.
Saludos.
-
Antes de Leer la netlist tienes que guardarla en el esquema.
Te adjunto un archivo con la netlist creada y componentes asociados para que no tengas tantos problemas.
Un saludo.
-
Adjunto la versión v0.3 con PCB iniciado.
Saludos.
-
No he importado nada, si las empiezo, pero no me deja, tengo que empezar un poco separado.
Como importo el netlist? no se ni lo que es, jejej.
Gracias
El netlist es una lista que incluye los componentes del circuito y las conexiones que hay entre ellos.
Después de hacer el esquema hay que exportar la netlist.
Luego, (en KiCad) hay que editar la netlist con la herramienta "components to modules" para asignar a cada componente su encapsulado (un condensador tendrá capsula C2 y otro condensador tendrá cápsula C1V8, dependiendo de su tamaño)
Después en el editor de PCB se lee la netlist y aparecen todos los encapsulados en ha hoja y todas las conexiones entre ellos.
Saludos.
-
No he importado nada, si las empiezo, pero no me deja, tengo que empezar un poco separado.
Como importo el netlist? no se ni lo que es, jejej.
Gracias
El netlist es una lista que incluye los componentes del circuito y las conexiones que hay entre ellos.
Después de hacer el esquema hay que exportar la netlist.
Luego, (en KiCad) hay que editar la netlist con la herramienta components to modules para asociar un encapsulado a cada componente (un condensador será C2 otro será C1V8, dependiendo de su tamaño)
Después en el editor de PCB se lee la netlist y aparecen todos los encapsulados en ha hoja y todas las conexiones entre ellos.
Saludos.
Gracias, en el que pasaste se ve claramente, ya estoy ordenando componentes, haber como me sale, un saludo.
-
Suerte.
Para mi diseñar la PCB es la peor parte de todo. Siempre me cuesta muchisimo.
Igual algún otro forero nos echa una mano :)
Saludos.
-
Suerte.
Para mi diseñar la PCB es la peor parte de todo. Siempre me cuesta muchisimo.
Igual algún otro forero nos echa una mano :-)
Saludos.
Pues a mi me esta resultando divertido, jeje, en cuanto la tenga la subo
gracias
-
Creo que a las entradas les bastaría con una protección por resistencia, condensador y diodos.
La comunicación con el PC si debería estar aislada con optoacopladores. Ya existen circuitos montados.
Además se debería alimentar con un transformador a 9 voltios por ejemplo. ¿Valdría un transformador externo?
El espacio no es muy grande ¿Qué altura puede tener el montaje?
¿Los jack deben estar soldados a la PCB o montados sobre la caja?
Saludos.
Hola gente, muy interesante el post.
Al leer lo que está citado arriba me interesó la parte de aislar el usb, yo hice una aplicación donde mido señales analógicas con un PIC18F4550 y la conexión usb no la aislé del resto. Realizé planos de tierra anlógica y digital con un punto de conexión único en la entrada de tierra de alimentación, pero igualmente al conectar la pc observo un ruido bastante importante en el osciloscopio. ¿Tendrán un esquema de como implementar la aislación?
También observé en el PDF que subiste, que conectás una inductancia entre el chasis de conector usb y tierra. ¿Como funciona eso y para que sirve?
Gracias de antemano y saludos
-
Suerte.
Para mi diseñar la PCB es la peor parte de todo. Siempre me cuesta muchisimo.
Igual algún otro forero nos echa una mano :)
Saludos.
Aver que te parece, tengo todo pero me dio problemas con los conectores, porque se me cruzan lo ponga como lo ponga, aver si veis soluciones.
https://www.dropbox.com/s/11at5gvwep6nsa5/Proyecto.rar
Un saludo.
-
Las pistas se saltan con puentes.
Saludos.
-
Las pistas se saltan con puentes.
Saludos.
Pues ya la tenemos no?, estoy revisando una y otra vez y tengo componenetes que quizas esten mal, porque yo los puse a "voleo" un poco, si estan bien es casualidad, jeje:
C4
C6
C1
Esos, ¿estan bien asi?
Si ya me confirmas que vale, pues a montarla jeje.
Gracias.
-
AA IMPORTANTISIMO.
Se me pasaron poner los LED, jajaja.
Dime donde poner uno ROJO para saver si le llega energia y uno VERDE para que lo maneje el programa.
Dimelo y ya los pongo yo, porque ademas estoy intentando hacerla mas pequeña.
Cuando la tenga la subo.
Un saludo.
-
He conseguido hacer la placa un 30-40% mas pequeña, pero los puentes me odian, no soy capaz de hacerlos.
Ha sacado un poco el USB de la placa para que sea mas facil de enchufar.
Y cambiado el RESET para que este mas accesible.
¿Es buena idea pasar pistas por debajo del PIC?
https://www.dropbox.com/s/x3osw96r0kvum8j/Proyecto2.rar
Un saludo
-
Puentes:
Mientras estás trazando una pista pulsas el botón derecho y eliges Colocar Via (letra V). Aparecerá un pad circular y una pista de color rojo (significa que estás trazando en la otra cara de la PCB).
Comprobar errores:
Menú Tools... DRC... Comenzar DRC KiCad hace una lista de errores. Pincha en cada uno para ir al punto con error.
Menú Tools... DRC... No conectados Comprueba si has olvidado alguna pista
Saludos.
-
AA IMPORTANTISIMO.
Se me pasaron poner los LED, jajaja.
Dime donde poner uno ROJO para saver si le llega energia y uno VERDE para que lo maneje el programa.
Dimelo y ya los pongo yo, porque ademas estoy intentando hacerla mas pequeña.
Cuando la tenga la subo.
Un saludo.
El rojo y el verde puedes colocarles igual que en la placa Pinguino:
(http://wiki.pinguino.cc/images/1/1a/PIC18F2550_diagram.png)
Saludos.
-
Ok gracias, y una pregunta, ¿Pasa algo si junto mucho los componenetes para hacerla mas pequeña? Un saludo
-
He conseguido hacer la placa un 30-40% mas pequeña, pero los puentes me odian, no soy capaz de hacerlos.
Ha sacado un poco el USB de la placa para que sea mas facil de enchufar.
Y cambiado el RESET para que este mas accesible.
¿Es buena idea pasar pistas por debajo del PIC?
https://www.dropbox.com/s/x3osw96r0kvum8j/Proyecto2.rar
Un saludo
En principio no pasa nada por poner pistas por debajo del pic.
Si deberías hacer los cruces con ángulo, no dejar cruces o uniones de pistas a 90º, mejor a 45º
Saludos.
-
Ok gracias, y una pregunta, ¿Pasa algo si junto mucho los componenetes para hacerla mas pequeña? Un saludo
No pasa nada, pero es preferible dejar 0.025 o 0.050 pulgadas para evitar que se choquen al montarles. Sobre todo si no sabes el tamaño real que van a tener.
En la última placa que hice me fié del tamaño de las resistencias variables del KiCad y cuando monté las resistencias de verdad chocaban entre sí.
Saludos.
-
Ok gracias, y una pregunta, ¿Pasa algo si junto mucho los componenetes para hacerla mas pequeña? Un saludo
No pasa nada, pero es preferible dejar 0.025 o 0.050 pulgadas para evitar que se choquen al montarles. Sobre todo si no sabes el tamaño real que van a tener.
En la última placa que hice me fié del tamaño de las resistencias variables del KiCad y cuando monté las resistencias de verdad se chocaban entre sí.
Saludos.
Ok gracias, creo que ya la tengo, pero no consigo dibujar la placa, ACTUALIZO EL ENLACE DEL DROP 8/6/12, aver que tal.
Un saludo
-
Bueno, pues creo que el diseño de la placa ya esta:
1º Dar mil gracias a PICUINO que si él este proyecto seria imposible.
2º Pido a un moderador que cierre este hilo, pues esta en EMPLEO y ya no vale.
3º Abro nuevo post dejando los esquemas para uso y disfrute del que lo desee.
http://www.todopic.com.ar/foros/index.php?topic=38507.msg320373#msg320373
Creo que mejor ahi colocado que aqui.
4º Dar mil gracias mas a PICUINO.
Ahora me pondre con el programa del PIC, en cuanto tenga algo lo subire tambien.
Y otra vez mas gracias a todos por vuestra ayuda e interes.
-
En vez de cerrarlo, creo que sería mejor moverlo a Primeros pasos - Iniciación a los microcontroladores.
Además Nanashi, todavía te falta mucho hasta tener el proyecto funcionando.
Saludos.
-
En vez de cerrarlo, creo que sería mejor moverlo a Primeros pasos - Iniciación a los microcontroladores.
Además Nanashi, todavía te falta mucho hasta tener el proyecto funcionando.
Saludos.
Pues ya me lo movieron, solucionado.
Se que aun falta mucho, pero mejor cambiarlo ya de sitio, ya que este ya no es el suyo.
Porqie la placa como esta, ya seria cuestion de empezar a montarla no?
Un saludo
-
Te faltan algunos puentes.
He añadido algunos puentes y pistas que te faltaban. Sólo queda terminar todos los puentes (rutinario).
Acuérdate de pulsar V para comenzar el puente y otra vez V para terminarlo. El puente sólo comienza si no hay pistas cerca con las que pueda chocar el pad.
También he actualizado la hoja para añadir que la has hecho tú a partir de la que te pasé.
Saludos.
-
Te faltan algunos puentes.
He añadido algunos puentes y pistas que te faltaban. Sólo queda terminar todos los puentes (rutinario).
Acuérdate de pulsar V para comenzar el puente y otra vez V para terminarlo. El puente sólo comienza si no hay pistas cerca con las que pueda chocar el pad.
También he actualizado la hoja para añadir que la has hecho tú a partir de la que te pasé.
Saludos.
Bueno pues repasado y puestos puentes, gracias por la explicacion.
Aver si asi vale.
PD: ya se subir archivos sin el drop, jeje.
-
De la parte de diseño de la placa ya queda poco.
Puedes programar la placa con el USB, pero necesitarás un programador para grabar por primera vez el micro.
Para programarla por primera vez in situ viene muy bien añadir un conector ICSP. No es imprescindible, pero merece la pena.
El esquema lo puedes ver en mi placa de desarrollo y es muy sencillo. Es un conector de 6 pines con 2 conexiones a alimentación, 3 conexiones al microcontrolador y un pin sin conectar. Puedes colocarlo donde te convenga en la placa.
https://sites.google.com/site/picuino/picuino-18f2550/Schematic_v21.png
(https://sites.google.com/site/picuino/picuino-18f2550/Schematic_v21.png)
Saludos.
-
Muy interesante, aunque de momento quiero adquirir un programador, para futuros proyectos.
Estoy dandole vueltas, ¿Que mas faltaria a la placa para completarla? Aparte del programar PIC.
Gracias.
-
Esta es la idea que yo te comentaba por MP
(http://img684.imageshack.us/img684/9738/expancion.png)
esa placa mide 10x11, claro se puede reagrupar todo y se hace aun mas pequeña, pero tambien se le pondria lo que falto que es la interfase usb
-
Muy interesante, aunque de momento quiero adquirir un programador, para futuros proyectos.
Estoy dandole vueltas, ¿Que mas faltaria a la placa para completarla? Aparte del programar PIC.
Gracias.
Lo más sencillo en este caso creo que será que programes el PIC a traves del USB con el Bootloader HID de Microchip.
En ese caso necesitarás añadir un pulsador para indicar al bootloader que entre en el modo programación.
El Bootloader es un programa que recibe datos del PC y los programa en el micro. Ese Bootloader hay que programarlo sólo 1 vez con un programador. Te recomiendo el programador JDM para empezar (necesita un RS232 'verdadero' de un PC) . Hay muchos esquemas en la red para hacértelo tu mismo y también lo puedes comprar hecho en e-bay por poco dinero.
Si escoges esta opción no necesitas el conector ICSP para programar el microcontrolador. El conector ICSP sirve para programar el microcontrolador directamente con el programador JDM o con otro programador como el Pickit 2 de microchip
Saludos
-
Esta es la idea que yo te comentaba por MP
esa placa mide 10x11, claro se puede reagrupar todo y se hace aun mas pequeña, pero tambien se le pondria lo que falto que es la interfase usb
Es idea es usando multiplexores no?
Mas atras ya la usamos pero al final cuajo la idea de Picuino.
(http://img407.imageshack.us/img407/6846/tfrcc84tmp.jpg)
Al final usaremos transistores. No obstante no comprendo bien la diferencia de uno u otro, aver si me lo podeis explicar.
un saludo.
-
Muy interesante, aunque de momento quiero adquirir un programador, para futuros proyectos.
Estoy dandole vueltas, ¿Que mas faltaria a la placa para completarla? Aparte del programar PIC.
Gracias.
Lo más sencillo en este caso creo que será que programes el PIC a traves del USB con el Bootloader HID de Microchip.
En ese caso necesitarás añadir un pulsador para indicar al bootloader que entre en el modo programación.
El Bootloader es un programa que recibe datos del PC y los programa en el micro. Ese Bootloader hay que programarlo sólo 1 vez con un programador. Te recomiendo el programador JDM para empezar (necesita un RS232 'verdadero' de un PC) . Hay muchos esquemas en la red para hacértelo tu mismo y también lo puedes comprar hecho en e-bay por poco dinero.
Si escoges esta opción no necesitas el conector ICSP para programar el microcontrolador. El conector ICSP sirve para programar el microcontrolador directamente con el programador JDM o con otro programador como el Pickit 2 de microchip
Saludos
Necesita un RS232 'verdadero' de un PC
He hay mi problema, tengo un Acer Aspire Predator.
(http://www.bitcity.it/immagini/contenuti/525/acer-aspire-g7700-predator-trooper-7.jpg?=1214924709)
Y este RS232 no tiene, jejeje.
Me decantaria por uno comercial USB. O hacerlo yo USB.
Estoy mirando este:
http://www.electronik.es/prog-usblite.html
Te viene todo para hacerlo, esquemas, driver, etc. Como lo ves?
-
Si piensas utilizarlo más veces en el futuro, mejor comprar un PICKIT 3 que es compatible con casi todos los micros de microchip y el software y soporte lo dá Microchip y es compatible con el entorno de programación y desarrollo MPLAB.
Hay clones baratos del PICKIT 3 en e-bay de la empresa SURE electronics (es el que utilizo cuando el JDM no puede con el micro)
Saludos.
-
Si piensas utilizarlo más veces en el futuro, mejor comprar un PICKIT 3 que es compatible con casi todos los micros de microchip y el software y soporte lo dá Microchip.
Hay clones baratos del PICKIT 3 en e-bay de la empresa SURE electronics (es el que utilizo cuando el JDM no puede con el micro)
Saludos.
Si lo usare en el futuro, porque me esta gustando esto y voy a hacer proyectillos.
Ya manejo el Kicad medianamente, e incluso estoy mirando hacerme una alarmita:
http://www.todopic.com.ar/foros/index.php?topic=38564.0
Seria una aplicacion a este, si en vez de un zumbador le engancho a una entrada, podria decirme cual de ellas a saltado.
Aunque esta placa tiene 1000 posibilidades.
Un saludo.
-
Uno como este puede con casi todos los micros:
http://www.ebay.es/itm/Microchip-Development-Programmer-Clone-PICKIT-3-/370621021219?pt=Wissenschaftliche_Ger%C3%A4te&hash=item564abbfc23
Saludos.
-
Uno como este puede con casi todos los micros:
http://www.ebay.es/itm/Microchip-Development-Programmer-Clone-PICKIT-3-/370621021219?pt=Wissenschaftliche_Ger%C3%A4te&hash=item564abbfc23
Saludos.
MUY interesante, pero duda de novato, donde enchufaria el PIC?
tendria que poner un conector ICSP?
Un saludo.
-
La salida del Pickit 3 es ICSP y puedes conectarla a:
Un conector ICSP en la placa del microcontrolador
Un zócalo con conexión ICSP: http://www.ebay.es/sch/i.html?LH_PrefLoc=2&_nkw=pickit+3&_sop=15&_stpos=28000&gbr=1
Conectar los pines uno a uno con cables en una protoboard (sólo para salir del paso)
Yo pongo conexión ICSP a las placas y listo, pero no es imprescindible.
Saludos
-
La salida del Pickit 3 es ICSP y puedes conectarla a:
Un conector ICSP en la placa del microcontrolador
Un zócalo con conexión ICSP: http://www.ebay.es/sch/i.html?LH_PrefLoc=2&_nkw=pickit+3&_sop=15&_stpos=28000&gbr=1
Conectar los pines uno a uno con cables en una protoboard (sólo para salir del paso)
Yo pongo conexión ICSP a las placas y listo, pero no es imprescindible.
Saludos
Mmm ya me dejas con la duda, jejeje.
ICPS si o no.
Creo que para curarme en salud voy a hacer las 2 opciones, jejeje.
Asi de paso aprendo a poner el ICPS, que nunca está de mas.
Aun asi como esta la placa deberia funcionar no?
Ya seria hora de comprar componentes y a montar la protoboard, un saludo.
-
Lo más sencillo en este caso creo que será que programes el PIC a traves del USB con el Bootloader HID de Microchip.
En ese caso necesitarás añadir un pulsador para indicar al bootloader que entre en el modo programación.
Saludos
De donde a donde deberia ir dicho pulsador? y que seria, pulsador, interruptor, jumper, etc??
Gracias.
-
Un pulsador.
El bootloader estandar coloca el pulsador en una patilla concreta, pero se puede cambiar la patilla sin problema y recompilar el bootloader.
Saludos.
-
Si lo necesitas, te puedo pasar la versión que utilizo del bootloader USB para PIC18F2550 con la entrada de pulsador en una patilla concreta.
Saludos.
-
Si lo necesitas, te puedo pasar la versión que utilizo del bootloader USB para PIC18F2550 con la entrada de pulsador en una patilla concreta.
Saludos.
Gracias, me harias un favor, porque estoy haber si se lo pongo, pero no se donde poner el pulsador.
Que iria de una patilla del PIC cualquiera al ground?
Un saludo
-
Puedes conectarlo al pin RB7 que creo que está libre.
El pulsador lo puedes conectar entre el pin y 5 voltios. También tienes que conectar una resistencia entre el pin y masa.
Otra cosa que vendría muy bien es añadir un plano de masa (se hace dibujando una zona alrededor de toda la placa y conectada a GND)
Saludos.
-
Esta es la idea que yo te comentaba por MP
esa placa mide 10x11, claro se puede reagrupar todo y se hace aun mas pequeña, pero tambien se le pondria lo que falto que es la interfase usb
Es idea es usando multiplexores no?
Mas atras ya la usamos pero al final cuajo la idea de Picuino.
Al final usaremos transistores. No obstante no comprendo bien la diferencia de uno u otro, aver si me lo podeis explicar.
un saludo.
La placa que publique, ya contenia la transmicion de datos por via usb, estaba utilizando convertidores paralelo serial, y al final de cada uno agregar un 2n24 para optoaislamiento de la misma
-
La placa de dark_khronos tiene multiplexores para asignar a cada entrada exterior una entrada de un circuito digital.
La otra placa utiliza sólo 5 entradas. Cada entrada puede leer cinco pulsadores. Para poder leer cada uno de los cinco pulsadores hay que dar tensión positiva por una salida al pulsador que se desea leer.
Es otro tipo de multiplexación que ahorra entradas/salidas. El punto negativo es que hay que desarrollar todo el programa y que las entradas no están protegidas por optoacoplador (tienen menos protección).
La placa de dark_khronos parece que ya está desarrollada y probada ¿es asi?
En tal caso, eso ahorra mucho trabajo.
Saludos.
-
La placa de dark_khronos tiene multiplexores para asignar a cada entrada exterior una entrada de un circuito digital.
La otra placa utiliza sólo 5 entradas. Cada entrada puede leer cinco pulsadores. Para poder leer cada uno de los cinco pulsadores hay que dar tensión positiva por una salida al pulsador que se desea leer.
Es otro tipo de multiplexación que ahorra entradas/salidas. El punto negativo es que hay que desarrollar todo el programa y que las entradas no están protegidas por optoacoplador (tienen menos protección).
La placa de dark_khronos parece que ya está desarrollada y probada ¿es asi?
En tal caso, eso ahorra mucho trabajo.
Saludos.
El diseño de los multiplexores lo he desarroyado en kicad, te dejo enlace para que lo veas, me gusto mas tu sistema de transistores, pero como soy como soy, voy ha hacer las dos y a provarlas, asi nos quitamos de dudas, jejeje.
Y de paso que cada uno eliga la que mas guste y opine.
Dejo el enlace, me harias un gran favor si me indicas donde conectar lo que falta, sobre todo lo de CVPCB indicarme que seria cada cosa que no encuentro na, jeje.
Las protecciones que he puesto son las 1º que hicimos, ¿seria aconsejable copiar los de la otra placa? o en esta necesita estos.
Muchas gracias.
-
Primero tienes que exportar la netlist desde el esquema eléctrico (Eeschema).
Después puedes asociar los componentes según la placa que te pasé.
Las protecciones son bastante recomendables.
Saludos.
-
Primero tienes que exportar la netlist desde el esquema eléctrico (Eeschema).
Eso lo comprendo y creo que lo hago bien.
Después puedes asociar los componentes según la placa que te pasé.
Eso es lo que hago, jejeje. El problema es que hay componentes que no escuentro, en particular el XTAL_V. Te paso una imagen para que veas a que me refiero, a la izquierda en la lista esta, pero en la derecha donde las librerias no. Y ademas juraria que ese componente viene de serie en el Kicad.
Las protecciones son bastante recomendables.
Si se las voy a poner, pero ¿cuales?, fijate que en la de los multiplexor pusimos unas y para la otra placa las modificamos, mas bien me dijiste cuales poner, XD.
La pregunta es ¿cuales usar?
La de los 2 diodos, condensador y resistencia.
O la de 3 resistencias, un diodo y un condensador.
No se si me explico correctamente, jeje. Muchas gracias y un saludo.
-
Creo que esa cápsula la he diseñado yo, no es estandar.
La forma más fácil de importarla es:
1.- Desde el proyecto que te pasé en Pcbnew... menú Archivo... Archive footprints... Create Footprint Archive.
2.- Desde el nuevo proyecto en CvPcb... menú Preferencias... Librerías... Añadir... y añades la nueva librería que has creado en el punto 1
No estoy seguro de las protecciones, porque no las he probado. La segunda versión parece más simple y suficientemente robusta.
Lo ideal sería probarlas con una pistola de descargas electrostáticas, pero no tengo una y valen bastante dinero.
Saludos.
-
Creo que esa cápsula la he diseñado yo, no es estandar.
La forma más fácil de importarla es:
1.- Desde el proyecto que te pasé en Pcbnew... menú Archivo... Archive footprints... Create Footprint Archive.
2.- Desde el nuevo proyecto en CvPcb... menú Preferencias... Librerías... Añadir... y añades la nueva librería que has creado en el punto 1
No estoy seguro de las protecciones, porque no las he probado. La segunda versión parece más simple y suficientemente robusta.
Lo ideal sería probarlas con una pistola de descargas electrostáticas, pero no tengo una y valen bastante dinero.
Saludos.
Muchas gracias ya lo consegui hacer, adjunto esquema de la placa con los multiplexores.
Para no liarnos solo he hecho las conexiones de un multiplexor, si queremos mas pulsadores es solo copiar el esquema. Según mis calculos (7x8) podriamos poner hasta 56 pulsadores, nada mal.
No se donde enchufar los pin 1 de los CONN, a ground?
Gracias
-
Tienes que conectarlo al positivo.
A la hora de realizar rutas ten en cuenta que cuanto más separados estén los hilos que llevan las señales, más ruido pueden captar y más inductancias parásitas pueden tener.
Hay que intentar realizar las rutas con hilos paralelos siempre que se pueda.
Saludos.
-
Tienes que conectarlo al positivo.
A la hora de realizar rutas ten en cuenta que cuanto más separados estén los hilos que llevan las señales, más ruido pueden captar y más inductancias parásitas pueden tener.
Hay que intentar realizar las rutas con hilos paralelos siempre que se pueda.
Saludos.
Conectarlo al positivo? en el PIC, al USB o necesitaria una fuente externa de alimentación?
A la hora de realizar rutas ten en cuenta que cuanto más separados estén los hilos que llevan las señales, más ruido pueden captar y más inductancias parásitas pueden tener.
No lo entiendo, que serian las pistas de la PCB?
Un saludo
-
1.- Al positivo de la placa (que viene del USB)
2.- Si, las pistas de la PCB.
La señal positiva y la negativa deberían ir en paralelo lo más cerca posible una de la otra desde la entrada hasta el chip.
Saludos.
-
Hola, he hecho el siguiente circuito en proteus y también el programa para el PIC en ccs y para el pc en vb.net. El problema es que solo puedo dejar pulsado como mucho un pulsador en cada columna porque sino sale error en el proteus y no tengo ni idea de a que se debe.
#include <main.h>
#include <usb_cdc.h>
int8 DATA_RX[4];
int8 DATA_TX[30];
void main()
{
setup_timer_3(T3_DISABLED | T3_DIV_BY_1);
usb_init();
int i=0;
for(i=0; i<25; i++)
DATA_TX[i]='0';
DATA_TX[25]='!';
DATA_TX[26]='E';
DATA_TX[27]='N';
DATA_TX[28]='D';
DATA_TX[29]='\0';
while (true) {
if (usb_enumerated()){
if(usb_cdc_kbhit()){
for (i=0;i<3;++i){
DATA_RX[i] = usb_cdc_getc();
}
}
if(DATA_RX[0]=='G' && DATA_RX[1]=='E' && DATA_RX[2]=='T'){
for(i=0; i<5; i++){
output_low(PIN_B0);
output_low(PIN_B1);
output_low(PIN_B2);
output_low(PIN_B3);
output_low(PIN_B4);
delay_ms(100);
switch(i){
case 0:
output_high(PIN_B0);
break;
case 1:
output_high(PIN_B1);
break;
case 2:
output_high(PIN_B2);
break;
case 3:
output_high(PIN_B3);
break;
case 4:
output_high(PIN_B4);
break;
}
if(input(PIN_A0)){
DATA_TX[(5*i)+0]='1';
}else{
DATA_TX[(5*i)+0]='0';
}
if(input(PIN_A1)){
DATA_TX[(5*i)+1]='1';
}else{
DATA_TX[(5*i)+1]='0';
}
if(input(PIN_A2)){
DATA_TX[(5*i)+2]='1';
}else{
DATA_TX[(5*i)+2]='0';
}
if(input(PIN_A3)){
DATA_TX[(5*i)+3]='1';
}else{
DATA_TX[(5*i)+3]='0';
}
if(input(PIN_A4)){
DATA_TX[(5*i)+4]='1';
}else{
DATA_TX[(5*i)+4]='0';
}
}
usb_cdc_puts(DATA_TX);
DATA_RX[0]='\0';
}
}
}
enable_interrupts(GLOBAL);
}
PD: es la primera vez que programo para un PIC, aunque tengo bastante experiencia en programación.
Un saludo
-
Creo que faltan las resistencias a masa en las entradas RA
Saludos.
-
Creo que faltan las resistencias a masa en las entradas RA
Saludos.
He añadido lo del otro circuito de kicad pero ahora me marca todos pulsados siempre independientemente de si lo están o no.
Adjunto una imagen y el circuito. Si es necesario puedo subir el .hex y el .exe o el codigo fuente
-
Todas las salidas RB deben estar por defecto a 1. Para activar una de las columnas, la salida RB correspondiente se lleva a cero.
Las entradas están por defecto a 0. Si se pulsa un pulsador pasa a valer 1, pero tardan algún tiempo debido al condensador.
Desde que se activa RB hasta que se leen las entradas RA deben pasar más de 10 milisegundos para que se carguen y descarguen los condensadores.
Saludos.
-
Todas las salidas RB deben estar por defecto a 1. Para activar una de las columnas, la salida RB correspondiente se lleva a cero.
Las entradas están por defecto a 0. Si se pulsa un pulsador pasa a valer 1, pero tardan algún tiempo debido al condensador.
Desde que se activa RB hasta que se leen las entradas RA deben pasar más de 10 milisegundos para que se carguen y descarguen los condensadores.
Saludos.
No somos capaces, de hacerla funcionar. Jeje.
No sabemos que falla. Pero no va.
Alguna ayuda?. Gracias
-
Yo no tengo el Proteus instalado.
¿Qué es lo que va mal?
Podéis intentar lo siguiente: todas las salidas RB a uno, excepto una que esté siempre a cero.
Leer las entradas RA a ver que tienen.
Intentad trabajar por ahora con leds de salida, para no mezclar los problemas con el RS232 o el USB.
Puede que tengáis problemas con los retardos. Si los hacéis con un bucle, el USB se cuelga.
Saludos.
-
Yo creo que el problema esta en el circuito de vuelta a RA porque en la simulación siempre esta a nivel alto al estar conectado a vcc y le da igual el estado de los botones.
@Picuino Las salidas RB no deberían estar todas a nivel bajo menos la seleccionada? si están varias a nivel alto, llegara siempre 1 con que haya un solo botón activado por columna o eso entiendo yo.
De todos modos ponga las salidas RB como las ponga siempre recibe un 1 por lo que comenté en la primera linea
Un saludo
-
El transistor conectado a RB es un PNP que se activa (comienza a conducir) cuando la salida RB está a nivel CERO.
Para activar una salida RB hay que llevarla a CERO.
Saludos.
-
Yo no tengo el Proteus instalado.
¿Qué es lo que va mal?
Podéis intentar lo siguiente: todas las salidas RB a uno, excepto una que esté siempre a cero.
Leer las entradas RA a ver que tienen.
Intentad trabajar por ahora con leds de salida, para no mezclar los problemas con el RS232 o el USB.
Puede que tengáis problemas con los retardos. Si los hacéis con un bucle, el USB se cuelga.
Saludos.
Estamos dale que te pego y no somos capaces.
Cual usas tu? aver si nos es mas sencillo con ese.
Gracias y un saludo.
-
Yo trabajo directamente con una placa de desarrollo con microcontrolador.
Colgad el programa a ver que le pasa.
Saludos
-
#include <main.h>
#include <usb_cdc.h>
int8 DATA_RX[4];
int8 DATA_TX[30];
void main()
{
setup_timer_3(T3_DISABLED | T3_DIV_BY_1);
usb_init();
int i=0;
for(i=0; i<25; i++)
DATA_TX[i]='0';
DATA_TX[25]='!';
DATA_TX[26]='E';
DATA_TX[27]='N';
DATA_TX[28]='D';
DATA_TX[29]='\0';
while (true) {
if (usb_enumerated()){
if(usb_cdc_kbhit()){
for (i=0;i<3;++i){
DATA_RX[i] = usb_cdc_getc();
}
}
if(DATA_RX[0]=='G' && DATA_RX[1]=='E' && DATA_RX[2]=='T'){
for(i=0; i<5; i++){
output_high(PIN_B0);
output_high(PIN_B1);
output_high(PIN_B2);
output_high(PIN_B3);
output_high(PIN_B4);
delay_ms(100); //no se donde va el delay
switch(i){
case 0:
output_low(PIN_B0);
break;
case 1:
output_low(PIN_B1);
break;
case 2:
output_low(PIN_B2);
break;
case 3:
output_low(PIN_B3);
break;
case 4:
output_low(PIN_B4);
break;
}
delay_ms(100); //lo pongo aqui tambien por si acaso
if(input(PIN_A0)){
DATA_TX[(5*i)+0]='1';
}else{
DATA_TX[(5*i)+0]='0';
}
if(input(PIN_A1)){
DATA_TX[(5*i)+1]='1';
}else{
DATA_TX[(5*i)+1]='0';
}
if(input(PIN_A2)){
DATA_TX[(5*i)+2]='1';
}else{
DATA_TX[(5*i)+2]='0';
}
if(input(PIN_A3)){
DATA_TX[(5*i)+3]='1';
}else{
DATA_TX[(5*i)+3]='0';
}
if(input(PIN_A4)){
DATA_TX[(5*i)+4]='1';
}else{
DATA_TX[(5*i)+4]='0';
}
}
usb_cdc_puts(DATA_TX);
DATA_RX[0]='\0';
}
}
}
enable_interrupts(GLOBAL);
}
Saludos
-
Repito:
El delay no funciona con el USB.
Probad primero con un led de salida para comprobar si se ha leído un pulsador.
A partir de ahí podéis continuar.
Saludos.
-
Repito:
El delay no funciona con el USB.
Ok, como dijiste que con un bucle no valía, pensé que el delay valdría. Probaré a hacer el retraso de otra manera.
Probad primero con un led de salida para comprobar si se ha leído un pulsador.
A partir de ahí podéis continuar.
Donde debería ir el led? a la vuelta del pulsador?
Un saludo
-
Si el USB funciona con interrupciones, entonces vale el delay o un bucle. Si el USB trabaja de forma cooperativa (hay que llamarle con frecuencia), se colgará.
Lo mejor es que conectes una salida libre a una resistencia en serie con un led y a masa.
Si la entrada vale uno, enciendes el led.
Así compruebas que las entradas se leen.
Saludos.
-
El retardo se puede hacer con interrupciones:
Una interrupción aumenta el valor de una variable cada milisegundo:
void isr_low_main(void) {
if (PIR1bits.TMR2IF == 1) {
PIR1bits.TMR2IF = 0;
milliseconds++;
}
}
En tu bucle compruebas que ha aumentado 100 milisegundos de forma cooperativa. Hay que hacerlo con una máquina de estados
int estado = 0;
while(1) { // bucle infinito
if (estado==0) { // Reset contador de milisegundos
milliseconds = 0;
estado = 1;
}
if (estado == 1) { // Espera que pasen 100 milisegundos
if (milliseconds>=100)
estado = 2;
}
if (estado == 2) { // Leer y escribir entradas / salidas
Leer_entradas();
Escribir leds();
estado = 3;
}
... Otras rutinas
...
if (estado == 5) { // Ultimo estado. Volver al principio
estado = 0;
}
llamar_usb();
}
Saludos.
-
He puesto un led en RB7 y lo he activado en la condición if(input(PIN_A0)) apagandolo un poco antes y se queda encendido todo el rato. Ademas el proteus cuando esta simulando tiene unos cuadros azules y rojos que indican si el hilo esta a nivel bajo o a nivel alto. Y yo según entiendo (dentro de la poca idea que tengo) el nivel alto no pasa de la primera resistencia y a los botones les llega siempre nivel bajo y al pic le llegan siempre todos los hilos a nivel alto. Yo ya no se si es que yo he dibujado mal el circuito o si la simulación no funciona o que le pasa. Lo mas lejos que he llegado fue cuando conecté los botones directamente al pic que detectaba los valores en algunos casos pero ahora siempre me indica todos pulsados.
Respecto a la interrupción que has comentado antes, ¿como se declara?
Un saludo y gracias por la paciencia que tienes con nosotros :)
-
La verdad es que os habéis embarcado en un proyecto bastante ambicioso para ser principiantes.
Cualquiera se puede quedar atascado en un proyecto así. A veces es por un problema muy simple y cuando lo descubres no te explicas como algo tan simple puede haber dado tantos problemas.
Parece que ahora estáis atascados con las entradas. Voy a echar otro vistazo al esquema para comprobar que todo está bien.
Saludos.
-
Parece que el Proteus no puede simular bien los transistores.
Se puede cambiar de la siguiente manera:
1.- Quitáis los transistores y se sustituye todo por una sola resistencia de 2200 ohmios conectada a la salida RA
2.- Todas las salidas RA se configuran como entradas excepto una como salida: TRISA = 0b11111110;
3.- Sólo una salida RA se configura como salida a nivel alto: PORTA = 0b00000001;
4.- Leer entradas RB
A ver si así os funciona.
Animo que lo estaís haciendo fenomenal.
Saludos.
PD. Creo que en otros mensajes he confundido entradas RB y salidas RA en este está igual que vuestra imagen de PROTEUS. RA=salidas, RB=entradas
-
Vale acabo de darme cuenta de un error gordaco que tenia. Resulta que tenia las entradas donde las salidas y las salidas donde las entradas por eso no funcionaba nada XD. Al leer tu ultimo post me he dado cuenta.
Ya las he puesto como deberían estar y ahora el circuito funciona, pero igual que antes de ponerle las protecciones. Cuando hay varios botones pulsados, la corriente pasa por donde no tendria que pasar.
He hecho una animación gif de la simulación para explicarlo gráficamente
(http://i.imgur.com/KDErb.gif)
Saludos
-
Tienes toda la razón. Normalmente se soluciona con diodos para que los pulsadores sólo conduzcan corriente en un sentido como en el dibujo:
(https://lh6.googleusercontent.com/-_RgwesmbXhk/TXLhonv1tQI/AAAAAAAAABA/hXrkmmZplHo/keypad+5.jpg)
Como el circuito tiene transistores que sólo permiten conducir en un sentido creí que no se daría el problema, pero si que ocurre.
Hay que pensar cual es la configuración que necesita menos diodos y te respondo.
Saludos.
-
Ya me funciona aparentemente :)
Lo que no se es si es mas sencillo de hacer el circuito con muxes
Un saludo
-
Puede que si, pero hay que tener en cuenta también que hay que proteger cada entrada del multiplexor y son 22.
Los diodos pueden ser unos 1N4148 en formato smd SM1206. Ocupan muy poco espacio, son baratos y fáciles de soldar.
El problema está en que no se si son capaces de soportar una descarga electrostática.
Saludos.
-
Pues he diseñado la placa con los multiplexores ( Adjunto archivo )
Peero el diseño de picuino me sigue gustando mas, principalmente veo que la de multiplexores necesita 219 componentes y mucho mas espacio, al requeririr un optoacoplador por pulsador. La de picuino son 119 componentes.
Ahora claro es cuestion de ver cual funciona mejor, jejeje.
Mi solucion de momento creo que hare las dos y mirare aver cual va mejor, a menos que me recomendeis otra cosa.
Gracias y un saludo.
EDITO: Adjunto el archivo, jejejeje.
-
Si colocas optoacoplador necesitas además una fuente de alimentación aislada de la placa.
Es una solución complicada y más difícill, pero te aguantará de todo (derivaciones a un cable de tensión de red, descargas electrostáticas, etc)
Mi diseño aguanta descargas electrostáticas y no muy fuertes.
Saludos.
-
Pues he diseñado la placa con los multiplexores ( Adjunto archivo )
Peero el diseño de picuino me sigue gustando mas, principalmente veo que la de multiplexores necesita 219 componentes y mucho mas espacio, al requeririr un optoacoplador por pulsador. La de picuino son 119 componentes.
Ahora claro es cuestion de ver cual funciona mejor, jejeje.
Mi solucion de momento creo que hare las dos y mirare aver cual va mejor, a menos que me recomendeis otra cosa.
Gracias y un saludo.
EDITO: Adjunto el archivo, jejejeje.
Puedes probar a montar una pequeña placa con los dos tipos de entrada, conectadas a un integrado barato como el 70HC00.
Después dale descargas con un mechero electrónico o chispas después de caminar por una moqueta o quitarte un gersey de esos que te dejan electrizado.
A ver cuál aguanta más.
La placa de pruebas la puedes montar con cuatro componentes y un placa pretaladrada barata:
(http://3.bp.blogspot.com/_XDUXKyoULEY/S_vVwgGDHII/AAAAAAAAAEA/9WKn_ckbJck/s320/IMGP6504.JPG)
(http://hombremecatronico.es/wordpress/wp-content/uploads/2010/05/IMG_2114.jpg)
Saludos.