mirror of
				https://github.com/mfulz/qmk_firmware.git
				synced 2025-10-31 05:12:33 +01:00 
			
		
		
		
	Add user board driver stub code to the documentation.
This commit is contained in:
		
							parent
							
								
									14ba7a7047
								
							
						
					
					
						commit
						c18283a275
					
				| @ -8,20 +8,40 @@ | |||||||
|  * |  * | ||||||
|  *  LUFA ships with several basic pre-made board drivers, to control hardware present on the supported board |  *  LUFA ships with several basic pre-made board drivers, to control hardware present on the supported board | ||||||
|  *  hardware - such as Dataflash ICs, LEDs, Joysticks, or other hardware peripherals. When compiling an application |  *  hardware - such as Dataflash ICs, LEDs, Joysticks, or other hardware peripherals. When compiling an application | ||||||
|  *  which makes use of one or more board drivers located in LUFA/Drivers/Board, you must also indicate what board |  *  which makes use of one or more board drivers located in <i>LUFA/Drivers/Board</i>, you must also indicate which | ||||||
|  *  hardware you are using in your project makefile. This is done by defining the BOARD macro using the -D switch |  *  board hardware you are using in your project makefile. This is done by defining the <tt>BOARD</tt> macro using | ||||||
|  *  passed to the compiler, with a constant of BOARD_{Name}. For example <b>-DBOARD=BOARD_USBKEY</b> instructs the |  *  the <tt>-D</tt> switch passed to the compiler, with a constant of <tt>BOARD_{Name}</tt>. For example, | ||||||
|  *  compiler to use the USBKEY board hardware drivers. |  *  <tt>-DBOARD=BOARD_USBKEY</tt> instructs the compiler to use the USBKEY board hardware drivers. | ||||||
|  * |  * | ||||||
|  *  If your application does not use *any* board level drivers, you can omit the definition of the BOARD macro. |  *  If your application does not use <i>any</i> board level drivers, you can omit the definition of the <tt>BOARD</tt> | ||||||
|  *  However, some users may wish to write their own custom board hardware drivers which are to remain compatible |  *  macro. However, some users may wish to write their own custom board hardware drivers which are to remain compatible | ||||||
|  *  with the LUFA hardware API. To do this, the BOARD macro should be defined to the value BOARD_USER. This indicates |  *  with the LUFA hardware API. To do this, the <tt>BOARD</tt> macro should be defined to the value <tt>BOARD_USER</tt>. | ||||||
|  *  that the board level drivers should be located in a folder named "Board" located inside the application's folder. |  *  This indicates that the board level drivers should be located in a folder named "Board" located inside the | ||||||
|  |  *  application's folder. | ||||||
|  * |  * | ||||||
|  *  When used, the driver stub files located in the LUFA/CodeTemplates/DriverStubs folder should be copied to the user |  *  When used, the driver stub files located in the <tt>LUFA/CodeTemplates/DriverStubs</tt> folder should be copied to | ||||||
|  *  Board/ directory, and fleshed out to include the values and code needed to control the custom board hardware. Once |  *  the user application's <tt>Board/</tt> directory, and filled out to include the values and code needed to control | ||||||
|  *  done, the existing LUFA board level APIs (accessed in the regular LUFA/Drivers/Board/ folder) will redirect to the |  *  the custom board hardware. Once done, the existing LUFA board level APIs (accessed in the regular | ||||||
|  *  user board drivers, maintaining code compatibility and allowing for a different board to be selected through the |  *  <tt>LUFA/Drivers/Board/</tt> folder) will redirect to the user board drivers, maintaining code compatibility and | ||||||
|  *  project makefile with no code changes. |  *  allowing for a different board to be selected through the project makefile with no code changes. | ||||||
|  |  * | ||||||
|  |  *  \section Sec_BoardTemplates Board Driver Templates | ||||||
|  |  * | ||||||
|  |  *  The templates for each board driver are reproduced below. | ||||||
|  |  * | ||||||
|  |  *  \subsection SSec_BoardTemplates_Board Template for USER <Board/Board.h> | ||||||
|  |  *  \include "DriverStubs/Board.h" | ||||||
|  |  * | ||||||
|  |  *  \subsection SSec_BoardTemplates_Board Template for USER <Board/Buttons.h> | ||||||
|  |  *  \include "DriverStubs/Buttons.h" | ||||||
|  |  * | ||||||
|  |  *  \subsection SSec_BoardTemplates_Board Template for USER <Board/Dataflash.h> | ||||||
|  |  *  \include "DriverStubs/Dataflash.h" | ||||||
|  |  * | ||||||
|  |  *  \subsection SSec_BoardTemplates_Board Template for USER <Board/Joystick.h> | ||||||
|  |  *  \include "DriverStubs/Joystick.h" | ||||||
|  |  * | ||||||
|  |  *  \subsection SSec_BoardTemplates_Board Template for USER <Board/LEDs.h> | ||||||
|  |  *  \include "DriverStubs/LEDs.h" | ||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Dean Camera
						Dean Camera