opdracht 2.5

This commit is contained in:
Guilliam Lutz
2021-03-17 09:54:54 +01:00
parent 64b5ea3204
commit b81fdc484a
7 changed files with 160 additions and 127 deletions

View File

@@ -31,6 +31,8 @@ Project("{54F91283-7BC4-4236-8FF9-10F437C3AD48}") = "opdracht 3.3", "opdracht 3.
EndProject EndProject
Project("{54F91283-7BC4-4236-8FF9-10F437C3AD48}") = "opdracht 4.1", "opdracht 4.1\opdracht 4.1.cproj", "{2432E6BF-DA1E-4668-99BB-59FEA1F5B8A2}" Project("{54F91283-7BC4-4236-8FF9-10F437C3AD48}") = "opdracht 4.1", "opdracht 4.1\opdracht 4.1.cproj", "{2432E6BF-DA1E-4668-99BB-59FEA1F5B8A2}"
EndProject EndProject
Project("{54F91283-7BC4-4236-8FF9-10F437C3AD48}") = "opdracht C", "opdracht C\opdracht C.cproj", "{2DF6F5F3-181F-430E-B49A-3D9794F91482}"
EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|AVR = Debug|AVR Debug|AVR = Debug|AVR
@@ -81,6 +83,22 @@ Global
{EB7415C6-2130-46AD-9842-612C67ADE6D4}.Debug|AVR.Build.0 = Debug|AVR {EB7415C6-2130-46AD-9842-612C67ADE6D4}.Debug|AVR.Build.0 = Debug|AVR
{EB7415C6-2130-46AD-9842-612C67ADE6D4}.Release|AVR.ActiveCfg = Release|AVR {EB7415C6-2130-46AD-9842-612C67ADE6D4}.Release|AVR.ActiveCfg = Release|AVR
{EB7415C6-2130-46AD-9842-612C67ADE6D4}.Release|AVR.Build.0 = Release|AVR {EB7415C6-2130-46AD-9842-612C67ADE6D4}.Release|AVR.Build.0 = Release|AVR
{0FA0C637-5AC0-44F3-999B-49C114B97183}.Debug|AVR.ActiveCfg = Debug|AVR
{0FA0C637-5AC0-44F3-999B-49C114B97183}.Debug|AVR.Build.0 = Debug|AVR
{0FA0C637-5AC0-44F3-999B-49C114B97183}.Release|AVR.ActiveCfg = Release|AVR
{0FA0C637-5AC0-44F3-999B-49C114B97183}.Release|AVR.Build.0 = Release|AVR
{985D5C75-F61E-49F1-A532-66A1E6141552}.Debug|AVR.ActiveCfg = Debug|AVR
{985D5C75-F61E-49F1-A532-66A1E6141552}.Debug|AVR.Build.0 = Debug|AVR
{985D5C75-F61E-49F1-A532-66A1E6141552}.Release|AVR.ActiveCfg = Release|AVR
{985D5C75-F61E-49F1-A532-66A1E6141552}.Release|AVR.Build.0 = Release|AVR
{2432E6BF-DA1E-4668-99BB-59FEA1F5B8A2}.Debug|AVR.ActiveCfg = Debug|AVR
{2432E6BF-DA1E-4668-99BB-59FEA1F5B8A2}.Debug|AVR.Build.0 = Debug|AVR
{2432E6BF-DA1E-4668-99BB-59FEA1F5B8A2}.Release|AVR.ActiveCfg = Release|AVR
{2432E6BF-DA1E-4668-99BB-59FEA1F5B8A2}.Release|AVR.Build.0 = Release|AVR
{2DF6F5F3-181F-430E-B49A-3D9794F91482}.Debug|AVR.ActiveCfg = Debug|AVR
{2DF6F5F3-181F-430E-B49A-3D9794F91482}.Debug|AVR.Build.0 = Debug|AVR
{2DF6F5F3-181F-430E-B49A-3D9794F91482}.Release|AVR.ActiveCfg = Release|AVR
{2DF6F5F3-181F-430E-B49A-3D9794F91482}.Release|AVR.Build.0 = Release|AVR
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE

View File

@@ -110,7 +110,7 @@ Disassembly of section .text:
Disassembly of section .text: Disassembly of section .text:
0000021c <__bad_interrupt>: 0000021c <__bad_interrupt>:
21c: 0c 94 00 00 jmp 0 ; 0x0 <__vectors> 21c: 0c 94 00 00 jmp 0 ; 0x0 <__TEXT_REGION_ORIGIN__>
Disassembly of section .text.sbi_porta: Disassembly of section .text.sbi_porta:

View File

@@ -40,6 +40,22 @@
</dependencies> </dependencies>
</framework-data> </framework-data>
</AsfFrameworkConfig> </AsfFrameworkConfig>
<avrtool>com.atmel.avrdbg.tool.atmelice</avrtool>
<avrtoolserialnumber>J42700011271</avrtoolserialnumber>
<avrdeviceexpectedsignature>0x1E9702</avrdeviceexpectedsignature>
<com_atmel_avrdbg_tool_atmelice>
<ToolOptions>
<InterfaceProperties>
<JtagDbgClock>2000000</JtagDbgClock>
</InterfaceProperties>
<InterfaceName>JTAG</InterfaceName>
</ToolOptions>
<ToolType>com.atmel.avrdbg.tool.atmelice</ToolType>
<ToolNumber>J42700011271</ToolNumber>
<ToolName>Atmel-ICE</ToolName>
</com_atmel_avrdbg_tool_atmelice>
<avrtoolinterface>JTAG</avrtoolinterface>
<avrtoolinterfaceclock>2000000</avrtoolinterfaceclock>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' "> <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<ToolchainSettings> <ToolchainSettings>

View File

@@ -13,11 +13,11 @@ Idx Name Size VMA LMA File off Algn
CONTENTS, READONLY CONTENTS, READONLY
4 .debug_aranges 00000070 00000000 00000000 00000270 2**0 4 .debug_aranges 00000070 00000000 00000000 00000270 2**0
CONTENTS, READONLY, DEBUGGING CONTENTS, READONLY, DEBUGGING
5 .debug_info 00000cd9 00000000 00000000 000002e0 2**0 5 .debug_info 00000cd8 00000000 00000000 000002e0 2**0
CONTENTS, READONLY, DEBUGGING CONTENTS, READONLY, DEBUGGING
6 .debug_abbrev 000008c5 00000000 00000000 00000fb9 2**0 6 .debug_abbrev 000008c5 00000000 00000000 00000fb8 2**0
CONTENTS, READONLY, DEBUGGING CONTENTS, READONLY, DEBUGGING
7 .debug_line 000004b8 00000000 00000000 0000187e 2**0 7 .debug_line 000004b8 00000000 00000000 0000187d 2**0
CONTENTS, READONLY, DEBUGGING CONTENTS, READONLY, DEBUGGING
8 .debug_frame 000000d8 00000000 00000000 00001d38 2**2 8 .debug_frame 000000d8 00000000 00000000 00001d38 2**2
CONTENTS, READONLY, DEBUGGING CONTENTS, READONLY, DEBUGGING
@@ -222,7 +222,7 @@ void displayOff()
148: c8 df rcall .-112 ; 0xda <spi_slaveSelect> 148: c8 df rcall .-112 ; 0xda <spi_slaveSelect>
14a: 8b e0 ldi r24, 0x0B ; 11 14a: 8b e0 ldi r24, 0x0B ; 11
14c: c2 df rcall .-124 ; 0xd2 <spi_write> 14c: c2 df rcall .-124 ; 0xd2 <spi_write>
14e: 83 e0 ldi r24, 0x03 ; 3 14e: 87 e0 ldi r24, 0x07 ; 7
150: c0 df rcall .-128 ; 0xd2 <spi_write> 150: c0 df rcall .-128 ; 0xd2 <spi_write>
152: 80 e0 ldi r24, 0x00 ; 0 152: 80 e0 ldi r24, 0x00 ; 0
154: ce df rcall .-100 ; 0xf2 <spi_slaveDeSelect> 154: ce df rcall .-100 ; 0xf2 <spi_slaveDeSelect>
@@ -250,30 +250,25 @@ displayDriverInit(); // Initialize display chip
170: da df rcall .-76 ; 0x126 <displayDriverInit> 170: da df rcall .-76 ; 0x126 <displayDriverInit>
172: c1 e0 ldi r28, 0x01 ; 1 172: c1 e0 ldi r28, 0x01 ; 1
// clear display (all zero's) // clear display (all zero's)
for (unsigned char i =1; i<=4; i++)
for (unsigned char i =1; i<=8; i++)
174: 04 c0 rjmp .+8 ; 0x17e <main+0x16> 174: 04 c0 rjmp .+8 ; 0x17e <main+0x16>
176: 6c 2f mov r22, r28 176: 60 e0 ldi r22, 0x00 ; 0
{ {
// spi_slaveSelect(0); // Select display chip spi_writeCommand(i,0);
//spi_write(i); // digit adress: (digit place)
//spi_write(0); // digit value: 0
//spi_slaveDeSelect(0); // Deselect display chip
spi_writeCommand(i,i);
178: 8c 2f mov r24, r28 178: 8c 2f mov r24, r28
17a: c6 df rcall .-116 ; 0x108 <spi_writeCommand> 17a: c6 df rcall .-116 ; 0x108 <spi_writeCommand>
17c: cf 5f subi r28, 0xFF ; 255 17c: cf 5f subi r28, 0xFF ; 255
{
DDRB=0x01; // Set PB0 pin as output for display select DDRB=0x01; // Set PB0 pin as output for display select
spi_masterInit(); // Initialize spi module spi_masterInit(); // Initialize spi module
displayDriverInit(); // Initialize display chip displayDriverInit(); // Initialize display chip
// clear display (all zero's) // clear display (all zero's)
for (unsigned char i =1; i<=4; i++)
17e: c5 30 cpi r28, 0x05 ; 5 for (unsigned char i =1; i<=8; i++)
17e: c9 30 cpi r28, 0x09 ; 9
180: d0 f3 brcs .-12 ; 0x176 <main+0xe> 180: d0 f3 brcs .-12 ; 0x176 <main+0xe>
//spi_write(i); // digit adress: (digit place) {
//spi_write(0); // digit value: 0 spi_writeCommand(i,0);
//spi_slaveDeSelect(0); // Deselect display chip
spi_writeCommand(i,i);
} }
wait(1000); wait(1000);
182: 88 ee ldi r24, 0xE8 ; 232 182: 88 ee ldi r24, 0xE8 ; 232
@@ -281,13 +276,9 @@ wait(1000);
186: 8b df rcall .-234 ; 0x9e <wait> 186: 8b df rcall .-234 ; 0x9e <wait>
188: c1 e0 ldi r28, 0x01 ; 1 188: c1 e0 ldi r28, 0x01 ; 1
// write 4-digit data // write 4-digit data
for (unsigned char i =1; i<=4; i++) for (unsigned char i =1; i<=8; i++)
18a: 07 c0 rjmp .+14 ; 0x19a <main+0x32> 18a: 07 c0 rjmp .+14 ; 0x19a <main+0x32>
{ {
//spi_slaveSelect(0); // Select display chip
//spi_write(i); // digit adress: (digit place)
//spi_write(i); // digit value: i (= digit place)
//spi_slaveDeSelect(0); // Deselect display chip
spi_writeCommand(i,i); spi_writeCommand(i,i);
18c: 6c 2f mov r22, r28 18c: 6c 2f mov r22, r28
18e: 8c 2f mov r24, r28 18e: 8c 2f mov r24, r28
@@ -296,17 +287,16 @@ wait(1000);
192: 88 ee ldi r24, 0xE8 ; 232 192: 88 ee ldi r24, 0xE8 ; 232
194: 93 e0 ldi r25, 0x03 ; 3 194: 93 e0 ldi r25, 0x03 ; 3
196: 83 df rcall .-250 ; 0x9e <wait> 196: 83 df rcall .-250 ; 0x9e <wait>
//spi_slaveDeSelect(0); // Deselect display chip {
spi_writeCommand(i,i); spi_writeCommand(i,0);
} }
wait(1000); wait(1000);
// write 4-digit data // write 4-digit data
for (unsigned char i =1; i<=4; i++) for (unsigned char i =1; i<=8; i++)
198: cf 5f subi r28, 0xFF ; 255 198: cf 5f subi r28, 0xFF ; 255
19a: c5 30 cpi r28, 0x05 ; 5 19a: c9 30 cpi r28, 0x09 ; 9
19c: b8 f3 brcs .-18 ; 0x18c <main+0x24> 19c: b8 f3 brcs .-18 ; 0x18c <main+0x24>
//spi_write(i); // digit value: i (= digit place) {
//spi_slaveDeSelect(0); // Deselect display chip
spi_writeCommand(i,i); spi_writeCommand(i,i);
wait(1000); wait(1000);
} }

View File

@@ -19,11 +19,11 @@ S1130100E2F7292B28BB0895CF93DF93D82FC62F6E
S113011080E0E3DF8D2FDDDF8C2FDBDF80E0E9DFA4 S113011080E0E3DF8D2FDDDF8C2FDBDF80E0E9DFA4
S1130120DF91CF91089580E0D8DF89E0D2DF8FEFAF S1130120DF91CF91089580E0D8DF89E0D2DF8FEFAF
S1130130D0DF80E0DEDF80E0D0DF8AE0CADF84E069 S1130130D0DF80E0DEDF80E0D0DF8AE0CADF84E069
S1130140C8DF80E0D6DF80E0C8DF8BE0C2DF83E079 S1130140C8DF80E0D6DF80E0C8DF8BE0C2DF87E075
S1130150C0DF80E0CEDF80E0C0DF8CE0BADF81E08A S1130150C0DF80E0CEDF80E0C0DF8CE0BADF81E08A
S1130160B8DF80E0C6CF0895CF9381E087BBA6DFD8 S1130160B8DF80E0C6CF0895CF9381E087BBA6DFD8
S1130170DADFC1E004C06C2F8C2FC6DFCF5FC5303F S1130170DADFC1E004C060E08C2FC6DFCF5FC93096
S1130180D0F388EE93E08BDFC1E007C06C2F8C2F97 S1130180D0F388EE93E08BDFC1E007C06C2F8C2F97
S1130190BBDF88EE93E083DFCF5FC530B8F388EE32 S1130190BBDF88EE93E083DFCF5FC930B8F388EE2E
S11301A093E07DDF81E090E0CF910895F894FFCF54 S11301A093E07DDF81E090E0CF910895F894FFCF54
S9030000FC S9030000FC

View File

@@ -12,7 +12,7 @@
* NOTES : Turn ON switch 15, PB1/PB2/PB3 to MISO/MOSI/SCK * NOTES : Turn ON switch 15, PB1/PB2/PB3 to MISO/MOSI/SCK
*/ */
#define F_CPU 10e6 #define F_CPU 10e6
#include <avr/io.h> #include <avr/io.h>[-]
#include <util/delay.h> #include <util/delay.h>
#define BIT(x) ( 1<<x ) #define BIT(x) ( 1<<x )
#define DDR_SPI DDRB // spi Data direction register #define DDR_SPI DDRB // spi Data direction register
@@ -83,7 +83,7 @@ spi_slaveSelect(0); // Select display chip (MAX7219)
spi_slaveDeSelect(0); // Deselect display chip spi_slaveDeSelect(0); // Deselect display chip
spi_slaveSelect(0); // Select display chip spi_slaveSelect(0); // Select display chip
spi_write(0x0B); // Register 0B: Scan-limit spi_write(0x0B); // Register 0B: Scan-limit
spi_write(0x03); // -> 1 = Display digits 0..1 the hex value here selects how many segments get initialized spi_write(0x07); // -> 1 = Display digits 0..1 the hex value here selects how many segments get initialized
spi_slaveDeSelect(0); // Deselect display chip spi_slaveDeSelect(0); // Deselect display chip
spi_slaveSelect(0); // Select display chip spi_slaveSelect(0); // Select display chip
spi_write(0x0C); // Register 0B: Shutdown register spi_write(0x0C); // Register 0B: Shutdown register
@@ -112,22 +112,15 @@ DDRB=0x01; // Set PB0 pin as output for display select
spi_masterInit(); // Initialize spi module spi_masterInit(); // Initialize spi module
displayDriverInit(); // Initialize display chip displayDriverInit(); // Initialize display chip
// clear display (all zero's) // clear display (all zero's)
for (unsigned char i =1; i<=4; i++)
for (unsigned char i =1; i<=8; i++)
{ {
// spi_slaveSelect(0); // Select display chip spi_writeCommand(i,0);
//spi_write(i); // digit adress: (digit place)
//spi_write(0); // digit value: 0
//spi_slaveDeSelect(0); // Deselect display chip
spi_writeCommand(i,i);
} }
wait(1000); wait(1000);
// write 4-digit data // write 4-digit data
for (unsigned char i =1; i<=4; i++) for (unsigned char i =1; i<=8; i++)
{ {
//spi_slaveSelect(0); // Select display chip
//spi_write(i); // digit adress: (digit place)
//spi_write(i); // digit value: i (= digit place)
//spi_slaveDeSelect(0); // Deselect display chip
spi_writeCommand(i,i); spi_writeCommand(i,i);
wait(1000); wait(1000);
} }

View File

@@ -20,105 +20,121 @@
<OverrideVtor>false</OverrideVtor> <OverrideVtor>false</OverrideVtor>
<CacheFlash>true</CacheFlash> <CacheFlash>true</CacheFlash>
<ProgFlashFromRam>true</ProgFlashFromRam> <ProgFlashFromRam>true</ProgFlashFromRam>
<RamSnippetAddress /> <RamSnippetAddress>0x20000000</RamSnippetAddress>
<UncachedRange /> <UncachedRange />
<preserveEEPROM>true</preserveEEPROM> <preserveEEPROM>true</preserveEEPROM>
<OverrideVtorValue /> <OverrideVtorValue>exception_table</OverrideVtorValue>
<BootSegment>2</BootSegment> <BootSegment>2</BootSegment>
<ResetRule>0</ResetRule> <ResetRule>0</ResetRule>
<eraseonlaunchrule>0</eraseonlaunchrule> <eraseonlaunchrule>0</eraseonlaunchrule>
<EraseKey /> <EraseKey />
<AsfFrameworkConfig> <AsfFrameworkConfig>
<framework-data xmlns=""> <framework-data xmlns="">
<options /> <options />
<configurations /> <configurations />
<files /> <files />
<documentation help="" /> <documentation help="" />
<offline-documentation help="" /> <offline-documentation help="" />
<dependencies> <dependencies>
<content-extension eid="atmel.asf" uuidref="Atmel.ASF" version="3.49.1" /> <content-extension eid="atmel.asf" uuidref="Atmel.ASF" version="3.49.1" />
</dependencies> </dependencies>
</framework-data> </framework-data>
</AsfFrameworkConfig> </AsfFrameworkConfig>
<avrtool>com.atmel.avrdbg.tool.atmelice</avrtool>
<avrtoolserialnumber>J42700011271</avrtoolserialnumber>
<avrdeviceexpectedsignature>0x1E9702</avrdeviceexpectedsignature>
<com_atmel_avrdbg_tool_atmelice>
<ToolOptions>
<InterfaceProperties>
<JtagDbgClock>2000000</JtagDbgClock>
</InterfaceProperties>
<InterfaceName>JTAG</InterfaceName>
</ToolOptions>
<ToolType>com.atmel.avrdbg.tool.atmelice</ToolType>
<ToolNumber>J42700011271</ToolNumber>
<ToolName>Atmel-ICE</ToolName>
</com_atmel_avrdbg_tool_atmelice>
<avrtoolinterface>JTAG</avrtoolinterface>
<avrtoolinterfaceclock>2000000</avrtoolinterfaceclock>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' "> <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<ToolchainSettings> <ToolchainSettings>
<AvrGcc> <AvrGcc>
<avrgcc.common.Device>-mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.6.364\gcc\dev\atmega128"</avrgcc.common.Device> <avrgcc.common.Device>-mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.6.364\gcc\dev\atmega128"</avrgcc.common.Device>
<avrgcc.common.optimization.RelaxBranches>True</avrgcc.common.optimization.RelaxBranches> <avrgcc.common.optimization.RelaxBranches>True</avrgcc.common.optimization.RelaxBranches>
<avrgcc.common.outputfiles.hex>True</avrgcc.common.outputfiles.hex> <avrgcc.common.outputfiles.hex>True</avrgcc.common.outputfiles.hex>
<avrgcc.common.outputfiles.lss>True</avrgcc.common.outputfiles.lss> <avrgcc.common.outputfiles.lss>True</avrgcc.common.outputfiles.lss>
<avrgcc.common.outputfiles.eep>True</avrgcc.common.outputfiles.eep> <avrgcc.common.outputfiles.eep>True</avrgcc.common.outputfiles.eep>
<avrgcc.common.outputfiles.srec>True</avrgcc.common.outputfiles.srec> <avrgcc.common.outputfiles.srec>True</avrgcc.common.outputfiles.srec>
<avrgcc.common.outputfiles.usersignatures>False</avrgcc.common.outputfiles.usersignatures> <avrgcc.common.outputfiles.usersignatures>False</avrgcc.common.outputfiles.usersignatures>
<avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned> <avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>
<avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned> <avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>
<avrgcc.compiler.symbols.DefSymbols> <avrgcc.compiler.symbols.DefSymbols>
<ListValues> <ListValues>
<Value>NDEBUG</Value> <Value>NDEBUG</Value>
</ListValues> </ListValues>
</avrgcc.compiler.symbols.DefSymbols> </avrgcc.compiler.symbols.DefSymbols>
<avrgcc.compiler.directories.IncludePaths> <avrgcc.compiler.directories.IncludePaths>
<ListValues> <ListValues>
<Value>%24(PackRepoDir)\atmel\ATmega_DFP\1.6.364\include\</Value> <Value>%24(PackRepoDir)\atmel\ATmega_DFP\1.6.364\include\</Value>
</ListValues> </ListValues>
</avrgcc.compiler.directories.IncludePaths> </avrgcc.compiler.directories.IncludePaths>
<avrgcc.compiler.optimization.level>Optimize for size (-Os)</avrgcc.compiler.optimization.level> <avrgcc.compiler.optimization.level>Optimize for size (-Os)</avrgcc.compiler.optimization.level>
<avrgcc.compiler.optimization.PackStructureMembers>True</avrgcc.compiler.optimization.PackStructureMembers> <avrgcc.compiler.optimization.PackStructureMembers>True</avrgcc.compiler.optimization.PackStructureMembers>
<avrgcc.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcc.compiler.optimization.AllocateBytesNeededForEnum> <avrgcc.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcc.compiler.optimization.AllocateBytesNeededForEnum>
<avrgcc.compiler.warnings.AllWarnings>True</avrgcc.compiler.warnings.AllWarnings> <avrgcc.compiler.warnings.AllWarnings>True</avrgcc.compiler.warnings.AllWarnings>
<avrgcc.linker.libraries.Libraries> <avrgcc.linker.libraries.Libraries>
<ListValues> <ListValues>
<Value>libm</Value> <Value>libm</Value>
</ListValues> </ListValues>
</avrgcc.linker.libraries.Libraries> </avrgcc.linker.libraries.Libraries>
<avrgcc.assembler.general.IncludePaths> <avrgcc.assembler.general.IncludePaths>
<ListValues> <ListValues>
<Value>%24(PackRepoDir)\atmel\ATmega_DFP\1.6.364\include\</Value> <Value>%24(PackRepoDir)\atmel\ATmega_DFP\1.6.364\include\</Value>
</ListValues> </ListValues>
</avrgcc.assembler.general.IncludePaths> </avrgcc.assembler.general.IncludePaths>
</AvrGcc> </AvrGcc>
</ToolchainSettings> </ToolchainSettings>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' "> <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<ToolchainSettings> <ToolchainSettings>
<AvrGcc> <AvrGcc>
<avrgcc.common.Device>-mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.6.364\gcc\dev\atmega128"</avrgcc.common.Device> <avrgcc.common.Device>-mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.6.364\gcc\dev\atmega128"</avrgcc.common.Device>
<avrgcc.common.optimization.RelaxBranches>True</avrgcc.common.optimization.RelaxBranches> <avrgcc.common.optimization.RelaxBranches>True</avrgcc.common.optimization.RelaxBranches>
<avrgcc.common.outputfiles.hex>True</avrgcc.common.outputfiles.hex> <avrgcc.common.outputfiles.hex>True</avrgcc.common.outputfiles.hex>
<avrgcc.common.outputfiles.lss>True</avrgcc.common.outputfiles.lss> <avrgcc.common.outputfiles.lss>True</avrgcc.common.outputfiles.lss>
<avrgcc.common.outputfiles.eep>True</avrgcc.common.outputfiles.eep> <avrgcc.common.outputfiles.eep>True</avrgcc.common.outputfiles.eep>
<avrgcc.common.outputfiles.srec>True</avrgcc.common.outputfiles.srec> <avrgcc.common.outputfiles.srec>True</avrgcc.common.outputfiles.srec>
<avrgcc.common.outputfiles.usersignatures>False</avrgcc.common.outputfiles.usersignatures> <avrgcc.common.outputfiles.usersignatures>False</avrgcc.common.outputfiles.usersignatures>
<avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned> <avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>
<avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned> <avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>
<avrgcc.compiler.symbols.DefSymbols> <avrgcc.compiler.symbols.DefSymbols>
<ListValues> <ListValues>
<Value>DEBUG</Value> <Value>DEBUG</Value>
</ListValues> </ListValues>
</avrgcc.compiler.symbols.DefSymbols> </avrgcc.compiler.symbols.DefSymbols>
<avrgcc.compiler.directories.IncludePaths> <avrgcc.compiler.directories.IncludePaths>
<ListValues> <ListValues>
<Value>%24(PackRepoDir)\atmel\ATmega_DFP\1.6.364\include\</Value> <Value>%24(PackRepoDir)\atmel\ATmega_DFP\1.6.364\include\</Value>
</ListValues> </ListValues>
</avrgcc.compiler.directories.IncludePaths> </avrgcc.compiler.directories.IncludePaths>
<avrgcc.compiler.optimization.level>Optimize debugging experience (-Og)</avrgcc.compiler.optimization.level> <avrgcc.compiler.optimization.level>Optimize debugging experience (-Og)</avrgcc.compiler.optimization.level>
<avrgcc.compiler.optimization.PackStructureMembers>True</avrgcc.compiler.optimization.PackStructureMembers> <avrgcc.compiler.optimization.PackStructureMembers>True</avrgcc.compiler.optimization.PackStructureMembers>
<avrgcc.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcc.compiler.optimization.AllocateBytesNeededForEnum> <avrgcc.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcc.compiler.optimization.AllocateBytesNeededForEnum>
<avrgcc.compiler.optimization.DebugLevel>Default (-g2)</avrgcc.compiler.optimization.DebugLevel> <avrgcc.compiler.optimization.DebugLevel>Default (-g2)</avrgcc.compiler.optimization.DebugLevel>
<avrgcc.compiler.warnings.AllWarnings>True</avrgcc.compiler.warnings.AllWarnings> <avrgcc.compiler.warnings.AllWarnings>True</avrgcc.compiler.warnings.AllWarnings>
<avrgcc.linker.libraries.Libraries> <avrgcc.linker.libraries.Libraries>
<ListValues> <ListValues>
<Value>libm</Value> <Value>libm</Value>
</ListValues> </ListValues>
</avrgcc.linker.libraries.Libraries> </avrgcc.linker.libraries.Libraries>
<avrgcc.assembler.general.IncludePaths> <avrgcc.assembler.general.IncludePaths>
<ListValues> <ListValues>
<Value>%24(PackRepoDir)\atmel\ATmega_DFP\1.6.364\include\</Value> <Value>%24(PackRepoDir)\atmel\ATmega_DFP\1.6.364\include\</Value>
</ListValues> </ListValues>
</avrgcc.assembler.general.IncludePaths> </avrgcc.assembler.general.IncludePaths>
<avrgcc.assembler.debugging.DebugLevel>Default (-Wa,-g)</avrgcc.assembler.debugging.DebugLevel> <avrgcc.assembler.debugging.DebugLevel>Default (-Wa,-g)</avrgcc.assembler.debugging.DebugLevel>
</AvrGcc> </AvrGcc>
</ToolchainSettings> </ToolchainSettings>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>