Parte dos de una serie de tres partes sobre la transición de Arduino a un microcontrolador AVR simple y componentes de soporte mínimos ( parte uno , parte tres )
He visto a mucha gente preguntar esto en Internet, así que aquí va:
Ya sé cómo programar y usar un ATmega328 básico con un Arduino como programador . Ahora quiero comenzar a usar un programador externo con Arduino IDE.
¿Cómo debo proceder en esta transición? ¿Qué debo aprender? (Sería bueno si se proporcionara un mini tutorial para algunas de las porciones como parte de la respuesta)
Respuestas:
Nota: Este mini tutorial se basa en la información oficial aquí en el sitio Arduino. También implica el uso del IDE oficial de Arduino.
Nota 2: Los enlaces proporcionados a los productos pueden ser enlaces de Farnell (ya que contienen hojas de datos) o las páginas reales del producto en el sitio web del fabricante.
Paso 1: obtenga un programador externo
Lo primero que debe tener en cuenta es que necesita un programador externo para evitar el gestor de arranque y recuperar los 1K o 2K de memoria que ocupa (12.5% de la memoria total ). Puede usar un AVR-ISP , un STK-500 o un programador de puerto paralelo; el sitio oficial de Arduino tiene instrucciones para esto aquí . Tenga en cuenta que no puede comunicarse con la placa a través del programador paralelo: el consejo es utilizar un cable serie para eso. El principal beneficio de usar un programador paralelo es que son mucho más baratos que los demás si está dispuesto a hacer algo de soldadura: solo necesita unas pocas (3) resistencias y unos pocos conectores, mientras que un ISP puede configurarlo nuevamente. a £ 30 / $ 50 (la tasa de conversión es aproximada).
Paso 2: edite el archivo de preferencias de Arduino
A continuación, deberá configurar el IDE de Arduino para permitirle eludir el gestor de arranque. ¡Asegúrese de NO tener abierto el IDE de Arduino! El archivo de preferencias
preferences.txt
se puede encontrar en las siguientes ubicaciones, según su sistema operativo:C:\Documents and Settings\<Username>\Application Data\Arduino\preferences.txt
(Windows)/Users/<Username>/Library/Arduino/preferences.txt
(Mac)~/.arduino/preferences.txt
(Linux)Para acceder al archivo de preferencias en Windows, vaya al menú de inicio y luego vaya a
%appdata%
(Nota: no uso Windows regularmente, no dude en corregirme). Luego navegue a Arduino y luego apreferences.txt
En Mac, use Terminal y haga:
O en Finder use Goto (Cmd-Shift-G) e ingrese
~/Library/Arduino
. Ambos te llevan a una ventana del Finder conpreferences.txt
in.En sistemas Unix, carpetas que comienzan con un '.' (como
.cache
,.git
) están ocultos por defecto, por lo que en Linux necesitará usar la Terminal e ingresar:Nota: Puede reemplazar nautilus con
gnome-open
si lo desea. Sé que ambos funcionan en los sabores comunes de Linux, pero puede tener problemas con algunos de los sabores más 'exóticos'.Una vez que haya encontrado el
preferences.txt
archivo, ábralo y cambieupload.using
debootloader
al nombre de uno de los programadores en el./hardware/programmers.txt
subdirectorio. Si solo desea eliminar el gestor de arranque de una placa,./hardware/boards.txt
puede cambiar el<board>.upload.using
parámetro y todas las demás placas seguirán utilizando el gestor de arranque. Luego, simplemente guarde el archivo relevante y ciérrelo (mi Arduino se bloqueó y casi pierdo la respuesta, posiblemente porque olvidé hacer esto).Paso 3: sube el boceto
Una vez que haya editado el archivo relevante, abra el IDE de Arduino nuevamente y cargue el boceto de manera normal. Si acaba de editar
./hardware/boards.txt
, solo esa placa en particular no tendrá el gestor de arranque, pero si editó,preferences.txt
entonces todas las placas no tendrán el gestor de arranque.Paso 4: Reemplace el gestor de arranque
Si desea volver a tener el gestor de arranque en sus tableros (por cualquier razón), primero elimine el
<board>.upload.using
parámetro oupload.using
vuelva a configurarlobootloader
. Luego, tendrá que volver a grabar el gestor de arranque en las placas afectadas: esta respuesta explica razonablemente bien un método para hacerlo, y hay un método más fácil para cargar el gestor de arranque Arduino solo con un ISP (que debería tener de antes) en el sitio oficial aquí .fuente