-
-
Notifications
You must be signed in to change notification settings - Fork 25
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 06fc50a
Showing
44 changed files
with
4,335 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
*.o | ||
*.hex | ||
*.bin | ||
*.elf | ||
*.lst | ||
*.lss | ||
*.eep | ||
*.map | ||
*.srec | ||
*.bat | ||
*.d | ||
*.sym | ||
bootloader.m8/ | ||
bootloader/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
<AVRStudio><MANAGEMENT><ProjectName>Bootloader</ProjectName><Created>28-Aug-2009 01:35:54</Created><LastEdit>29-Aug-2009 21:46:36</LastEdit><ICON>241</ICON><ProjectType>0</ProjectType><Created>28-Aug-2009 01:35:54</Created><Version>4</Version><Build>4, 16, 0, 626</Build><ProjectTypeName>AVR GCC</ProjectTypeName></MANAGEMENT><CODE_CREATION><ObjectFile></ObjectFile><EntryFile></EntryFile><SaveFolder>d:\Coding\AVR\Bootloader\</SaveFolder></CODE_CREATION><DEBUG_TARGET><CURRENT_TARGET>JTAG ICE</CURRENT_TARGET><CURRENT_PART>ATmega16</CURRENT_PART><BREAKPOINTS></BREAKPOINTS><IO_EXPAND><HIDE>false</HIDE></IO_EXPAND><REGISTERNAMES><Register>R00</Register><Register>R01</Register><Register>R02</Register><Register>R03</Register><Register>R04</Register><Register>R05</Register><Register>R06</Register><Register>R07</Register><Register>R08</Register><Register>R09</Register><Register>R10</Register><Register>R11</Register><Register>R12</Register><Register>R13</Register><Register>R14</Register><Register>R15</Register><Register>R16</Register><Register>R17</Register><Register>R18</Register><Register>R19</Register><Register>R20</Register><Register>R21</Register><Register>R22</Register><Register>R23</Register><Register>R24</Register><Register>R25</Register><Register>R26</Register><Register>R27</Register><Register>R28</Register><Register>R29</Register><Register>R30</Register><Register>R31</Register></REGISTERNAMES><COM>Auto</COM><COMType>0</COMType><WATCHNUM>0</WATCHNUM><WATCHNAMES><Pane0></Pane0><Pane1></Pane1><Pane2></Pane2><Pane3></Pane3></WATCHNAMES><BreakOnTrcaeFull>0</BreakOnTrcaeFull></DEBUG_TARGET><Debugger><Triggers></Triggers></Debugger><AVRGCCPLUGIN><FILES><SOURCEFILE>main.c</SOURCEFILE><OTHERFILE>D:\Coding\AVR\Bootloader\makefile</OTHERFILE></FILES><CONFIGS><CONFIG><NAME>default</NAME><USESEXTERNALMAKEFILE>YES</USESEXTERNALMAKEFILE><EXTERNALMAKEFILE>D:\Coding\AVR\Bootloader\makefile</EXTERNALMAKEFILE><PART>atmega16</PART><HEX>1</HEX><LIST>1</LIST><MAP>1</MAP><OUTPUTFILENAME>Bootloader.elf</OUTPUTFILENAME><OUTPUTDIR>default\</OUTPUTDIR><ISDIRTY>1</ISDIRTY><OPTIONS/><INCDIRS/><LIBDIRS/><LIBS/><LINKOBJECTS/><OPTIONSFORALL>-Wall -gdwarf-2 -std=gnu99 -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums</OPTIONSFORALL><LINKEROPTIONS></LINKEROPTIONS><SEGMENTS/></CONFIG></CONFIGS><LASTCONFIG>default</LASTCONFIG><USES_WINAVR>1</USES_WINAVR><GCC_LOC>C:\WinAVR\bin\avr-gcc.exe</GCC_LOC><MAKE_LOC>C:\WinAVR\utils\bin\make.exe</MAKE_LOC></AVRGCCPLUGIN><ProjectFiles><Files><Name>d:\Coding\AVR\Bootloader\main.c</Name></Files></ProjectFiles><IOView><usergroups/><sort sorted="0" column="0" ordername="1" orderaddress="1" ordergroup="1"/></IOView><Files><File00000><FileId>00000</FileId><FileName>main.c</FileName><Status>1</Status></File00000><File00001><FileId>00001</FileId><FileName>makefile</FileName><Status>1</Status></File00001></Files><Events><Bookmarks></Bookmarks></Events><Trace><Filters></Filters></Trace></AVRStudio> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
<Project name="avrprog_boot"><File path="chipdef.h"></File><File path="main.c"></File><File path="makefile"></File><File path="mega128.h"></File><File path="mega128can.h"></File><File path="mega16.h"></File><File path="mega169.h"></File><File path="mega32.h"></File><File path="mega8.h"></File><File path="readme.txt"></File><File path="ldscripts_no_vector\avr5.x"></File><File path="main.lss"></File><File path="main.map"></File><File path="ldscripts_no_vector\avr4.x"></File><File path="mega162.h"></File><File path="mega644.h"></File><File path="mega644p.h"></File><File path="megaxx4p.h"></File><File path="mega324p.h"></File></Project> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
<pd><ViewState><e p="avrprog_boot" x="true"></e></ViewState></pd> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
<AVRWorkspace><IOSettings><CurrentRegisters/></IOSettings><part name="ATMEGA16"/><Files><File00000 Name="d:\Coding\AVR\Bootloader\main.c" Position="262 72 979 756" LineCol="76 0" State="Maximized"/><File00001 Name="d:\Coding\AVR\Bootloader\makefile" Position="332 161 839 616" LineCol="440 0" State="Maximized"/></Files></AVRWorkspace> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
#ifndef CHIPDEF_H | ||
#define CHIPDEF_H | ||
|
||
#include <avr/io.h> | ||
|
||
#if defined (SPMCSR) | ||
#define SPM_REG SPMCSR | ||
#elif defined (SPMCR) | ||
#define SPM_REG SPMCR | ||
#else | ||
#error "AVR processor does not provide bootloader support!" | ||
#endif | ||
|
||
#define APP_END (FLASHEND - (BOOTSIZE * 2)) | ||
|
||
#if (SPM_PAGESIZE > UINT8_MAX) | ||
typedef uint16_t pagebuf_t; | ||
#else | ||
typedef uint8_t pagebuf_t; | ||
#endif | ||
|
||
#if defined(__AVR_ATmega169__) | ||
#include "mega169.h" | ||
|
||
#elif defined(__AVR_ATmega16__) | ||
#include "mega16.h" | ||
|
||
#elif defined(__AVR_ATmega162__) | ||
#include "mega162.h" | ||
|
||
#elif defined(__AVR_ATmega8__) | ||
#include "mega8.h" | ||
|
||
#elif defined(__AVR_ATmega32__) | ||
#include "mega32.h" | ||
|
||
#elif defined(__AVR_ATmega324P__) | ||
#include "mega324p.h" | ||
|
||
#elif defined(__AVR_ATmega64__) | ||
#include "mega64.h" | ||
|
||
#elif defined(__AVR_ATmega644__) | ||
#include "mega644.h" | ||
|
||
#elif defined(__AVR_ATmega644P__) | ||
#include "mega644p.h" | ||
|
||
#elif defined(__AVR_ATmega128__) | ||
#include "mega128.h" | ||
|
||
#elif defined(__AVR_AT90CAN128__) | ||
#include "mega128can.h" | ||
|
||
#else | ||
#error "no definition for MCU available in chipdef.h" | ||
#endif | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,169 @@ | ||
/* Default linker script, for normal executables */ | ||
OUTPUT_FORMAT("elf32-avr","elf32-avr","elf32-avr") | ||
OUTPUT_ARCH(avr:1) | ||
MEMORY | ||
{ | ||
text (rx) : ORIGIN = 0, LENGTH = 8K | ||
data (rw!x) : ORIGIN = 0x800060, LENGTH = 0 | ||
eeprom (rw!x) : ORIGIN = 0x810000, LENGTH = 64K | ||
} | ||
SECTIONS | ||
{ | ||
/* Read-only sections, merged into text segment: */ | ||
.hash : { *(.hash) } | ||
.dynsym : { *(.dynsym) } | ||
.dynstr : { *(.dynstr) } | ||
.gnu.version : { *(.gnu.version) } | ||
.gnu.version_d : { *(.gnu.version_d) } | ||
.gnu.version_r : { *(.gnu.version_r) } | ||
.rel.init : { *(.rel.init) } | ||
.rela.init : { *(.rela.init) } | ||
.rel.text : | ||
{ | ||
*(.rel.text) | ||
*(.rel.text.*) | ||
*(.rel.gnu.linkonce.t*) | ||
} | ||
.rela.text : | ||
{ | ||
*(.rela.text) | ||
*(.rela.text.*) | ||
*(.rela.gnu.linkonce.t*) | ||
} | ||
.rel.fini : { *(.rel.fini) } | ||
.rela.fini : { *(.rela.fini) } | ||
.rel.rodata : | ||
{ | ||
*(.rel.rodata) | ||
*(.rel.rodata.*) | ||
*(.rel.gnu.linkonce.r*) | ||
} | ||
.rela.rodata : | ||
{ | ||
*(.rela.rodata) | ||
*(.rela.rodata.*) | ||
*(.rela.gnu.linkonce.r*) | ||
} | ||
.rel.data : | ||
{ | ||
*(.rel.data) | ||
*(.rel.data.*) | ||
*(.rel.gnu.linkonce.d*) | ||
} | ||
.rela.data : | ||
{ | ||
*(.rela.data) | ||
*(.rela.data.*) | ||
*(.rela.gnu.linkonce.d*) | ||
} | ||
.rel.ctors : { *(.rel.ctors) } | ||
.rela.ctors : { *(.rela.ctors) } | ||
.rel.dtors : { *(.rel.dtors) } | ||
.rela.dtors : { *(.rela.dtors) } | ||
.rel.got : { *(.rel.got) } | ||
.rela.got : { *(.rela.got) } | ||
.rel.bss : { *(.rel.bss) } | ||
.rela.bss : { *(.rela.bss) } | ||
.rel.plt : { *(.rel.plt) } | ||
.rela.plt : { *(.rela.plt) } | ||
/* Internal text space or external memory */ | ||
/DISCARD/ : { *(.vectors); } | ||
.text : | ||
{ | ||
/* *(.vectors) */ | ||
__ctors_start = . ; | ||
*(.ctors) | ||
__ctors_end = . ; | ||
__dtors_start = . ; | ||
*(.dtors) | ||
__dtors_end = . ; | ||
*(.progmem.gcc*) | ||
*(.progmem*) | ||
. = ALIGN(2); | ||
*(.init0) /* Start here after reset. */ | ||
*(.init1) | ||
*(.init2) /* Clear __zero_reg__, set up stack pointer. */ | ||
*(.init3) | ||
*(.init4) /* Initialize data and BSS. */ | ||
*(.init5) | ||
*(.init6) /* C++ constructors. */ | ||
*(.init7) | ||
*(.init8) | ||
*(.init9) /* Call main(). */ | ||
*(.text) | ||
. = ALIGN(2); | ||
*(.text.*) | ||
. = ALIGN(2); | ||
*(.fini9) /* _exit() starts here. */ | ||
*(.fini8) | ||
*(.fini7) | ||
*(.fini6) /* C++ destructors. */ | ||
*(.fini5) | ||
*(.fini4) | ||
*(.fini3) | ||
*(.fini2) | ||
*(.fini1) | ||
*(.fini0) /* Infinite loop after program termination. */ | ||
_etext = . ; | ||
} > text | ||
.data : AT (ADDR (.text) + SIZEOF (.text)) | ||
{ | ||
PROVIDE (__data_start = .) ; | ||
*(.data) | ||
*(.gnu.linkonce.d*) | ||
. = ALIGN(2); | ||
_edata = . ; | ||
PROVIDE (__data_end = .) ; | ||
} > data | ||
.bss SIZEOF(.data) + ADDR(.data) : | ||
{ | ||
PROVIDE (__bss_start = .) ; | ||
*(.bss) | ||
*(COMMON) | ||
PROVIDE (__bss_end = .) ; | ||
} > data | ||
__data_load_start = LOADADDR(.data); | ||
__data_load_end = __data_load_start + SIZEOF(.data); | ||
/* Global data not cleared after reset. */ | ||
.noinit SIZEOF(.bss) + ADDR(.bss) : | ||
{ | ||
PROVIDE (__noinit_start = .) ; | ||
*(.noinit*) | ||
PROVIDE (__noinit_end = .) ; | ||
_end = . ; | ||
PROVIDE (__heap_start = .) ; | ||
} > data | ||
.eeprom : | ||
{ | ||
*(.eeprom*) | ||
__eeprom_end = . ; | ||
} > eeprom | ||
/* Stabs debugging sections. */ | ||
.stab 0 : { *(.stab) } | ||
.stabstr 0 : { *(.stabstr) } | ||
.stab.excl 0 : { *(.stab.excl) } | ||
.stab.exclstr 0 : { *(.stab.exclstr) } | ||
.stab.index 0 : { *(.stab.index) } | ||
.stab.indexstr 0 : { *(.stab.indexstr) } | ||
.comment 0 : { *(.comment) } | ||
/* DWARF debug sections. | ||
Symbols in the DWARF debugging sections are relative to the beginning | ||
of the section so we begin them at 0. */ | ||
/* DWARF 1 */ | ||
.debug 0 : { *(.debug) } | ||
.line 0 : { *(.line) } | ||
/* GNU DWARF 1 extensions */ | ||
.debug_srcinfo 0 : { *(.debug_srcinfo) } | ||
.debug_sfnames 0 : { *(.debug_sfnames) } | ||
/* DWARF 1.1 and DWARF 2 */ | ||
.debug_aranges 0 : { *(.debug_aranges) } | ||
.debug_pubnames 0 : { *(.debug_pubnames) } | ||
/* DWARF 2 */ | ||
.debug_info 0 : { *(.debug_info) *(.gnu.linkonce.wi.*) } | ||
.debug_abbrev 0 : { *(.debug_abbrev) } | ||
.debug_line 0 : { *(.debug_line) } | ||
.debug_frame 0 : { *(.debug_frame) } | ||
.debug_str 0 : { *(.debug_str) } | ||
.debug_loc 0 : { *(.debug_loc) } | ||
.debug_macinfo 0 : { *(.debug_macinfo) } | ||
} |
Oops, something went wrong.