Tengo una placa Arduino Uno r3 que tiene un chip atmega16u2 que normalmente contiene el firmware USB a serie que permite que la placa se comunique con el IDE.
He estado aprendiendo a flashear ese chip con diferentes firmwares que le permiten actuar como otro tipo de dispositivos USB (Teclado / Ratón específicamente).
He encontrado algunos archivos hexadecimales que puedo usar en línea, pero estoy tratando de aprender cómo crear mi propia versión de los archivos hexadecimales del teclado y el ratón.
Aquí están las variables que he establecido en el archivo make:
MCU = atmega16u2
ARCH = AVR8
BOARD = UNO
F_CPU = 16000000
el LUFA_PATH se configura de esta manera (no lo cambié):
LUFA_PATH = ../../../..
Cuando guardo el archivo MAKE así y trato de ejecutar, se produce un error:
../../../../LUFA/Drivers/Board/Joystick.h:119:31: error: Board/Joystick.h: No such file or directory
../../../../Common/Common.h: No such file or directory
../../../../LUFA/Drivers/Board/Buttons.h:135:30: error: Board/Buttons.h: No such file or directory
La parte extraña es que puedo viajar a la ruta que indica y esos archivos realmente existen y están ubicados allí.
¿Cómo necesito configurar los parámetros de archivo de mi LUFA para poder construir para el atmega16u2 que se encuentra en Arduino UNO rev3?
EDITAR: Estos son los únicos pasos que he tomado, que llevaron a estos errores.
-
Descarga el proyecto LUFA zip.
-
Vaya a dir: C: \ LUFA-111009 \ Demos \ Device \ ClassDriver \ KeyboardMouse
-
Abra el archivo make en este directorio.
-
cambie la velocidad de MCU, placa y F_CPU a los valores ubicados arriba. (El arco ya está configurado correctamente)
-
guardar archivo de creación
-
Abre cmd en este directorio.
-
Escriba "make all"
este proceso da como resultado los errores anteriores.
EDIT 2: Ok, hice los botones en blanco.h, y Joystick.h y los puse en la carpeta / placa / teclado de Keyboard. que se deshizo de los errores del archivo no encontrado pero todavía me da esto:
KeyboardMouse.c: In function 'SetupHardware':
KeyboardMouse.c:111: warning: implicit declaration of function 'clock_prescale_s
et'
KeyboardMouse.c:111: error: 'clock_div_1' undeclared (first use in this function
)
KeyboardMouse.c:111: error: (Each undeclared identifier is reported only once
KeyboardMouse.c:111: error: for each function it appears in.)
KeyboardMouse.c:114: warning: implicit declaration of function 'Joystick_Init'
KeyboardMouse.c: In function 'CALLBACK_HID_Device_CreateHIDReport':
KeyboardMouse.c:174: warning: implicit declaration of function 'Joystick_GetStat
us'
KeyboardMouse.c:175: warning: implicit declaration of function 'Buttons_GetStatu
s'
KeyboardMouse.c:183: error: 'BUTTONS_BUTTON1' undeclared (first use in this func
tion)
KeyboardMouse.c:188: error: 'JOY_UP' undeclared (first use in this function)
KeyboardMouse.c:190: error: 'JOY_DOWN' undeclared (first use in this function)
KeyboardMouse.c:193: error: 'JOY_LEFT' undeclared (first use in this function)
KeyboardMouse.c:195: error: 'JOY_RIGHT' undeclared (first use in this function)
KeyboardMouse.c:198: error: 'JOY_PRESS' undeclared (first use in this function)
make: *** [KeyboardMouse.o] Error 1