20130326-182550
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Atmel Studio Solution File, Format Version 11.00
|
||||
Project("{54F91283-7BC4-4236-8FF9-10F437C3AD48}") = "Reciver", "Reciver\Reciver.cproj", "{762E00F9-912F-4C48-851F-1F51C060E5AE}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|AVR = Debug|AVR
|
||||
Release|AVR = Release|AVR
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{762E00F9-912F-4C48-851F-1F51C060E5AE}.Debug|AVR.ActiveCfg = Debug|AVR
|
||||
{762E00F9-912F-4C48-851F-1F51C060E5AE}.Debug|AVR.Build.0 = Debug|AVR
|
||||
{762E00F9-912F-4C48-851F-1F51C060E5AE}.Release|AVR.ActiveCfg = Release|AVR
|
||||
{762E00F9-912F-4C48-851F-1F51C060E5AE}.Release|AVR.Build.0 = Release|AVR
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
Binary file not shown.
@@ -0,0 +1,130 @@
|
||||
################################################################################
|
||||
# Automatically-generated file. Do not edit!
|
||||
################################################################################
|
||||
|
||||
SHELL := cmd.exe
|
||||
RM := rm -rf
|
||||
|
||||
USER_OBJS :=
|
||||
|
||||
LIBS :=
|
||||
PROJ :=
|
||||
|
||||
O_SRCS :=
|
||||
C_SRCS :=
|
||||
S_SRCS :=
|
||||
S_UPPER_SRCS :=
|
||||
OBJ_SRCS :=
|
||||
ASM_SRCS :=
|
||||
PREPROCESSING_SRCS :=
|
||||
OBJS :=
|
||||
OBJS_AS_ARGS :=
|
||||
C_DEPS :=
|
||||
C_DEPS_AS_ARGS :=
|
||||
EXECUTABLES :=
|
||||
OUTPUT_FILE_PATH :=
|
||||
OUTPUT_FILE_PATH_AS_ARGS :=
|
||||
AVR_APP_PATH :=$$$AVR_APP_PATH$$$
|
||||
QUOTE := "
|
||||
ADDITIONAL_DEPENDENCIES:=
|
||||
OUTPUT_FILE_DEP:=
|
||||
|
||||
# Every subdirectory with source files must be described here
|
||||
SUBDIRS :=
|
||||
|
||||
|
||||
# Add inputs and outputs from these tool invocations to the build variables
|
||||
C_SRCS += \
|
||||
../Reciver.c \
|
||||
../rf12.c
|
||||
|
||||
|
||||
PREPROCESSING_SRCS +=
|
||||
|
||||
|
||||
ASM_SRCS +=
|
||||
|
||||
|
||||
OBJS += \
|
||||
Reciver.o \
|
||||
rf12.o
|
||||
|
||||
|
||||
OBJS_AS_ARGS += \
|
||||
Reciver.o \
|
||||
rf12.o
|
||||
|
||||
|
||||
C_DEPS += \
|
||||
Reciver.d \
|
||||
rf12.d
|
||||
|
||||
|
||||
C_DEPS_AS_ARGS += \
|
||||
Reciver.d \
|
||||
rf12.d
|
||||
|
||||
|
||||
OUTPUT_FILE_PATH +=Reciver.elf
|
||||
|
||||
OUTPUT_FILE_PATH_AS_ARGS +=Reciver.elf
|
||||
|
||||
ADDITIONAL_DEPENDENCIES:=
|
||||
|
||||
OUTPUT_FILE_DEP:= ./makedep.mk
|
||||
|
||||
# AVR32/GNU C Compiler
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
./%.o: .././%.c
|
||||
@echo Building file: $<
|
||||
@echo Invoking: AVR/GNU C Compiler : (AVR_8_bit_GNU_Toolchain_3.4.1_830) 4.6.2
|
||||
$(QUOTE)E:\Programme\Atmel\Atmel Studio 6.0\extensions\Atmel\AVRGCC\3.4.1.95\AVRToolchain\bin\avr-gcc.exe$(QUOTE) -funsigned-char -funsigned-bitfields -O1 -fpack-struct -fshort-enums -g2 -Wall -c -std=gnu99 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" -mmcu=atmega16a -o"$@" "$<"
|
||||
@echo Finished building: $<
|
||||
|
||||
|
||||
|
||||
# AVR32/GNU Preprocessing Assembler
|
||||
|
||||
|
||||
|
||||
# AVR32/GNU Assembler
|
||||
|
||||
|
||||
|
||||
|
||||
ifneq ($(MAKECMDGOALS),clean)
|
||||
ifneq ($(strip $(C_DEPS)),)
|
||||
-include $(C_DEPS)
|
||||
endif
|
||||
endif
|
||||
|
||||
# Add inputs and outputs from these tool invocations to the build variables
|
||||
|
||||
# All Target
|
||||
all: $(OUTPUT_FILE_PATH) $(ADDITIONAL_DEPENDENCIES)
|
||||
|
||||
$(OUTPUT_FILE_PATH): $(OBJS) $(USER_OBJS) $(OUTPUT_FILE_DEP)
|
||||
@echo Building target: $@
|
||||
@echo Invoking: AVR/GNU Linker : (AVR_8_bit_GNU_Toolchain_3.4.1_830) 4.6.2
|
||||
$(QUOTE)E:\Programme\Atmel\Atmel Studio 6.0\extensions\Atmel\AVRGCC\3.4.1.95\AVRToolchain\bin\avr-gcc.exe$(QUOTE) -o$(OUTPUT_FILE_PATH_AS_ARGS) $(OBJS_AS_ARGS) $(USER_OBJS) $(LIBS) -Wl,-Map="Reciver.map" -Wl,--start-group -Wl,-lm -Wl,--end-group -mmcu=atmega16a
|
||||
@echo Finished building target: $@
|
||||
"E:\Programme\Atmel\Atmel Studio 6.0\extensions\Atmel\AVRGCC\3.4.1.95\AVRToolchain\bin\avr-objcopy.exe" -O ihex -R .eeprom -R .fuse -R .lock -R .signature "Reciver.elf" "Reciver.hex"
|
||||
"E:\Programme\Atmel\Atmel Studio 6.0\extensions\Atmel\AVRGCC\3.4.1.95\AVRToolchain\bin\avr-objcopy.exe" -j .eeprom --set-section-flags=.eeprom=alloc,load --change-section-lma .eeprom=0 --no-change-warnings -O ihex "Reciver.elf" "Reciver.eep" || exit 0
|
||||
"E:\Programme\Atmel\Atmel Studio 6.0\extensions\Atmel\AVRGCC\3.4.1.95\AVRToolchain\bin\avr-objdump.exe" -h -S "Reciver.elf" > "Reciver.lss"
|
||||
"E:\Programme\Atmel\Atmel Studio 6.0\extensions\Atmel\AVRGCC\3.4.1.95\AVRToolchain\bin\avr-objcopy.exe" -O srec -R .eeprom -R .fuse -R .lock -R .signature "Reciver.elf" "Reciver.srec"
|
||||
"E:\Programme\Atmel\Atmel Studio 6.0\extensions\Atmel\AVRGCC\3.4.1.95\AVRToolchain\bin\avr-size.exe" "Reciver.elf"
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# Other Targets
|
||||
clean:
|
||||
-$(RM) $(OBJS_AS_ARGS)$(C_DEPS_AS_ARGS) $(EXECUTABLES)
|
||||
rm -rf "Reciver.elf" "Reciver.a" "Reciver.hex" "Reciver.lss" "Reciver.eep" "Reciver.map" "Reciver.srec"
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
Reciver.d Reciver.o: .././Reciver.c \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/io.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/sfr_defs.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/inttypes.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/include/stdint.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/stdint.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/iom16a.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/portpins.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/common.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/version.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/fuse.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/lock.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/util/delay.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/util/delay_basic.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/math.h \
|
||||
.././rf12.h
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/io.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/sfr_defs.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/inttypes.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/include/stdint.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/stdint.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/iom16a.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/portpins.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/common.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/version.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/fuse.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/lock.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/util/delay.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/util/delay_basic.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/math.h:
|
||||
|
||||
.././rf12.h:
|
||||
@@ -0,0 +1 @@
|
||||
:00000001FF
|
||||
Binary file not shown.
@@ -0,0 +1,65 @@
|
||||
:100000000C942A000C9447000C9447000C94470071
|
||||
:100010000C9447000C9447000C9447000C94470044
|
||||
:100020000C9447000C9447000C9447000C94470034
|
||||
:100030000C9447000C9447000C9447000C94470024
|
||||
:100040000C9447000C9447000C9447000C94470014
|
||||
:100050000C94470011241FBECFE5D4E0DEBFCDBF16
|
||||
:1000600010E0A0E6B0E0E8EFF3E002C005900D92EA
|
||||
:10007000A036B107D9F710E0A0E6B0E001C01D92AC
|
||||
:10008000A036B107E1F70E9481000C94FA010C94AC
|
||||
:100090000000CF93DF9300D0CDB7DEB719821A826C
|
||||
:1000A000CE01019662E00E948D018981873359F467
|
||||
:1000B0008A81833641F4C09A8FE39CE90197F1F776
|
||||
:1000C00000C00000C0980F900F90DF91CF9108956D
|
||||
:1000D000CF93DF930F92CDB7DEB781E08983CE0156
|
||||
:1000E000019661E00E9445018FEF90E7A2E0815008
|
||||
:1000F0009040A040E1F700C000000F90DF91CF9149
|
||||
:1001000008950E94B10080E296E00E94F90081E02B
|
||||
:1001100060E047E00E94DB0080E895E20E94090170
|
||||
:1001200080E066E00E943001B89A0E944900FDCF4D
|
||||
:10013000939840E120E030E0992314F4959A01C0AF
|
||||
:100140009598220F331F86992160949A880F991FE2
|
||||
:1001500000C000009498415079F7939A822F932F12
|
||||
:10016000089588E381BB88E082BB8FEF90E7A2E02F
|
||||
:1001700081509040A040E1F700C0000080EE90EC7C
|
||||
:100180000E94980087ED90E80E9498008BEA92EC1C
|
||||
:100190000E94980081E89AEC0E94980080E090EE1E
|
||||
:1001A0000E94980080E098EC0E94980087EF94EC01
|
||||
:1001B0000E949800089590E0880F991F829592956B
|
||||
:1001C000907F9827807F9827907050E047705070FC
|
||||
:1001D000842B952B946970E063707070660F771FA5
|
||||
:1001E000660F771F660F771F862B972B0E9498004C
|
||||
:1001F00008958036910538F02FE08034920728F07A
|
||||
:100200008FE39FE002C080E690E0906A0E94980031
|
||||
:10021000089522E08739920710F125E1883192078D
|
||||
:1002200080F49C0140E050E060E678EA80E090E0F5
|
||||
:100230000E94DF01C90101978068966C0E949800B6
|
||||
:1002400008959C0140E050E06CEF72E485E090E09E
|
||||
:100250000E94BD01C9010197966C0E949800089503
|
||||
:1002600090E087709070986970E062957295707FE9
|
||||
:100270007627607F76277070862B972B0E949800D8
|
||||
:1002800008959398869BFECF08950F931F93CF9365
|
||||
:10029000DF938C01C62F88E392E80E9498000E94A9
|
||||
:1002A00041018AEA98EB0E9498000E9441018AEA83
|
||||
:1002B00098EB0E9498000E9441018AEA98EB0E9404
|
||||
:1002C00098000E9441018DE298EB0E9498000E94E4
|
||||
:1002D000410184ED98EB0E949800CC2399F0C8016D
|
||||
:1002E0000196C1509C012C0F311DE9010E94410172
|
||||
:1002F000F80181918F0190E0986B0E9498000C1793
|
||||
:100300001D07A1F70E94410188E092E80E94980031
|
||||
:10031000DF91CF911F910F9108950F931F93CF936A
|
||||
:10032000DF938C01D62F88EC92E80E94980081E838
|
||||
:100330009AEC0E94980083E89AEC0E949800DD23D2
|
||||
:1003400099F0C8010196D1509C012D0F311DE90192
|
||||
:100350000E94410180E090EB0E949800F801819397
|
||||
:100360008F01EC17FD07A1F788E092E80E94980042
|
||||
:10037000DF91CF911F910F910895A1E21A2EAA1B30
|
||||
:10038000BB1BFD010DC0AA1FBB1FEE1FFF1FA21745
|
||||
:10039000B307E407F50720F0A21BB30BE40BF50B42
|
||||
:1003A000661F771F881F991F1A9469F760957095CB
|
||||
:1003B000809590959B01AC01BD01CF01089597FBFD
|
||||
:1003C000092E05260ED057FD04D0D7DF0AD0001C19
|
||||
:1003D00038F450954095309521953F4F4F4F5F4FE2
|
||||
:1003E0000895F6F790958095709561957F4F8F4FA2
|
||||
:0803F0009F4F0895F894FFCF20
|
||||
:00000001FF
|
||||
@@ -0,0 +1,739 @@
|
||||
|
||||
Reciver.elf: file format elf32-avr
|
||||
|
||||
Sections:
|
||||
Idx Name Size VMA LMA File off Algn
|
||||
0 .text 000003f8 00000000 00000000 00000074 2**1
|
||||
CONTENTS, ALLOC, LOAD, READONLY, CODE
|
||||
1 .data 00000000 00800060 000003f8 0000046c 2**0
|
||||
CONTENTS, ALLOC, LOAD, DATA
|
||||
2 .stab 000006cc 00000000 00000000 0000046c 2**2
|
||||
CONTENTS, READONLY, DEBUGGING
|
||||
3 .stabstr 00000085 00000000 00000000 00000b38 2**0
|
||||
CONTENTS, READONLY, DEBUGGING
|
||||
4 .debug_aranges 000000e0 00000000 00000000 00000bc0 2**3
|
||||
CONTENTS, READONLY, DEBUGGING
|
||||
5 .debug_info 00000989 00000000 00000000 00000ca0 2**0
|
||||
CONTENTS, READONLY, DEBUGGING
|
||||
6 .debug_abbrev 000002ea 00000000 00000000 00001629 2**0
|
||||
CONTENTS, READONLY, DEBUGGING
|
||||
7 .debug_line 00000662 00000000 00000000 00001913 2**0
|
||||
CONTENTS, READONLY, DEBUGGING
|
||||
8 .debug_frame 00000130 00000000 00000000 00001f78 2**2
|
||||
CONTENTS, READONLY, DEBUGGING
|
||||
9 .debug_str 000001ca 00000000 00000000 000020a8 2**0
|
||||
CONTENTS, READONLY, DEBUGGING
|
||||
10 .debug_loc 00000384 00000000 00000000 00002272 2**0
|
||||
CONTENTS, READONLY, DEBUGGING
|
||||
|
||||
Disassembly of section .text:
|
||||
|
||||
00000000 <__vectors>:
|
||||
0: 0c 94 2a 00 jmp 0x54 ; 0x54 <__ctors_end>
|
||||
4: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
8: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
c: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
10: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
14: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
18: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
1c: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
20: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
24: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
28: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
2c: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
30: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
34: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
38: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
3c: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
40: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
44: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
48: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
4c: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
50: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
|
||||
|
||||
00000054 <__ctors_end>:
|
||||
54: 11 24 eor r1, r1
|
||||
56: 1f be out 0x3f, r1 ; 63
|
||||
58: cf e5 ldi r28, 0x5F ; 95
|
||||
5a: d4 e0 ldi r29, 0x04 ; 4
|
||||
5c: de bf out 0x3e, r29 ; 62
|
||||
5e: cd bf out 0x3d, r28 ; 61
|
||||
|
||||
00000060 <__do_copy_data>:
|
||||
60: 10 e0 ldi r17, 0x00 ; 0
|
||||
62: a0 e6 ldi r26, 0x60 ; 96
|
||||
64: b0 e0 ldi r27, 0x00 ; 0
|
||||
66: e8 ef ldi r30, 0xF8 ; 248
|
||||
68: f3 e0 ldi r31, 0x03 ; 3
|
||||
6a: 02 c0 rjmp .+4 ; 0x70 <__do_copy_data+0x10>
|
||||
6c: 05 90 lpm r0, Z+
|
||||
6e: 0d 92 st X+, r0
|
||||
70: a0 36 cpi r26, 0x60 ; 96
|
||||
72: b1 07 cpc r27, r17
|
||||
74: d9 f7 brne .-10 ; 0x6c <__do_copy_data+0xc>
|
||||
|
||||
00000076 <__do_clear_bss>:
|
||||
76: 10 e0 ldi r17, 0x00 ; 0
|
||||
78: a0 e6 ldi r26, 0x60 ; 96
|
||||
7a: b0 e0 ldi r27, 0x00 ; 0
|
||||
7c: 01 c0 rjmp .+2 ; 0x80 <.do_clear_bss_start>
|
||||
|
||||
0000007e <.do_clear_bss_loop>:
|
||||
7e: 1d 92 st X+, r1
|
||||
|
||||
00000080 <.do_clear_bss_start>:
|
||||
80: a0 36 cpi r26, 0x60 ; 96
|
||||
82: b1 07 cpc r27, r17
|
||||
84: e1 f7 brne .-8 ; 0x7e <.do_clear_bss_loop>
|
||||
86: 0e 94 81 00 call 0x102 ; 0x102 <main>
|
||||
8a: 0c 94 fa 01 jmp 0x3f4 ; 0x3f4 <_exit>
|
||||
|
||||
0000008e <__bad_interrupt>:
|
||||
8e: 0c 94 00 00 jmp 0 ; 0x0 <__vectors>
|
||||
|
||||
00000092 <recive>:
|
||||
|
||||
#include <avr/io.h>
|
||||
#include <util/delay.h>
|
||||
#include "rf12.h"
|
||||
|
||||
void recive() {
|
||||
92: cf 93 push r28
|
||||
94: df 93 push r29
|
||||
96: 00 d0 rcall .+0 ; 0x98 <recive+0x6>
|
||||
98: cd b7 in r28, 0x3d ; 61
|
||||
9a: de b7 in r29, 0x3e ; 62
|
||||
unsigned char text[2];
|
||||
text[0] = 0;
|
||||
9c: 19 82 std Y+1, r1 ; 0x01
|
||||
text[1] = 0;
|
||||
9e: 1a 82 std Y+2, r1 ; 0x02
|
||||
rf12_rxdata(text,2);
|
||||
a0: ce 01 movw r24, r28
|
||||
a2: 01 96 adiw r24, 0x01 ; 1
|
||||
a4: 62 e0 ldi r22, 0x02 ; 2
|
||||
a6: 0e 94 8d 01 call 0x31a ; 0x31a <rf12_rxdata>
|
||||
if(text[0] == 55 && text[1] == 99) {
|
||||
aa: 89 81 ldd r24, Y+1 ; 0x01
|
||||
ac: 87 33 cpi r24, 0x37 ; 55
|
||||
ae: 59 f4 brne .+22 ; 0xc6 <recive+0x34>
|
||||
b0: 8a 81 ldd r24, Y+2 ; 0x02
|
||||
b2: 83 36 cpi r24, 0x63 ; 99
|
||||
b4: 41 f4 brne .+16 ; 0xc6 <recive+0x34>
|
||||
PORTB |= (1<<PB0);
|
||||
b6: c0 9a sbi 0x18, 0 ; 24
|
||||
#else
|
||||
//round up by default
|
||||
__ticks_dc = (uint32_t)(ceil(fabs(__tmp)));
|
||||
#endif
|
||||
|
||||
__builtin_avr_delay_cycles(__ticks_dc);
|
||||
b8: 8f e3 ldi r24, 0x3F ; 63
|
||||
ba: 9c e9 ldi r25, 0x9C ; 156
|
||||
bc: 01 97 sbiw r24, 0x01 ; 1
|
||||
be: f1 f7 brne .-4 ; 0xbc <recive+0x2a>
|
||||
c0: 00 c0 rjmp .+0 ; 0xc2 <recive+0x30>
|
||||
c2: 00 00 nop
|
||||
_delay_ms(20);
|
||||
PORTB &= ~(1<<PB0);
|
||||
c4: c0 98 cbi 0x18, 0 ; 24
|
||||
}
|
||||
}
|
||||
c6: 0f 90 pop r0
|
||||
c8: 0f 90 pop r0
|
||||
ca: df 91 pop r29
|
||||
cc: cf 91 pop r28
|
||||
ce: 08 95 ret
|
||||
|
||||
000000d0 <send>:
|
||||
|
||||
void send() {
|
||||
d0: cf 93 push r28
|
||||
d2: df 93 push r29
|
||||
d4: 0f 92 push r0
|
||||
d6: cd b7 in r28, 0x3d ; 61
|
||||
d8: de b7 in r29, 0x3e ; 62
|
||||
unsigned char text[1] = {0x01};
|
||||
da: 81 e0 ldi r24, 0x01 ; 1
|
||||
dc: 89 83 std Y+1, r24 ; 0x01
|
||||
rf12_txdata(text,1);
|
||||
de: ce 01 movw r24, r28
|
||||
e0: 01 96 adiw r24, 0x01 ; 1
|
||||
e2: 61 e0 ldi r22, 0x01 ; 1
|
||||
e4: 0e 94 45 01 call 0x28a ; 0x28a <rf12_txdata>
|
||||
e8: 8f ef ldi r24, 0xFF ; 255
|
||||
ea: 90 e7 ldi r25, 0x70 ; 112
|
||||
ec: a2 e0 ldi r26, 0x02 ; 2
|
||||
ee: 81 50 subi r24, 0x01 ; 1
|
||||
f0: 90 40 sbci r25, 0x00 ; 0
|
||||
f2: a0 40 sbci r26, 0x00 ; 0
|
||||
f4: e1 f7 brne .-8 ; 0xee <send+0x1e>
|
||||
f6: 00 c0 rjmp .+0 ; 0xf8 <send+0x28>
|
||||
f8: 00 00 nop
|
||||
_delay_ms(100);
|
||||
}
|
||||
fa: 0f 90 pop r0
|
||||
fc: df 91 pop r29
|
||||
fe: cf 91 pop r28
|
||||
100: 08 95 ret
|
||||
|
||||
00000102 <main>:
|
||||
|
||||
int main(void)
|
||||
{
|
||||
rf12_init(); // ein paar Register setzen (z.B. CLK auf 10MHz)
|
||||
102: 0e 94 b1 00 call 0x162 ; 0x162 <rf12_init>
|
||||
rf12_setfreq(RF12FREQ(433.92)); // Sende/Empfangsfrequenz auf 433,92MHz einstellen
|
||||
106: 80 e2 ldi r24, 0x20 ; 32
|
||||
108: 96 e0 ldi r25, 0x06 ; 6
|
||||
10a: 0e 94 f9 00 call 0x1f2 ; 0x1f2 <rf12_setfreq>
|
||||
rf12_setbandwidth(1, 0, 7); // 400kHz Bandbreite, 0dB Verstärkung, DRSSI threshold: -61dBm
|
||||
10e: 81 e0 ldi r24, 0x01 ; 1
|
||||
110: 60 e0 ldi r22, 0x00 ; 0
|
||||
112: 47 e0 ldi r20, 0x07 ; 7
|
||||
114: 0e 94 db 00 call 0x1b6 ; 0x1b6 <rf12_setbandwidth>
|
||||
rf12_setbaud(9600); // 19200 baud
|
||||
118: 80 e8 ldi r24, 0x80 ; 128
|
||||
11a: 95 e2 ldi r25, 0x25 ; 37
|
||||
11c: 0e 94 09 01 call 0x212 ; 0x212 <rf12_setbaud>
|
||||
rf12_setpower(0, 6); // 1mW Ausgangsleistung, 120kHz Frequenzshift
|
||||
120: 80 e0 ldi r24, 0x00 ; 0
|
||||
122: 66 e0 ldi r22, 0x06 ; 6
|
||||
124: 0e 94 30 01 call 0x260 ; 0x260 <rf12_setpower>
|
||||
|
||||
DDRB |= (1<<PB0);
|
||||
128: b8 9a sbi 0x17, 0 ; 23
|
||||
while(1)
|
||||
{
|
||||
recive();
|
||||
12a: 0e 94 49 00 call 0x92 ; 0x92 <recive>
|
||||
12e: fd cf rjmp .-6 ; 0x12a <main+0x28>
|
||||
|
||||
00000130 <rf12_trans>:
|
||||
|
||||
unsigned short rf12_trans(unsigned short wert)
|
||||
{ unsigned short werti=0;
|
||||
unsigned char i;
|
||||
|
||||
cbi(RF_PORT, CS);
|
||||
130: 93 98 cbi 0x12, 3 ; 18
|
||||
132: 40 e1 ldi r20, 0x10 ; 16
|
||||
#include <util/delay.h>
|
||||
#include "global.h"
|
||||
#include "rf12.h"
|
||||
|
||||
unsigned short rf12_trans(unsigned short wert)
|
||||
{ unsigned short werti=0;
|
||||
134: 20 e0 ldi r18, 0x00 ; 0
|
||||
136: 30 e0 ldi r19, 0x00 ; 0
|
||||
unsigned char i;
|
||||
|
||||
cbi(RF_PORT, CS);
|
||||
for (i=0; i<16; i++)
|
||||
{ if (wert&32768)
|
||||
138: 99 23 and r25, r25
|
||||
13a: 14 f4 brge .+4 ; 0x140 <rf12_trans+0x10>
|
||||
sbi(RF_PORT, SDI);
|
||||
13c: 95 9a sbi 0x12, 5 ; 18
|
||||
13e: 01 c0 rjmp .+2 ; 0x142 <rf12_trans+0x12>
|
||||
else
|
||||
cbi(RF_PORT, SDI);
|
||||
140: 95 98 cbi 0x12, 5 ; 18
|
||||
werti<<=1;
|
||||
142: 22 0f add r18, r18
|
||||
144: 33 1f adc r19, r19
|
||||
if (RF_PIN&(1<<SDO))
|
||||
146: 86 99 sbic 0x10, 6 ; 16
|
||||
werti|=1;
|
||||
148: 21 60 ori r18, 0x01 ; 1
|
||||
sbi(RF_PORT, SCK);
|
||||
14a: 94 9a sbi 0x12, 4 ; 18
|
||||
wert<<=1;
|
||||
14c: 88 0f add r24, r24
|
||||
14e: 99 1f adc r25, r25
|
||||
#else
|
||||
//round up by default
|
||||
__ticks_dc = (uint32_t)(ceil(fabs(__tmp)));
|
||||
#endif
|
||||
|
||||
__builtin_avr_delay_cycles(__ticks_dc);
|
||||
150: 00 c0 rjmp .+0 ; 0x152 <rf12_trans+0x22>
|
||||
152: 00 00 nop
|
||||
_delay_us(0.3);
|
||||
cbi(RF_PORT, SCK);
|
||||
154: 94 98 cbi 0x12, 4 ; 18
|
||||
156: 41 50 subi r20, 0x01 ; 1
|
||||
unsigned short rf12_trans(unsigned short wert)
|
||||
{ unsigned short werti=0;
|
||||
unsigned char i;
|
||||
|
||||
cbi(RF_PORT, CS);
|
||||
for (i=0; i<16; i++)
|
||||
158: 79 f7 brne .-34 ; 0x138 <rf12_trans+0x8>
|
||||
sbi(RF_PORT, SCK);
|
||||
wert<<=1;
|
||||
_delay_us(0.3);
|
||||
cbi(RF_PORT, SCK);
|
||||
}
|
||||
sbi(RF_PORT, CS);
|
||||
15a: 93 9a sbi 0x12, 3 ; 18
|
||||
return werti;
|
||||
}
|
||||
15c: 82 2f mov r24, r18
|
||||
15e: 93 2f mov r25, r19
|
||||
160: 08 95 ret
|
||||
|
||||
00000162 <rf12_init>:
|
||||
|
||||
void rf12_init(void)
|
||||
{
|
||||
RF_DDR=(1<<SDI)|(1<<SCK)|(1<<CS);
|
||||
162: 88 e3 ldi r24, 0x38 ; 56
|
||||
164: 81 bb out 0x11, r24 ; 17
|
||||
RF_PORT=(1<<CS);
|
||||
166: 88 e0 ldi r24, 0x08 ; 8
|
||||
168: 82 bb out 0x12, r24 ; 18
|
||||
#else
|
||||
//round up by default
|
||||
__ticks_dc = (uint32_t)(ceil(fabs(__tmp)));
|
||||
#endif
|
||||
|
||||
__builtin_avr_delay_cycles(__ticks_dc);
|
||||
16a: 8f ef ldi r24, 0xFF ; 255
|
||||
16c: 90 e7 ldi r25, 0x70 ; 112
|
||||
16e: a2 e0 ldi r26, 0x02 ; 2
|
||||
170: 81 50 subi r24, 0x01 ; 1
|
||||
172: 90 40 sbci r25, 0x00 ; 0
|
||||
174: a0 40 sbci r26, 0x00 ; 0
|
||||
176: e1 f7 brne .-8 ; 0x170 <rf12_init+0xe>
|
||||
178: 00 c0 rjmp .+0 ; 0x17a <rf12_init+0x18>
|
||||
17a: 00 00 nop
|
||||
|
||||
_delay_ms(100);
|
||||
|
||||
rf12_trans(0xC0E0); // AVR CLK: 10MHz
|
||||
17c: 80 ee ldi r24, 0xE0 ; 224
|
||||
17e: 90 ec ldi r25, 0xC0 ; 192
|
||||
180: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
rf12_trans(0x80D7); // Enable FIFO
|
||||
184: 87 ed ldi r24, 0xD7 ; 215
|
||||
186: 90 e8 ldi r25, 0x80 ; 128
|
||||
188: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
rf12_trans(0xC2AB); // Data Filter: internal
|
||||
18c: 8b ea ldi r24, 0xAB ; 171
|
||||
18e: 92 ec ldi r25, 0xC2 ; 194
|
||||
190: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
rf12_trans(0xCA81); // Set FIFO mode
|
||||
194: 81 e8 ldi r24, 0x81 ; 129
|
||||
196: 9a ec ldi r25, 0xCA ; 202
|
||||
198: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
rf12_trans(0xE000); // disable wakeuptimer
|
||||
19c: 80 e0 ldi r24, 0x00 ; 0
|
||||
19e: 90 ee ldi r25, 0xE0 ; 224
|
||||
1a0: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
rf12_trans(0xC800); // disable low duty cycle
|
||||
1a4: 80 e0 ldi r24, 0x00 ; 0
|
||||
1a6: 98 ec ldi r25, 0xC8 ; 200
|
||||
1a8: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
rf12_trans(0xC4F7); // AFC settings: autotuning: -10kHz...+7,5kHz
|
||||
1ac: 87 ef ldi r24, 0xF7 ; 247
|
||||
1ae: 94 ec ldi r25, 0xC4 ; 196
|
||||
1b0: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
}
|
||||
1b4: 08 95 ret
|
||||
|
||||
000001b6 <rf12_setbandwidth>:
|
||||
|
||||
void rf12_setbandwidth(unsigned char bandwidth, unsigned char gain, unsigned char drssi)
|
||||
{
|
||||
rf12_trans(0x9400|((bandwidth&7)<<5)|((gain&3)<<3)|(drssi&7));
|
||||
1b6: 90 e0 ldi r25, 0x00 ; 0
|
||||
1b8: 88 0f add r24, r24
|
||||
1ba: 99 1f adc r25, r25
|
||||
1bc: 82 95 swap r24
|
||||
1be: 92 95 swap r25
|
||||
1c0: 90 7f andi r25, 0xF0 ; 240
|
||||
1c2: 98 27 eor r25, r24
|
||||
1c4: 80 7f andi r24, 0xF0 ; 240
|
||||
1c6: 98 27 eor r25, r24
|
||||
1c8: 90 70 andi r25, 0x00 ; 0
|
||||
1ca: 50 e0 ldi r21, 0x00 ; 0
|
||||
1cc: 47 70 andi r20, 0x07 ; 7
|
||||
1ce: 50 70 andi r21, 0x00 ; 0
|
||||
1d0: 84 2b or r24, r20
|
||||
1d2: 95 2b or r25, r21
|
||||
1d4: 94 69 ori r25, 0x94 ; 148
|
||||
1d6: 70 e0 ldi r23, 0x00 ; 0
|
||||
1d8: 63 70 andi r22, 0x03 ; 3
|
||||
1da: 70 70 andi r23, 0x00 ; 0
|
||||
1dc: 66 0f add r22, r22
|
||||
1de: 77 1f adc r23, r23
|
||||
1e0: 66 0f add r22, r22
|
||||
1e2: 77 1f adc r23, r23
|
||||
1e4: 66 0f add r22, r22
|
||||
1e6: 77 1f adc r23, r23
|
||||
1e8: 86 2b or r24, r22
|
||||
1ea: 97 2b or r25, r23
|
||||
1ec: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
}
|
||||
1f0: 08 95 ret
|
||||
|
||||
000001f2 <rf12_setfreq>:
|
||||
|
||||
void rf12_setfreq(unsigned short freq)
|
||||
{ if (freq<96) // 430,2400MHz
|
||||
1f2: 80 36 cpi r24, 0x60 ; 96
|
||||
1f4: 91 05 cpc r25, r1
|
||||
1f6: 38 f0 brcs .+14 ; 0x206 <rf12_setfreq+0x14>
|
||||
1f8: 2f e0 ldi r18, 0x0F ; 15
|
||||
1fa: 80 34 cpi r24, 0x40 ; 64
|
||||
1fc: 92 07 cpc r25, r18
|
||||
1fe: 28 f0 brcs .+10 ; 0x20a <rf12_setfreq+0x18>
|
||||
200: 8f e3 ldi r24, 0x3F ; 63
|
||||
202: 9f e0 ldi r25, 0x0F ; 15
|
||||
204: 02 c0 rjmp .+4 ; 0x20a <rf12_setfreq+0x18>
|
||||
freq=96;
|
||||
206: 80 e6 ldi r24, 0x60 ; 96
|
||||
208: 90 e0 ldi r25, 0x00 ; 0
|
||||
else if (freq>3903) // 439,7575MHz
|
||||
freq=3903;
|
||||
rf12_trans(0xA000|freq);
|
||||
20a: 90 6a ori r25, 0xA0 ; 160
|
||||
20c: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
}
|
||||
210: 08 95 ret
|
||||
|
||||
00000212 <rf12_setbaud>:
|
||||
|
||||
void rf12_setbaud(unsigned short baud)
|
||||
{
|
||||
if (baud<663)
|
||||
212: 22 e0 ldi r18, 0x02 ; 2
|
||||
214: 87 39 cpi r24, 0x97 ; 151
|
||||
216: 92 07 cpc r25, r18
|
||||
218: 10 f1 brcs .+68 ; 0x25e <rf12_setbaud+0x4c>
|
||||
return;
|
||||
if (baud<5400) // Baudrate= 344827,58621/(R+1)/(1+CS*7)
|
||||
21a: 25 e1 ldi r18, 0x15 ; 21
|
||||
21c: 88 31 cpi r24, 0x18 ; 24
|
||||
21e: 92 07 cpc r25, r18
|
||||
220: 80 f4 brcc .+32 ; 0x242 <rf12_setbaud+0x30>
|
||||
rf12_trans(0xC680|((43104/baud)-1));
|
||||
222: 9c 01 movw r18, r24
|
||||
224: 40 e0 ldi r20, 0x00 ; 0
|
||||
226: 50 e0 ldi r21, 0x00 ; 0
|
||||
228: 60 e6 ldi r22, 0x60 ; 96
|
||||
22a: 78 ea ldi r23, 0xA8 ; 168
|
||||
22c: 80 e0 ldi r24, 0x00 ; 0
|
||||
22e: 90 e0 ldi r25, 0x00 ; 0
|
||||
230: 0e 94 df 01 call 0x3be ; 0x3be <__divmodsi4>
|
||||
234: c9 01 movw r24, r18
|
||||
236: 01 97 sbiw r24, 0x01 ; 1
|
||||
238: 80 68 ori r24, 0x80 ; 128
|
||||
23a: 96 6c ori r25, 0xC6 ; 198
|
||||
23c: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
240: 08 95 ret
|
||||
else
|
||||
rf12_trans(0xC600|((344828UL/baud)-1));
|
||||
242: 9c 01 movw r18, r24
|
||||
244: 40 e0 ldi r20, 0x00 ; 0
|
||||
246: 50 e0 ldi r21, 0x00 ; 0
|
||||
248: 6c ef ldi r22, 0xFC ; 252
|
||||
24a: 72 e4 ldi r23, 0x42 ; 66
|
||||
24c: 85 e0 ldi r24, 0x05 ; 5
|
||||
24e: 90 e0 ldi r25, 0x00 ; 0
|
||||
250: 0e 94 bd 01 call 0x37a ; 0x37a <__udivmodsi4>
|
||||
254: c9 01 movw r24, r18
|
||||
256: 01 97 sbiw r24, 0x01 ; 1
|
||||
258: 96 6c ori r25, 0xC6 ; 198
|
||||
25a: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
25e: 08 95 ret
|
||||
|
||||
00000260 <rf12_setpower>:
|
||||
}
|
||||
|
||||
void rf12_setpower(unsigned char power, unsigned char mod)
|
||||
{
|
||||
rf12_trans(0x9800|(power&7)|((mod&15)<<4));
|
||||
260: 90 e0 ldi r25, 0x00 ; 0
|
||||
262: 87 70 andi r24, 0x07 ; 7
|
||||
264: 90 70 andi r25, 0x00 ; 0
|
||||
266: 98 69 ori r25, 0x98 ; 152
|
||||
268: 70 e0 ldi r23, 0x00 ; 0
|
||||
26a: 62 95 swap r22
|
||||
26c: 72 95 swap r23
|
||||
26e: 70 7f andi r23, 0xF0 ; 240
|
||||
270: 76 27 eor r23, r22
|
||||
272: 60 7f andi r22, 0xF0 ; 240
|
||||
274: 76 27 eor r23, r22
|
||||
276: 70 70 andi r23, 0x00 ; 0
|
||||
278: 86 2b or r24, r22
|
||||
27a: 97 2b or r25, r23
|
||||
27c: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
}
|
||||
280: 08 95 ret
|
||||
|
||||
00000282 <rf12_ready>:
|
||||
|
||||
void rf12_ready(void)
|
||||
{ cbi(RF_PORT, CS);
|
||||
282: 93 98 cbi 0x12, 3 ; 18
|
||||
while (!(RF_PIN&(1<<SDO))); // wait until FIFO ready
|
||||
284: 86 9b sbis 0x10, 6 ; 16
|
||||
286: fe cf rjmp .-4 ; 0x284 <rf12_ready+0x2>
|
||||
}
|
||||
288: 08 95 ret
|
||||
|
||||
0000028a <rf12_txdata>:
|
||||
|
||||
void rf12_txdata(unsigned char *data, unsigned char number)
|
||||
{ unsigned char i;
|
||||
28a: 0f 93 push r16
|
||||
28c: 1f 93 push r17
|
||||
28e: cf 93 push r28
|
||||
290: df 93 push r29
|
||||
292: 8c 01 movw r16, r24
|
||||
294: c6 2f mov r28, r22
|
||||
rf12_trans(0x8238); // TX on
|
||||
296: 88 e3 ldi r24, 0x38 ; 56
|
||||
298: 92 e8 ldi r25, 0x82 ; 130
|
||||
29a: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
rf12_ready();
|
||||
29e: 0e 94 41 01 call 0x282 ; 0x282 <rf12_ready>
|
||||
rf12_trans(0xB8AA);
|
||||
2a2: 8a ea ldi r24, 0xAA ; 170
|
||||
2a4: 98 eb ldi r25, 0xB8 ; 184
|
||||
2a6: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
rf12_ready();
|
||||
2aa: 0e 94 41 01 call 0x282 ; 0x282 <rf12_ready>
|
||||
rf12_trans(0xB8AA);
|
||||
2ae: 8a ea ldi r24, 0xAA ; 170
|
||||
2b0: 98 eb ldi r25, 0xB8 ; 184
|
||||
2b2: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
rf12_ready();
|
||||
2b6: 0e 94 41 01 call 0x282 ; 0x282 <rf12_ready>
|
||||
rf12_trans(0xB8AA);
|
||||
2ba: 8a ea ldi r24, 0xAA ; 170
|
||||
2bc: 98 eb ldi r25, 0xB8 ; 184
|
||||
2be: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
rf12_ready();
|
||||
2c2: 0e 94 41 01 call 0x282 ; 0x282 <rf12_ready>
|
||||
rf12_trans(0xB82D);
|
||||
2c6: 8d e2 ldi r24, 0x2D ; 45
|
||||
2c8: 98 eb ldi r25, 0xB8 ; 184
|
||||
2ca: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
rf12_ready();
|
||||
2ce: 0e 94 41 01 call 0x282 ; 0x282 <rf12_ready>
|
||||
rf12_trans(0xB8D4);
|
||||
2d2: 84 ed ldi r24, 0xD4 ; 212
|
||||
2d4: 98 eb ldi r25, 0xB8 ; 184
|
||||
2d6: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
for (i=0; i<number; i++)
|
||||
2da: cc 23 and r28, r28
|
||||
2dc: 99 f0 breq .+38 ; 0x304 <rf12_txdata+0x7a>
|
||||
void rf12_ready(void)
|
||||
{ cbi(RF_PORT, CS);
|
||||
while (!(RF_PIN&(1<<SDO))); // wait until FIFO ready
|
||||
}
|
||||
|
||||
void rf12_txdata(unsigned char *data, unsigned char number)
|
||||
2de: c8 01 movw r24, r16
|
||||
2e0: 01 96 adiw r24, 0x01 ; 1
|
||||
2e2: c1 50 subi r28, 0x01 ; 1
|
||||
2e4: 9c 01 movw r18, r24
|
||||
2e6: 2c 0f add r18, r28
|
||||
2e8: 31 1d adc r19, r1
|
||||
2ea: e9 01 movw r28, r18
|
||||
rf12_ready();
|
||||
rf12_trans(0xB82D);
|
||||
rf12_ready();
|
||||
rf12_trans(0xB8D4);
|
||||
for (i=0; i<number; i++)
|
||||
{ rf12_ready();
|
||||
2ec: 0e 94 41 01 call 0x282 ; 0x282 <rf12_ready>
|
||||
rf12_trans(0xB800|(*data++));
|
||||
2f0: f8 01 movw r30, r16
|
||||
2f2: 81 91 ld r24, Z+
|
||||
2f4: 8f 01 movw r16, r30
|
||||
2f6: 90 e0 ldi r25, 0x00 ; 0
|
||||
2f8: 98 6b ori r25, 0xB8 ; 184
|
||||
2fa: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
rf12_trans(0xB8AA);
|
||||
rf12_ready();
|
||||
rf12_trans(0xB82D);
|
||||
rf12_ready();
|
||||
rf12_trans(0xB8D4);
|
||||
for (i=0; i<number; i++)
|
||||
2fe: 0c 17 cp r16, r28
|
||||
300: 1d 07 cpc r17, r29
|
||||
302: a1 f7 brne .-24 ; 0x2ec <rf12_txdata+0x62>
|
||||
{ rf12_ready();
|
||||
rf12_trans(0xB800|(*data++));
|
||||
}
|
||||
rf12_ready();
|
||||
304: 0e 94 41 01 call 0x282 ; 0x282 <rf12_ready>
|
||||
rf12_trans(0x8208); // TX off
|
||||
308: 88 e0 ldi r24, 0x08 ; 8
|
||||
30a: 92 e8 ldi r25, 0x82 ; 130
|
||||
30c: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
}
|
||||
310: df 91 pop r29
|
||||
312: cf 91 pop r28
|
||||
314: 1f 91 pop r17
|
||||
316: 0f 91 pop r16
|
||||
318: 08 95 ret
|
||||
|
||||
0000031a <rf12_rxdata>:
|
||||
|
||||
void rf12_rxdata(unsigned char *data, unsigned char number)
|
||||
{ unsigned char i;
|
||||
31a: 0f 93 push r16
|
||||
31c: 1f 93 push r17
|
||||
31e: cf 93 push r28
|
||||
320: df 93 push r29
|
||||
322: 8c 01 movw r16, r24
|
||||
324: d6 2f mov r29, r22
|
||||
rf12_trans(0x82C8); // RX on
|
||||
326: 88 ec ldi r24, 0xC8 ; 200
|
||||
328: 92 e8 ldi r25, 0x82 ; 130
|
||||
32a: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
rf12_trans(0xCA81); // set FIFO mode
|
||||
32e: 81 e8 ldi r24, 0x81 ; 129
|
||||
330: 9a ec ldi r25, 0xCA ; 202
|
||||
332: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
rf12_trans(0xCA83); // enable FIFO
|
||||
336: 83 e8 ldi r24, 0x83 ; 131
|
||||
338: 9a ec ldi r25, 0xCA ; 202
|
||||
33a: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
for (i=0; i<number; i++)
|
||||
33e: dd 23 and r29, r29
|
||||
340: 99 f0 breq .+38 ; 0x368 <rf12_rxdata+0x4e>
|
||||
}
|
||||
rf12_ready();
|
||||
rf12_trans(0x8208); // TX off
|
||||
}
|
||||
|
||||
void rf12_rxdata(unsigned char *data, unsigned char number)
|
||||
342: c8 01 movw r24, r16
|
||||
344: 01 96 adiw r24, 0x01 ; 1
|
||||
346: d1 50 subi r29, 0x01 ; 1
|
||||
348: 9c 01 movw r18, r24
|
||||
34a: 2d 0f add r18, r29
|
||||
34c: 31 1d adc r19, r1
|
||||
34e: e9 01 movw r28, r18
|
||||
{ unsigned char i;
|
||||
rf12_trans(0x82C8); // RX on
|
||||
rf12_trans(0xCA81); // set FIFO mode
|
||||
rf12_trans(0xCA83); // enable FIFO
|
||||
for (i=0; i<number; i++)
|
||||
{ rf12_ready();
|
||||
350: 0e 94 41 01 call 0x282 ; 0x282 <rf12_ready>
|
||||
*data++=rf12_trans(0xB000);
|
||||
354: 80 e0 ldi r24, 0x00 ; 0
|
||||
356: 90 eb ldi r25, 0xB0 ; 176
|
||||
358: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
35c: f8 01 movw r30, r16
|
||||
35e: 81 93 st Z+, r24
|
||||
360: 8f 01 movw r16, r30
|
||||
void rf12_rxdata(unsigned char *data, unsigned char number)
|
||||
{ unsigned char i;
|
||||
rf12_trans(0x82C8); // RX on
|
||||
rf12_trans(0xCA81); // set FIFO mode
|
||||
rf12_trans(0xCA83); // enable FIFO
|
||||
for (i=0; i<number; i++)
|
||||
362: ec 17 cp r30, r28
|
||||
364: fd 07 cpc r31, r29
|
||||
366: a1 f7 brne .-24 ; 0x350 <rf12_rxdata+0x36>
|
||||
{ rf12_ready();
|
||||
*data++=rf12_trans(0xB000);
|
||||
}
|
||||
rf12_trans(0x8208); // RX off
|
||||
368: 88 e0 ldi r24, 0x08 ; 8
|
||||
36a: 92 e8 ldi r25, 0x82 ; 130
|
||||
36c: 0e 94 98 00 call 0x130 ; 0x130 <rf12_trans>
|
||||
370: df 91 pop r29
|
||||
372: cf 91 pop r28
|
||||
374: 1f 91 pop r17
|
||||
376: 0f 91 pop r16
|
||||
378: 08 95 ret
|
||||
|
||||
0000037a <__udivmodsi4>:
|
||||
37a: a1 e2 ldi r26, 0x21 ; 33
|
||||
37c: 1a 2e mov r1, r26
|
||||
37e: aa 1b sub r26, r26
|
||||
380: bb 1b sub r27, r27
|
||||
382: fd 01 movw r30, r26
|
||||
384: 0d c0 rjmp .+26 ; 0x3a0 <__udivmodsi4_ep>
|
||||
|
||||
00000386 <__udivmodsi4_loop>:
|
||||
386: aa 1f adc r26, r26
|
||||
388: bb 1f adc r27, r27
|
||||
38a: ee 1f adc r30, r30
|
||||
38c: ff 1f adc r31, r31
|
||||
38e: a2 17 cp r26, r18
|
||||
390: b3 07 cpc r27, r19
|
||||
392: e4 07 cpc r30, r20
|
||||
394: f5 07 cpc r31, r21
|
||||
396: 20 f0 brcs .+8 ; 0x3a0 <__udivmodsi4_ep>
|
||||
398: a2 1b sub r26, r18
|
||||
39a: b3 0b sbc r27, r19
|
||||
39c: e4 0b sbc r30, r20
|
||||
39e: f5 0b sbc r31, r21
|
||||
|
||||
000003a0 <__udivmodsi4_ep>:
|
||||
3a0: 66 1f adc r22, r22
|
||||
3a2: 77 1f adc r23, r23
|
||||
3a4: 88 1f adc r24, r24
|
||||
3a6: 99 1f adc r25, r25
|
||||
3a8: 1a 94 dec r1
|
||||
3aa: 69 f7 brne .-38 ; 0x386 <__udivmodsi4_loop>
|
||||
3ac: 60 95 com r22
|
||||
3ae: 70 95 com r23
|
||||
3b0: 80 95 com r24
|
||||
3b2: 90 95 com r25
|
||||
3b4: 9b 01 movw r18, r22
|
||||
3b6: ac 01 movw r20, r24
|
||||
3b8: bd 01 movw r22, r26
|
||||
3ba: cf 01 movw r24, r30
|
||||
3bc: 08 95 ret
|
||||
|
||||
000003be <__divmodsi4>:
|
||||
3be: 97 fb bst r25, 7
|
||||
3c0: 09 2e mov r0, r25
|
||||
3c2: 05 26 eor r0, r21
|
||||
3c4: 0e d0 rcall .+28 ; 0x3e2 <__divmodsi4_neg1>
|
||||
3c6: 57 fd sbrc r21, 7
|
||||
3c8: 04 d0 rcall .+8 ; 0x3d2 <__divmodsi4_neg2>
|
||||
3ca: d7 df rcall .-82 ; 0x37a <__udivmodsi4>
|
||||
3cc: 0a d0 rcall .+20 ; 0x3e2 <__divmodsi4_neg1>
|
||||
3ce: 00 1c adc r0, r0
|
||||
3d0: 38 f4 brcc .+14 ; 0x3e0 <__divmodsi4_exit>
|
||||
|
||||
000003d2 <__divmodsi4_neg2>:
|
||||
3d2: 50 95 com r21
|
||||
3d4: 40 95 com r20
|
||||
3d6: 30 95 com r19
|
||||
3d8: 21 95 neg r18
|
||||
3da: 3f 4f sbci r19, 0xFF ; 255
|
||||
3dc: 4f 4f sbci r20, 0xFF ; 255
|
||||
3de: 5f 4f sbci r21, 0xFF ; 255
|
||||
|
||||
000003e0 <__divmodsi4_exit>:
|
||||
3e0: 08 95 ret
|
||||
|
||||
000003e2 <__divmodsi4_neg1>:
|
||||
3e2: f6 f7 brtc .-4 ; 0x3e0 <__divmodsi4_exit>
|
||||
3e4: 90 95 com r25
|
||||
3e6: 80 95 com r24
|
||||
3e8: 70 95 com r23
|
||||
3ea: 61 95 neg r22
|
||||
3ec: 7f 4f sbci r23, 0xFF ; 255
|
||||
3ee: 8f 4f sbci r24, 0xFF ; 255
|
||||
3f0: 9f 4f sbci r25, 0xFF ; 255
|
||||
3f2: 08 95 ret
|
||||
|
||||
000003f4 <_exit>:
|
||||
3f4: f8 94 cli
|
||||
|
||||
000003f6 <__stop_program>:
|
||||
3f6: ff cf rjmp .-2 ; 0x3f6 <__stop_program>
|
||||
@@ -0,0 +1,424 @@
|
||||
Archive member included because of file (symbol)
|
||||
|
||||
e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_udivmodsi4.o)
|
||||
rf12.o (__udivmodsi4)
|
||||
e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_divmodsi4.o)
|
||||
rf12.o (__divmodsi4)
|
||||
e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_exit.o)
|
||||
e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/../../../../avr/lib/avr5/crtm16a.o (exit)
|
||||
e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_copy_data.o)
|
||||
Reciver.o (__do_copy_data)
|
||||
e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_clear_bss.o)
|
||||
Reciver.o (__do_clear_bss)
|
||||
|
||||
Memory Configuration
|
||||
|
||||
Name Origin Length Attributes
|
||||
text 0x00000000 0x00020000 xr
|
||||
data 0x00800060 0x0000ffa0 rw !x
|
||||
eeprom 0x00810000 0x00010000 rw !x
|
||||
fuse 0x00820000 0x00000400 rw !x
|
||||
lock 0x00830000 0x00000400 rw !x
|
||||
signature 0x00840000 0x00000400 rw !x
|
||||
*default* 0x00000000 0xffffffff
|
||||
|
||||
Linker script and memory map
|
||||
|
||||
LOAD e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/../../../../avr/lib/avr5/crtm16a.o
|
||||
LOAD Reciver.o
|
||||
LOAD rf12.o
|
||||
START GROUP
|
||||
LOAD e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/../../../../avr/lib/avr5\libm.a
|
||||
END GROUP
|
||||
LOAD e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a
|
||||
LOAD e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/../../../../avr/lib/avr5\libc.a
|
||||
LOAD e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a
|
||||
|
||||
.hash
|
||||
*(.hash)
|
||||
|
||||
.dynsym
|
||||
*(.dynsym)
|
||||
|
||||
.dynstr
|
||||
*(.dynstr)
|
||||
|
||||
.gnu.version
|
||||
*(.gnu.version)
|
||||
|
||||
.gnu.version_d
|
||||
*(.gnu.version_d)
|
||||
|
||||
.gnu.version_r
|
||||
*(.gnu.version_r)
|
||||
|
||||
.rel.init
|
||||
*(.rel.init)
|
||||
|
||||
.rela.init
|
||||
*(.rela.init)
|
||||
|
||||
.rel.text
|
||||
*(.rel.text)
|
||||
*(.rel.text.*)
|
||||
*(.rel.gnu.linkonce.t*)
|
||||
|
||||
.rela.text
|
||||
*(.rela.text)
|
||||
*(.rela.text.*)
|
||||
*(.rela.gnu.linkonce.t*)
|
||||
|
||||
.rel.fini
|
||||
*(.rel.fini)
|
||||
|
||||
.rela.fini
|
||||
*(.rela.fini)
|
||||
|
||||
.rel.rodata
|
||||
*(.rel.rodata)
|
||||
*(.rel.rodata.*)
|
||||
*(.rel.gnu.linkonce.r*)
|
||||
|
||||
.rela.rodata
|
||||
*(.rela.rodata)
|
||||
*(.rela.rodata.*)
|
||||
*(.rela.gnu.linkonce.r*)
|
||||
|
||||
.rel.data
|
||||
*(.rel.data)
|
||||
*(.rel.data.*)
|
||||
*(.rel.gnu.linkonce.d*)
|
||||
|
||||
.rela.data
|
||||
*(.rela.data)
|
||||
*(.rela.data.*)
|
||||
*(.rela.gnu.linkonce.d*)
|
||||
|
||||
.rel.ctors
|
||||
*(.rel.ctors)
|
||||
|
||||
.rela.ctors
|
||||
*(.rela.ctors)
|
||||
|
||||
.rel.dtors
|
||||
*(.rel.dtors)
|
||||
|
||||
.rela.dtors
|
||||
*(.rela.dtors)
|
||||
|
||||
.rel.got
|
||||
*(.rel.got)
|
||||
|
||||
.rela.got
|
||||
*(.rela.got)
|
||||
|
||||
.rel.bss
|
||||
*(.rel.bss)
|
||||
|
||||
.rela.bss
|
||||
*(.rela.bss)
|
||||
|
||||
.rel.plt
|
||||
*(.rel.plt)
|
||||
|
||||
.rela.plt
|
||||
*(.rela.plt)
|
||||
|
||||
.text 0x00000000 0x3f8
|
||||
*(.vectors)
|
||||
.vectors 0x00000000 0x54 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/../../../../avr/lib/avr5/crtm16a.o
|
||||
0x00000000 __vector_default
|
||||
0x00000000 __vectors
|
||||
*(.vectors)
|
||||
*(.progmem.gcc*)
|
||||
*(.progmem*)
|
||||
0x00000054 . = ALIGN (0x2)
|
||||
0x00000054 __trampolines_start = .
|
||||
*(.trampolines)
|
||||
.trampolines 0x00000054 0x0 linker stubs
|
||||
*(.trampolines*)
|
||||
0x00000054 __trampolines_end = .
|
||||
*(.jumptables)
|
||||
*(.jumptables*)
|
||||
*(.lowtext)
|
||||
*(.lowtext*)
|
||||
0x00000054 __ctors_start = .
|
||||
*(.ctors)
|
||||
0x00000054 __ctors_end = .
|
||||
0x00000054 __dtors_start = .
|
||||
*(.dtors)
|
||||
0x00000054 __dtors_end = .
|
||||
SORT(*)(.ctors)
|
||||
SORT(*)(.dtors)
|
||||
*(.init0)
|
||||
.init0 0x00000054 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/../../../../avr/lib/avr5/crtm16a.o
|
||||
0x00000054 __init
|
||||
*(.init0)
|
||||
*(.init1)
|
||||
*(.init1)
|
||||
*(.init2)
|
||||
.init2 0x00000054 0xc e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/../../../../avr/lib/avr5/crtm16a.o
|
||||
*(.init2)
|
||||
*(.init3)
|
||||
*(.init3)
|
||||
*(.init4)
|
||||
.init4 0x00000060 0x16 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_copy_data.o)
|
||||
0x00000060 __do_copy_data
|
||||
.init4 0x00000076 0x10 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_clear_bss.o)
|
||||
0x00000076 __do_clear_bss
|
||||
*(.init4)
|
||||
*(.init5)
|
||||
*(.init5)
|
||||
*(.init6)
|
||||
*(.init6)
|
||||
*(.init7)
|
||||
*(.init7)
|
||||
*(.init8)
|
||||
*(.init8)
|
||||
*(.init9)
|
||||
.init9 0x00000086 0x8 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/../../../../avr/lib/avr5/crtm16a.o
|
||||
*(.init9)
|
||||
*(.text)
|
||||
.text 0x0000008e 0x4 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/../../../../avr/lib/avr5/crtm16a.o
|
||||
0x0000008e __vector_1
|
||||
0x0000008e __vector_12
|
||||
0x0000008e __bad_interrupt
|
||||
0x0000008e __vector_6
|
||||
0x0000008e __vector_3
|
||||
0x0000008e __vector_11
|
||||
0x0000008e __vector_13
|
||||
0x0000008e __vector_17
|
||||
0x0000008e __vector_19
|
||||
0x0000008e __vector_7
|
||||
0x0000008e __vector_5
|
||||
0x0000008e __vector_4
|
||||
0x0000008e __vector_9
|
||||
0x0000008e __vector_2
|
||||
0x0000008e __vector_15
|
||||
0x0000008e __vector_8
|
||||
0x0000008e __vector_14
|
||||
0x0000008e __vector_10
|
||||
0x0000008e __vector_16
|
||||
0x0000008e __vector_18
|
||||
0x0000008e __vector_20
|
||||
.text 0x00000092 0x9e Reciver.o
|
||||
0x00000092 recive
|
||||
0x000000d0 send
|
||||
0x00000102 main
|
||||
.text 0x00000130 0x24a rf12.o
|
||||
0x00000130 rf12_trans
|
||||
0x00000162 rf12_init
|
||||
0x000001b6 rf12_setbandwidth
|
||||
0x000001f2 rf12_setfreq
|
||||
0x00000212 rf12_setbaud
|
||||
0x00000260 rf12_setpower
|
||||
0x00000282 rf12_ready
|
||||
0x0000028a rf12_txdata
|
||||
0x0000031a rf12_rxdata
|
||||
.text 0x0000037a 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_udivmodsi4.o)
|
||||
.text 0x0000037a 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_divmodsi4.o)
|
||||
.text 0x0000037a 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_exit.o)
|
||||
.text 0x0000037a 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_copy_data.o)
|
||||
.text 0x0000037a 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_clear_bss.o)
|
||||
0x0000037a . = ALIGN (0x2)
|
||||
*(.text.*)
|
||||
.text.libgcc 0x0000037a 0x44 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_udivmodsi4.o)
|
||||
0x0000037a __udivmodsi4
|
||||
.text.libgcc 0x000003be 0x36 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_divmodsi4.o)
|
||||
0x000003be __divmodsi4
|
||||
.text.libgcc 0x000003f4 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_exit.o)
|
||||
.text.libgcc 0x000003f4 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_copy_data.o)
|
||||
.text.libgcc 0x000003f4 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_clear_bss.o)
|
||||
0x000003f4 . = ALIGN (0x2)
|
||||
*(.fini9)
|
||||
.fini9 0x000003f4 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_exit.o)
|
||||
0x000003f4 _exit
|
||||
0x000003f4 exit
|
||||
*(.fini9)
|
||||
*(.fini8)
|
||||
*(.fini8)
|
||||
*(.fini7)
|
||||
*(.fini7)
|
||||
*(.fini6)
|
||||
*(.fini6)
|
||||
*(.fini5)
|
||||
*(.fini5)
|
||||
*(.fini4)
|
||||
*(.fini4)
|
||||
*(.fini3)
|
||||
*(.fini3)
|
||||
*(.fini2)
|
||||
*(.fini2)
|
||||
*(.fini1)
|
||||
*(.fini1)
|
||||
*(.fini0)
|
||||
.fini0 0x000003f4 0x4 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_exit.o)
|
||||
*(.fini0)
|
||||
0x000003f8 _etext = .
|
||||
|
||||
.data 0x00800060 0x0 load address 0x000003f8
|
||||
0x00800060 PROVIDE (__data_start, .)
|
||||
*(.data)
|
||||
.data 0x00800060 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/../../../../avr/lib/avr5/crtm16a.o
|
||||
.data 0x00800060 0x0 Reciver.o
|
||||
.data 0x00800060 0x0 rf12.o
|
||||
.data 0x00800060 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_udivmodsi4.o)
|
||||
.data 0x00800060 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_divmodsi4.o)
|
||||
.data 0x00800060 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_exit.o)
|
||||
.data 0x00800060 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_copy_data.o)
|
||||
.data 0x00800060 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_clear_bss.o)
|
||||
*(.data*)
|
||||
*(.rodata)
|
||||
*(.rodata*)
|
||||
*(.gnu.linkonce.d*)
|
||||
0x00800060 . = ALIGN (0x2)
|
||||
0x00800060 _edata = .
|
||||
0x00800060 PROVIDE (__data_end, .)
|
||||
|
||||
.bss 0x00800060 0x0
|
||||
0x00800060 PROVIDE (__bss_start, .)
|
||||
*(.bss)
|
||||
.bss 0x00800060 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/../../../../avr/lib/avr5/crtm16a.o
|
||||
.bss 0x00800060 0x0 Reciver.o
|
||||
.bss 0x00800060 0x0 rf12.o
|
||||
.bss 0x00800060 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_udivmodsi4.o)
|
||||
.bss 0x00800060 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_divmodsi4.o)
|
||||
.bss 0x00800060 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_exit.o)
|
||||
.bss 0x00800060 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_copy_data.o)
|
||||
.bss 0x00800060 0x0 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_clear_bss.o)
|
||||
*(.bss*)
|
||||
*(COMMON)
|
||||
0x00800060 PROVIDE (__bss_end, .)
|
||||
0x000003f8 __data_load_start = LOADADDR (.data)
|
||||
0x000003f8 __data_load_end = (__data_load_start + SIZEOF (.data))
|
||||
|
||||
.noinit 0x00800060 0x0
|
||||
0x00800060 PROVIDE (__noinit_start, .)
|
||||
*(.noinit*)
|
||||
0x00800060 PROVIDE (__noinit_end, .)
|
||||
0x00800060 _end = .
|
||||
0x00800060 PROVIDE (__heap_start, .)
|
||||
|
||||
.eeprom 0x00810000 0x0
|
||||
*(.eeprom*)
|
||||
0x00810000 __eeprom_end = .
|
||||
|
||||
.fuse
|
||||
*(.fuse)
|
||||
*(.lfuse)
|
||||
*(.hfuse)
|
||||
*(.efuse)
|
||||
|
||||
.lock
|
||||
*(.lock*)
|
||||
|
||||
.signature
|
||||
*(.signature*)
|
||||
|
||||
.stab 0x00000000 0x6cc
|
||||
*(.stab)
|
||||
.stab 0x00000000 0x6cc e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/../../../../avr/lib/avr5/crtm16a.o
|
||||
|
||||
.stabstr 0x00000000 0x85
|
||||
*(.stabstr)
|
||||
.stabstr 0x00000000 0x85 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/../../../../avr/lib/avr5/crtm16a.o
|
||||
|
||||
.stab.excl
|
||||
*(.stab.excl)
|
||||
|
||||
.stab.exclstr
|
||||
*(.stab.exclstr)
|
||||
|
||||
.stab.index
|
||||
*(.stab.index)
|
||||
|
||||
.stab.indexstr
|
||||
*(.stab.indexstr)
|
||||
|
||||
.comment
|
||||
*(.comment)
|
||||
|
||||
.debug
|
||||
*(.debug)
|
||||
|
||||
.line
|
||||
*(.line)
|
||||
|
||||
.debug_srcinfo
|
||||
*(.debug_srcinfo)
|
||||
|
||||
.debug_sfnames
|
||||
*(.debug_sfnames)
|
||||
|
||||
.debug_aranges 0x00000000 0xe0
|
||||
*(.debug_aranges)
|
||||
.debug_aranges
|
||||
0x00000000 0x20 Reciver.o
|
||||
.debug_aranges
|
||||
0x00000020 0x20 rf12.o
|
||||
.debug_aranges
|
||||
0x00000040 0x20 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_udivmodsi4.o)
|
||||
.debug_aranges
|
||||
0x00000060 0x20 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_divmodsi4.o)
|
||||
.debug_aranges
|
||||
0x00000080 0x20 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_exit.o)
|
||||
.debug_aranges
|
||||
0x000000a0 0x20 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_copy_data.o)
|
||||
.debug_aranges
|
||||
0x000000c0 0x20 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_clear_bss.o)
|
||||
|
||||
.debug_pubnames
|
||||
*(.debug_pubnames)
|
||||
|
||||
.debug_info 0x00000000 0x989
|
||||
*(.debug_info)
|
||||
.debug_info 0x00000000 0x1cd Reciver.o
|
||||
.debug_info 0x000001cd 0x36b rf12.o
|
||||
.debug_info 0x00000538 0xdd e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_udivmodsi4.o)
|
||||
.debug_info 0x00000615 0xdd e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_divmodsi4.o)
|
||||
.debug_info 0x000006f2 0xdd e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_exit.o)
|
||||
.debug_info 0x000007cf 0xdd e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_copy_data.o)
|
||||
.debug_info 0x000008ac 0xdd e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_clear_bss.o)
|
||||
*(.gnu.linkonce.wi.*)
|
||||
|
||||
.debug_abbrev 0x00000000 0x2ea
|
||||
*(.debug_abbrev)
|
||||
.debug_abbrev 0x00000000 0x113 Reciver.o
|
||||
.debug_abbrev 0x00000113 0x173 rf12.o
|
||||
.debug_abbrev 0x00000286 0x14 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_udivmodsi4.o)
|
||||
.debug_abbrev 0x0000029a 0x14 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_divmodsi4.o)
|
||||
.debug_abbrev 0x000002ae 0x14 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_exit.o)
|
||||
.debug_abbrev 0x000002c2 0x14 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_copy_data.o)
|
||||
.debug_abbrev 0x000002d6 0x14 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_clear_bss.o)
|
||||
|
||||
.debug_line 0x00000000 0x662
|
||||
*(.debug_line)
|
||||
.debug_line 0x00000000 0x191 Reciver.o
|
||||
.debug_line 0x00000191 0x1e1 rf12.o
|
||||
.debug_line 0x00000372 0xa8 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_udivmodsi4.o)
|
||||
.debug_line 0x0000041a 0xa1 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_divmodsi4.o)
|
||||
.debug_line 0x000004bb 0x88 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_exit.o)
|
||||
.debug_line 0x00000543 0x91 e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_copy_data.o)
|
||||
.debug_line 0x000005d4 0x8e e:/programme/atmel/atmel studio 6.0/extensions/atmel/avrgcc/3.4.1.95/avrtoolchain/bin/../lib/gcc/avr/4.6.2/avr5\libgcc.a(_clear_bss.o)
|
||||
|
||||
.debug_frame 0x00000000 0x130
|
||||
*(.debug_frame)
|
||||
.debug_frame 0x00000000 0x64 Reciver.o
|
||||
.debug_frame 0x00000064 0xcc rf12.o
|
||||
|
||||
.debug_str 0x00000000 0x1ca
|
||||
*(.debug_str)
|
||||
.debug_str 0x00000000 0x10d Reciver.o
|
||||
0x141 (size before relaxing)
|
||||
.debug_str 0x0000010d 0xbd rf12.o
|
||||
0x1f8 (size before relaxing)
|
||||
|
||||
.debug_loc 0x00000000 0x384
|
||||
*(.debug_loc)
|
||||
.debug_loc 0x00000000 0xd8 Reciver.o
|
||||
.debug_loc 0x000000d8 0x2ac rf12.o
|
||||
|
||||
.debug_macinfo
|
||||
*(.debug_macinfo)
|
||||
OUTPUT(Reciver.elf elf32-avr)
|
||||
LOAD linker stubs
|
||||
@@ -0,0 +1,66 @@
|
||||
S00F0000526563697665722E7372656345
|
||||
S11300000C942A000C9447000C9447000C9447006D
|
||||
S11300100C9447000C9447000C9447000C94470040
|
||||
S11300200C9447000C9447000C9447000C94470030
|
||||
S11300300C9447000C9447000C9447000C94470020
|
||||
S11300400C9447000C9447000C9447000C94470010
|
||||
S11300500C94470011241FBECFE5D4E0DEBFCDBF12
|
||||
S113006010E0A0E6B0E0E8EFF3E002C005900D92E6
|
||||
S1130070A036B107D9F710E0A0E6B0E001C01D92A8
|
||||
S1130080A036B107E1F70E9481000C94FA010C94A8
|
||||
S11300900000CF93DF9300D0CDB7DEB719821A8268
|
||||
S11300A0CE01019662E00E948D018981873359F463
|
||||
S11300B08A81833641F4C09A8FE39CE90197F1F772
|
||||
S11300C000C00000C0980F900F90DF91CF91089569
|
||||
S11300D0CF93DF930F92CDB7DEB781E08983CE0152
|
||||
S11300E0019661E00E9445018FEF90E7A2E0815004
|
||||
S11300F09040A040E1F700C000000F90DF91CF9145
|
||||
S113010008950E94B10080E296E00E94F90081E027
|
||||
S113011060E047E00E94DB0080E895E20E9409016C
|
||||
S113012080E066E00E943001B89A0E944900FDCF49
|
||||
S1130130939840E120E030E0992314F4959A01C0AB
|
||||
S11301409598220F331F86992160949A880F991FDE
|
||||
S113015000C000009498415079F7939A822F932F0E
|
||||
S1130160089588E381BB88E082BB8FEF90E7A2E02B
|
||||
S113017081509040A040E1F700C0000080EE90EC78
|
||||
S11301800E94980087ED90E80E9498008BEA92EC18
|
||||
S11301900E94980081E89AEC0E94980080E090EE1A
|
||||
S11301A00E94980080E098EC0E94980087EF94ECFD
|
||||
S11301B00E949800089590E0880F991F8295929567
|
||||
S11301C0907F9827807F9827907050E047705070F8
|
||||
S11301D0842B952B946970E063707070660F771FA1
|
||||
S11301E0660F771F660F771F862B972B0E94980048
|
||||
S11301F008958036910538F02FE08034920728F076
|
||||
S11302008FE39FE002C080E690E0906A0E9498002D
|
||||
S1130210089522E08739920710F125E18831920789
|
||||
S113022080F49C0140E050E060E678EA80E090E0F1
|
||||
S11302300E94DF01C90101978068966C0E949800B2
|
||||
S113024008959C0140E050E06CEF72E485E090E09A
|
||||
S11302500E94BD01C9010197966C0E9498000895FF
|
||||
S113026090E087709070986970E062957295707FE5
|
||||
S11302707627607F76277070862B972B0E949800D4
|
||||
S113028008959398869BFECF08950F931F93CF9361
|
||||
S1130290DF938C01C62F88E392E80E9498000E94A5
|
||||
S11302A041018AEA98EB0E9498000E9441018AEA7F
|
||||
S11302B098EB0E9498000E9441018AEA98EB0E9400
|
||||
S11302C098000E9441018DE298EB0E9498000E94E0
|
||||
S11302D0410184ED98EB0E949800CC2399F0C80169
|
||||
S11302E00196C1509C012C0F311DE9010E9441016E
|
||||
S11302F0F80181918F0190E0986B0E9498000C178F
|
||||
S11303001D07A1F70E94410188E092E80E9498002D
|
||||
S1130310DF91CF911F910F9108950F931F93CF9366
|
||||
S1130320DF938C01D62F88EC92E80E94980081E834
|
||||
S11303309AEC0E94980083E89AEC0E949800DD23CE
|
||||
S113034099F0C8010196D1509C012D0F311DE9018E
|
||||
S11303500E94410180E090EB0E949800F801819393
|
||||
S11303608F01EC17FD07A1F788E092E80E9498003E
|
||||
S1130370DF91CF911F910F910895A1E21A2EAA1B2C
|
||||
S1130380BB1BFD010DC0AA1FBB1FEE1FFF1FA21741
|
||||
S1130390B307E407F50720F0A21BB30BE40BF50B3E
|
||||
S11303A0661F771F881F991F1A9469F760957095C7
|
||||
S11303B0809590959B01AC01BD01CF01089597FBF9
|
||||
S11303C0092E05260ED057FD04D0D7DF0AD0001C15
|
||||
S11303D038F450954095309521953F4F4F4F5F4FDE
|
||||
S11303E00895F6F790958095709561957F4F8F4F9E
|
||||
S10B03F09F4F0895F894FFCF1C
|
||||
S9030000FC
|
||||
@@ -0,0 +1,8 @@
|
||||
################################################################################
|
||||
# Automatically-generated file. Do not edit or delete the file
|
||||
################################################################################
|
||||
|
||||
Reciver.c
|
||||
|
||||
rf12.c
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
rf12.d rf12.o: .././rf12.c \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/io.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/sfr_defs.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/inttypes.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/include/stdint.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/stdint.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/iom16a.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/portpins.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/common.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/version.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/fuse.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/lock.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/util/delay.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/util/delay_basic.h \
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/math.h \
|
||||
.././global.h .././rf12.h
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/io.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/sfr_defs.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/inttypes.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/include/stdint.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/stdint.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/iom16a.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/portpins.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/common.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/version.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/fuse.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/avr/lock.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/util/delay.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/util/delay_basic.h:
|
||||
|
||||
e:\programme\atmel\atmel\ studio\ 6.0\extensions\atmel\avrgcc\3.4.1.95\avrtoolchain\bin\../lib/gcc/avr/4.6.2/../../../../avr/include/math.h:
|
||||
|
||||
.././global.h:
|
||||
|
||||
.././rf12.h:
|
||||
@@ -0,0 +1,50 @@
|
||||
/*
|
||||
* Reciver.c
|
||||
*
|
||||
* Created: 25.03.2013 21:03:07
|
||||
* Author: netz
|
||||
*/
|
||||
|
||||
#define F_CPU 8000000
|
||||
|
||||
#include <avr/io.h>
|
||||
#include <util/delay.h>
|
||||
#include "rf12.h"
|
||||
|
||||
void recive() {
|
||||
unsigned char text[2];
|
||||
text[0] = 0;
|
||||
text[1] = 0;
|
||||
rf12_rxdata(text,2);
|
||||
if(text[0] == 55 && text[1] == 99) {
|
||||
PORTB |= (1<<PB0);
|
||||
_delay_ms(20);
|
||||
PORTB &= ~(1<<PB0);
|
||||
}
|
||||
}
|
||||
|
||||
void send() {
|
||||
unsigned char text[1] = {0x01};
|
||||
rf12_txdata(text,1);
|
||||
_delay_ms(100);
|
||||
}
|
||||
|
||||
int main(void)
|
||||
{
|
||||
rf12_init(); // ein paar Register setzen (z.B. CLK auf 10MHz)
|
||||
rf12_setfreq(RF12FREQ(433.92)); // Sende/Empfangsfrequenz auf 433,92MHz einstellen
|
||||
rf12_setbandwidth(1, 0, 7); // 400kHz Bandbreite, 0dB Verstärkung, DRSSI threshold: -61dBm
|
||||
rf12_setbaud(9600); // 19200 baud
|
||||
rf12_setpower(0, 6); // 1mW Ausgangsleistung, 120kHz Frequenzshift
|
||||
|
||||
DDRB |= (1<<PB0);
|
||||
while(1)
|
||||
{
|
||||
recive();
|
||||
//_delay_ms(200);
|
||||
/*PORTB |= (1<<PB0);
|
||||
send();
|
||||
PORTB &= ~(1<<PB0);
|
||||
_delay_ms(900);*/
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,114 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectVersion>6.0</ProjectVersion>
|
||||
<ToolchainName>com.Atmel.AVRGCC8</ToolchainName>
|
||||
<ProjectGuid>{762e00f9-912f-4c48-851f-1f51c060e5ae}</ProjectGuid>
|
||||
<avrdevice>ATmega16A</avrdevice>
|
||||
<avrdeviceseries>none</avrdeviceseries>
|
||||
<OutputType>Executable</OutputType>
|
||||
<Language>C</Language>
|
||||
<OutputFileName>$(MSBuildProjectName)</OutputFileName>
|
||||
<OutputFileExtension>.elf</OutputFileExtension>
|
||||
<OutputDirectory>$(MSBuildProjectDirectory)\$(Configuration)</OutputDirectory>
|
||||
<AssemblyName>Reciver</AssemblyName>
|
||||
<Name>Reciver</Name>
|
||||
<RootNamespace>Reciver</RootNamespace>
|
||||
<ToolchainFlavour>Native</ToolchainFlavour>
|
||||
<KeepTimersRunning>true</KeepTimersRunning>
|
||||
<OverrideVtor>false</OverrideVtor>
|
||||
<OverrideVtorValue />
|
||||
<eraseonlaunchrule>0</eraseonlaunchrule>
|
||||
<AsfVersion>3.5.1</AsfVersion>
|
||||
<avrtool>com.atmel.avrdbg.tool.ispmk2</avrtool>
|
||||
<avrtoolinterface>ISP</avrtoolinterface>
|
||||
<com_atmel_avrdbg_tool_ispmk2>
|
||||
<ToolType>com.atmel.avrdbg.tool.ispmk2</ToolType>
|
||||
<ToolName>AVRISP mkII</ToolName>
|
||||
<ToolNumber>0000000000000</ToolNumber>
|
||||
<KeepTimersRunning>true</KeepTimersRunning>
|
||||
<OverrideVtor>false</OverrideVtor>
|
||||
<OverrideVtorValue>
|
||||
</OverrideVtorValue>
|
||||
<Channel>
|
||||
<host>127.0.0.1</host>
|
||||
<port>49503</port>
|
||||
<ssl>False</ssl>
|
||||
</Channel>
|
||||
<ToolOptions>
|
||||
<InterfaceName>ISP</InterfaceName>
|
||||
<InterfaceProperties>
|
||||
<JtagDbgClock>249000</JtagDbgClock>
|
||||
<JtagProgClock>1000000</JtagProgClock>
|
||||
<IspClock>250000</IspClock>
|
||||
<JtagInChain>false</JtagInChain>
|
||||
<JtagEnableExtResetOnStartSession>false</JtagEnableExtResetOnStartSession>
|
||||
<JtagDevicesBefore>0</JtagDevicesBefore>
|
||||
<JtagDevicesAfter>0</JtagDevicesAfter>
|
||||
<JtagInstrBitsBefore>0</JtagInstrBitsBefore>
|
||||
<JtagInstrBitsAfter>0</JtagInstrBitsAfter>
|
||||
</InterfaceProperties>
|
||||
</ToolOptions>
|
||||
</com_atmel_avrdbg_tool_ispmk2>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||
<ToolchainSettings>
|
||||
<AvrGcc>
|
||||
<avrgcc.common.outputfiles.hex>True</avrgcc.common.outputfiles.hex>
|
||||
<avrgcc.common.outputfiles.lss>True</avrgcc.common.outputfiles.lss>
|
||||
<avrgcc.common.outputfiles.eep>True</avrgcc.common.outputfiles.eep>
|
||||
<avrgcc.common.outputfiles.srec>True</avrgcc.common.outputfiles.srec>
|
||||
<avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>
|
||||
<avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>
|
||||
<avrgcc.compiler.optimization.level>Optimize for size (-Os)</avrgcc.compiler.optimization.level>
|
||||
<avrgcc.compiler.optimization.PackStructureMembers>True</avrgcc.compiler.optimization.PackStructureMembers>
|
||||
<avrgcc.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcc.compiler.optimization.AllocateBytesNeededForEnum>
|
||||
<avrgcc.compiler.warnings.AllWarnings>True</avrgcc.compiler.warnings.AllWarnings>
|
||||
<avrgcc.linker.libraries.Libraries>
|
||||
<ListValues>
|
||||
<Value>m</Value>
|
||||
</ListValues>
|
||||
</avrgcc.linker.libraries.Libraries>
|
||||
</AvrGcc>
|
||||
</ToolchainSettings>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
||||
<ToolchainSettings>
|
||||
<AvrGcc>
|
||||
<avrgcc.common.outputfiles.hex>True</avrgcc.common.outputfiles.hex>
|
||||
<avrgcc.common.outputfiles.lss>True</avrgcc.common.outputfiles.lss>
|
||||
<avrgcc.common.outputfiles.eep>True</avrgcc.common.outputfiles.eep>
|
||||
<avrgcc.common.outputfiles.srec>True</avrgcc.common.outputfiles.srec>
|
||||
<avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>
|
||||
<avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>
|
||||
<avrgcc.compiler.optimization.level>Optimize (-O1)</avrgcc.compiler.optimization.level>
|
||||
<avrgcc.compiler.optimization.PackStructureMembers>True</avrgcc.compiler.optimization.PackStructureMembers>
|
||||
<avrgcc.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcc.compiler.optimization.AllocateBytesNeededForEnum>
|
||||
<avrgcc.compiler.optimization.DebugLevel>Default (-g2)</avrgcc.compiler.optimization.DebugLevel>
|
||||
<avrgcc.compiler.warnings.AllWarnings>True</avrgcc.compiler.warnings.AllWarnings>
|
||||
<avrgcc.linker.libraries.Libraries>
|
||||
<ListValues>
|
||||
<Value>m</Value>
|
||||
</ListValues>
|
||||
</avrgcc.linker.libraries.Libraries>
|
||||
<avrgcc.assembler.debugging.DebugLevel>Default (-Wa,-g)</avrgcc.assembler.debugging.DebugLevel>
|
||||
</AvrGcc>
|
||||
</ToolchainSettings>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="global.h">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Reciver.c">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="rf12.c">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="rf12.h">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<Import Project="$(AVRSTUDIO_EXE_PATH)\\Vs\\Compiler.targets" />
|
||||
</Project>
|
||||
@@ -0,0 +1,20 @@
|
||||
/*
|
||||
* global.h
|
||||
*
|
||||
* Created: 25.03.2013 21:12:17
|
||||
* Author: netz
|
||||
*/
|
||||
|
||||
|
||||
|
||||
#ifndef GLOBAL_H_
|
||||
#define GLOBAL_H_
|
||||
|
||||
#ifndef cbi
|
||||
#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit))
|
||||
#endif
|
||||
#ifndef sbi
|
||||
#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit))
|
||||
#endif
|
||||
|
||||
#endif /* GLOBAL_H_ */
|
||||
@@ -0,0 +1,127 @@
|
||||
/*
|
||||
* rf12.c
|
||||
*
|
||||
* Created: 24.03.2013 23:52:52
|
||||
* Author: netz
|
||||
*/
|
||||
|
||||
#define F_CPU 8000000
|
||||
|
||||
#define RF_PORT PORTD
|
||||
#define RF_DDR DDRD
|
||||
#define RF_PIN PIND
|
||||
|
||||
#define CS PD3
|
||||
#define SCK PD4
|
||||
#define SDI PD5
|
||||
#define SDO PD6
|
||||
|
||||
|
||||
#include <avr/io.h>
|
||||
#include <util/delay.h>
|
||||
#include "global.h"
|
||||
#include "rf12.h"
|
||||
|
||||
unsigned short rf12_trans(unsigned short wert)
|
||||
{ unsigned short werti=0;
|
||||
unsigned char i;
|
||||
|
||||
cbi(RF_PORT, CS);
|
||||
for (i=0; i<16; i++)
|
||||
{ if (wert&32768)
|
||||
sbi(RF_PORT, SDI);
|
||||
else
|
||||
cbi(RF_PORT, SDI);
|
||||
werti<<=1;
|
||||
if (RF_PIN&(1<<SDO))
|
||||
werti|=1;
|
||||
sbi(RF_PORT, SCK);
|
||||
wert<<=1;
|
||||
_delay_us(0.3);
|
||||
cbi(RF_PORT, SCK);
|
||||
}
|
||||
sbi(RF_PORT, CS);
|
||||
return werti;
|
||||
}
|
||||
|
||||
void rf12_init(void)
|
||||
{
|
||||
RF_DDR=(1<<SDI)|(1<<SCK)|(1<<CS);
|
||||
RF_PORT=(1<<CS);
|
||||
|
||||
_delay_ms(100);
|
||||
|
||||
rf12_trans(0xC0E0); // AVR CLK: 10MHz
|
||||
rf12_trans(0x80D7); // Enable FIFO
|
||||
rf12_trans(0xC2AB); // Data Filter: internal
|
||||
rf12_trans(0xCA81); // Set FIFO mode
|
||||
rf12_trans(0xE000); // disable wakeuptimer
|
||||
rf12_trans(0xC800); // disable low duty cycle
|
||||
rf12_trans(0xC4F7); // AFC settings: autotuning: -10kHz...+7,5kHz
|
||||
}
|
||||
|
||||
void rf12_setbandwidth(unsigned char bandwidth, unsigned char gain, unsigned char drssi)
|
||||
{
|
||||
rf12_trans(0x9400|((bandwidth&7)<<5)|((gain&3)<<3)|(drssi&7));
|
||||
}
|
||||
|
||||
void rf12_setfreq(unsigned short freq)
|
||||
{ if (freq<96) // 430,2400MHz
|
||||
freq=96;
|
||||
else if (freq>3903) // 439,7575MHz
|
||||
freq=3903;
|
||||
rf12_trans(0xA000|freq);
|
||||
}
|
||||
|
||||
void rf12_setbaud(unsigned short baud)
|
||||
{
|
||||
if (baud<663)
|
||||
return;
|
||||
if (baud<5400) // Baudrate= 344827,58621/(R+1)/(1+CS*7)
|
||||
rf12_trans(0xC680|((43104/baud)-1));
|
||||
else
|
||||
rf12_trans(0xC600|((344828UL/baud)-1));
|
||||
}
|
||||
|
||||
void rf12_setpower(unsigned char power, unsigned char mod)
|
||||
{
|
||||
rf12_trans(0x9800|(power&7)|((mod&15)<<4));
|
||||
}
|
||||
|
||||
void rf12_ready(void)
|
||||
{ cbi(RF_PORT, CS);
|
||||
while (!(RF_PIN&(1<<SDO))); // wait until FIFO ready
|
||||
}
|
||||
|
||||
void rf12_txdata(unsigned char *data, unsigned char number)
|
||||
{ unsigned char i;
|
||||
rf12_trans(0x8238); // TX on
|
||||
rf12_ready();
|
||||
rf12_trans(0xB8AA);
|
||||
rf12_ready();
|
||||
rf12_trans(0xB8AA);
|
||||
rf12_ready();
|
||||
rf12_trans(0xB8AA);
|
||||
rf12_ready();
|
||||
rf12_trans(0xB82D);
|
||||
rf12_ready();
|
||||
rf12_trans(0xB8D4);
|
||||
for (i=0; i<number; i++)
|
||||
{ rf12_ready();
|
||||
rf12_trans(0xB800|(*data++));
|
||||
}
|
||||
rf12_ready();
|
||||
rf12_trans(0x8208); // TX off
|
||||
}
|
||||
|
||||
void rf12_rxdata(unsigned char *data, unsigned char number)
|
||||
{ unsigned char i;
|
||||
rf12_trans(0x82C8); // RX on
|
||||
rf12_trans(0xCA81); // set FIFO mode
|
||||
rf12_trans(0xCA83); // enable FIFO
|
||||
for (i=0; i<number; i++)
|
||||
{ rf12_ready();
|
||||
*data++=rf12_trans(0xB000);
|
||||
}
|
||||
rf12_trans(0x8208); // RX off
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
/*
|
||||
* rf12.h
|
||||
*
|
||||
* Created: 25.03.2013 00:25:08
|
||||
* Author: netz
|
||||
*/
|
||||
|
||||
|
||||
#ifndef RF12_H_
|
||||
#define RF12_H_
|
||||
|
||||
extern unsigned short rf12_trans(unsigned short wert); // transfer 1 word to/from module
|
||||
extern void rf12_init(void); // initialize module
|
||||
extern void rf12_setfreq(unsigned short freq); // set center frequency
|
||||
extern void rf12_setbaud(unsigned short baud); // set baudrate
|
||||
extern void rf12_setpower(unsigned char power, unsigned char mod); // set transmission settings
|
||||
extern void rf12_setbandwidth(unsigned char bandwidth, unsigned char gain, unsigned char drssi); // set receiver settings
|
||||
extern void rf12_txdata(unsigned char *data, unsigned char number); // transmit number of bytes from array
|
||||
extern void rf12_rxdata(unsigned char *data, unsigned char number); // receive number of bytes into array
|
||||
extern void rf12_ready(void); // wait until FIFO ready (to transmit/read data)
|
||||
|
||||
#define RF12FREQ(freq) ((freq-430.0)/0.0025) // macro for calculating frequency value out of frequency in MHz
|
||||
|
||||
|
||||
#endif /* RF12_H_ */
|
||||
Reference in New Issue
Block a user