Makefile funktioniert, gruenes Licht fuer C++

This commit is contained in:
Tristan Krause 2019-03-22 16:06:59 +01:00
parent 12d7441f1f
commit 99c282566f
7 changed files with 95 additions and 11 deletions

View file

@ -1 +1 @@
<AVRStudio><MANAGEMENT><ProjectName>B15F</ProjectName><Created>22-Mar-2019 14:29:54</Created><LastEdit>22-Mar-2019 15:51:33</LastEdit><ICON>241</ICON><ProjectType>0</ProjectType><Created>22-Mar-2019 14:29:54</Created><Version>4</Version><Build>4, 19, 0, 730</Build><ProjectTypeName>AVR GCC</ProjectTypeName></MANAGEMENT><CODE_CREATION><ObjectFile>F:\B15F.elf</ObjectFile><EntryFile></EntryFile><SaveFolder>F:\</SaveFolder></CODE_CREATION><DEBUG_TARGET><CURRENT_TARGET>JTAGICE mkII</CURRENT_TARGET><CURRENT_PART>ATmega1284.xml</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>spi.cpp</SOURCEFILE><SOURCEFILE>main.cpp</SOURCEFILE><SOURCEFILE>Makefile</SOURCEFILE><HEADERFILE>spi.h</HEADERFILE><OTHERFILE>default\B15F.lss</OTHERFILE><OTHERFILE>default\B15F.map</OTHERFILE></FILES><CONFIGS><CONFIG><NAME>c++</NAME><USESEXTERNALMAKEFILE>NO</USESEXTERNALMAKEFILE><EXTERNALMAKEFILE></EXTERNALMAKEFILE><PART>atmega128</PART><HEX>1</HEX><LIST>1</LIST><MAP>1</MAP><OUTPUTFILENAME>B15F.elf</OUTPUTFILENAME><OUTPUTDIR>c++\</OUTPUTDIR><ISDIRTY>0</ISDIRTY><OPTIONS/><INCDIRS/><LIBDIRS/><LIBS/><LINKOBJECTS/><OPTIONSFORALL>-Wall -gdwarf-2 -Os -std=gnu99 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums</OPTIONSFORALL><LINKEROPTIONS></LINKEROPTIONS><SEGMENTS/></CONFIG><CONFIG><NAME>default</NAME><USESEXTERNALMAKEFILE>YES</USESEXTERNALMAKEFILE><EXTERNALMAKEFILE>Makefile</EXTERNALMAKEFILE><PART>atmega1284</PART><HEX>1</HEX><LIST>1</LIST><MAP>1</MAP><OUTPUTFILENAME>B15F.elf</OUTPUTFILENAME><OUTPUTDIR>default\</OUTPUTDIR><ISDIRTY>1</ISDIRTY><OPTIONS><OPTION><FILE>main.c</FILE><OPTIONLIST></OPTIONLIST></OPTION><OPTION><FILE>spi.cpp</FILE><OPTIONLIST></OPTIONLIST></OPTION></OPTIONS><INCDIRS><INCLUDE>C:\avr8-gnu-toolchain-win32_x86\avr\include\</INCLUDE></INCDIRS><LIBDIRS><LIBDIR>C:\avr8-gnu-toolchain-win32_x86\avr\lib\</LIBDIR></LIBDIRS><LIBS><LIB>libc.a</LIB></LIBS><LINKOBJECTS/><OPTIONSFORALL>-Wall -gdwarf-2 -DF_CPU=20000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums</OPTIONSFORALL><LINKEROPTIONS></LINKEROPTIONS><SEGMENTS/></CONFIG></CONFIGS><LASTCONFIG>default</LASTCONFIG><USES_WINAVR>0</USES_WINAVR><GCC_LOC>C:\avr8-gnu-toolchain-win32_x86\bin\avr-g++.exe</GCC_LOC><MAKE_LOC>C:\WinAVR-20100110\utils\bin\make.exe</MAKE_LOC></AVRGCCPLUGIN><ProjectFiles><Files><Name>F:\spi.h</Name><Name>F:\spi.cpp</Name><Name>F:\main.cpp</Name><Name>F:\Makefile</Name></Files></ProjectFiles><IOView><usergroups/><sort sorted="0" column="0" ordername="1" orderaddress="1" ordergroup="1"/></IOView><Files><File00000><FileId>00000</FileId><FileName>spi.h</FileName><Status>1</Status></File00000><File00001><FileId>00001</FileId><FileName>main.cpp</FileName><Status>1</Status></File00001><File00002><FileId>00002</FileId><FileName>Makefile</FileName><Status>1</Status></File00002></Files><Events><Bookmarks></Bookmarks></Events><Trace><Filters></Filters></Trace></AVRStudio>
<AVRStudio><MANAGEMENT><ProjectName>B15F</ProjectName><Created>22-Mar-2019 14:29:54</Created><LastEdit>22-Mar-2019 16:03:17</LastEdit><ICON>241</ICON><ProjectType>0</ProjectType><Created>22-Mar-2019 14:29:54</Created><Version>4</Version><Build>4, 19, 0, 730</Build><ProjectTypeName>AVR GCC</ProjectTypeName></MANAGEMENT><CODE_CREATION><ObjectFile>B15F.elf</ObjectFile><EntryFile></EntryFile><SaveFolder>F:\</SaveFolder></CODE_CREATION><DEBUG_TARGET><CURRENT_TARGET>JTAGICE mkII</CURRENT_TARGET><CURRENT_PART>ATmega1284.xml</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>spi.cpp</SOURCEFILE><SOURCEFILE>main.cpp</SOURCEFILE><SOURCEFILE>Makefile</SOURCEFILE><HEADERFILE>spi.h</HEADERFILE><OTHERFILE>default\B15F.lss</OTHERFILE><OTHERFILE>default\B15F.map</OTHERFILE></FILES><CONFIGS><CONFIG><NAME>c++</NAME><USESEXTERNALMAKEFILE>NO</USESEXTERNALMAKEFILE><EXTERNALMAKEFILE></EXTERNALMAKEFILE><PART>atmega128</PART><HEX>1</HEX><LIST>1</LIST><MAP>1</MAP><OUTPUTFILENAME>B15F.elf</OUTPUTFILENAME><OUTPUTDIR>c++\</OUTPUTDIR><ISDIRTY>0</ISDIRTY><OPTIONS/><INCDIRS/><LIBDIRS/><LIBS/><LINKOBJECTS/><OPTIONSFORALL>-Wall -gdwarf-2 -Os -std=gnu99 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums</OPTIONSFORALL><LINKEROPTIONS></LINKEROPTIONS><SEGMENTS/></CONFIG><CONFIG><NAME>default</NAME><USESEXTERNALMAKEFILE>YES</USESEXTERNALMAKEFILE><EXTERNALMAKEFILE>Makefile</EXTERNALMAKEFILE><PART>atmega1284</PART><HEX>1</HEX><LIST>1</LIST><MAP>1</MAP><OUTPUTFILENAME>B15F.elf</OUTPUTFILENAME><OUTPUTDIR>default\</OUTPUTDIR><ISDIRTY>1</ISDIRTY><OPTIONS><OPTION><FILE>main.c</FILE><OPTIONLIST></OPTIONLIST></OPTION><OPTION><FILE>spi.cpp</FILE><OPTIONLIST></OPTIONLIST></OPTION></OPTIONS><INCDIRS><INCLUDE>C:\avr8-gnu-toolchain-win32_x86\avr\include\</INCLUDE></INCDIRS><LIBDIRS><LIBDIR>C:\avr8-gnu-toolchain-win32_x86\avr\lib\</LIBDIR></LIBDIRS><LIBS><LIB>libc.a</LIB></LIBS><LINKOBJECTS/><OPTIONSFORALL>-Wall -gdwarf-2 -DF_CPU=20000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums</OPTIONSFORALL><LINKEROPTIONS></LINKEROPTIONS><SEGMENTS/></CONFIG></CONFIGS><LASTCONFIG>default</LASTCONFIG><USES_WINAVR>0</USES_WINAVR><GCC_LOC>C:\avr8-gnu-toolchain-win32_x86\bin\avr-g++.exe</GCC_LOC><MAKE_LOC>C:\WinAVR-20100110\utils\bin\make.exe</MAKE_LOC></AVRGCCPLUGIN><ProjectFiles><Files><Name>F:\spi.h</Name><Name>F:\spi.cpp</Name><Name>F:\main.cpp</Name><Name>F:\Makefile</Name></Files></ProjectFiles><IOView><usergroups/><sort sorted="0" column="0" ordername="0" orderaddress="0" ordergroup="0"/></IOView><Files><File00000><FileId>00000</FileId><FileName>spi.h</FileName><Status>1</Status></File00000><File00001><FileId>00001</FileId><FileName>main.cpp</FileName><Status>1</Status></File00001><File00002><FileId>00002</FileId><FileName>Makefile</FileName><Status>1</Status></File00002><File00003><FileId>00003</FileId><FileName>spi.cpp</FileName><Status>1</Status></File00003></Files><Events><Bookmarks></Bookmarks></Events><Trace><Filters></Filters></Trace></AVRStudio>

BIN
B15F.elf Normal file

Binary file not shown.

68
B15F.hex Normal file
View file

@ -0,0 +1,68 @@
:100000000C9446000C9450000C9450000C9450003A
:100010000C9450000C9450000C9450000C94500020
:100020000C9450000C9450000C9450000C94500010
:100030000C9450000C9450000C9450000C94500000
:100040000C9450000C9450000C9450000C945000F0
:100050000C9450000C9450000C9450000C945000E0
:100060000C9450000C9450000C9450000C945000D0
:100070000C9450000C9450000C9450000C945000C0
:100080000C9450000C9450000C94500011241FBE8E
:10009000CFEFD0E4DEBFCDBF0E9452000C940F0220
:1000A0000C940000CF93DF9300D0CDB7DEB7CE0124
:1000B00001960E94620080E090E00F900F90DF9127
:1000C000CF910895CF93DF93CDB7DEB760970FB68A
:1000D000F894DEBF0FBECDBF988B8F8784E290E08F
:1000E00024E230E0F90120812160FC01208385E2D7
:1000F00090E025E230E0F901308121E02327FC0186
:10010000208380E090E0A0E8BFE389839A83AB83FB
:10011000BC8320E030E44CE955E469817A818B812D
:100120009C810E947A01DC01CB018D839E83AF8389
:10013000B88720E030E040E85FE36D817E818F8109
:1001400098850E94F40088232CF481E090E09A873F
:1001500089873FC020E03FEF4FE757E46D817E8104
:100160008F8198850E94750118164CF520E030E0CB
:1001700040E251E469817A818B819C810E947A01FD
:10018000DC01CB01BC01CD010E94F900DC01CB01F7
:100190009A87898789859A85892B09F4A8CF84EF66
:1001A00091E09C878B878B859C850197F1F79C87D5
:1001B0008B8789859A8501979A878987EBCF6D818F
:1001C0007E818F8198850E94F900DC01CB019A879E
:1001D000898789859A859E878D878D859E850197DC
:1001E000F1F79E878D8783CF0E94280108F481E074
:1001F00008950E94540188F09F5798F0B92F9927CD
:10020000B751B0F0E1F0660F771F881F991F1AF001
:10021000BA95C9F714C0B13091F00E946E01B1E0F7
:1002200008950C946E01672F782F8827B85F39F0F6
:10023000B93FCCF3869577956795B395D9F73EF49A
:1002400090958095709561957F4F8F4F9F4F089542
:10025000990F0008550FAA0BE0E8FEEF16161706D7
:10026000E807F907C0F012161306E407F50798F03F
:10027000621B730B840B950B39F40A2661F0232B58
:10028000242B252B21F408950A2609F4A140A695D4
:100290008FEF811D811D089557FD9058440F551F04
:1002A00059F05F3F71F04795880F97FB991F61F0F8
:1002B0009F3F79F087950895121613061406551F6F
:1002C000F2CF4695F1DF08C0161617061806991FDB
:1002D000F1CF86957105610508940895E894BB27D0
:1002E00066277727CB0197F908950E94280108F423
:1002F0008FEF08950E948D010C94FE010E94F00181
:1003000038F00E94F70120F0952311F00C94E701DA
:100310000C94ED0111240C946F010E944C0170F3B8
:10032000959FC1F3950F50E0551F629FF001729F9A
:10033000BB27F00DB11D639FAA27F00DB11DAA1FA9
:10034000649F6627B00DA11D661F829F2227B00DF6
:10035000A11D621F739FB00DA11D621F839FA00D81
:10036000611D221F749F3327A00D611D231F849FD1
:10037000600D211D822F762F6A2F11249F57504028
:100380009AF0F1F088234AF0EE0FFF1FBB1F661FA3
:10039000771F881F91505040A9F79E3F510580F06C
:1003A0000C94E7010C946F015F3FE4F3983ED4F3A3
:1003B000869577956795B795F795E7959F5FC1F710
:1003C000FE2B880F911D9695879597F9089597F9BB
:1003D0009F6780E870E060E008959FEF80EC0895EB
:1003E00000240A9416161706180609060895002414
:1003F0000A9412161306140605060895092E03948E
:10040000000C11F4882352F0BB0F40F4BF2B11F401
:1004100060FF04C06F5F7F4F8F4F9F4F0895F89428
:02042000FFCF0C
:00000001FF

View file

@ -1,26 +1,35 @@
# Name: Makefile
# Project: gcnc
# Project: B15F (board15 Famulus Edition)
# Author: Tristan Krause
# Creation Date: 2019-03-22
# Creation Date: 2019-03-22
# Umgebungseinstellungen
COMPILER_PATH = C:\avr8-gnu-toolchain-win32_x86\bin\avr-g++.exe
OBJCOPY_PATH = C:\avr8-gnu-toolchain-win32_x86\bin\avr-objcopy.exe
OUTPUT = B15F.elf
OUTPUT = B15F.elf
HEX = B15F.hex
CFLAGS = -std=c++14 -mmcu=atmega1284 -DF_CPU=20000000
LDFLAGS =
OBJECTS = main.o
OBJECTS = main.o spi.o
COMPILER_PATH = C:\avr8-gnu-toolchain-win32_x86\bin\avr-g++.exe
COMPILE = $(COMPILER_PATH) $(CFLAGS)
B15F: $(OBJECTS)
@echo "Linking..."
$(COMPILE) $(OBJECTS) -o $(OUTPUT) $(LDFLAGS)
$(COMPILE) $(OBJECTS) -o $(OUTPUT) $(LDFLAGS)
$(OBJCOPY_PATH) -O ihex -R .eeprom -R .fuse -R .lock -R .signature $(OUTPUT) $(HEX)
help:
@echo "This Makefile has the following rules. Use one of the following:"
@echo "make B15F .... to compile (default)"
@echo "make clean ... to delete objects and hex file"
clean:
clean:
@echo "Cleaning..."
rm -f $(OBJECTS) $(OUTPUT)
.cpp.o:

View file

@ -1 +1 @@
<AVRWorkspace><IOSettings><CurrentRegisters/></IOSettings><part name="ATMEGA1284"/><Files><File00000 Name="F:\main.cpp" Position="262 71 1501 573" LineCol="4 15" State="Maximized"/><File00001 Name="F:\spi.h" Position="288 130 1409 453" LineCol="8 9" State="Maximized"/></Files></AVRWorkspace>
<AVRWorkspace><IOSettings><CurrentRegisters/></IOSettings><part name="ATMEGA1284"/><Files><File00000 Name="F:\spi.h" Position="262 71 1501 573" LineCol="11 14" State="Maximized"/><File00001 Name="F:\main.cpp" Position="310 159 1427 478" LineCol="3 12" State="Maximized"/><File00002 Name="F:\Makefile" Position="332 188 1449 507" LineCol="16 0" State="Maximized"/><File00003 Name="F:\spi.cpp" Position="354 217 1475 540" LineCol="0 0" State="Maximized"/></Files></AVRWorkspace>

View file

@ -1,7 +1,7 @@
#include <avr/io.h>
#include "spi.h"
int main() {
SPI spi_master;
return 0;
}

9
spi.h
View file

@ -4,7 +4,14 @@
#include <util/delay.h>
class SPI {
public:
SPI(void) {
DDRB |= _BV(PB0);
while(1) {
PORTB ^= _BV(PB0);
_delay_ms(1);
}
}
private: int d;