mirror of
https://github.com/caperren/school_archives.git
synced 2025-11-09 21:51:15 +00:00
Added missing classes from final year at OSU
This commit is contained in:
Binary file not shown.
@@ -0,0 +1,22 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Atmel Studio Solution File, Format Version 11.00
|
||||
VisualStudioVersion = 14.0.23107.0
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{18226A42-8477-4023-8AD2-40C49DA407C9}") = "Corwin_Perren_Lab8_remote_sourcecode", "Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asmproj", "{59B1D629-9DCC-43ED-A0FD-8AB0E4D622AB}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|AVR = Debug|AVR
|
||||
Release|AVR = Release|AVR
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{59B1D629-9DCC-43ED-A0FD-8AB0E4D622AB}.Debug|AVR.ActiveCfg = Debug|AVR
|
||||
{59B1D629-9DCC-43ED-A0FD-8AB0E4D622AB}.Debug|AVR.Build.0 = Debug|AVR
|
||||
{59B1D629-9DCC-43ED-A0FD-8AB0E4D622AB}.Release|AVR.ActiveCfg = Release|AVR
|
||||
{59B1D629-9DCC-43ED-A0FD-8AB0E4D622AB}.Release|AVR.Build.0 = Release|AVR
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
@@ -0,0 +1,263 @@
|
||||
;***********************************************************
|
||||
;*
|
||||
;* Enter Name of file here
|
||||
;*
|
||||
;* Enter the description of the program here
|
||||
;*
|
||||
;* This is the TRANSMIT skeleton file for Lab 8 of ECE 375
|
||||
;*
|
||||
;***********************************************************
|
||||
;*
|
||||
;* Author: Enter your name
|
||||
;* Date: Enter Date
|
||||
;*
|
||||
;***********************************************************
|
||||
|
||||
.include "m128def.inc" ; Include definition file
|
||||
|
||||
;***********************************************************
|
||||
;* Internal Register Definitions and Constants
|
||||
;***********************************************************
|
||||
.def mpr = r16 ; Multi-Purpose Register
|
||||
.def waitcnt = r17 ; Wait Loop Counter
|
||||
.def ilcnt = r18 ; Inner Loop Counter
|
||||
.def olcnt = r19 ; Outer Loop Counter
|
||||
.def speed_reg = r20 ; Store of speed
|
||||
.def command_reg = r21 ; Reg to store current command
|
||||
|
||||
.equ WTime = 15 ; Button debounce time
|
||||
|
||||
.equ EngEnR = 4 ; Right Engine Enable Bit
|
||||
.equ EngEnL = 7 ; Left Engine Enable Bit
|
||||
.equ EngDirR = 5 ; Right Engine Direction Bit
|
||||
.equ EngDirL = 6 ; Left Engine Direction Bit
|
||||
|
||||
.equ BotAddress = 0x1a ; (Enter your robot's address here (8 bits))
|
||||
|
||||
; Use these action codes between the remote and robot
|
||||
; MSB = 1 thus:
|
||||
; control signals are shifted right by one and ORed with 0b10000000 = $80
|
||||
.equ MovFwdCmd = ($80|1<<(EngDirR-1)|1<<(EngDirL-1)) ;0b10110000 Move Forward Action Code
|
||||
.equ MovBckCmd = ($80|$00) ;0b10000000 Move Backward Action Code
|
||||
.equ TurnRCmd = ($80|1<<(EngDirL-1)) ;0b10100000 Turn Right Action Code
|
||||
.equ TurnLCmd = ($80|1<<(EngDirR-1)) ;0b10010000 Turn Left Action Code
|
||||
.equ HaltCmd = ($80|1<<(EngEnR-1)|1<<(EngEnL-1)) ;0b11001000 Halt Action Code
|
||||
.equ FreezeCmd = 0b11111000 ;0b11111000 Freeze Action Code
|
||||
|
||||
; Input pins for sending control commands
|
||||
; Note that I had to avoid using the pin
|
||||
; that is the transmitter on port D
|
||||
.equ MoveFwdPin = 0
|
||||
.equ MoveBackPin = 1
|
||||
.equ MoveLeftPin = 7
|
||||
.equ MoveRightPin = 6
|
||||
.equ MoveHaltPin = 5
|
||||
.equ FreezePin = 4
|
||||
|
||||
; Outputs on port D
|
||||
.equ TXD1 = 3
|
||||
|
||||
; Store the upper and lower bytes for ubrr setting
|
||||
.equ ubrr_low = low(832)
|
||||
.equ ubrr_high = high(832)
|
||||
|
||||
;***********************************************************
|
||||
;* Start of Code Segment
|
||||
;***********************************************************
|
||||
.cseg ; Beginning of code segment
|
||||
|
||||
;***********************************************************
|
||||
;* Interrupt Vectors
|
||||
;***********************************************************
|
||||
.org $0000 ; Beginning of IVs
|
||||
rjmp INIT ; Reset interrupt
|
||||
|
||||
.org $0046 ; End of Interrupt Vectors
|
||||
|
||||
;***********************************************************
|
||||
;* Program Initialization
|
||||
;***********************************************************
|
||||
INIT:
|
||||
; Initialize the Stack Pointer
|
||||
ldi mpr, low(RAMEND) ; Init the 2 stack pointer registers
|
||||
out SPL, mpr
|
||||
ldi mpr, high(RAMEND)
|
||||
out SPH, mpr
|
||||
|
||||
; I/O Ports
|
||||
; Initialize Port D pins for input
|
||||
ldi mpr, ((0 << MoveFwdPin) | (0 << MoveBackPin) | (0 << MoveLeftPin) | (0 << MoveRightPin) | (0 << MoveHaltPin) | (1 << TXD1))
|
||||
out DDRD, mpr
|
||||
|
||||
; Enable pullups on input pins
|
||||
ldi mpr, ((1 << MoveFwdPin) | (1 << MoveBackPin) | (1 << MoveLeftPin) | (1 << MoveRightPin) | (1 << MoveHaltPin) | (1 << FreezePin))
|
||||
out PORTD, mpr
|
||||
|
||||
; USART1
|
||||
; Set baudrate at 2400bps
|
||||
ldi mpr, ubrr_low
|
||||
sts UBRR1L, mpr
|
||||
|
||||
ldi mpr, ubrr_high
|
||||
sts UBRR1H, mpr
|
||||
|
||||
; Enable transmitter
|
||||
ldi mpr, ((1 << TXEN1) | (1 << RXEN1))
|
||||
sts UCSR1B, mpr
|
||||
|
||||
; Set frame format: 8 data bits, 2 stop bits
|
||||
; Double data rate
|
||||
ldi mpr, (1 << U2X1)
|
||||
sts UCSR1A, mpr
|
||||
|
||||
; 8N2 setting
|
||||
ldi mpr, ((1 << UCSZ10) | (1 << UCSZ11) | (1 << USBS1))
|
||||
sts UCSR1C, mpr
|
||||
|
||||
;***********************************************************
|
||||
;* Main Program
|
||||
;***********************************************************
|
||||
MAIN:
|
||||
in mpr, PIND ; Get current state of button pins
|
||||
|
||||
sbrs mpr, MoveFwdPin ; Check if forward pin pressed
|
||||
rcall SendMoveFwd ; Send move forward if pressed
|
||||
|
||||
sbrs mpr, MoveBackPin ; Check if back pin pressed
|
||||
rcall SendMoveBack ; Send move back if pressed
|
||||
|
||||
sbrs mpr, MoveLeftPin ; Check if left pin pressed
|
||||
rcall SendMoveLeft ; Send move left if pressed
|
||||
|
||||
sbrs mpr, MoveRightPin ; Check if right pin pressed
|
||||
rcall SendMoveRight ; Send move right if pressed
|
||||
|
||||
sbrs mpr, MoveHaltPin ; Check if halt pin pressed
|
||||
rcall SendMoveHalt ; Send move halt if pressed
|
||||
|
||||
sbrs mpr, FreezePin ; Check if freeze pin pressed
|
||||
rcall SendFreeze ; Send move freeze if pressed
|
||||
|
||||
; Some debounce time for any button presses
|
||||
ldi waitcnt, WTime ; Wait for 150 milliseconds
|
||||
rcall Wait ; Call wait function
|
||||
|
||||
rjmp MAIN
|
||||
|
||||
;***********************************************************
|
||||
;* Functions and Subroutines
|
||||
;***********************************************************
|
||||
SendAddress:
|
||||
lds mpr, UCSR1A ; Load usart1 status
|
||||
sbrs mpr, UDRE1 ; Check if data reg empty
|
||||
rjmp SendAddress ; Jump back until it is
|
||||
|
||||
ldi mpr, BotAddress ; Load the bot address
|
||||
sts UDR1, mpr ; Send the address over serial
|
||||
ret
|
||||
|
||||
SendCommand:
|
||||
lds mpr, UCSR1A ; Load usart1 status
|
||||
sbrs mpr, UDRE1 ; Check if data reg empty
|
||||
rjmp SendCommand ; Jump back until it is
|
||||
|
||||
sts UDR1, command_reg ; Send command over serial
|
||||
ret
|
||||
|
||||
SendMoveFwd:
|
||||
lds mpr, UCSR1A ; Load usart1 status
|
||||
sbrs mpr, UDRE1 ; Check if data reg empty
|
||||
rjmp SendMoveFwd ; Jump back until it is
|
||||
|
||||
rcall SendAddress ; Send the address
|
||||
|
||||
ldi command_reg, MovFwdCmd ; Load move forward command
|
||||
rcall SendCommand ; Call the subroutine to send it
|
||||
|
||||
ldi mpr, 0xFF ; Set mpr to max val so next loop can set it
|
||||
ret
|
||||
|
||||
SendMoveBack:
|
||||
lds mpr, UCSR1A ; Load usart1 status
|
||||
sbrs mpr, UDRE1 ; Check if data reg empty
|
||||
rjmp SendMoveFwd ; Jump back until it is
|
||||
|
||||
rcall SendAddress ; Send the address
|
||||
|
||||
ldi command_reg, MovBckCmd ; Load move back command
|
||||
rcall SendCommand ; Call the subroutine to send it
|
||||
|
||||
ldi mpr, 0xFF ; Set mpr to max val so next loop can set it
|
||||
ret
|
||||
|
||||
SendMoveLeft:
|
||||
lds mpr, UCSR1A ; Load usart1 status
|
||||
sbrs mpr, UDRE1 ; Check if data reg empty
|
||||
rjmp SendMoveFwd ; Jump back until it is
|
||||
|
||||
rcall SendAddress ; Send the address
|
||||
|
||||
ldi command_reg, TurnLCmd ; Load turn left command
|
||||
rcall SendCommand ; Call the subroutine to send it
|
||||
|
||||
ldi mpr, 0xFF ; Set mpr to max val so next loop can set it
|
||||
ret
|
||||
|
||||
SendMoveRight:
|
||||
lds mpr, UCSR1A ; Load usart1 status
|
||||
sbrs mpr, UDRE1 ; Check if data reg empty
|
||||
rjmp SendMoveFwd ; Jump back until it is
|
||||
|
||||
rcall SendAddress ; Send the address
|
||||
|
||||
ldi command_reg, TurnRCmd ; Load turn right command
|
||||
rcall SendCommand ; Call the subroutine to send it
|
||||
|
||||
ldi mpr, 0xFF ; Set mpr to max val so next loop can set it
|
||||
ret
|
||||
|
||||
SendMoveHalt:
|
||||
lds mpr, UCSR1A ; Load usart1 status
|
||||
sbrs mpr, UDRE1 ; Check if data reg empty
|
||||
rjmp SendMoveFwd ; Jump back until it is
|
||||
|
||||
rcall SendAddress ; Send the address
|
||||
|
||||
ldi command_reg, HaltCmd ; Load halt command
|
||||
rcall SendCommand ; Call the subroutine to send it
|
||||
|
||||
ldi mpr, 0xFF ; Set mpr to max val so next loop can set it
|
||||
ret
|
||||
|
||||
SendFreeze:
|
||||
lds mpr, UCSR1A ; Load usart1 status
|
||||
sbrs mpr, UDRE1 ; Check if data reg empty
|
||||
rjmp SendFreeze ; Jump back until it is
|
||||
|
||||
rcall SendAddress ; Send the address
|
||||
|
||||
ldi command_reg, FreezeCmd ; Load halt command
|
||||
rcall SendCommand ; Call the subroutine to send it
|
||||
|
||||
ldi mpr, 0xFF ; Set mpr to max val so next loop can set it
|
||||
ret
|
||||
|
||||
Wait:
|
||||
push waitcnt ; Save wait register
|
||||
push ilcnt ; Save ilcnt register
|
||||
push olcnt ; Save olcnt register
|
||||
|
||||
Loop: ldi olcnt, 224 ; load olcnt register
|
||||
OLoop: ldi ilcnt, 237 ; load ilcnt register
|
||||
ILoop: dec ilcnt ; decrement ilcnt
|
||||
brne ILoop ; Continue Inner Loop
|
||||
dec olcnt ; decrement olcnt
|
||||
brne OLoop ; Continue Outer Loop
|
||||
dec waitcnt ; Decrement wait
|
||||
brne Loop ; Continue Wait loop
|
||||
|
||||
pop olcnt ; Restore olcnt register
|
||||
pop ilcnt ; Restore ilcnt register
|
||||
pop waitcnt ; Restore wait register
|
||||
ret ; Return from subroutine
|
||||
|
||||
@@ -0,0 +1,74 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="14.0">
|
||||
<PropertyGroup>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectVersion>7.0</ProjectVersion>
|
||||
<ToolchainName>com.Atmel.AVRAssembler</ToolchainName>
|
||||
<ProjectGuid>59B1D629-9DCC-43ed-A0FD-8AB0E4D622AB</ProjectGuid>
|
||||
<avrdeviceseries>none</avrdeviceseries>
|
||||
<avrdevice>ATmega128</avrdevice>
|
||||
<OutputFileName>$(MSBuildProjectName)</OutputFileName>
|
||||
<OutputFileExtension>.obj</OutputFileExtension>
|
||||
<OutputDirectory>$(MSBuildProjectDirectory)\$(Configuration)</OutputDirectory>
|
||||
<Language>ASSEMBLY</Language>
|
||||
<AssemblyName>Corwin_Perren_Lab8_remote_sourcecode</AssemblyName>
|
||||
<Name>Corwin_Perren_Lab8_remote_sourcecode</Name>
|
||||
<RootNamespace>Corwin_Perren_Lab8_remote_sourcecode</RootNamespace>
|
||||
<ToolchainFlavour>Native</ToolchainFlavour>
|
||||
<EntryFile>$(MSBuildProjectDirectory)\Corwin_Perren_Lab8_remote_sourcecode.asm</EntryFile>
|
||||
<KeepTimersRunning>true</KeepTimersRunning>
|
||||
<OverrideVtor>false</OverrideVtor>
|
||||
<CacheFlash>true</CacheFlash>
|
||||
<ProgFlashFromRam>true</ProgFlashFromRam>
|
||||
<RamSnippetAddress />
|
||||
<UncachedRange />
|
||||
<preserveEEPROM>true</preserveEEPROM>
|
||||
<OverrideVtorValue />
|
||||
<BootSegment>2</BootSegment>
|
||||
<ResetRule>0</ResetRule>
|
||||
<eraseonlaunchrule>0</eraseonlaunchrule>
|
||||
<EraseKey />
|
||||
<AsfFrameworkConfig>
|
||||
<framework-data xmlns="">
|
||||
<options />
|
||||
<configurations />
|
||||
<files />
|
||||
<documentation help="" />
|
||||
<offline-documentation help="" />
|
||||
<dependencies>
|
||||
<content-extension eid="atmel.asf" uuidref="Atmel.ASF" version="3.40.0" />
|
||||
</dependencies>
|
||||
</framework-data>
|
||||
</AsfFrameworkConfig>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
||||
<ToolchainSettings>
|
||||
<AvrAssembler>
|
||||
<avrasm.assembler.general.AdditionalIncludeDirectories>
|
||||
<ListValues>
|
||||
<Value>%24(PackRepoDir)\atmel\ATmega_DFP\1.2.209\avrasm\inc</Value>
|
||||
</ListValues>
|
||||
</avrasm.assembler.general.AdditionalIncludeDirectories>
|
||||
<avrasm.assembler.general.IncludeFile>m128def.inc</avrasm.assembler.general.IncludeFile>
|
||||
</AvrAssembler>
|
||||
</ToolchainSettings>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||
<ToolchainSettings>
|
||||
<AvrAssembler>
|
||||
<avrasm.assembler.general.AdditionalIncludeDirectories>
|
||||
<ListValues>
|
||||
<Value>%24(PackRepoDir)\atmel\ATmega_DFP\1.2.209\avrasm\inc</Value>
|
||||
</ListValues>
|
||||
</avrasm.assembler.general.AdditionalIncludeDirectories>
|
||||
<avrasm.assembler.general.IncludeFile>m128def.inc</avrasm.assembler.general.IncludeFile>
|
||||
</AvrAssembler>
|
||||
</ToolchainSettings>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Corwin_Perren_Lab8_remote_sourcecode.asm">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<Import Project="$(AVRSTUDIO_EXE_PATH)\\Vs\\Assembler.targets" />
|
||||
</Project>
|
||||
@@ -0,0 +1,64 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Store xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="AtmelPackComponentManagement">
|
||||
<ProjectComponents>
|
||||
<ProjectComponent z:Id="i1" xmlns:z="http://schemas.microsoft.com/2003/10/Serialization/">
|
||||
<CApiVersion></CApiVersion>
|
||||
<CBundle></CBundle>
|
||||
<CClass>Device</CClass>
|
||||
<CGroup>Startup</CGroup>
|
||||
<CSub></CSub>
|
||||
<CVariant></CVariant>
|
||||
<CVendor>Atmel</CVendor>
|
||||
<CVersion>1.2.0</CVersion>
|
||||
<DefaultRepoPath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs</DefaultRepoPath>
|
||||
<DependentComponents xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
|
||||
<Description></Description>
|
||||
<Files xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
|
||||
<d4p1:anyType i:type="FileInfo">
|
||||
<AbsolutePath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.2.209\avrasm\inc</AbsolutePath>
|
||||
<Attribute></Attribute>
|
||||
<Category>include</Category>
|
||||
<Condition>AVRASM</Condition>
|
||||
<FileContentHash i:nil="true" />
|
||||
<FileVersion></FileVersion>
|
||||
<Name>avrasm/inc</Name>
|
||||
<SelectString></SelectString>
|
||||
<SourcePath></SourcePath>
|
||||
</d4p1:anyType>
|
||||
<d4p1:anyType i:type="FileInfo">
|
||||
<AbsolutePath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.2.209\avrasm\inc\m128def.inc</AbsolutePath>
|
||||
<Attribute></Attribute>
|
||||
<Category>header</Category>
|
||||
<Condition>AVRASM</Condition>
|
||||
<FileContentHash>bd3TUV9UtxpdYQkn+6MWPA==</FileContentHash>
|
||||
<FileVersion></FileVersion>
|
||||
<Name>avrasm/inc/m128def.inc</Name>
|
||||
<SelectString></SelectString>
|
||||
<SourcePath></SourcePath>
|
||||
</d4p1:anyType>
|
||||
<d4p1:anyType i:type="FileInfo">
|
||||
<AbsolutePath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.2.209\avrasm\templates\main.asm</AbsolutePath>
|
||||
<Attribute>template</Attribute>
|
||||
<Category>source</Category>
|
||||
<Condition>AVRASM</Condition>
|
||||
<FileContentHash>3eRwuFZpVzSU1OGBkc7CFw==</FileContentHash>
|
||||
<FileVersion></FileVersion>
|
||||
<Name>avrasm/templates/main.asm</Name>
|
||||
<SelectString>Main file (.asm)</SelectString>
|
||||
<SourcePath></SourcePath>
|
||||
</d4p1:anyType>
|
||||
</Files>
|
||||
<PackName>ATmega_DFP</PackName>
|
||||
<PackPath>C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.2.209/Atmel.ATmega_DFP.pdsc</PackPath>
|
||||
<PackVersion>1.2.209</PackVersion>
|
||||
<PresentInProject>true</PresentInProject>
|
||||
<ReferenceConditionId>ATmega128</ReferenceConditionId>
|
||||
<RteComponents xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
|
||||
<d4p1:string></d4p1:string>
|
||||
</RteComponents>
|
||||
<Status>Resolved</Status>
|
||||
<VersionMode>Fixed</VersionMode>
|
||||
<IsComponentInAtProject>true</IsComponentInAtProject>
|
||||
</ProjectComponent>
|
||||
</ProjectComponents>
|
||||
</Store>
|
||||
@@ -0,0 +1,19 @@
|
||||
:020000020000FC
|
||||
:0200000045C0F9
|
||||
:10008C000FEF0DBF00E10EBF08E001BB03EF02BB99
|
||||
:10009C0000E40093990003E00093980008E10093BA
|
||||
:1000AC009A0002E000939B000EE000939D0000B3C9
|
||||
:1000BC0000FF1CD001FF23D007FF2AD006FF31D050
|
||||
:1000CC0005FF38D004FF3FD01FE046D0F0CF0091A1
|
||||
:1000DC009B0005FFFCCF0AE100939C000895009162
|
||||
:1000EC009B0005FFFCCF50939C00089500919B0052
|
||||
:1000FC0005FFFCCFECDF50EBF2DF0FEF0895009122
|
||||
:10010C009B0005FFF3CFE3DF50E8E9DF0FEF089525
|
||||
:10011C0000919B0005FFEACFDADF50E9E0DF0FEF3B
|
||||
:10012C00089500919B0005FFE1CFD1DF50EAD7DFA6
|
||||
:10013C000FEF089500919B0005FFD8CFC8DF58EC56
|
||||
:10014C00CEDF0FEF089500919B0005FFFCCFBFDFC2
|
||||
:10015C0058EFC5DF0FEF08951F932F933F9330EEA9
|
||||
:10016C002DEE2A95F1F73A95D9F71A95C1F73F91EB
|
||||
:06017C002F911F91089570
|
||||
:00000001FF
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,910 @@
|
||||
|
||||
AVRASM ver. 2.2.7 C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asm Sun Nov 25 15:14:57 2018
|
||||
|
||||
|
||||
EQU SIGNATURE_000 0000001e
|
||||
EQU SIGNATURE_001 00000097
|
||||
EQU SIGNATURE_002 00000002
|
||||
EQU UCSR1C 0000009d
|
||||
EQU UDR1 0000009c
|
||||
EQU UCSR1A 0000009b
|
||||
EQU UCSR1B 0000009a
|
||||
EQU UBRR1H 00000098
|
||||
EQU UBRR1L 00000099
|
||||
EQU UCSR0C 00000095
|
||||
EQU UBRR0H 00000090
|
||||
EQU TCCR3C 0000008c
|
||||
EQU TCCR3A 0000008b
|
||||
EQU TCCR3B 0000008a
|
||||
EQU TCNT3L 00000088
|
||||
EQU TCNT3H 00000089
|
||||
EQU OCR3AL 00000086
|
||||
EQU OCR3AH 00000087
|
||||
EQU OCR3BL 00000084
|
||||
EQU OCR3BH 00000085
|
||||
EQU OCR3CL 00000082
|
||||
EQU OCR3CH 00000083
|
||||
EQU ICR3L 00000080
|
||||
EQU ICR3H 00000081
|
||||
EQU ETIMSK 0000007d
|
||||
EQU ETIFR 0000007c
|
||||
EQU TCCR1C 0000007a
|
||||
EQU OCR1CL 00000078
|
||||
EQU OCR1CH 00000079
|
||||
EQU TWCR 00000074
|
||||
EQU TWDR 00000073
|
||||
EQU TWAR 00000072
|
||||
EQU TWSR 00000071
|
||||
EQU TWBR 00000070
|
||||
EQU OSCCAL 0000006f
|
||||
EQU XMCRA 0000006d
|
||||
EQU XMCRB 0000006c
|
||||
EQU EICRA 0000006a
|
||||
EQU SPMCSR 00000068
|
||||
EQU PORTG 00000065
|
||||
EQU DDRG 00000064
|
||||
EQU PING 00000063
|
||||
EQU PORTF 00000062
|
||||
EQU DDRF 00000061
|
||||
EQU SREG 0000003f
|
||||
EQU SPL 0000003d
|
||||
EQU SPH 0000003e
|
||||
EQU XDIV 0000003c
|
||||
EQU RAMPZ 0000003b
|
||||
EQU EICRB 0000003a
|
||||
EQU EIMSK 00000039
|
||||
EQU EIFR 00000038
|
||||
EQU TIMSK 00000037
|
||||
EQU TIFR 00000036
|
||||
EQU MCUCR 00000035
|
||||
EQU MCUCSR 00000034
|
||||
EQU TCCR0 00000033
|
||||
EQU TCNT0 00000032
|
||||
EQU OCR0 00000031
|
||||
EQU ASSR 00000030
|
||||
EQU TCCR1A 0000002f
|
||||
EQU TCCR1B 0000002e
|
||||
EQU TCNT1L 0000002c
|
||||
EQU TCNT1H 0000002d
|
||||
EQU OCR1AL 0000002a
|
||||
EQU OCR1AH 0000002b
|
||||
EQU OCR1BL 00000028
|
||||
EQU OCR1BH 00000029
|
||||
EQU ICR1L 00000026
|
||||
EQU ICR1H 00000027
|
||||
EQU TCCR2 00000025
|
||||
EQU TCNT2 00000024
|
||||
EQU OCR2 00000023
|
||||
EQU OCDR 00000022
|
||||
EQU WDTCR 00000021
|
||||
EQU SFIOR 00000020
|
||||
EQU EEARL 0000001e
|
||||
EQU EEARH 0000001f
|
||||
EQU EEDR 0000001d
|
||||
EQU EECR 0000001c
|
||||
EQU PORTA 0000001b
|
||||
EQU DDRA 0000001a
|
||||
EQU PINA 00000019
|
||||
EQU PORTB 00000018
|
||||
EQU DDRB 00000017
|
||||
EQU PINB 00000016
|
||||
EQU PORTC 00000015
|
||||
EQU DDRC 00000014
|
||||
EQU PINC 00000013
|
||||
EQU PORTD 00000012
|
||||
EQU DDRD 00000011
|
||||
EQU PIND 00000010
|
||||
EQU SPDR 0000000f
|
||||
EQU SPSR 0000000e
|
||||
EQU SPCR 0000000d
|
||||
EQU UDR0 0000000c
|
||||
EQU UCSR0A 0000000b
|
||||
EQU UCSR0B 0000000a
|
||||
EQU UBRR0L 00000009
|
||||
EQU ACSR 00000008
|
||||
EQU ADMUX 00000007
|
||||
EQU ADCSRA 00000006
|
||||
EQU ADCH 00000005
|
||||
EQU ADCL 00000004
|
||||
EQU PORTE 00000003
|
||||
EQU DDRE 00000002
|
||||
EQU PINE 00000001
|
||||
EQU PINF 00000000
|
||||
EQU ACME 00000003
|
||||
EQU ACIS0 00000000
|
||||
EQU ACIS1 00000001
|
||||
EQU ACIC 00000002
|
||||
EQU ACIE 00000003
|
||||
EQU ACI 00000004
|
||||
EQU ACO 00000005
|
||||
EQU ACBG 00000006
|
||||
EQU ACD 00000007
|
||||
EQU SPDR0 00000000
|
||||
EQU SPDR1 00000001
|
||||
EQU SPDR2 00000002
|
||||
EQU SPDR3 00000003
|
||||
EQU SPDR4 00000004
|
||||
EQU SPDR5 00000005
|
||||
EQU SPDR6 00000006
|
||||
EQU SPDR7 00000007
|
||||
EQU SPI2X 00000000
|
||||
EQU WCOL 00000006
|
||||
EQU SPIF 00000007
|
||||
EQU SPR0 00000000
|
||||
EQU SPR1 00000001
|
||||
EQU CPHA 00000002
|
||||
EQU CPOL 00000003
|
||||
EQU MSTR 00000004
|
||||
EQU DORD 00000005
|
||||
EQU SPE 00000006
|
||||
EQU SPIE 00000007
|
||||
EQU I2BR 00000070
|
||||
EQU TWBR0 00000000
|
||||
EQU TWBR1 00000001
|
||||
EQU TWBR2 00000002
|
||||
EQU TWBR3 00000003
|
||||
EQU TWBR4 00000004
|
||||
EQU TWBR5 00000005
|
||||
EQU TWBR6 00000006
|
||||
EQU TWBR7 00000007
|
||||
EQU I2CR 00000074
|
||||
EQU TWIE 00000000
|
||||
EQU I2IE 00000000
|
||||
EQU TWEN 00000002
|
||||
EQU I2EN 00000002
|
||||
EQU ENI2C 00000002
|
||||
EQU TWWC 00000003
|
||||
EQU I2WC 00000003
|
||||
EQU TWSTO 00000004
|
||||
EQU I2STO 00000004
|
||||
EQU TWSTA 00000005
|
||||
EQU I2STA 00000005
|
||||
EQU TWEA 00000006
|
||||
EQU I2EA 00000006
|
||||
EQU TWINT 00000007
|
||||
EQU I2INT 00000007
|
||||
EQU I2SR 00000071
|
||||
EQU TWPS0 00000000
|
||||
EQU TWS0 00000000
|
||||
EQU I2GCE 00000000
|
||||
EQU TWPS1 00000001
|
||||
EQU TWS1 00000001
|
||||
EQU TWS3 00000003
|
||||
EQU I2S3 00000003
|
||||
EQU TWS4 00000004
|
||||
EQU I2S4 00000004
|
||||
EQU TWS5 00000005
|
||||
EQU I2S5 00000005
|
||||
EQU TWS6 00000006
|
||||
EQU I2S6 00000006
|
||||
EQU TWS7 00000007
|
||||
EQU I2S7 00000007
|
||||
EQU I2DR 00000073
|
||||
EQU TWD0 00000000
|
||||
EQU TWD1 00000001
|
||||
EQU TWD2 00000002
|
||||
EQU TWD3 00000003
|
||||
EQU TWD4 00000004
|
||||
EQU TWD5 00000005
|
||||
EQU TWD6 00000006
|
||||
EQU TWD7 00000007
|
||||
EQU I2AR 00000072
|
||||
EQU TWGCE 00000000
|
||||
EQU TWA0 00000001
|
||||
EQU TWA1 00000002
|
||||
EQU TWA2 00000003
|
||||
EQU TWA3 00000004
|
||||
EQU TWA4 00000005
|
||||
EQU TWA5 00000006
|
||||
EQU TWA6 00000007
|
||||
EQU UDR00 00000000
|
||||
EQU UDR01 00000001
|
||||
EQU UDR02 00000002
|
||||
EQU UDR03 00000003
|
||||
EQU UDR04 00000004
|
||||
EQU UDR05 00000005
|
||||
EQU UDR06 00000006
|
||||
EQU UDR07 00000007
|
||||
EQU MPCM0 00000000
|
||||
EQU U2X0 00000001
|
||||
EQU UPE0 00000002
|
||||
EQU DOR0 00000003
|
||||
EQU FE0 00000004
|
||||
EQU UDRE0 00000005
|
||||
EQU TXC0 00000006
|
||||
EQU RXC0 00000007
|
||||
EQU TXB80 00000000
|
||||
EQU RXB80 00000001
|
||||
EQU UCSZ02 00000002
|
||||
EQU UCSZ2 00000002
|
||||
EQU TXEN0 00000003
|
||||
EQU RXEN0 00000004
|
||||
EQU UDRIE0 00000005
|
||||
EQU TXCIE0 00000006
|
||||
EQU RXCIE0 00000007
|
||||
EQU UCPOL0 00000000
|
||||
EQU UCSZ00 00000001
|
||||
EQU UCSZ01 00000002
|
||||
EQU USBS0 00000003
|
||||
EQU UPM00 00000004
|
||||
EQU UPM01 00000005
|
||||
EQU UMSEL0 00000006
|
||||
EQU UBRR8 00000000
|
||||
EQU UBRR9 00000001
|
||||
EQU UBRR10 00000002
|
||||
EQU UBRR11 00000003
|
||||
EQU UBRR0 00000000
|
||||
EQU UBRR1 00000001
|
||||
EQU UBRR2 00000002
|
||||
EQU UBRR3 00000003
|
||||
EQU UBRR4 00000004
|
||||
EQU UBRR5 00000005
|
||||
EQU UBRR6 00000006
|
||||
EQU UBRR7 00000007
|
||||
EQU UDR10 00000000
|
||||
EQU UDR11 00000001
|
||||
EQU UDR12 00000002
|
||||
EQU UDR13 00000003
|
||||
EQU UDR14 00000004
|
||||
EQU UDR15 00000005
|
||||
EQU UDR16 00000006
|
||||
EQU UDR17 00000007
|
||||
EQU MPCM1 00000000
|
||||
EQU U2X1 00000001
|
||||
EQU UPE1 00000002
|
||||
EQU DOR1 00000003
|
||||
EQU FE1 00000004
|
||||
EQU UDRE1 00000005
|
||||
EQU TXC1 00000006
|
||||
EQU RXC1 00000007
|
||||
EQU TXB81 00000000
|
||||
EQU RXB81 00000001
|
||||
EQU UCSZ12 00000002
|
||||
EQU TXEN1 00000003
|
||||
EQU RXEN1 00000004
|
||||
EQU UDRIE1 00000005
|
||||
EQU TXCIE1 00000006
|
||||
EQU RXCIE1 00000007
|
||||
EQU UCPOL1 00000000
|
||||
EQU UCSZ10 00000001
|
||||
EQU UCSZ11 00000002
|
||||
EQU USBS1 00000003
|
||||
EQU UPM10 00000004
|
||||
EQU UPM11 00000005
|
||||
EQU UMSEL1 00000006
|
||||
EQU SREG_C 00000000
|
||||
EQU SREG_Z 00000001
|
||||
EQU SREG_N 00000002
|
||||
EQU SREG_V 00000003
|
||||
EQU SREG_S 00000004
|
||||
EQU SREG_H 00000005
|
||||
EQU SREG_T 00000006
|
||||
EQU SREG_I 00000007
|
||||
EQU IVCE 00000000
|
||||
EQU IVSEL 00000001
|
||||
EQU SM2 00000002
|
||||
EQU SM0 00000003
|
||||
EQU SM1 00000004
|
||||
EQU SE 00000005
|
||||
EQU SRW10 00000006
|
||||
EQU SRE 00000007
|
||||
EQU SRW11 00000001
|
||||
EQU SRW00 00000002
|
||||
EQU SRW01 00000003
|
||||
EQU SRL0 00000004
|
||||
EQU SRL1 00000005
|
||||
EQU SRL2 00000006
|
||||
EQU XMM0 00000000
|
||||
EQU XMM1 00000001
|
||||
EQU XMM2 00000002
|
||||
EQU XMBK 00000007
|
||||
EQU CAL0 00000000
|
||||
EQU CAL1 00000001
|
||||
EQU CAL2 00000002
|
||||
EQU CAL3 00000003
|
||||
EQU CAL4 00000004
|
||||
EQU CAL5 00000005
|
||||
EQU CAL6 00000006
|
||||
EQU CAL7 00000007
|
||||
EQU XDIV0 00000000
|
||||
EQU XDIV1 00000001
|
||||
EQU XDIV2 00000002
|
||||
EQU XDIV3 00000003
|
||||
EQU XDIV4 00000004
|
||||
EQU XDIV5 00000005
|
||||
EQU XDIV6 00000006
|
||||
EQU XDIVEN 00000007
|
||||
EQU PORF 00000000
|
||||
EQU EXTRF 00000001
|
||||
EQU BORF 00000002
|
||||
EQU WDRF 00000003
|
||||
EQU JTRF 00000004
|
||||
EQU JTD 00000007
|
||||
EQU RAMPZ0 00000000
|
||||
EQU SPMCR 00000068
|
||||
EQU SPMEN 00000000
|
||||
EQU PGERS 00000001
|
||||
EQU PGWRT 00000002
|
||||
EQU BLBSET 00000003
|
||||
EQU RWWSRE 00000004
|
||||
EQU ASRE 00000004
|
||||
EQU RWWSB 00000006
|
||||
EQU ASB 00000006
|
||||
EQU SPMIE 00000007
|
||||
EQU OCDR0 00000000
|
||||
EQU OCDR1 00000001
|
||||
EQU OCDR2 00000002
|
||||
EQU OCDR3 00000003
|
||||
EQU OCDR4 00000004
|
||||
EQU OCDR5 00000005
|
||||
EQU OCDR6 00000006
|
||||
EQU OCDR7 00000007
|
||||
EQU IDRD 00000007
|
||||
EQU PSR321 00000000
|
||||
EQU PSR1 00000000
|
||||
EQU PSR2 00000000
|
||||
EQU PSR3 00000000
|
||||
EQU PSR0 00000001
|
||||
EQU PUD 00000002
|
||||
EQU TSM 00000007
|
||||
EQU ISC00 00000000
|
||||
EQU ISC01 00000001
|
||||
EQU ISC10 00000002
|
||||
EQU ISC11 00000003
|
||||
EQU ISC20 00000004
|
||||
EQU ISC21 00000005
|
||||
EQU ISC30 00000006
|
||||
EQU ISC31 00000007
|
||||
EQU ISC40 00000000
|
||||
EQU ISC41 00000001
|
||||
EQU ISC50 00000002
|
||||
EQU ISC51 00000003
|
||||
EQU ISC60 00000004
|
||||
EQU ISC61 00000005
|
||||
EQU ISC70 00000006
|
||||
EQU ISC71 00000007
|
||||
EQU GICR 00000039
|
||||
EQU GIMSK 00000039
|
||||
EQU INT0 00000000
|
||||
EQU INT1 00000001
|
||||
EQU INT2 00000002
|
||||
EQU INT3 00000003
|
||||
EQU INT4 00000004
|
||||
EQU INT5 00000005
|
||||
EQU INT6 00000006
|
||||
EQU INT7 00000007
|
||||
EQU GIFR 00000038
|
||||
EQU INTF0 00000000
|
||||
EQU INTF1 00000001
|
||||
EQU INTF2 00000002
|
||||
EQU INTF3 00000003
|
||||
EQU INTF4 00000004
|
||||
EQU INTF5 00000005
|
||||
EQU INTF6 00000006
|
||||
EQU INTF7 00000007
|
||||
EQU EEDR0 00000000
|
||||
EQU EEDR1 00000001
|
||||
EQU EEDR2 00000002
|
||||
EQU EEDR3 00000003
|
||||
EQU EEDR4 00000004
|
||||
EQU EEDR5 00000005
|
||||
EQU EEDR6 00000006
|
||||
EQU EEDR7 00000007
|
||||
EQU EERE 00000000
|
||||
EQU EEWE 00000001
|
||||
EQU EEMWE 00000002
|
||||
EQU EERIE 00000003
|
||||
EQU PORTA0 00000000
|
||||
EQU PA0 00000000
|
||||
EQU PORTA1 00000001
|
||||
EQU PA1 00000001
|
||||
EQU PORTA2 00000002
|
||||
EQU PA2 00000002
|
||||
EQU PORTA3 00000003
|
||||
EQU PA3 00000003
|
||||
EQU PORTA4 00000004
|
||||
EQU PA4 00000004
|
||||
EQU PORTA5 00000005
|
||||
EQU PA5 00000005
|
||||
EQU PORTA6 00000006
|
||||
EQU PA6 00000006
|
||||
EQU PORTA7 00000007
|
||||
EQU PA7 00000007
|
||||
EQU DDA0 00000000
|
||||
EQU DDA1 00000001
|
||||
EQU DDA2 00000002
|
||||
EQU DDA3 00000003
|
||||
EQU DDA4 00000004
|
||||
EQU DDA5 00000005
|
||||
EQU DDA6 00000006
|
||||
EQU DDA7 00000007
|
||||
EQU PINA0 00000000
|
||||
EQU PINA1 00000001
|
||||
EQU PINA2 00000002
|
||||
EQU PINA3 00000003
|
||||
EQU PINA4 00000004
|
||||
EQU PINA5 00000005
|
||||
EQU PINA6 00000006
|
||||
EQU PINA7 00000007
|
||||
EQU PORTB0 00000000
|
||||
EQU PB0 00000000
|
||||
EQU PORTB1 00000001
|
||||
EQU PB1 00000001
|
||||
EQU PORTB2 00000002
|
||||
EQU PB2 00000002
|
||||
EQU PORTB3 00000003
|
||||
EQU PB3 00000003
|
||||
EQU PORTB4 00000004
|
||||
EQU PB4 00000004
|
||||
EQU PORTB5 00000005
|
||||
EQU PB5 00000005
|
||||
EQU PORTB6 00000006
|
||||
EQU PB6 00000006
|
||||
EQU PORTB7 00000007
|
||||
EQU PB7 00000007
|
||||
EQU DDB0 00000000
|
||||
EQU DDB1 00000001
|
||||
EQU DDB2 00000002
|
||||
EQU DDB3 00000003
|
||||
EQU DDB4 00000004
|
||||
EQU DDB5 00000005
|
||||
EQU DDB6 00000006
|
||||
EQU DDB7 00000007
|
||||
EQU PINB0 00000000
|
||||
EQU PINB1 00000001
|
||||
EQU PINB2 00000002
|
||||
EQU PINB3 00000003
|
||||
EQU PINB4 00000004
|
||||
EQU PINB5 00000005
|
||||
EQU PINB6 00000006
|
||||
EQU PINB7 00000007
|
||||
EQU PORTC0 00000000
|
||||
EQU PC0 00000000
|
||||
EQU PORTC1 00000001
|
||||
EQU PC1 00000001
|
||||
EQU PORTC2 00000002
|
||||
EQU PC2 00000002
|
||||
EQU PORTC3 00000003
|
||||
EQU PC3 00000003
|
||||
EQU PORTC4 00000004
|
||||
EQU PC4 00000004
|
||||
EQU PORTC5 00000005
|
||||
EQU PC5 00000005
|
||||
EQU PORTC6 00000006
|
||||
EQU PC6 00000006
|
||||
EQU PORTC7 00000007
|
||||
EQU PC7 00000007
|
||||
EQU DDC0 00000000
|
||||
EQU DDC1 00000001
|
||||
EQU DDC2 00000002
|
||||
EQU DDC3 00000003
|
||||
EQU DDC4 00000004
|
||||
EQU DDC5 00000005
|
||||
EQU DDC6 00000006
|
||||
EQU DDC7 00000007
|
||||
EQU PINC0 00000000
|
||||
EQU PINC1 00000001
|
||||
EQU PINC2 00000002
|
||||
EQU PINC3 00000003
|
||||
EQU PINC4 00000004
|
||||
EQU PINC5 00000005
|
||||
EQU PINC6 00000006
|
||||
EQU PINC7 00000007
|
||||
EQU PORTD0 00000000
|
||||
EQU PD0 00000000
|
||||
EQU PORTD1 00000001
|
||||
EQU PD1 00000001
|
||||
EQU PORTD2 00000002
|
||||
EQU PD2 00000002
|
||||
EQU PORTD3 00000003
|
||||
EQU PD3 00000003
|
||||
EQU PORTD4 00000004
|
||||
EQU PD4 00000004
|
||||
EQU PORTD5 00000005
|
||||
EQU PD5 00000005
|
||||
EQU PORTD6 00000006
|
||||
EQU PD6 00000006
|
||||
EQU PORTD7 00000007
|
||||
EQU PD7 00000007
|
||||
EQU DDD0 00000000
|
||||
EQU DDD1 00000001
|
||||
EQU DDD2 00000002
|
||||
EQU DDD3 00000003
|
||||
EQU DDD4 00000004
|
||||
EQU DDD5 00000005
|
||||
EQU DDD6 00000006
|
||||
EQU DDD7 00000007
|
||||
EQU PIND0 00000000
|
||||
EQU PIND1 00000001
|
||||
EQU PIND2 00000002
|
||||
EQU PIND3 00000003
|
||||
EQU PIND4 00000004
|
||||
EQU PIND5 00000005
|
||||
EQU PIND6 00000006
|
||||
EQU PIND7 00000007
|
||||
EQU PORTE0 00000000
|
||||
EQU PE0 00000000
|
||||
EQU PORTE1 00000001
|
||||
EQU PE1 00000001
|
||||
EQU PORTE2 00000002
|
||||
EQU PE2 00000002
|
||||
EQU PORTE3 00000003
|
||||
EQU PE3 00000003
|
||||
EQU PORTE4 00000004
|
||||
EQU PE4 00000004
|
||||
EQU PORTE5 00000005
|
||||
EQU PE5 00000005
|
||||
EQU PORTE6 00000006
|
||||
EQU PE6 00000006
|
||||
EQU PORTE7 00000007
|
||||
EQU PE7 00000007
|
||||
EQU DDE0 00000000
|
||||
EQU DDE1 00000001
|
||||
EQU DDE2 00000002
|
||||
EQU DDE3 00000003
|
||||
EQU DDE4 00000004
|
||||
EQU DDE5 00000005
|
||||
EQU DDE6 00000006
|
||||
EQU DDE7 00000007
|
||||
EQU PINE0 00000000
|
||||
EQU PINE1 00000001
|
||||
EQU PINE2 00000002
|
||||
EQU PINE3 00000003
|
||||
EQU PINE4 00000004
|
||||
EQU PINE5 00000005
|
||||
EQU PINE6 00000006
|
||||
EQU PINE7 00000007
|
||||
EQU PORTF0 00000000
|
||||
EQU PF0 00000000
|
||||
EQU PORTF1 00000001
|
||||
EQU PF1 00000001
|
||||
EQU PORTF2 00000002
|
||||
EQU PF2 00000002
|
||||
EQU PORTF3 00000003
|
||||
EQU PF3 00000003
|
||||
EQU PORTF4 00000004
|
||||
EQU PF4 00000004
|
||||
EQU PORTF5 00000005
|
||||
EQU PF5 00000005
|
||||
EQU PORTF6 00000006
|
||||
EQU PF6 00000006
|
||||
EQU PORTF7 00000007
|
||||
EQU PF7 00000007
|
||||
EQU DDF0 00000000
|
||||
EQU DDF1 00000001
|
||||
EQU DDF2 00000002
|
||||
EQU DDF3 00000003
|
||||
EQU DDF4 00000004
|
||||
EQU DDF5 00000005
|
||||
EQU DDF6 00000006
|
||||
EQU DDF7 00000007
|
||||
EQU PINF0 00000000
|
||||
EQU PINF1 00000001
|
||||
EQU PINF2 00000002
|
||||
EQU PINF3 00000003
|
||||
EQU PINF4 00000004
|
||||
EQU PINF5 00000005
|
||||
EQU PINF6 00000006
|
||||
EQU PINF7 00000007
|
||||
EQU PORTG0 00000000
|
||||
EQU PG0 00000000
|
||||
EQU PORTG1 00000001
|
||||
EQU PG1 00000001
|
||||
EQU PORTG2 00000002
|
||||
EQU PG2 00000002
|
||||
EQU PORTG3 00000003
|
||||
EQU PG3 00000003
|
||||
EQU PORTG4 00000004
|
||||
EQU PG4 00000004
|
||||
EQU DDG0 00000000
|
||||
EQU DDG1 00000001
|
||||
EQU DDG2 00000002
|
||||
EQU DDG3 00000003
|
||||
EQU DDG4 00000004
|
||||
EQU PING0 00000000
|
||||
EQU PING1 00000001
|
||||
EQU PING2 00000002
|
||||
EQU PING3 00000003
|
||||
EQU PING4 00000004
|
||||
EQU CS00 00000000
|
||||
EQU CS01 00000001
|
||||
EQU CS02 00000002
|
||||
EQU WGM01 00000003
|
||||
EQU CTC0 00000003
|
||||
EQU COM00 00000004
|
||||
EQU COM01 00000005
|
||||
EQU WGM00 00000006
|
||||
EQU PWM0 00000006
|
||||
EQU FOC0 00000007
|
||||
EQU TCNT0_0 00000000
|
||||
EQU TCNT0_1 00000001
|
||||
EQU TCNT0_2 00000002
|
||||
EQU TCNT0_3 00000003
|
||||
EQU TCNT0_4 00000004
|
||||
EQU TCNT0_5 00000005
|
||||
EQU TCNT0_6 00000006
|
||||
EQU TCNT0_7 00000007
|
||||
EQU OCR0_0 00000000
|
||||
EQU OCR0_1 00000001
|
||||
EQU OCR0_2 00000002
|
||||
EQU OCR0_3 00000003
|
||||
EQU OCR0_4 00000004
|
||||
EQU OCR0_5 00000005
|
||||
EQU OCR0_6 00000006
|
||||
EQU OCR0_7 00000007
|
||||
EQU TCR0UB 00000000
|
||||
EQU OCR0UB 00000001
|
||||
EQU TCN0UB 00000002
|
||||
EQU AS0 00000003
|
||||
EQU TOIE0 00000000
|
||||
EQU OCIE0 00000001
|
||||
EQU TOV0 00000000
|
||||
EQU OCF0 00000001
|
||||
EQU TOIE1 00000002
|
||||
EQU OCIE1B 00000003
|
||||
EQU OCIE1A 00000004
|
||||
EQU TICIE1 00000005
|
||||
EQU OCIE1C 00000000
|
||||
EQU TOV1 00000002
|
||||
EQU OCF1B 00000003
|
||||
EQU OCF1A 00000004
|
||||
EQU ICF1 00000005
|
||||
EQU OCF1C 00000000
|
||||
EQU WGM10 00000000
|
||||
EQU PWM10 00000000
|
||||
EQU WGM11 00000001
|
||||
EQU PWM11 00000001
|
||||
EQU COM1C0 00000002
|
||||
EQU COM1C1 00000003
|
||||
EQU COM1B0 00000004
|
||||
EQU COM1B1 00000005
|
||||
EQU COM1A0 00000006
|
||||
EQU COM1A1 00000007
|
||||
EQU CS10 00000000
|
||||
EQU CS11 00000001
|
||||
EQU CS12 00000002
|
||||
EQU WGM12 00000003
|
||||
EQU CTC10 00000003
|
||||
EQU WGM13 00000004
|
||||
EQU CTC11 00000004
|
||||
EQU ICES1 00000006
|
||||
EQU ICNC1 00000007
|
||||
EQU FOC1C 00000005
|
||||
EQU FOC1B 00000006
|
||||
EQU FOC1A 00000007
|
||||
EQU CS20 00000000
|
||||
EQU CS21 00000001
|
||||
EQU CS22 00000002
|
||||
EQU WGM21 00000003
|
||||
EQU CTC2 00000003
|
||||
EQU COM20 00000004
|
||||
EQU COM21 00000005
|
||||
EQU WGM20 00000006
|
||||
EQU PWM2 00000006
|
||||
EQU FOC2 00000007
|
||||
EQU TCNT2_0 00000000
|
||||
EQU TCNT2_1 00000001
|
||||
EQU TCNT2_2 00000002
|
||||
EQU TCNT2_3 00000003
|
||||
EQU TCNT2_4 00000004
|
||||
EQU TCNT2_5 00000005
|
||||
EQU TCNT2_6 00000006
|
||||
EQU TCNT2_7 00000007
|
||||
EQU OCR2_0 00000000
|
||||
EQU OCR2_1 00000001
|
||||
EQU OCR2_2 00000002
|
||||
EQU OCR2_3 00000003
|
||||
EQU OCR2_4 00000004
|
||||
EQU OCR2_5 00000005
|
||||
EQU OCR2_6 00000006
|
||||
EQU OCR2_7 00000007
|
||||
EQU TOIE2 00000006
|
||||
EQU OCIE2 00000007
|
||||
EQU TOV2 00000006
|
||||
EQU OCF2 00000007
|
||||
EQU OCIE3C 00000001
|
||||
EQU TOIE3 00000002
|
||||
EQU OCIE3B 00000003
|
||||
EQU OCIE3A 00000004
|
||||
EQU TICIE3 00000005
|
||||
EQU OCF3C 00000001
|
||||
EQU TOV3 00000002
|
||||
EQU OCF3B 00000003
|
||||
EQU OCF3A 00000004
|
||||
EQU ICF3 00000005
|
||||
EQU WGM30 00000000
|
||||
EQU PWM30 00000000
|
||||
EQU WGM31 00000001
|
||||
EQU PWM31 00000001
|
||||
EQU COM3C0 00000002
|
||||
EQU COM3C1 00000003
|
||||
EQU COM3B0 00000004
|
||||
EQU COM3B1 00000005
|
||||
EQU COM3A0 00000006
|
||||
EQU COM3A1 00000007
|
||||
EQU CS30 00000000
|
||||
EQU CS31 00000001
|
||||
EQU CS32 00000002
|
||||
EQU WGM32 00000003
|
||||
EQU CTC30 00000003
|
||||
EQU WGM33 00000004
|
||||
EQU CTC31 00000004
|
||||
EQU ICES3 00000006
|
||||
EQU ICNC3 00000007
|
||||
EQU FOC3C 00000005
|
||||
EQU FOC3B 00000006
|
||||
EQU FOC3A 00000007
|
||||
EQU TCN3L0 00000000
|
||||
EQU TCN3L1 00000001
|
||||
EQU TCN3L2 00000002
|
||||
EQU TCN3L3 00000003
|
||||
EQU TCN3L4 00000004
|
||||
EQU TCN3L5 00000005
|
||||
EQU TCN3L6 00000006
|
||||
EQU TCN3L7 00000007
|
||||
EQU WDTCSR 00000021
|
||||
EQU WDP0 00000000
|
||||
EQU WDP1 00000001
|
||||
EQU WDP2 00000002
|
||||
EQU WDE 00000003
|
||||
EQU WDCE 00000004
|
||||
EQU WDTOE 00000004
|
||||
EQU MUX0 00000000
|
||||
EQU MUX1 00000001
|
||||
EQU MUX2 00000002
|
||||
EQU MUX3 00000003
|
||||
EQU MUX4 00000004
|
||||
EQU ADLAR 00000005
|
||||
EQU REFS0 00000006
|
||||
EQU REFS1 00000007
|
||||
EQU ADCSR 00000006
|
||||
EQU ADPS0 00000000
|
||||
EQU ADPS1 00000001
|
||||
EQU ADPS2 00000002
|
||||
EQU ADIE 00000003
|
||||
EQU ADIF 00000004
|
||||
EQU ADFR 00000005
|
||||
EQU ADSC 00000006
|
||||
EQU ADEN 00000007
|
||||
EQU ADCH0 00000000
|
||||
EQU ADCH1 00000001
|
||||
EQU ADCH2 00000002
|
||||
EQU ADCH3 00000003
|
||||
EQU ADCH4 00000004
|
||||
EQU ADCH5 00000005
|
||||
EQU ADCH6 00000006
|
||||
EQU ADCH7 00000007
|
||||
EQU ADCL0 00000000
|
||||
EQU ADCL1 00000001
|
||||
EQU ADCL2 00000002
|
||||
EQU ADCL3 00000003
|
||||
EQU ADCL4 00000004
|
||||
EQU ADCL5 00000005
|
||||
EQU ADCL6 00000006
|
||||
EQU ADCL7 00000007
|
||||
EQU LB1 00000000
|
||||
EQU LB2 00000001
|
||||
EQU BLB01 00000002
|
||||
EQU BLB02 00000003
|
||||
EQU BLB11 00000004
|
||||
EQU BLB12 00000005
|
||||
EQU CKSEL0 00000000
|
||||
EQU CKSEL1 00000001
|
||||
EQU CKSEL2 00000002
|
||||
EQU CKSEL3 00000003
|
||||
EQU SUT0 00000004
|
||||
EQU SUT1 00000005
|
||||
EQU BODEN 00000006
|
||||
EQU BODLEVEL 00000007
|
||||
EQU BOOTRST 00000000
|
||||
EQU BOOTSZ0 00000001
|
||||
EQU BOOTSZ1 00000002
|
||||
EQU EESAVE 00000003
|
||||
EQU CKOPT 00000004
|
||||
EQU SPIEN 00000005
|
||||
EQU JTAGEN 00000006
|
||||
EQU OCDEN 00000007
|
||||
EQU WDTON 00000000
|
||||
EQU M103C 00000001
|
||||
DEF XH r27
|
||||
DEF XL r26
|
||||
DEF YH r29
|
||||
DEF YL r28
|
||||
DEF ZH r31
|
||||
DEF ZL r30
|
||||
EQU FLASHEND 0000ffff
|
||||
EQU IOEND 000000ff
|
||||
EQU SRAM_START 00000100
|
||||
EQU SRAM_SIZE 00001000
|
||||
EQU RAMEND 000010ff
|
||||
EQU XRAMEND 0000ffff
|
||||
EQU E2END 00000fff
|
||||
EQU EEPROMEND 00000fff
|
||||
EQU EEADRBITS 0000000c
|
||||
EQU NRWW_START_ADDR 0000f000
|
||||
EQU NRWW_STOP_ADDR 0000ffff
|
||||
EQU RWW_START_ADDR 00000000
|
||||
EQU RWW_STOP_ADDR 0000efff
|
||||
EQU PAGESIZE 00000080
|
||||
EQU FIRSTBOOTSTART 0000fe00
|
||||
EQU SECONDBOOTSTART 0000fc00
|
||||
EQU THIRDBOOTSTART 0000f800
|
||||
EQU FOURTHBOOTSTART 0000f000
|
||||
EQU SMALLBOOTSTART 0000fe00
|
||||
EQU LARGEBOOTSTART 0000f000
|
||||
EQU INT0addr 00000002
|
||||
EQU INT1addr 00000004
|
||||
EQU INT2addr 00000006
|
||||
EQU INT3addr 00000008
|
||||
EQU INT4addr 0000000a
|
||||
EQU INT5addr 0000000c
|
||||
EQU INT6addr 0000000e
|
||||
EQU INT7addr 00000010
|
||||
EQU OC2addr 00000012
|
||||
EQU OVF2addr 00000014
|
||||
EQU ICP1addr 00000016
|
||||
EQU OC1Aaddr 00000018
|
||||
EQU OC1Baddr 0000001a
|
||||
EQU OVF1addr 0000001c
|
||||
EQU OC0addr 0000001e
|
||||
EQU OVF0addr 00000020
|
||||
EQU SPIaddr 00000022
|
||||
EQU URXC0addr 00000024
|
||||
EQU UDRE0addr 00000026
|
||||
EQU UTXC0addr 00000028
|
||||
EQU ADCCaddr 0000002a
|
||||
EQU ERDYaddr 0000002c
|
||||
EQU ACIaddr 0000002e
|
||||
EQU OC1Caddr 00000030
|
||||
EQU ICP3addr 00000032
|
||||
EQU OC3Aaddr 00000034
|
||||
EQU OC3Baddr 00000036
|
||||
EQU OC3Caddr 00000038
|
||||
EQU OVF3addr 0000003a
|
||||
EQU URXC1addr 0000003c
|
||||
EQU UDRE1addr 0000003e
|
||||
EQU UTXC1addr 00000040
|
||||
EQU TWIaddr 00000042
|
||||
EQU SPMRaddr 00000044
|
||||
EQU INT_VECTORS_SIZE 00000046
|
||||
DEF mpr r16
|
||||
DEF waitcnt r17
|
||||
DEF ilcnt r18
|
||||
DEF olcnt r19
|
||||
DEF speed_reg r20
|
||||
DEF command_reg r21
|
||||
EQU WTime 0000000f
|
||||
EQU EngEnR 00000004
|
||||
EQU EngEnL 00000007
|
||||
EQU EngDirR 00000005
|
||||
EQU EngDirL 00000006
|
||||
EQU BotAddress 0000001a
|
||||
EQU MovFwdCmd 000000b0
|
||||
EQU MovBckCmd 00000080
|
||||
EQU TurnRCmd 000000a0
|
||||
EQU TurnLCmd 00000090
|
||||
EQU HaltCmd 000000c8
|
||||
EQU FreezeCmd 000000f8
|
||||
EQU MoveFwdPin 00000000
|
||||
EQU MoveBackPin 00000001
|
||||
EQU MoveLeftPin 00000007
|
||||
EQU MoveRightPin 00000006
|
||||
EQU MoveHaltPin 00000005
|
||||
EQU FreezePin 00000004
|
||||
EQU TXD1 00000003
|
||||
EQU ubrr_low 00000040
|
||||
EQU ubrr_high 00000003
|
||||
CSEG INIT 00000046
|
||||
CSEG MAIN 0000005d
|
||||
CSEG SendMoveFwd 0000007c
|
||||
CSEG SendMoveBack 00000085
|
||||
CSEG SendMoveLeft 0000008e
|
||||
CSEG SendMoveRight 00000097
|
||||
CSEG SendMoveHalt 000000a0
|
||||
CSEG SendFreeze 000000a9
|
||||
CSEG Wait 000000b2
|
||||
CSEG SendAddress 0000006d
|
||||
CSEG SendCommand 00000075
|
||||
CSEG Loop 000000b5
|
||||
CSEG OLoop 000000b6
|
||||
CSEG ILoop 000000b7
|
||||
Binary file not shown.
@@ -0,0 +1,40 @@
|
||||
<ASSEMBLER_INFO>
|
||||
<VERSION>2.2.7</VERSION>
|
||||
<DEVICE>"ATmega128"</DEVICE>
|
||||
<WORKING_DIR>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Debug</WORKING_DIR>
|
||||
<INCLUDE_PATH>
|
||||
<DIR>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.2.209\avrasm\inc</DIR>
|
||||
<DIR>C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avrassembler\Include</DIR>
|
||||
<DIR></DIR>
|
||||
</INCLUDE_PATH>
|
||||
<SOURCE_FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asm</SOURCE_FILE>
|
||||
<INCLUDED_FILES>
|
||||
<FILE>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.2.209\avrasm\inc\m128def.inc</FILE>
|
||||
</INCLUDED_FILES>
|
||||
<OBJECT_FILES>
|
||||
<FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Debug\Corwin_Perren_Lab8_remote_sourcecode.obj</FILE>
|
||||
</OBJECT_FILES>
|
||||
<HEX_FILES>
|
||||
<FILE>Corwin_Perren_Lab8_remote_sourcecode.hex</FILE>
|
||||
</HEX_FILES>
|
||||
<OUTPUT_FILES>
|
||||
<FILE>Corwin_Perren_Lab8_remote_sourcecode.map</FILE>
|
||||
<FILE>Corwin_Perren_Lab8_remote_sourcecode.lss</FILE>
|
||||
</OUTPUT_FILES>
|
||||
<LABELS>
|
||||
<INIT><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asm</FILE><LINE>80</LINE></INIT>
|
||||
<MAIN><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asm</FILE><LINE>120</LINE></MAIN>
|
||||
<SendMoveFwd><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asm</FILE><LINE>167</LINE></SendMoveFwd>
|
||||
<SendMoveBack><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asm</FILE><LINE>180</LINE></SendMoveBack>
|
||||
<SendMoveLeft><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asm</FILE><LINE>193</LINE></SendMoveLeft>
|
||||
<SendMoveRight><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asm</FILE><LINE>206</LINE></SendMoveRight>
|
||||
<SendMoveHalt><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asm</FILE><LINE>219</LINE></SendMoveHalt>
|
||||
<SendFreeze><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asm</FILE><LINE>232</LINE></SendFreeze>
|
||||
<Wait><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asm</FILE><LINE>245</LINE></Wait>
|
||||
<SendAddress><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asm</FILE><LINE>150</LINE></SendAddress>
|
||||
<SendCommand><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asm</FILE><LINE>159</LINE></SendCommand>
|
||||
<Loop><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asm</FILE><LINE>250</LINE></Loop>
|
||||
<OLoop><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asm</FILE><LINE>251</LINE></OLoop>
|
||||
<ILoop><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode\Corwin_Perren_Lab8_remote_sourcecode.asm</FILE><LINE>252</LINE></ILoop>
|
||||
</LABELS>
|
||||
</ASSEMBLER_INFO>
|
||||
Binary file not shown.
@@ -0,0 +1,22 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Atmel Studio Solution File, Format Version 11.00
|
||||
VisualStudioVersion = 14.0.23107.0
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{18226A42-8477-4023-8AD2-40C49DA407C9}") = "Corwin_Perren_Lab8_robot_sourcecode", "Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asmproj", "{59B1D629-9DCC-43ED-A0FD-8AB0E4D622AB}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|AVR = Debug|AVR
|
||||
Release|AVR = Release|AVR
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{59B1D629-9DCC-43ED-A0FD-8AB0E4D622AB}.Debug|AVR.ActiveCfg = Debug|AVR
|
||||
{59B1D629-9DCC-43ED-A0FD-8AB0E4D622AB}.Debug|AVR.Build.0 = Debug|AVR
|
||||
{59B1D629-9DCC-43ED-A0FD-8AB0E4D622AB}.Release|AVR.ActiveCfg = Release|AVR
|
||||
{59B1D629-9DCC-43ED-A0FD-8AB0E4D622AB}.Release|AVR.Build.0 = Release|AVR
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
@@ -0,0 +1,425 @@
|
||||
;***********************************************************
|
||||
;*
|
||||
;* Enter Name of file here
|
||||
;*
|
||||
;* Enter the description of the program here
|
||||
;*
|
||||
;* This is the RECEIVE skeleton file for Lab 8 of ECE 375
|
||||
;*
|
||||
;***********************************************************
|
||||
;*
|
||||
;* Author: Enter your name
|
||||
;* Date: Enter Date
|
||||
;*
|
||||
;***********************************************************
|
||||
|
||||
.include "m128def.inc" ; Include definition file
|
||||
|
||||
;***********************************************************
|
||||
;* Internal Register Definitions and Constants
|
||||
;***********************************************************
|
||||
.def mpr = r16 ; Multi-Purpose Register
|
||||
.def waitcnt = r17 ; Wait Loop Counter
|
||||
.def ilcnt = r18 ; Inner Loop Counter
|
||||
.def olcnt = r19 ; Outer Loop Counter
|
||||
.def cmd_reg = r20 ; Current command reg
|
||||
.def addr_reg = r21 ; Current address reg
|
||||
.def freeze_sent_reg = r22 ; State of freeze send
|
||||
.def freeze_count_reg = r23 ; Freeze count
|
||||
|
||||
.equ WTime = 100 ; Time to wait in wait loop, used to be 100
|
||||
|
||||
; Inputs on port d
|
||||
.equ WskrR = 0 ; Right Whisker Input Bit
|
||||
.equ WskrL = 1 ; Left Whisker Input Bit
|
||||
.equ RXD1 = 2 ; RX Input Pin
|
||||
|
||||
; Drive pins
|
||||
.equ EngEnR = 4 ; Right Engine Enable Bit
|
||||
.equ EngEnL = 7 ; Left Engine Enable Bit
|
||||
.equ EngDirR = 5 ; Right Engine Direction Bit
|
||||
.equ EngDirL = 6 ; Left Engine Direction Bit
|
||||
|
||||
.equ BotAddress = 0x1a ; (Enter your robot's address here (8 bits))
|
||||
|
||||
;/////////////////////////////////////////////////////////////
|
||||
;These macros are the values to make the TekBot Move.
|
||||
;/////////////////////////////////////////////////////////////
|
||||
.equ MovFwd = (1<<EngDirR|1<<EngDirL) ;0b01100000 Move Forward Action Code
|
||||
.equ MovBck = $00 ;0b00000000 Move Backward Action Code
|
||||
.equ TurnR = (1<<EngDirL) ;0b01000000 Turn Right Action Code
|
||||
.equ TurnL = (1<<EngDirR) ;0b00100000 Turn Left Action Code
|
||||
.equ Halt = (1<<EngEnR|1<<EngEnL) ;0b10010000 Halt Action Code
|
||||
|
||||
;/////////////////////////////////////////////////////////////
|
||||
;These macros are the TekBot IR commands.
|
||||
;/////////////////////////////////////////////////////////////
|
||||
; INPUT
|
||||
.equ MovFwdCmd = ($80|1<<(EngDirR-1)|1<<(EngDirL-1)) ;0b10110000 Move Forward Action Code
|
||||
.equ MovBckCmd = ($80|$00) ;0b10000000 Move Backward Action Code
|
||||
.equ TurnRCmd = ($80|1<<(EngDirL-1)) ;0b10100000 Turn Right Action Code
|
||||
.equ TurnLCmd = ($80|1<<(EngDirR-1)) ;0b10010000 Turn Left Action Code
|
||||
.equ HaltCmd = ($80|1<<(EngEnR-1)|1<<(EngEnL-1)) ;0b11001000 Halt Action Code
|
||||
.equ FreezeCmd = 0b11111000 ;0b11111000 Freeze Action Code
|
||||
|
||||
; OUTPUT
|
||||
.equ FreezeOthersCmd = 0b01010101 ;0b01010101 Broadcase freeze action code
|
||||
|
||||
; Store the upper and lower bytes for ubrr setting
|
||||
.equ ubrr_low = low(832)
|
||||
.equ ubrr_high = high(832)
|
||||
|
||||
; Bits 1 and 3 set for INT0 and INT1 trigger on falling edge
|
||||
.equ InterruptsFallingEdge = (1 << ISC01) | (1 << ISC11)
|
||||
|
||||
; Bits 0 and 1 set for INT0 and INT1 interrupts enabled
|
||||
.equ InterruptMasksEnabled = (1 << INT0) | (1 << INT1)
|
||||
.equ InterruptMasksDisabled = 0
|
||||
|
||||
; Setting these bits to one and writing them to the flag register clears them
|
||||
.equ InterruptFlagRegisterClear = (1 << INTF0) | (1 << INTF1)
|
||||
|
||||
; Mask for commands vs addresses
|
||||
.equ cmd_addr_bit = 7
|
||||
|
||||
; Max freeze before offline
|
||||
.equ freezes_to_perm_halt = 3
|
||||
|
||||
;***********************************************************
|
||||
;* Start of Code Segment
|
||||
;***********************************************************
|
||||
.cseg ; Beginning of code segment
|
||||
|
||||
;***********************************************************
|
||||
;* Interrupt Vectors
|
||||
;***********************************************************
|
||||
.org $0000 ; Beginning of IVs
|
||||
rjmp INIT ; Reset interrupt
|
||||
|
||||
;Should have Interrupt vectors for:
|
||||
;- Right whisker
|
||||
.org INT0addr
|
||||
rjmp HitRight
|
||||
|
||||
;- Left whisker
|
||||
.org INT1addr
|
||||
rjmp HitLeft
|
||||
|
||||
;- USART receive
|
||||
.org URXC1addr
|
||||
rjmp RX1_DATA_RECEIVED
|
||||
|
||||
.org $0046 ; End of Interrupt Vectors
|
||||
|
||||
;***********************************************************
|
||||
;* Program Initialization
|
||||
;***********************************************************
|
||||
INIT:
|
||||
; Initialize the Stack Pointer
|
||||
ldi mpr, low(RAMEND) ; Init the 2 stack pointer registers
|
||||
out SPL, mpr
|
||||
ldi mpr, high(RAMEND)
|
||||
out SPH, mpr
|
||||
|
||||
; I/O Ports
|
||||
; Set drive pins to outputs
|
||||
ldi mpr, ((1 << EngEnR) | (1 << EngDirR) | (1 << EngEnL) | (1 << EngDirL))
|
||||
out DDRB, mpr
|
||||
|
||||
; Set whisker pins and rx pin to inputs
|
||||
ldi mpr, ((0 << WskrR) | (0 << WskrL) | (0 << RXD1))
|
||||
out DDRD, mpr
|
||||
|
||||
; Set whisker pins to enable pullups
|
||||
ldi mpr, ((1 << WskrR) | (1 << WskrL))
|
||||
out PORTD, mpr
|
||||
|
||||
; USART1
|
||||
; Set baudrate at 2400bps
|
||||
ldi mpr, ubrr_low
|
||||
sts UBRR1L, mpr
|
||||
|
||||
ldi mpr, ubrr_high
|
||||
sts UBRR1H, mpr
|
||||
|
||||
; Enable transmitter, reciever, and enable interrupt on receive
|
||||
ldi mpr, ((1 << TXEN1) | (1 << RXEN1) | (1 << RXCIE1))
|
||||
sts UCSR1B, mpr
|
||||
|
||||
; Set frame format: 8 data bits, 2 stop bits
|
||||
; Double data rate
|
||||
ldi mpr, (1 << U2X1)
|
||||
sts UCSR1A, mpr
|
||||
|
||||
; 8N2 setting
|
||||
ldi mpr, ((1 << UCSZ10) | (1 << UCSZ11) | (1 << USBS1))
|
||||
sts UCSR1C, mpr
|
||||
|
||||
; External Interrupts
|
||||
; D0 is INT0, D1 is INT1
|
||||
; Set the Interrupt Sense Control to falling edge
|
||||
ldi mpr, InterruptsFallingEdge
|
||||
sts EICRA, mpr
|
||||
|
||||
; Configure the External Interrupt Mask
|
||||
ldi mpr, InterruptMasksEnabled
|
||||
out EIMSK, mpr
|
||||
|
||||
; Initialize TekBot Forward Movement
|
||||
ldi cmd_reg, MovFwd ; Load Move Forward Command
|
||||
out PORTB, cmd_reg ; Send command to motors
|
||||
|
||||
; Flush usart rx
|
||||
rcall USART_Flush
|
||||
|
||||
; Clear address register
|
||||
clr addr_reg
|
||||
clr freeze_count_reg
|
||||
|
||||
; Enabled global interrupts
|
||||
sei
|
||||
|
||||
;***********************************************************
|
||||
;* Main Program
|
||||
;***********************************************************
|
||||
MAIN:
|
||||
rjmp MAIN
|
||||
|
||||
;***********************************************************
|
||||
;* Functions and Subroutines
|
||||
;***********************************************************
|
||||
;----------------------------------------------------------------
|
||||
; Sub: SendFreezeOthers
|
||||
; Desc: Sends a tekbot command to freeze all other bots
|
||||
;----------------------------------------------------------------
|
||||
SendFreezeOthers:
|
||||
lds mpr, UCSR1A ; Load usart1 status
|
||||
sbrs mpr, UDRE1 ; Check if data reg empty
|
||||
rjmp SendFreezeOthers ; Jump back until it is
|
||||
|
||||
ldi mpr, FreezeOthersCmd ; Load freeze cmd
|
||||
sts UDR1, mpr ; Send command over serial
|
||||
ret
|
||||
|
||||
;----------------------------------------------------------------
|
||||
; Sub: USART_Flush
|
||||
; Desc: Clear RX buffer
|
||||
;----------------------------------------------------------------
|
||||
USART_Flush:
|
||||
lds mpr, UCSR1A ; Load status reg
|
||||
sbrs mpr, RXC1 ; Check to see if there's data
|
||||
ret ; If not, return
|
||||
lds mpr, UDR1 ; Otherwise, read in data
|
||||
rjmp USART_Flush ; And go check again
|
||||
|
||||
;----------------------------------------------------------------
|
||||
; Sub: RX1_DATA_RECEIVED
|
||||
; Desc: Processes incoming serial data on interrupt
|
||||
;----------------------------------------------------------------
|
||||
RX1_DATA_RECEIVED:
|
||||
cli ; Stop processing interrupts
|
||||
|
||||
cpi freeze_count_reg, freezes_to_perm_halt ; Check if at limit
|
||||
breq RX1_DATA_RECV_END_NO_INT ; No interrrupt return
|
||||
|
||||
lds mpr, UDR1 ; Read in data
|
||||
|
||||
; Check freeze
|
||||
cpi mpr, FreezeOthersCmd ; Check if we should be frozen
|
||||
brne RX1_DATA_RECV_ADDR ; Skip to process normal command
|
||||
|
||||
; Check if it's our freeze
|
||||
cpi freeze_sent_reg, 0 ; Check if we sent it
|
||||
breq RX1_PROCESS_FREEZE
|
||||
|
||||
; Ignore our own command
|
||||
clr freeze_sent_reg ; Reset flag
|
||||
clr addr_reg ; Clear addr reg for next run
|
||||
rjmp RX1_DATA_RECV_END ; Go to end
|
||||
|
||||
RX1_PROCESS_FREEZE:
|
||||
; Process freeze
|
||||
ldi mpr, Halt ; Load cmd to halt
|
||||
out PORTB, mpr ; Halt bot
|
||||
|
||||
ldi mpr, 5 ; Load 5 sec wait
|
||||
RX1_FREEZE_LOOP:
|
||||
ldi waitcnt, WTime ; Wait for 1 seconds
|
||||
rcall Wait ; Call wait function
|
||||
dec mpr ; Decrement counter
|
||||
brne RX1_FREEZE_LOOP ; If not done with wait, go back
|
||||
|
||||
; Clear interrupt flags so no new interrupts until after
|
||||
ldi mpr, InterruptFlagRegisterClear
|
||||
out EIFR, mpr
|
||||
|
||||
inc freeze_count_reg ; Inc count for freeze
|
||||
cpi freeze_count_reg, freezes_to_perm_halt ; Check if at limit
|
||||
breq RX1_DATA_RECV_END_NO_INT ; No interrrupt return
|
||||
|
||||
; Not at limit, go back to last command
|
||||
rcall USART_Flush ; Clear any commands while frozen
|
||||
out PORTB, cmd_reg ; Go to prev state
|
||||
rjmp RX1_DATA_RECV_END ; Go to end
|
||||
|
||||
; Check address
|
||||
RX1_DATA_RECV_ADDR:
|
||||
sbrc mpr, cmd_addr_bit ; Check if is address
|
||||
rjmp RX1_DATA_RECV_COMMAND ; Process if was command
|
||||
|
||||
mov addr_reg, mpr ; If addr, update addr reg
|
||||
rjmp RX1_DATA_RECV_END ; Go to end
|
||||
|
||||
; Check command
|
||||
RX1_DATA_RECV_COMMAND:
|
||||
cpi addr_reg, BotAddress ; Cmp current with our addr
|
||||
brne RX1_DATA_RECV_END ; If not ours, go to end
|
||||
|
||||
; Check if it's freeze command
|
||||
cpi mpr, FreezeCmd
|
||||
brne RX1_REG_COMMAND
|
||||
|
||||
rcall SendFreezeOthers ; Send freeze
|
||||
ldi freeze_sent_reg, 1 ; Set that freeze sent
|
||||
|
||||
clr addr_reg ; Clear addr reg for next run
|
||||
rjmp RX1_DATA_RECV_END ; Go to end
|
||||
|
||||
RX1_REG_COMMAND:
|
||||
; Otherwise it's normal command
|
||||
mov cmd_reg, mpr ; Set current command
|
||||
lsl cmd_reg ; Ours, remove cmd bit, make command
|
||||
out PORTB, cmd_reg ; Write command
|
||||
|
||||
clr addr_reg ; Clear addr reg for next run
|
||||
|
||||
RX1_DATA_RECV_END:
|
||||
sei ; Reenable interrupts
|
||||
|
||||
RX1_DATA_RECV_END_NO_INT:
|
||||
reti
|
||||
|
||||
;----------------------------------------------------------------
|
||||
; Sub: HitRight
|
||||
; Desc: Processes the logic for when the right whisker is hit
|
||||
;----------------------------------------------------------------
|
||||
HitRight:
|
||||
cli
|
||||
|
||||
cpi freeze_count_reg, freezes_to_perm_halt ; Check if at limit
|
||||
breq HitRightEnd ; No interrrupt return
|
||||
|
||||
push mpr ; Save mpr register
|
||||
push waitcnt ; Save wait register
|
||||
in mpr, SREG ; Save program state
|
||||
push mpr ; Save program state
|
||||
|
||||
; Move Backwards for a second
|
||||
ldi mpr, MovBck ; Load Move Backward command
|
||||
out PORTB, mpr ; Send command to port
|
||||
ldi waitcnt, WTime ; Wait for 1 second
|
||||
rcall Wait ; Call wait function
|
||||
|
||||
; Turn left for a second
|
||||
ldi mpr, TurnL ; Load Turn Left Command
|
||||
out PORTB, mpr ; Send command to port
|
||||
ldi waitcnt, WTime ; Wait for 1 second
|
||||
rcall Wait ; Call wait function
|
||||
|
||||
; Restore drive state
|
||||
out PORTB, cmd_reg ; Send saved command to port
|
||||
|
||||
; Clear interrupt flags so no new interrupts until after
|
||||
ldi mpr, InterruptFlagRegisterClear
|
||||
out EIFR, mpr
|
||||
|
||||
rcall USART_Flush ; Clear out receive register
|
||||
|
||||
pop mpr ; Restore program state
|
||||
out SREG, mpr ; Restore program state
|
||||
pop waitcnt ; Restore wait register
|
||||
pop mpr ; Restore mpr
|
||||
|
||||
sei
|
||||
HitRightEnd:
|
||||
reti ; Return from subroutine
|
||||
|
||||
;----------------------------------------------------------------
|
||||
; Sub: HitLeft
|
||||
; Desc: Processes the logic for when the left whisker is hit
|
||||
;----------------------------------------------------------------
|
||||
HitLeft:
|
||||
cli
|
||||
|
||||
cpi freeze_count_reg, freezes_to_perm_halt ; Check if at limit
|
||||
breq HitLeftEnd ; No interrrupt return
|
||||
|
||||
push mpr ; Save mpr register
|
||||
push waitcnt ; Save wait register
|
||||
in mpr, SREG ; Save program state
|
||||
push mpr ; Save program state
|
||||
|
||||
; Move Backwards for a second
|
||||
ldi mpr, MovBck ; Load Move Backward command
|
||||
out PORTB, mpr ; Send command to port
|
||||
ldi waitcnt, WTime ; Wait for 1 second
|
||||
rcall Wait ; Call wait function
|
||||
|
||||
; Turn right for a second
|
||||
ldi mpr, TurnR ; Load Turn Left Command
|
||||
out PORTB, mpr ; Send command to port
|
||||
ldi waitcnt, WTime ; Wait for 1 second
|
||||
rcall Wait ; Call wait function
|
||||
|
||||
; Restore drive state
|
||||
out PORTB, cmd_reg ; Send saved command to port
|
||||
|
||||
; Clear interrupt flags so no new interrupts until after
|
||||
ldi mpr, InterruptFlagRegisterClear
|
||||
out EIFR, mpr
|
||||
|
||||
rcall USART_Flush ; Clear out receive register
|
||||
|
||||
pop mpr ; Restore program state
|
||||
out SREG, mpr ; Restore program state
|
||||
pop waitcnt ; Restore wait register
|
||||
pop mpr ; Restore mpr
|
||||
|
||||
sei
|
||||
HitLeftEnd:
|
||||
reti ; Return from subroutine
|
||||
|
||||
;----------------------------------------------------------------
|
||||
; Sub: Wait
|
||||
; Desc: A wait loop that is 16 + 159975*waitcnt cycles or roughly
|
||||
; waitcnt*10ms. Just initialize wait for the specific amount
|
||||
; of time in 10ms intervals. Here is the general eqaution
|
||||
; for the number of clock cycles in the wait loop:
|
||||
; ((3 * ilcnt + 3) * olcnt + 3) * waitcnt + 13 + call
|
||||
;----------------------------------------------------------------
|
||||
Wait:
|
||||
push waitcnt ; Save wait register
|
||||
push ilcnt ; Save ilcnt register
|
||||
push olcnt ; Save olcnt register
|
||||
|
||||
Loop: ldi olcnt, 224 ; load olcnt register
|
||||
OLoop: ldi ilcnt, 237 ; load ilcnt register
|
||||
ILoop: dec ilcnt ; decrement ilcnt
|
||||
brne ILoop ; Continue Inner Loop
|
||||
dec olcnt ; decrement olcnt
|
||||
brne OLoop ; Continue Outer Loop
|
||||
dec waitcnt ; Decrement wait
|
||||
brne Loop ; Continue Wait loop
|
||||
|
||||
pop olcnt ; Restore olcnt register
|
||||
pop ilcnt ; Restore ilcnt register
|
||||
pop waitcnt ; Restore wait register
|
||||
ret ; Return from subroutine
|
||||
|
||||
;***********************************************************
|
||||
;* Stored Program Data
|
||||
;***********************************************************
|
||||
|
||||
;***********************************************************
|
||||
;* Additional Program Includes
|
||||
;***********************************************************
|
||||
@@ -0,0 +1,75 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="14.0">
|
||||
<PropertyGroup>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectVersion>7.0</ProjectVersion>
|
||||
<ToolchainName>com.Atmel.AVRAssembler</ToolchainName>
|
||||
<ProjectGuid>59B1D629-9DCC-43ed-A0FD-8AB0E4D622AB</ProjectGuid>
|
||||
<avrdeviceseries>none</avrdeviceseries>
|
||||
<avrdevice>ATmega128</avrdevice>
|
||||
<OutputFileName>$(MSBuildProjectName)</OutputFileName>
|
||||
<OutputFileExtension>.obj</OutputFileExtension>
|
||||
<OutputDirectory>$(MSBuildProjectDirectory)\$(Configuration)</OutputDirectory>
|
||||
<Language>ASSEMBLY</Language>
|
||||
<AssemblyName>Corwin_Perren_Lab8_robot_sourcecode</AssemblyName>
|
||||
<Name>Corwin_Perren_Lab8_robot_sourcecode</Name>
|
||||
<RootNamespace>Corwin_Perren_Lab8_robot_sourcecode</RootNamespace>
|
||||
<ToolchainFlavour>Native</ToolchainFlavour>
|
||||
<EntryFile>$(MSBuildProjectDirectory)\Corwin_Perren_Lab8_robot_sourcecode.asm</EntryFile>
|
||||
<KeepTimersRunning>true</KeepTimersRunning>
|
||||
<OverrideVtor>false</OverrideVtor>
|
||||
<CacheFlash>true</CacheFlash>
|
||||
<ProgFlashFromRam>true</ProgFlashFromRam>
|
||||
<RamSnippetAddress>0x20000000</RamSnippetAddress>
|
||||
<UncachedRange />
|
||||
<preserveEEPROM>true</preserveEEPROM>
|
||||
<OverrideVtorValue>exception_table</OverrideVtorValue>
|
||||
<BootSegment>2</BootSegment>
|
||||
<ResetRule>0</ResetRule>
|
||||
<eraseonlaunchrule>0</eraseonlaunchrule>
|
||||
<EraseKey />
|
||||
<AsfFrameworkConfig>
|
||||
<framework-data xmlns="">
|
||||
<options />
|
||||
<configurations />
|
||||
<files />
|
||||
<documentation help="" />
|
||||
<offline-documentation help="" />
|
||||
<dependencies>
|
||||
<content-extension eid="atmel.asf" uuidref="Atmel.ASF" version="3.40.0" />
|
||||
</dependencies>
|
||||
</framework-data>
|
||||
</AsfFrameworkConfig>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
||||
<ToolchainSettings>
|
||||
<AvrAssembler>
|
||||
<avrasm.assembler.general.AdditionalIncludeDirectories>
|
||||
<ListValues>
|
||||
<Value>%24(PackRepoDir)\atmel\ATmega_DFP\1.2.209\avrasm\inc</Value>
|
||||
</ListValues>
|
||||
</avrasm.assembler.general.AdditionalIncludeDirectories>
|
||||
<avrasm.assembler.general.IncludeFile>m128def.inc</avrasm.assembler.general.IncludeFile>
|
||||
</AvrAssembler>
|
||||
</ToolchainSettings>
|
||||
<OutputType>Executable</OutputType>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||
<ToolchainSettings>
|
||||
<AvrAssembler>
|
||||
<avrasm.assembler.general.AdditionalIncludeDirectories>
|
||||
<ListValues>
|
||||
<Value>%24(PackRepoDir)\atmel\ATmega_DFP\1.2.209\avrasm\inc</Value>
|
||||
</ListValues>
|
||||
</avrasm.assembler.general.AdditionalIncludeDirectories>
|
||||
<avrasm.assembler.general.IncludeFile>m128def.inc</avrasm.assembler.general.IncludeFile>
|
||||
</AvrAssembler>
|
||||
</ToolchainSettings>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Corwin_Perren_Lab8_robot_sourcecode.asm">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<Import Project="$(AVRSTUDIO_EXE_PATH)\\Vs\\Assembler.targets" />
|
||||
</Project>
|
||||
@@ -0,0 +1,64 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Store xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="AtmelPackComponentManagement">
|
||||
<ProjectComponents>
|
||||
<ProjectComponent z:Id="i1" xmlns:z="http://schemas.microsoft.com/2003/10/Serialization/">
|
||||
<CApiVersion></CApiVersion>
|
||||
<CBundle></CBundle>
|
||||
<CClass>Device</CClass>
|
||||
<CGroup>Startup</CGroup>
|
||||
<CSub></CSub>
|
||||
<CVariant></CVariant>
|
||||
<CVendor>Atmel</CVendor>
|
||||
<CVersion>1.2.0</CVersion>
|
||||
<DefaultRepoPath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs</DefaultRepoPath>
|
||||
<DependentComponents xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
|
||||
<Description></Description>
|
||||
<Files xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
|
||||
<d4p1:anyType i:type="FileInfo">
|
||||
<AbsolutePath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.2.209\avrasm\inc</AbsolutePath>
|
||||
<Attribute></Attribute>
|
||||
<Category>include</Category>
|
||||
<Condition>AVRASM</Condition>
|
||||
<FileContentHash i:nil="true" />
|
||||
<FileVersion></FileVersion>
|
||||
<Name>avrasm/inc</Name>
|
||||
<SelectString></SelectString>
|
||||
<SourcePath></SourcePath>
|
||||
</d4p1:anyType>
|
||||
<d4p1:anyType i:type="FileInfo">
|
||||
<AbsolutePath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.2.209\avrasm\inc\m128def.inc</AbsolutePath>
|
||||
<Attribute></Attribute>
|
||||
<Category>header</Category>
|
||||
<Condition>AVRASM</Condition>
|
||||
<FileContentHash>bd3TUV9UtxpdYQkn+6MWPA==</FileContentHash>
|
||||
<FileVersion></FileVersion>
|
||||
<Name>avrasm/inc/m128def.inc</Name>
|
||||
<SelectString></SelectString>
|
||||
<SourcePath></SourcePath>
|
||||
</d4p1:anyType>
|
||||
<d4p1:anyType i:type="FileInfo">
|
||||
<AbsolutePath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.2.209\avrasm\templates\main.asm</AbsolutePath>
|
||||
<Attribute>template</Attribute>
|
||||
<Category>source</Category>
|
||||
<Condition>AVRASM</Condition>
|
||||
<FileContentHash>3ELbTGaJNgggk9/rZzYTAg==</FileContentHash>
|
||||
<FileVersion></FileVersion>
|
||||
<Name>avrasm/templates/main.asm</Name>
|
||||
<SelectString>Main file (.asm)</SelectString>
|
||||
<SourcePath></SourcePath>
|
||||
</d4p1:anyType>
|
||||
</Files>
|
||||
<PackName>ATmega_DFP</PackName>
|
||||
<PackPath>C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.2.209/Atmel.ATmega_DFP.pdsc</PackPath>
|
||||
<PackVersion>1.2.209</PackVersion>
|
||||
<PresentInProject>true</PresentInProject>
|
||||
<ReferenceConditionId>ATmega128</ReferenceConditionId>
|
||||
<RteComponents xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
|
||||
<d4p1:string></d4p1:string>
|
||||
</RteComponents>
|
||||
<Status>Resolved</Status>
|
||||
<VersionMode>Fixed</VersionMode>
|
||||
<IsComponentInAtProject>true</IsComponentInAtProject>
|
||||
</ProjectComponent>
|
||||
</ProjectComponents>
|
||||
</Store>
|
||||
@@ -0,0 +1,27 @@
|
||||
:020000020000FC
|
||||
:0200000045C0F9
|
||||
:02000400A4C096
|
||||
:02000800BBC07B
|
||||
:020078003DC089
|
||||
:10008C000FEF0DBF00E10EBF00EF07BB00E001BB9F
|
||||
:10009C0003E002BB00E40093990003E00093980096
|
||||
:1000AC0008E900939A0002E000939B000EE0009395
|
||||
:1000BC009D000AE000936A0003E009BF40E648BBDC
|
||||
:1000CC000CD0552777277894FFCF00919B0005FF24
|
||||
:1000DC00FCCF05E500939C00089500919B0007FF61
|
||||
:1000EC00089500919C00F9CFF894733049F1009178
|
||||
:1000FC009C000535A1F4603019F0662755271FC008
|
||||
:10010C0000E908BB05E014E64ED00A95E1F703E0E0
|
||||
:10011C0008BF73957330A1F0E0DF48BB10C007FD3A
|
||||
:10012C0002C0502F0CC05A3151F4083F21F4CDDFDE
|
||||
:10013C0061E0552704C0402F440F48BB55277894E5
|
||||
:10014C001895F8947330A9F00F931F930FB70F9372
|
||||
:10015C0000E008BB14E627D000E208BB14E623D06D
|
||||
:10016C0048BB03E008BFB9DF0F910FBF1F910F9180
|
||||
:10017C0078941895F8947330A9F00F931F930FB7D8
|
||||
:10018C000F9300E008BB14E60ED000E408BB14E6A5
|
||||
:10019C000AD048BB03E008BFA0DF0F910FBF1F912F
|
||||
:1001AC000F91789418951F932F933F9330EE2DEE6B
|
||||
:1001BC002A95F1F73A95D9F71A95C1F73F912F91F6
|
||||
:0401CC001F910895E2
|
||||
:00000001FF
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,926 @@
|
||||
|
||||
AVRASM ver. 2.2.7 C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm Sun Nov 25 16:43:19 2018
|
||||
|
||||
|
||||
EQU SIGNATURE_000 0000001e
|
||||
EQU SIGNATURE_001 00000097
|
||||
EQU SIGNATURE_002 00000002
|
||||
EQU UCSR1C 0000009d
|
||||
EQU UDR1 0000009c
|
||||
EQU UCSR1A 0000009b
|
||||
EQU UCSR1B 0000009a
|
||||
EQU UBRR1H 00000098
|
||||
EQU UBRR1L 00000099
|
||||
EQU UCSR0C 00000095
|
||||
EQU UBRR0H 00000090
|
||||
EQU TCCR3C 0000008c
|
||||
EQU TCCR3A 0000008b
|
||||
EQU TCCR3B 0000008a
|
||||
EQU TCNT3L 00000088
|
||||
EQU TCNT3H 00000089
|
||||
EQU OCR3AL 00000086
|
||||
EQU OCR3AH 00000087
|
||||
EQU OCR3BL 00000084
|
||||
EQU OCR3BH 00000085
|
||||
EQU OCR3CL 00000082
|
||||
EQU OCR3CH 00000083
|
||||
EQU ICR3L 00000080
|
||||
EQU ICR3H 00000081
|
||||
EQU ETIMSK 0000007d
|
||||
EQU ETIFR 0000007c
|
||||
EQU TCCR1C 0000007a
|
||||
EQU OCR1CL 00000078
|
||||
EQU OCR1CH 00000079
|
||||
EQU TWCR 00000074
|
||||
EQU TWDR 00000073
|
||||
EQU TWAR 00000072
|
||||
EQU TWSR 00000071
|
||||
EQU TWBR 00000070
|
||||
EQU OSCCAL 0000006f
|
||||
EQU XMCRA 0000006d
|
||||
EQU XMCRB 0000006c
|
||||
EQU EICRA 0000006a
|
||||
EQU SPMCSR 00000068
|
||||
EQU PORTG 00000065
|
||||
EQU DDRG 00000064
|
||||
EQU PING 00000063
|
||||
EQU PORTF 00000062
|
||||
EQU DDRF 00000061
|
||||
EQU SREG 0000003f
|
||||
EQU SPL 0000003d
|
||||
EQU SPH 0000003e
|
||||
EQU XDIV 0000003c
|
||||
EQU RAMPZ 0000003b
|
||||
EQU EICRB 0000003a
|
||||
EQU EIMSK 00000039
|
||||
EQU EIFR 00000038
|
||||
EQU TIMSK 00000037
|
||||
EQU TIFR 00000036
|
||||
EQU MCUCR 00000035
|
||||
EQU MCUCSR 00000034
|
||||
EQU TCCR0 00000033
|
||||
EQU TCNT0 00000032
|
||||
EQU OCR0 00000031
|
||||
EQU ASSR 00000030
|
||||
EQU TCCR1A 0000002f
|
||||
EQU TCCR1B 0000002e
|
||||
EQU TCNT1L 0000002c
|
||||
EQU TCNT1H 0000002d
|
||||
EQU OCR1AL 0000002a
|
||||
EQU OCR1AH 0000002b
|
||||
EQU OCR1BL 00000028
|
||||
EQU OCR1BH 00000029
|
||||
EQU ICR1L 00000026
|
||||
EQU ICR1H 00000027
|
||||
EQU TCCR2 00000025
|
||||
EQU TCNT2 00000024
|
||||
EQU OCR2 00000023
|
||||
EQU OCDR 00000022
|
||||
EQU WDTCR 00000021
|
||||
EQU SFIOR 00000020
|
||||
EQU EEARL 0000001e
|
||||
EQU EEARH 0000001f
|
||||
EQU EEDR 0000001d
|
||||
EQU EECR 0000001c
|
||||
EQU PORTA 0000001b
|
||||
EQU DDRA 0000001a
|
||||
EQU PINA 00000019
|
||||
EQU PORTB 00000018
|
||||
EQU DDRB 00000017
|
||||
EQU PINB 00000016
|
||||
EQU PORTC 00000015
|
||||
EQU DDRC 00000014
|
||||
EQU PINC 00000013
|
||||
EQU PORTD 00000012
|
||||
EQU DDRD 00000011
|
||||
EQU PIND 00000010
|
||||
EQU SPDR 0000000f
|
||||
EQU SPSR 0000000e
|
||||
EQU SPCR 0000000d
|
||||
EQU UDR0 0000000c
|
||||
EQU UCSR0A 0000000b
|
||||
EQU UCSR0B 0000000a
|
||||
EQU UBRR0L 00000009
|
||||
EQU ACSR 00000008
|
||||
EQU ADMUX 00000007
|
||||
EQU ADCSRA 00000006
|
||||
EQU ADCH 00000005
|
||||
EQU ADCL 00000004
|
||||
EQU PORTE 00000003
|
||||
EQU DDRE 00000002
|
||||
EQU PINE 00000001
|
||||
EQU PINF 00000000
|
||||
EQU ACME 00000003
|
||||
EQU ACIS0 00000000
|
||||
EQU ACIS1 00000001
|
||||
EQU ACIC 00000002
|
||||
EQU ACIE 00000003
|
||||
EQU ACI 00000004
|
||||
EQU ACO 00000005
|
||||
EQU ACBG 00000006
|
||||
EQU ACD 00000007
|
||||
EQU SPDR0 00000000
|
||||
EQU SPDR1 00000001
|
||||
EQU SPDR2 00000002
|
||||
EQU SPDR3 00000003
|
||||
EQU SPDR4 00000004
|
||||
EQU SPDR5 00000005
|
||||
EQU SPDR6 00000006
|
||||
EQU SPDR7 00000007
|
||||
EQU SPI2X 00000000
|
||||
EQU WCOL 00000006
|
||||
EQU SPIF 00000007
|
||||
EQU SPR0 00000000
|
||||
EQU SPR1 00000001
|
||||
EQU CPHA 00000002
|
||||
EQU CPOL 00000003
|
||||
EQU MSTR 00000004
|
||||
EQU DORD 00000005
|
||||
EQU SPE 00000006
|
||||
EQU SPIE 00000007
|
||||
EQU I2BR 00000070
|
||||
EQU TWBR0 00000000
|
||||
EQU TWBR1 00000001
|
||||
EQU TWBR2 00000002
|
||||
EQU TWBR3 00000003
|
||||
EQU TWBR4 00000004
|
||||
EQU TWBR5 00000005
|
||||
EQU TWBR6 00000006
|
||||
EQU TWBR7 00000007
|
||||
EQU I2CR 00000074
|
||||
EQU TWIE 00000000
|
||||
EQU I2IE 00000000
|
||||
EQU TWEN 00000002
|
||||
EQU I2EN 00000002
|
||||
EQU ENI2C 00000002
|
||||
EQU TWWC 00000003
|
||||
EQU I2WC 00000003
|
||||
EQU TWSTO 00000004
|
||||
EQU I2STO 00000004
|
||||
EQU TWSTA 00000005
|
||||
EQU I2STA 00000005
|
||||
EQU TWEA 00000006
|
||||
EQU I2EA 00000006
|
||||
EQU TWINT 00000007
|
||||
EQU I2INT 00000007
|
||||
EQU I2SR 00000071
|
||||
EQU TWPS0 00000000
|
||||
EQU TWS0 00000000
|
||||
EQU I2GCE 00000000
|
||||
EQU TWPS1 00000001
|
||||
EQU TWS1 00000001
|
||||
EQU TWS3 00000003
|
||||
EQU I2S3 00000003
|
||||
EQU TWS4 00000004
|
||||
EQU I2S4 00000004
|
||||
EQU TWS5 00000005
|
||||
EQU I2S5 00000005
|
||||
EQU TWS6 00000006
|
||||
EQU I2S6 00000006
|
||||
EQU TWS7 00000007
|
||||
EQU I2S7 00000007
|
||||
EQU I2DR 00000073
|
||||
EQU TWD0 00000000
|
||||
EQU TWD1 00000001
|
||||
EQU TWD2 00000002
|
||||
EQU TWD3 00000003
|
||||
EQU TWD4 00000004
|
||||
EQU TWD5 00000005
|
||||
EQU TWD6 00000006
|
||||
EQU TWD7 00000007
|
||||
EQU I2AR 00000072
|
||||
EQU TWGCE 00000000
|
||||
EQU TWA0 00000001
|
||||
EQU TWA1 00000002
|
||||
EQU TWA2 00000003
|
||||
EQU TWA3 00000004
|
||||
EQU TWA4 00000005
|
||||
EQU TWA5 00000006
|
||||
EQU TWA6 00000007
|
||||
EQU UDR00 00000000
|
||||
EQU UDR01 00000001
|
||||
EQU UDR02 00000002
|
||||
EQU UDR03 00000003
|
||||
EQU UDR04 00000004
|
||||
EQU UDR05 00000005
|
||||
EQU UDR06 00000006
|
||||
EQU UDR07 00000007
|
||||
EQU MPCM0 00000000
|
||||
EQU U2X0 00000001
|
||||
EQU UPE0 00000002
|
||||
EQU DOR0 00000003
|
||||
EQU FE0 00000004
|
||||
EQU UDRE0 00000005
|
||||
EQU TXC0 00000006
|
||||
EQU RXC0 00000007
|
||||
EQU TXB80 00000000
|
||||
EQU RXB80 00000001
|
||||
EQU UCSZ02 00000002
|
||||
EQU UCSZ2 00000002
|
||||
EQU TXEN0 00000003
|
||||
EQU RXEN0 00000004
|
||||
EQU UDRIE0 00000005
|
||||
EQU TXCIE0 00000006
|
||||
EQU RXCIE0 00000007
|
||||
EQU UCPOL0 00000000
|
||||
EQU UCSZ00 00000001
|
||||
EQU UCSZ01 00000002
|
||||
EQU USBS0 00000003
|
||||
EQU UPM00 00000004
|
||||
EQU UPM01 00000005
|
||||
EQU UMSEL0 00000006
|
||||
EQU UBRR8 00000000
|
||||
EQU UBRR9 00000001
|
||||
EQU UBRR10 00000002
|
||||
EQU UBRR11 00000003
|
||||
EQU UBRR0 00000000
|
||||
EQU UBRR1 00000001
|
||||
EQU UBRR2 00000002
|
||||
EQU UBRR3 00000003
|
||||
EQU UBRR4 00000004
|
||||
EQU UBRR5 00000005
|
||||
EQU UBRR6 00000006
|
||||
EQU UBRR7 00000007
|
||||
EQU UDR10 00000000
|
||||
EQU UDR11 00000001
|
||||
EQU UDR12 00000002
|
||||
EQU UDR13 00000003
|
||||
EQU UDR14 00000004
|
||||
EQU UDR15 00000005
|
||||
EQU UDR16 00000006
|
||||
EQU UDR17 00000007
|
||||
EQU MPCM1 00000000
|
||||
EQU U2X1 00000001
|
||||
EQU UPE1 00000002
|
||||
EQU DOR1 00000003
|
||||
EQU FE1 00000004
|
||||
EQU UDRE1 00000005
|
||||
EQU TXC1 00000006
|
||||
EQU RXC1 00000007
|
||||
EQU TXB81 00000000
|
||||
EQU RXB81 00000001
|
||||
EQU UCSZ12 00000002
|
||||
EQU TXEN1 00000003
|
||||
EQU RXEN1 00000004
|
||||
EQU UDRIE1 00000005
|
||||
EQU TXCIE1 00000006
|
||||
EQU RXCIE1 00000007
|
||||
EQU UCPOL1 00000000
|
||||
EQU UCSZ10 00000001
|
||||
EQU UCSZ11 00000002
|
||||
EQU USBS1 00000003
|
||||
EQU UPM10 00000004
|
||||
EQU UPM11 00000005
|
||||
EQU UMSEL1 00000006
|
||||
EQU SREG_C 00000000
|
||||
EQU SREG_Z 00000001
|
||||
EQU SREG_N 00000002
|
||||
EQU SREG_V 00000003
|
||||
EQU SREG_S 00000004
|
||||
EQU SREG_H 00000005
|
||||
EQU SREG_T 00000006
|
||||
EQU SREG_I 00000007
|
||||
EQU IVCE 00000000
|
||||
EQU IVSEL 00000001
|
||||
EQU SM2 00000002
|
||||
EQU SM0 00000003
|
||||
EQU SM1 00000004
|
||||
EQU SE 00000005
|
||||
EQU SRW10 00000006
|
||||
EQU SRE 00000007
|
||||
EQU SRW11 00000001
|
||||
EQU SRW00 00000002
|
||||
EQU SRW01 00000003
|
||||
EQU SRL0 00000004
|
||||
EQU SRL1 00000005
|
||||
EQU SRL2 00000006
|
||||
EQU XMM0 00000000
|
||||
EQU XMM1 00000001
|
||||
EQU XMM2 00000002
|
||||
EQU XMBK 00000007
|
||||
EQU CAL0 00000000
|
||||
EQU CAL1 00000001
|
||||
EQU CAL2 00000002
|
||||
EQU CAL3 00000003
|
||||
EQU CAL4 00000004
|
||||
EQU CAL5 00000005
|
||||
EQU CAL6 00000006
|
||||
EQU CAL7 00000007
|
||||
EQU XDIV0 00000000
|
||||
EQU XDIV1 00000001
|
||||
EQU XDIV2 00000002
|
||||
EQU XDIV3 00000003
|
||||
EQU XDIV4 00000004
|
||||
EQU XDIV5 00000005
|
||||
EQU XDIV6 00000006
|
||||
EQU XDIVEN 00000007
|
||||
EQU PORF 00000000
|
||||
EQU EXTRF 00000001
|
||||
EQU BORF 00000002
|
||||
EQU WDRF 00000003
|
||||
EQU JTRF 00000004
|
||||
EQU JTD 00000007
|
||||
EQU RAMPZ0 00000000
|
||||
EQU SPMCR 00000068
|
||||
EQU SPMEN 00000000
|
||||
EQU PGERS 00000001
|
||||
EQU PGWRT 00000002
|
||||
EQU BLBSET 00000003
|
||||
EQU RWWSRE 00000004
|
||||
EQU ASRE 00000004
|
||||
EQU RWWSB 00000006
|
||||
EQU ASB 00000006
|
||||
EQU SPMIE 00000007
|
||||
EQU OCDR0 00000000
|
||||
EQU OCDR1 00000001
|
||||
EQU OCDR2 00000002
|
||||
EQU OCDR3 00000003
|
||||
EQU OCDR4 00000004
|
||||
EQU OCDR5 00000005
|
||||
EQU OCDR6 00000006
|
||||
EQU OCDR7 00000007
|
||||
EQU IDRD 00000007
|
||||
EQU PSR321 00000000
|
||||
EQU PSR1 00000000
|
||||
EQU PSR2 00000000
|
||||
EQU PSR3 00000000
|
||||
EQU PSR0 00000001
|
||||
EQU PUD 00000002
|
||||
EQU TSM 00000007
|
||||
EQU ISC00 00000000
|
||||
EQU ISC01 00000001
|
||||
EQU ISC10 00000002
|
||||
EQU ISC11 00000003
|
||||
EQU ISC20 00000004
|
||||
EQU ISC21 00000005
|
||||
EQU ISC30 00000006
|
||||
EQU ISC31 00000007
|
||||
EQU ISC40 00000000
|
||||
EQU ISC41 00000001
|
||||
EQU ISC50 00000002
|
||||
EQU ISC51 00000003
|
||||
EQU ISC60 00000004
|
||||
EQU ISC61 00000005
|
||||
EQU ISC70 00000006
|
||||
EQU ISC71 00000007
|
||||
EQU GICR 00000039
|
||||
EQU GIMSK 00000039
|
||||
EQU INT0 00000000
|
||||
EQU INT1 00000001
|
||||
EQU INT2 00000002
|
||||
EQU INT3 00000003
|
||||
EQU INT4 00000004
|
||||
EQU INT5 00000005
|
||||
EQU INT6 00000006
|
||||
EQU INT7 00000007
|
||||
EQU GIFR 00000038
|
||||
EQU INTF0 00000000
|
||||
EQU INTF1 00000001
|
||||
EQU INTF2 00000002
|
||||
EQU INTF3 00000003
|
||||
EQU INTF4 00000004
|
||||
EQU INTF5 00000005
|
||||
EQU INTF6 00000006
|
||||
EQU INTF7 00000007
|
||||
EQU EEDR0 00000000
|
||||
EQU EEDR1 00000001
|
||||
EQU EEDR2 00000002
|
||||
EQU EEDR3 00000003
|
||||
EQU EEDR4 00000004
|
||||
EQU EEDR5 00000005
|
||||
EQU EEDR6 00000006
|
||||
EQU EEDR7 00000007
|
||||
EQU EERE 00000000
|
||||
EQU EEWE 00000001
|
||||
EQU EEMWE 00000002
|
||||
EQU EERIE 00000003
|
||||
EQU PORTA0 00000000
|
||||
EQU PA0 00000000
|
||||
EQU PORTA1 00000001
|
||||
EQU PA1 00000001
|
||||
EQU PORTA2 00000002
|
||||
EQU PA2 00000002
|
||||
EQU PORTA3 00000003
|
||||
EQU PA3 00000003
|
||||
EQU PORTA4 00000004
|
||||
EQU PA4 00000004
|
||||
EQU PORTA5 00000005
|
||||
EQU PA5 00000005
|
||||
EQU PORTA6 00000006
|
||||
EQU PA6 00000006
|
||||
EQU PORTA7 00000007
|
||||
EQU PA7 00000007
|
||||
EQU DDA0 00000000
|
||||
EQU DDA1 00000001
|
||||
EQU DDA2 00000002
|
||||
EQU DDA3 00000003
|
||||
EQU DDA4 00000004
|
||||
EQU DDA5 00000005
|
||||
EQU DDA6 00000006
|
||||
EQU DDA7 00000007
|
||||
EQU PINA0 00000000
|
||||
EQU PINA1 00000001
|
||||
EQU PINA2 00000002
|
||||
EQU PINA3 00000003
|
||||
EQU PINA4 00000004
|
||||
EQU PINA5 00000005
|
||||
EQU PINA6 00000006
|
||||
EQU PINA7 00000007
|
||||
EQU PORTB0 00000000
|
||||
EQU PB0 00000000
|
||||
EQU PORTB1 00000001
|
||||
EQU PB1 00000001
|
||||
EQU PORTB2 00000002
|
||||
EQU PB2 00000002
|
||||
EQU PORTB3 00000003
|
||||
EQU PB3 00000003
|
||||
EQU PORTB4 00000004
|
||||
EQU PB4 00000004
|
||||
EQU PORTB5 00000005
|
||||
EQU PB5 00000005
|
||||
EQU PORTB6 00000006
|
||||
EQU PB6 00000006
|
||||
EQU PORTB7 00000007
|
||||
EQU PB7 00000007
|
||||
EQU DDB0 00000000
|
||||
EQU DDB1 00000001
|
||||
EQU DDB2 00000002
|
||||
EQU DDB3 00000003
|
||||
EQU DDB4 00000004
|
||||
EQU DDB5 00000005
|
||||
EQU DDB6 00000006
|
||||
EQU DDB7 00000007
|
||||
EQU PINB0 00000000
|
||||
EQU PINB1 00000001
|
||||
EQU PINB2 00000002
|
||||
EQU PINB3 00000003
|
||||
EQU PINB4 00000004
|
||||
EQU PINB5 00000005
|
||||
EQU PINB6 00000006
|
||||
EQU PINB7 00000007
|
||||
EQU PORTC0 00000000
|
||||
EQU PC0 00000000
|
||||
EQU PORTC1 00000001
|
||||
EQU PC1 00000001
|
||||
EQU PORTC2 00000002
|
||||
EQU PC2 00000002
|
||||
EQU PORTC3 00000003
|
||||
EQU PC3 00000003
|
||||
EQU PORTC4 00000004
|
||||
EQU PC4 00000004
|
||||
EQU PORTC5 00000005
|
||||
EQU PC5 00000005
|
||||
EQU PORTC6 00000006
|
||||
EQU PC6 00000006
|
||||
EQU PORTC7 00000007
|
||||
EQU PC7 00000007
|
||||
EQU DDC0 00000000
|
||||
EQU DDC1 00000001
|
||||
EQU DDC2 00000002
|
||||
EQU DDC3 00000003
|
||||
EQU DDC4 00000004
|
||||
EQU DDC5 00000005
|
||||
EQU DDC6 00000006
|
||||
EQU DDC7 00000007
|
||||
EQU PINC0 00000000
|
||||
EQU PINC1 00000001
|
||||
EQU PINC2 00000002
|
||||
EQU PINC3 00000003
|
||||
EQU PINC4 00000004
|
||||
EQU PINC5 00000005
|
||||
EQU PINC6 00000006
|
||||
EQU PINC7 00000007
|
||||
EQU PORTD0 00000000
|
||||
EQU PD0 00000000
|
||||
EQU PORTD1 00000001
|
||||
EQU PD1 00000001
|
||||
EQU PORTD2 00000002
|
||||
EQU PD2 00000002
|
||||
EQU PORTD3 00000003
|
||||
EQU PD3 00000003
|
||||
EQU PORTD4 00000004
|
||||
EQU PD4 00000004
|
||||
EQU PORTD5 00000005
|
||||
EQU PD5 00000005
|
||||
EQU PORTD6 00000006
|
||||
EQU PD6 00000006
|
||||
EQU PORTD7 00000007
|
||||
EQU PD7 00000007
|
||||
EQU DDD0 00000000
|
||||
EQU DDD1 00000001
|
||||
EQU DDD2 00000002
|
||||
EQU DDD3 00000003
|
||||
EQU DDD4 00000004
|
||||
EQU DDD5 00000005
|
||||
EQU DDD6 00000006
|
||||
EQU DDD7 00000007
|
||||
EQU PIND0 00000000
|
||||
EQU PIND1 00000001
|
||||
EQU PIND2 00000002
|
||||
EQU PIND3 00000003
|
||||
EQU PIND4 00000004
|
||||
EQU PIND5 00000005
|
||||
EQU PIND6 00000006
|
||||
EQU PIND7 00000007
|
||||
EQU PORTE0 00000000
|
||||
EQU PE0 00000000
|
||||
EQU PORTE1 00000001
|
||||
EQU PE1 00000001
|
||||
EQU PORTE2 00000002
|
||||
EQU PE2 00000002
|
||||
EQU PORTE3 00000003
|
||||
EQU PE3 00000003
|
||||
EQU PORTE4 00000004
|
||||
EQU PE4 00000004
|
||||
EQU PORTE5 00000005
|
||||
EQU PE5 00000005
|
||||
EQU PORTE6 00000006
|
||||
EQU PE6 00000006
|
||||
EQU PORTE7 00000007
|
||||
EQU PE7 00000007
|
||||
EQU DDE0 00000000
|
||||
EQU DDE1 00000001
|
||||
EQU DDE2 00000002
|
||||
EQU DDE3 00000003
|
||||
EQU DDE4 00000004
|
||||
EQU DDE5 00000005
|
||||
EQU DDE6 00000006
|
||||
EQU DDE7 00000007
|
||||
EQU PINE0 00000000
|
||||
EQU PINE1 00000001
|
||||
EQU PINE2 00000002
|
||||
EQU PINE3 00000003
|
||||
EQU PINE4 00000004
|
||||
EQU PINE5 00000005
|
||||
EQU PINE6 00000006
|
||||
EQU PINE7 00000007
|
||||
EQU PORTF0 00000000
|
||||
EQU PF0 00000000
|
||||
EQU PORTF1 00000001
|
||||
EQU PF1 00000001
|
||||
EQU PORTF2 00000002
|
||||
EQU PF2 00000002
|
||||
EQU PORTF3 00000003
|
||||
EQU PF3 00000003
|
||||
EQU PORTF4 00000004
|
||||
EQU PF4 00000004
|
||||
EQU PORTF5 00000005
|
||||
EQU PF5 00000005
|
||||
EQU PORTF6 00000006
|
||||
EQU PF6 00000006
|
||||
EQU PORTF7 00000007
|
||||
EQU PF7 00000007
|
||||
EQU DDF0 00000000
|
||||
EQU DDF1 00000001
|
||||
EQU DDF2 00000002
|
||||
EQU DDF3 00000003
|
||||
EQU DDF4 00000004
|
||||
EQU DDF5 00000005
|
||||
EQU DDF6 00000006
|
||||
EQU DDF7 00000007
|
||||
EQU PINF0 00000000
|
||||
EQU PINF1 00000001
|
||||
EQU PINF2 00000002
|
||||
EQU PINF3 00000003
|
||||
EQU PINF4 00000004
|
||||
EQU PINF5 00000005
|
||||
EQU PINF6 00000006
|
||||
EQU PINF7 00000007
|
||||
EQU PORTG0 00000000
|
||||
EQU PG0 00000000
|
||||
EQU PORTG1 00000001
|
||||
EQU PG1 00000001
|
||||
EQU PORTG2 00000002
|
||||
EQU PG2 00000002
|
||||
EQU PORTG3 00000003
|
||||
EQU PG3 00000003
|
||||
EQU PORTG4 00000004
|
||||
EQU PG4 00000004
|
||||
EQU DDG0 00000000
|
||||
EQU DDG1 00000001
|
||||
EQU DDG2 00000002
|
||||
EQU DDG3 00000003
|
||||
EQU DDG4 00000004
|
||||
EQU PING0 00000000
|
||||
EQU PING1 00000001
|
||||
EQU PING2 00000002
|
||||
EQU PING3 00000003
|
||||
EQU PING4 00000004
|
||||
EQU CS00 00000000
|
||||
EQU CS01 00000001
|
||||
EQU CS02 00000002
|
||||
EQU WGM01 00000003
|
||||
EQU CTC0 00000003
|
||||
EQU COM00 00000004
|
||||
EQU COM01 00000005
|
||||
EQU WGM00 00000006
|
||||
EQU PWM0 00000006
|
||||
EQU FOC0 00000007
|
||||
EQU TCNT0_0 00000000
|
||||
EQU TCNT0_1 00000001
|
||||
EQU TCNT0_2 00000002
|
||||
EQU TCNT0_3 00000003
|
||||
EQU TCNT0_4 00000004
|
||||
EQU TCNT0_5 00000005
|
||||
EQU TCNT0_6 00000006
|
||||
EQU TCNT0_7 00000007
|
||||
EQU OCR0_0 00000000
|
||||
EQU OCR0_1 00000001
|
||||
EQU OCR0_2 00000002
|
||||
EQU OCR0_3 00000003
|
||||
EQU OCR0_4 00000004
|
||||
EQU OCR0_5 00000005
|
||||
EQU OCR0_6 00000006
|
||||
EQU OCR0_7 00000007
|
||||
EQU TCR0UB 00000000
|
||||
EQU OCR0UB 00000001
|
||||
EQU TCN0UB 00000002
|
||||
EQU AS0 00000003
|
||||
EQU TOIE0 00000000
|
||||
EQU OCIE0 00000001
|
||||
EQU TOV0 00000000
|
||||
EQU OCF0 00000001
|
||||
EQU TOIE1 00000002
|
||||
EQU OCIE1B 00000003
|
||||
EQU OCIE1A 00000004
|
||||
EQU TICIE1 00000005
|
||||
EQU OCIE1C 00000000
|
||||
EQU TOV1 00000002
|
||||
EQU OCF1B 00000003
|
||||
EQU OCF1A 00000004
|
||||
EQU ICF1 00000005
|
||||
EQU OCF1C 00000000
|
||||
EQU WGM10 00000000
|
||||
EQU PWM10 00000000
|
||||
EQU WGM11 00000001
|
||||
EQU PWM11 00000001
|
||||
EQU COM1C0 00000002
|
||||
EQU COM1C1 00000003
|
||||
EQU COM1B0 00000004
|
||||
EQU COM1B1 00000005
|
||||
EQU COM1A0 00000006
|
||||
EQU COM1A1 00000007
|
||||
EQU CS10 00000000
|
||||
EQU CS11 00000001
|
||||
EQU CS12 00000002
|
||||
EQU WGM12 00000003
|
||||
EQU CTC10 00000003
|
||||
EQU WGM13 00000004
|
||||
EQU CTC11 00000004
|
||||
EQU ICES1 00000006
|
||||
EQU ICNC1 00000007
|
||||
EQU FOC1C 00000005
|
||||
EQU FOC1B 00000006
|
||||
EQU FOC1A 00000007
|
||||
EQU CS20 00000000
|
||||
EQU CS21 00000001
|
||||
EQU CS22 00000002
|
||||
EQU WGM21 00000003
|
||||
EQU CTC2 00000003
|
||||
EQU COM20 00000004
|
||||
EQU COM21 00000005
|
||||
EQU WGM20 00000006
|
||||
EQU PWM2 00000006
|
||||
EQU FOC2 00000007
|
||||
EQU TCNT2_0 00000000
|
||||
EQU TCNT2_1 00000001
|
||||
EQU TCNT2_2 00000002
|
||||
EQU TCNT2_3 00000003
|
||||
EQU TCNT2_4 00000004
|
||||
EQU TCNT2_5 00000005
|
||||
EQU TCNT2_6 00000006
|
||||
EQU TCNT2_7 00000007
|
||||
EQU OCR2_0 00000000
|
||||
EQU OCR2_1 00000001
|
||||
EQU OCR2_2 00000002
|
||||
EQU OCR2_3 00000003
|
||||
EQU OCR2_4 00000004
|
||||
EQU OCR2_5 00000005
|
||||
EQU OCR2_6 00000006
|
||||
EQU OCR2_7 00000007
|
||||
EQU TOIE2 00000006
|
||||
EQU OCIE2 00000007
|
||||
EQU TOV2 00000006
|
||||
EQU OCF2 00000007
|
||||
EQU OCIE3C 00000001
|
||||
EQU TOIE3 00000002
|
||||
EQU OCIE3B 00000003
|
||||
EQU OCIE3A 00000004
|
||||
EQU TICIE3 00000005
|
||||
EQU OCF3C 00000001
|
||||
EQU TOV3 00000002
|
||||
EQU OCF3B 00000003
|
||||
EQU OCF3A 00000004
|
||||
EQU ICF3 00000005
|
||||
EQU WGM30 00000000
|
||||
EQU PWM30 00000000
|
||||
EQU WGM31 00000001
|
||||
EQU PWM31 00000001
|
||||
EQU COM3C0 00000002
|
||||
EQU COM3C1 00000003
|
||||
EQU COM3B0 00000004
|
||||
EQU COM3B1 00000005
|
||||
EQU COM3A0 00000006
|
||||
EQU COM3A1 00000007
|
||||
EQU CS30 00000000
|
||||
EQU CS31 00000001
|
||||
EQU CS32 00000002
|
||||
EQU WGM32 00000003
|
||||
EQU CTC30 00000003
|
||||
EQU WGM33 00000004
|
||||
EQU CTC31 00000004
|
||||
EQU ICES3 00000006
|
||||
EQU ICNC3 00000007
|
||||
EQU FOC3C 00000005
|
||||
EQU FOC3B 00000006
|
||||
EQU FOC3A 00000007
|
||||
EQU TCN3L0 00000000
|
||||
EQU TCN3L1 00000001
|
||||
EQU TCN3L2 00000002
|
||||
EQU TCN3L3 00000003
|
||||
EQU TCN3L4 00000004
|
||||
EQU TCN3L5 00000005
|
||||
EQU TCN3L6 00000006
|
||||
EQU TCN3L7 00000007
|
||||
EQU WDTCSR 00000021
|
||||
EQU WDP0 00000000
|
||||
EQU WDP1 00000001
|
||||
EQU WDP2 00000002
|
||||
EQU WDE 00000003
|
||||
EQU WDCE 00000004
|
||||
EQU WDTOE 00000004
|
||||
EQU MUX0 00000000
|
||||
EQU MUX1 00000001
|
||||
EQU MUX2 00000002
|
||||
EQU MUX3 00000003
|
||||
EQU MUX4 00000004
|
||||
EQU ADLAR 00000005
|
||||
EQU REFS0 00000006
|
||||
EQU REFS1 00000007
|
||||
EQU ADCSR 00000006
|
||||
EQU ADPS0 00000000
|
||||
EQU ADPS1 00000001
|
||||
EQU ADPS2 00000002
|
||||
EQU ADIE 00000003
|
||||
EQU ADIF 00000004
|
||||
EQU ADFR 00000005
|
||||
EQU ADSC 00000006
|
||||
EQU ADEN 00000007
|
||||
EQU ADCH0 00000000
|
||||
EQU ADCH1 00000001
|
||||
EQU ADCH2 00000002
|
||||
EQU ADCH3 00000003
|
||||
EQU ADCH4 00000004
|
||||
EQU ADCH5 00000005
|
||||
EQU ADCH6 00000006
|
||||
EQU ADCH7 00000007
|
||||
EQU ADCL0 00000000
|
||||
EQU ADCL1 00000001
|
||||
EQU ADCL2 00000002
|
||||
EQU ADCL3 00000003
|
||||
EQU ADCL4 00000004
|
||||
EQU ADCL5 00000005
|
||||
EQU ADCL6 00000006
|
||||
EQU ADCL7 00000007
|
||||
EQU LB1 00000000
|
||||
EQU LB2 00000001
|
||||
EQU BLB01 00000002
|
||||
EQU BLB02 00000003
|
||||
EQU BLB11 00000004
|
||||
EQU BLB12 00000005
|
||||
EQU CKSEL0 00000000
|
||||
EQU CKSEL1 00000001
|
||||
EQU CKSEL2 00000002
|
||||
EQU CKSEL3 00000003
|
||||
EQU SUT0 00000004
|
||||
EQU SUT1 00000005
|
||||
EQU BODEN 00000006
|
||||
EQU BODLEVEL 00000007
|
||||
EQU BOOTRST 00000000
|
||||
EQU BOOTSZ0 00000001
|
||||
EQU BOOTSZ1 00000002
|
||||
EQU EESAVE 00000003
|
||||
EQU CKOPT 00000004
|
||||
EQU SPIEN 00000005
|
||||
EQU JTAGEN 00000006
|
||||
EQU OCDEN 00000007
|
||||
EQU WDTON 00000000
|
||||
EQU M103C 00000001
|
||||
DEF XH r27
|
||||
DEF XL r26
|
||||
DEF YH r29
|
||||
DEF YL r28
|
||||
DEF ZH r31
|
||||
DEF ZL r30
|
||||
EQU FLASHEND 0000ffff
|
||||
EQU IOEND 000000ff
|
||||
EQU SRAM_START 00000100
|
||||
EQU SRAM_SIZE 00001000
|
||||
EQU RAMEND 000010ff
|
||||
EQU XRAMEND 0000ffff
|
||||
EQU E2END 00000fff
|
||||
EQU EEPROMEND 00000fff
|
||||
EQU EEADRBITS 0000000c
|
||||
EQU NRWW_START_ADDR 0000f000
|
||||
EQU NRWW_STOP_ADDR 0000ffff
|
||||
EQU RWW_START_ADDR 00000000
|
||||
EQU RWW_STOP_ADDR 0000efff
|
||||
EQU PAGESIZE 00000080
|
||||
EQU FIRSTBOOTSTART 0000fe00
|
||||
EQU SECONDBOOTSTART 0000fc00
|
||||
EQU THIRDBOOTSTART 0000f800
|
||||
EQU FOURTHBOOTSTART 0000f000
|
||||
EQU SMALLBOOTSTART 0000fe00
|
||||
EQU LARGEBOOTSTART 0000f000
|
||||
EQU INT0addr 00000002
|
||||
EQU INT1addr 00000004
|
||||
EQU INT2addr 00000006
|
||||
EQU INT3addr 00000008
|
||||
EQU INT4addr 0000000a
|
||||
EQU INT5addr 0000000c
|
||||
EQU INT6addr 0000000e
|
||||
EQU INT7addr 00000010
|
||||
EQU OC2addr 00000012
|
||||
EQU OVF2addr 00000014
|
||||
EQU ICP1addr 00000016
|
||||
EQU OC1Aaddr 00000018
|
||||
EQU OC1Baddr 0000001a
|
||||
EQU OVF1addr 0000001c
|
||||
EQU OC0addr 0000001e
|
||||
EQU OVF0addr 00000020
|
||||
EQU SPIaddr 00000022
|
||||
EQU URXC0addr 00000024
|
||||
EQU UDRE0addr 00000026
|
||||
EQU UTXC0addr 00000028
|
||||
EQU ADCCaddr 0000002a
|
||||
EQU ERDYaddr 0000002c
|
||||
EQU ACIaddr 0000002e
|
||||
EQU OC1Caddr 00000030
|
||||
EQU ICP3addr 00000032
|
||||
EQU OC3Aaddr 00000034
|
||||
EQU OC3Baddr 00000036
|
||||
EQU OC3Caddr 00000038
|
||||
EQU OVF3addr 0000003a
|
||||
EQU URXC1addr 0000003c
|
||||
EQU UDRE1addr 0000003e
|
||||
EQU UTXC1addr 00000040
|
||||
EQU TWIaddr 00000042
|
||||
EQU SPMRaddr 00000044
|
||||
EQU INT_VECTORS_SIZE 00000046
|
||||
DEF mpr r16
|
||||
DEF waitcnt r17
|
||||
DEF ilcnt r18
|
||||
DEF olcnt r19
|
||||
DEF cmd_reg r20
|
||||
DEF addr_reg r21
|
||||
DEF freeze_sent_reg r22
|
||||
DEF freeze_count_reg r23
|
||||
EQU WTime 00000064
|
||||
EQU WskrR 00000000
|
||||
EQU WskrL 00000001
|
||||
EQU RXD1 00000002
|
||||
EQU EngEnR 00000004
|
||||
EQU EngEnL 00000007
|
||||
EQU EngDirR 00000005
|
||||
EQU EngDirL 00000006
|
||||
EQU BotAddress 0000001a
|
||||
EQU MovFwd 00000060
|
||||
EQU MovBck 00000000
|
||||
EQU TurnR 00000040
|
||||
EQU TurnL 00000020
|
||||
EQU Halt 00000090
|
||||
EQU MovFwdCmd 000000b0
|
||||
EQU MovBckCmd 00000080
|
||||
EQU TurnRCmd 000000a0
|
||||
EQU TurnLCmd 00000090
|
||||
EQU HaltCmd 000000c8
|
||||
EQU FreezeCmd 000000f8
|
||||
EQU FreezeOthersCmd 00000055
|
||||
EQU ubrr_low 00000040
|
||||
EQU ubrr_high 00000003
|
||||
EQU InterruptsFallingEdge 0000000a
|
||||
EQU InterruptMasksEnabled 00000003
|
||||
EQU InterruptMasksDisabled 00000000
|
||||
EQU InterruptFlagRegisterClear 00000003
|
||||
EQU cmd_addr_bit 00000007
|
||||
EQU freezes_to_perm_halt 00000003
|
||||
CSEG INIT 00000046
|
||||
CSEG HitRight 000000a7
|
||||
CSEG HitLeft 000000c0
|
||||
CSEG RX1_DATA_RECEIVED 0000007a
|
||||
CSEG USART_Flush 00000073
|
||||
CSEG MAIN 0000006a
|
||||
CSEG SendFreezeOthers 0000006b
|
||||
CSEG RX1_DATA_RECV_END_NO_INT 000000a6
|
||||
CSEG RX1_DATA_RECV_ADDR 00000095
|
||||
CSEG RX1_PROCESS_FREEZE 00000086
|
||||
CSEG RX1_DATA_RECV_END 000000a5
|
||||
CSEG RX1_FREEZE_LOOP 00000089
|
||||
CSEG Wait 000000d9
|
||||
CSEG RX1_DATA_RECV_COMMAND 00000099
|
||||
CSEG RX1_REG_COMMAND 000000a1
|
||||
CSEG HitRightEnd 000000bf
|
||||
CSEG HitLeftEnd 000000d8
|
||||
CSEG Loop 000000dc
|
||||
CSEG OLoop 000000dd
|
||||
CSEG ILoop 000000de
|
||||
Binary file not shown.
@@ -0,0 +1,46 @@
|
||||
<ASSEMBLER_INFO>
|
||||
<VERSION>2.2.7</VERSION>
|
||||
<DEVICE>"ATmega128"</DEVICE>
|
||||
<WORKING_DIR>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Debug</WORKING_DIR>
|
||||
<INCLUDE_PATH>
|
||||
<DIR>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.2.209\avrasm\inc</DIR>
|
||||
<DIR>C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avrassembler\Include</DIR>
|
||||
<DIR></DIR>
|
||||
</INCLUDE_PATH>
|
||||
<SOURCE_FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</SOURCE_FILE>
|
||||
<INCLUDED_FILES>
|
||||
<FILE>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.2.209\avrasm\inc\m128def.inc</FILE>
|
||||
</INCLUDED_FILES>
|
||||
<OBJECT_FILES>
|
||||
<FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Debug\Corwin_Perren_Lab8_robot_sourcecode.obj</FILE>
|
||||
</OBJECT_FILES>
|
||||
<HEX_FILES>
|
||||
<FILE>Corwin_Perren_Lab8_robot_sourcecode.hex</FILE>
|
||||
</HEX_FILES>
|
||||
<OUTPUT_FILES>
|
||||
<FILE>Corwin_Perren_Lab8_robot_sourcecode.map</FILE>
|
||||
<FILE>Corwin_Perren_Lab8_robot_sourcecode.lss</FILE>
|
||||
</OUTPUT_FILES>
|
||||
<LABELS>
|
||||
<INIT><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>117</LINE></INIT>
|
||||
<HitRight><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>306</LINE></HitRight>
|
||||
<HitLeft><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>351</LINE></HitLeft>
|
||||
<RX1_DATA_RECEIVED><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>219</LINE></RX1_DATA_RECEIVED>
|
||||
<USART_Flush><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>208</LINE></USART_Flush>
|
||||
<MAIN><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>185</LINE></MAIN>
|
||||
<SendFreezeOthers><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>195</LINE></SendFreezeOthers>
|
||||
<RX1_DATA_RECV_END_NO_INT><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>299</LINE></RX1_DATA_RECV_END_NO_INT>
|
||||
<RX1_DATA_RECV_ADDR><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>266</LINE></RX1_DATA_RECV_ADDR>
|
||||
<RX1_PROCESS_FREEZE><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>240</LINE></RX1_PROCESS_FREEZE>
|
||||
<RX1_DATA_RECV_END><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>296</LINE></RX1_DATA_RECV_END>
|
||||
<RX1_FREEZE_LOOP><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>246</LINE></RX1_FREEZE_LOOP>
|
||||
<Wait><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>400</LINE></Wait>
|
||||
<RX1_DATA_RECV_COMMAND><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>274</LINE></RX1_DATA_RECV_COMMAND>
|
||||
<RX1_REG_COMMAND><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>288</LINE></RX1_REG_COMMAND>
|
||||
<HitRightEnd><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>344</LINE></HitRightEnd>
|
||||
<HitLeftEnd><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>389</LINE></HitLeftEnd>
|
||||
<Loop><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>405</LINE></Loop>
|
||||
<OLoop><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>406</LINE></OLoop>
|
||||
<ILoop><FILE>C:\Users\caperren\Github\ECE_375\Labs\Lab 8\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode\Corwin_Perren_Lab8_robot_sourcecode.asm</FILE><LINE>407</LINE></ILoop>
|
||||
</LABELS>
|
||||
</ASSEMBLER_INFO>
|
||||
Reference in New Issue
Block a user