Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit f45871b

Browse files
Updated the documentation, documented features which werent documented
1 parent cb6c6e2 commit f45871b

File tree

1 file changed

+81
-3
lines changed

1 file changed

+81
-3
lines changed

README.rst

Lines changed: 81 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -116,9 +116,10 @@ Contents
116116
5. `Arduino Library Examples`_
117117
6. `Compiler and Linker Flags`_
118118
7. `Programmers`_
119-
8. `Advanced Options`_
120-
9. `Miscellaneous Functions`_
121-
10. `Bundling Arduino CMake`_
119+
8. `Pure AVR Development`_
120+
9. `Advanced Options`_
121+
10. `Miscellaneous Functions`_
122+
11. `Bundling Arduino CMake`_
122123

123124
3. `Linux Environment`_
124125

@@ -299,6 +300,10 @@ The options are:
299300
+--------------------+----------------------------------------------------------------------+------------------------------------+
300301
| **PROGRAMMER** | Programmer ID, enables programmer burning (see `Programmers`_). | |
301302
+--------------------+----------------------------------------------------------------------+------------------------------------+
303+
| **ARDLIBS** | Manual list of Arduino type libraries, common use case is when the | |
304+
| | library header name does not match the librarie's directory name. | |
305+
| | **ADVANCED OPTION!** Can be used in conjuction with **NO_AUTOLIBS**. | |
306+
+--------------------+----------------------------------------------------------------------+------------------------------------+
302307
| **AFLAGS** | avrdude flags for target | |
303308
+--------------------+----------------------------------------------------------------------+------------------------------------+
304309
| **NO_AUTOLIBS** | Disable Arduino library detection *(default On)* | |
@@ -621,6 +626,79 @@ Once you have enabled programmer support, two new targets are available in the b
621626
If you need to restore the original **Arduino bootloader** onto your Arduino, so that you can use the traditional way of uploading firmware images via the bootloader, use **${TARGET_NAME}-burn-bootloader** to restore it.
622627

623628

629+
Pure AVR Development
630+
~~~~~~~~~~~~~~~~~~~~
631+
632+
For those developers who don't want any Arduino magic, but still want to utilize the hardware platform you are in luck. This section will outline the `generate_avr_firmware()` and `generate_avr_library()` commands, which enables
633+
you to compile source for the given Arduino board.
634+
635+
No Arduino Core or Arduino libraries will get generated, this is for manual compilation of sources. These commands are for people that know what they are doing, or have done pure AVR development.
636+
People starting out, or just familiar with Arduino should not use these commands.
637+
638+
The `generate_avr_firmware()` command::
639+
640+
generate_avr_firmware(name
641+
[BOARD board_id]
642+
SRCS src1 src2 ... srcN]
643+
[HDRS hdr1 hdr2 ... hdrN]
644+
[LIBS lib1 lib2 ... libN]
645+
[PORT port]
646+
[SERIAL serial_cmd]
647+
[PROGRAMMER programmer_id]
648+
[AFLAGS flags])
649+
650+
This will compile the sources for the specified Arduino board type.
651+
652+
The options:
653+
654+
+--------------------+----------------------------------------------------------------------+------------------------------------+
655+
| **Name** | **Description** | **Required** |
656+
+--------------------+----------------------------------------------------------------------+------------------------------------+
657+
| **BOARD** | Board ID *(such as uno, mega2560, ...)* | **REQUIRED** |
658+
+--------------------+----------------------------------------------------------------------+------------------------------------+
659+
| **SRCS** | Source files | **REQUIRED** |
660+
+--------------------+----------------------------------------------------------------------+------------------------------------+
661+
| **HDRS** | Headers files *(for project based build systems)* | |
662+
+--------------------+----------------------------------------------------------------------+------------------------------------+
663+
| **LIBS** | Libraries to link *(sets up dependency tracking)* | |
664+
+--------------------+----------------------------------------------------------------------+------------------------------------+
665+
| **BOARD** | Board ID *(such as uno, mega2560, ...)* | **REQUIRED** |
666+
+--------------------+----------------------------------------------------------------------+------------------------------------+
667+
| **PORT** | Serial port, for upload and serial targets (see `Upload Firmware`_) | |
668+
+--------------------+----------------------------------------------------------------------+------------------------------------+
669+
| **SERIAL** | Serial command for serial target (see `Serial Terminal`_) | |
670+
+--------------------+----------------------------------------------------------------------+------------------------------------+
671+
| **PROGRAMMER** | Programmer ID, enables programmer burning (see `Programmers`_). | |
672+
+--------------------+----------------------------------------------------------------------+------------------------------------+
673+
| **AFLAGS** | avrdude flags for target | |
674+
+--------------------+----------------------------------------------------------------------+------------------------------------+
675+
676+
677+
The `generate_avr_library()` command::
678+
679+
generate_avr_library(name
680+
[BOARD board_id]
681+
[SRCS src1 src2 ... srcN]
682+
[HDRS hdr1 hdr2 ... hdrN]
683+
[LIBS lib1 lib2 ... libN])
684+
685+
This will compile a static library for the specified Arduino board type.
686+
687+
The options:
688+
689+
+--------------------+----------------------------------------------------------------------+------------------------------------+
690+
| **Name** | **Description** | **Required** |
691+
+--------------------+----------------------------------------------------------------------+------------------------------------+
692+
| **BOARD** | Board ID *(such as uno, mega2560, ...)* | **REQUIRED** |
693+
+--------------------+----------------------------------------------------------------------+------------------------------------+
694+
| **SRCS** | Source files | **REQUIRED** |
695+
+--------------------+----------------------------------------------------------------------+------------------------------------+
696+
| **HDRS** | Headers files *(for project based build systems)* | |
697+
+--------------------+----------------------------------------------------------------------+------------------------------------+
698+
| **LIBS** | Libraries to link *(sets up dependency tracking)* | |
699+
+--------------------+----------------------------------------------------------------------+------------------------------------+
700+
701+
624702
Advanced Options
625703
~~~~~~~~~~~~~~~~
626704

0 commit comments

Comments
 (0)