Tarjeta Entrenadora con PIC18F4550

Buenas noches, estoy realizando una entrenadora para realizar proyectos personales y quisiera saber si me pueden corregir la plaqueta, debido a que es mi primera vez realizando esta placa, el micro controlador que estoy por utilizar es el 18f4550 y para no andar sacándolo de la placa a cada rato le agregue un icsp, que es al que mas miedo le tengo porque según leí puedo llegar a quemar el integrado!. Para tener total acceso a los puertos del microcontrolador utilizo pines de conexión, como los del arduino, y para poder realizar las distintas funcionalidades después iré agregando distintos módulos. Subo una foto y el circuito en LiveWire por si las dudas. Muchas gracias y sepan disculpar la des prolijidad del circuito!

FOTO DEL CIRCUITO:
Sin título.jpg

CIRCUITO EN LiveWire:
https://www.mediafire.com/?wibthyu37762vtj ...
 
Última edición:
Saludos. Te comento lo que he notado en el circuito.

  • El reset no va a tener efecto por el diodo D2, necesitas ponerle una resistencia de 470 Ω en paralelo.
  • Las resistencias que colocaste para ICSP (PGD y PGC) no deben ir hacia tierra.
  • El diodo D3 va a restar alrededor de 0.6 V a los 5 V, lo cual va a afectar la referencia del módulo ADC, si no se toma en cuenta.
  • El conector para RS-232 no tiene el terminal de tierra.
  • Si vas a usar el puerto USB, también podrías alimentar al circuito con él.
    Así que te faltaría el pin de VCC y también realizar la detección de conexión e indicarlo con algunos LED.
  • El valor de los capacitores para un cristal de 20 MHz es muy alto, el valor recomendado según la hoja de datos, es de 15 pF.
  • Te recomiendo que coloques otro capacitor de 100 nF en el pin 32
  • También mejoraría el circuito si le incorporas un filtro para EMI.
Conexión recomendada para ICSP
icsp.jpg

 
Última edición:
Dark, es resistencia o diodo, no necesariamente ambos, aunque recomendaría una resistencia quizá de 1MΩ a tierra o mayor despues del diodo para que estemos seguros de que baja.

Los pines del ICSP que se usan en la aplicación deben poder aislarse preferentemente, minimo va la resistencia en serie a estos y después va el circuito de aplicación.

El diodo en serie a la alimentación no es recomendable, hay formas mejores de evitar la polarización inversa empleando un MOSFET, si aun planeas usar un diodo considera que el 1N4148 es de pequeña señal creo 75mA.
 
Dark, es resistencia o diodo, no necesariamente ambos, aunque recomendaría una resistencia quizá de 1MΩ a tierra o mayor después del diodo para que estemos seguros de que baja.
Así es, pero mira la posición del pulsador, debe estar en el cátodo, o no habrá circulación negativa.
 
Saludos. Te comento lo que he notado en el circuito.

  • El reset no va a tener efecto por el diodo D2, necesitas ponerle una resistencia de 470 Ω en paralelo.
  • Las resistencias que colocaste para ICSP (PGD y PGC) no deben ir hacia tierra.
  • El diodo D3 va a restar alrededor de 0.6 V a los 5 V, lo cual va a afectar la referencia del módulo ADC, si no se toma en cuenta.
  • El conector para RS-232 no tiene el terminal de tierra.
  • Si vas a usar el puerto USB, también podrías alimentar al circuito con él.
    Así que te faltaría el pin de VCC y también realizar la detección de conexión e indicarlo con algunos LED.
  • El valor de los capacitores para un cristal de 20 MHz es muy alto, el valor recomendado según la hoja de datos, es de 15 pF.
  • Te recomiendo que coloques otro capacitor de 100 nF en el pin 32
  • También mejoraría el circuito si le incorporas un filtro para EMI.


Buenas tardes! Gracias por sus respuestas, los pines PGD y PGC los voy a dejar exclusivamente para icsp, para ello, puedo sacar las resistencias de 10k?
Lo de EMI no encuentro referencia, encontré que es una protección contra interferencias electromagnéticas. Y lo demás ya lo modifico y subo nuevamente! Muchas gracias a ambos nuevamente

Dark, es resistencia o diodo, no necesariamente ambos, aunque recomendaría una resistencia quizá de 1MΩ a tierra o mayor despues del diodo para que estemos seguros de que baja.

Los pines del ICSP que se usan en la aplicación deben poder aislarse preferentemente, minimo va la resistencia en serie a estos y después va el circuito de aplicación.

El diodo en serie a la alimentación no es recomendable, hay formas mejores de evitar la polarización inversa empleando un MOSFET, si aun planeas usar un diodo considera que el 1N4148 es de pequeña señal creo 75mA.
Buenas tardes y muchas gracias por su respuesta, me podría aclarar cómo sería lo de MOSFET?
 
reverse_Curent_Protection.jpg

Inicialmente la corriente pasa por el diodo del cuerpo del MOSFET, luego al polarizarse se activa y crea un corto al diodo permitiendo menores perdidas, si accidentalmente se conecta al revés el MOSFET permanece bloqueado.
 
Buenas noches, aqui de nuevo e logrado realizar algunos de los cambios.

Sí, ya que esos pines van a ser exclusivos para ICSP.

Así es. EMI = ElectroMagnetic Interference.

Filtro Π para EMI

Mientras que el EMI no lo pude hacer.

EL NUEVO CIRCUITO QUEDARÍA:
Entrenadora.jpg
http://www.completepowerelectronics.com/wp-content/uploads/2017/01/reverse_Curent_Protection.jpg
Inicialmente la corriente pasa por el diodo del cuerpo del MOSFET, luego al polarizarse se activa y crea un corto al diodo permitiendo menores perdidas, si accidentalmente se conecta al revés el MOSFET permanece bloqueado.

Lo del transistor MOSFET tampoco e podido encontrarle la vuelta, e probado con varios circuitos en el simulador, pero ninguno me tira tensión en el circuito, mientras que si conecto un led con el circuito que me paso usted si me cumple la función de interruptor. ¿Cómo podría hacer para suplantar con algún circuito funcional al Diodo?

Muchas gracias a ambos por su ayuda!
 
Saludos. Te comento lo que he notado en el circuito.

  • El reset no va a tener efecto por el diodo D2, necesitas ponerle una resistencia de 470 Ω en paralelo.
  • Las resistencias que colocaste para ICSP (PGD y PGC) no deben ir hacia tierra.
  • El diodo D3 va a restar alrededor de 0.6 V a los 5 V, lo cual va a afectar la referencia del módulo ADC, si no se toma en cuenta.
  • El conector para RS-232 no tiene el terminal de tierra.
  • Si vas a usar el puerto USB, también podrías alimentar al circuito con él.
    Así que te faltaría el pin de VCC y también realizar la detección de conexión e indicarlo con algunos LED.
  • El valor de los capacitores para un cristal de 20 MHz es muy alto, el valor recomendado según la hoja de datos, es de 15 pF.
  • Te recomiendo que coloques otro capacitor de 100 nF en el pin 32
  • También mejoraría el circuito si le incorporas un filtro para EMI.


Buenas otra vez! Si saco el diodo D3 y lo conecto directamente, funcionará el circuito?
 
Claro, de hecho con ese diodo no funcionará, por ser de pequeña señal. (Muy baja corriente)
Si vas a usar pilas, debes usar al menos 9 V y colocar el diodo antes del regulador de 5 V.
De preferencia, el diodo debe soportar el doble de la corriente total que consumirá el circuito.
O sea que debes contemplar todo el consumo de corriente de lo que se va a alimentar.
 
Buenas tardes! muchisimas gracias por sus aportes, les comento que ya logre hacer andar la entrenadora, en estos días subiré el pcb para que quede como aporte. Ahora el problema viene en el control usb, debido a que me inicie con el c, quería ver si hay alguna forma de manejar el puerto usb por un programa en consola, lo que e encontrado es sobre puerto serie y paralelo. Quisiera saber si me pueden dar una mano! muchas gracias!!
 
El puerto USB por definición es Universal, no se maneja enviando datos cualquiera ya que debe autodescribirse y después comunicarse por endpoints, el acceso a ellos depende de que datos se supone que espera recibir y para eso existen las clases entre ellas para datos los más comunes son:
Communications Device Class: Puerto serie virtual, en Windows requiere su driver o el archivo de configuración .inf a uno genérico.
Human Interface Device: Teclados, ratones, joysticks usan este perfil, adicionalmente está el modo genérico que permite flujo de datos a tasa máxima de 64B por paquete y con actualización de 1ms, no requiere controladores adicionales.
Bulk Transfer: Que es definido por el usuario y requiere controladores especiales.

Por simplicidad pues usar CDC y funcionaría como un puerto serie. Por estabilidad usar HID, este tiene ancho de banda reservada a consultar el dispositivo según el descriptor con un tiempo mínimo de 1ms, si se ocupa más ancho de banda se puede hacer hibrido y crear mas endpoints. Solo si quieres hacer tu propio protocolo y estas entendido que requerirás drivers específicos con poco soporte del sistema para manejar los recursos es que podrás usar Bulk transfer.
 
Atrás
Arriba