¿Puedo programar 5V ATmega328P utilizando el bus ICSP de 3.3V?

1

Estoy considerando crear un HAT para microcontroladores para Raspberry Pi Modelo B +. Dado que el Pi tiene el bus SPI expuesto y algunos horquillas avrdude lo usan directamente, espero que mi HAT pueda permitirle a Raspberry Pi hablar con el ATmega328P usando SPI ICSP para actualizar el chip en lugar de usar un cargador de arranque serial y algo de serie. Sin embargo, los pines se deben desconectar de la Pi cuando no se requieren para que otros periféricos SPI se puedan conectar a ambos dispositivos también. Existe una situación similar para I2C, buses UART y un pin GPIO. Todos los contactos / activaciones de pines se realizan utilizando un chip PCF8574 en el bus I2C de Pí.

Sé muy bien que puedo ejecutar el ATmega328P a 3.3V, posiblemente a una velocidad de 16MHz, pero estoy preguntando por hacer esto con el microcontrolador a 5V. En 3.3V, desconectar los pines requiere solo algunos CD4066

    
pregunta Maxthon Chan

2 respuestas

1

Esto debería funcionar bien. Siempre que el nivel alto de 3.3v sea lo suficientemente alto como para registrarse como un nivel alto en el AVR, esto debería funcionar correctamente.

También debe agregar resistencias en serie para la limitación de corriente para que el nivel de 5v de los pines del AVR no dañe la entrada en el SoC.

    
respondido por el alex.forencich
0

El pi probablemente será frito porque la voluntad del pin MOSI es impulsada por el Arduino. Si desea usar el pi como su ICSP, necesitará un cambiador de nivel, como por ejemplo, el campo de trabajo, como es el caso de que se trate, y es una de las actividades que se encuentran en el lugar de inicio. a>

    
respondido por el C_Elegans

Lea otras preguntas en las etiquetas