...
 
Commits (16)

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

README for OV-CAN-Node
General purpose: direct CAN connection to an Attiny817
Branches:
-Master: The MCP chips without Attiny817. Converts SPI to CAN. Possibly not complete.
-Attiny: SPI pins on Attiny817 QFN(24pin). Has output pins for 2 servos, 1 UART and 6 GPIO pins. Possibly not complete.
-Attiny_dobbel: Same as Attiny, but with both QFN(20pin) and SOIC(20pin). Complete version.
Notes:
-One of the CAN PCBs was confirmed working and communicate at Byggern presentation autumn 2018.
-Early spring 2019 I could not make two CAN PCBs communicate.
-I put the hardware in Gamle Elbygget Kjeller skap 771, -17:00, 8. Aug 2019
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
PINOUT=PA6,PA7,PB5,PB4,PC1,PC0
Uart=TxD,RxD
PINOUT=PC1,PC0,PB4,PB5,PA7,PA6
SPI=MOSI,MISO,SCK,S\S\,INT
Uart=RxD,TxD
......@@ -21,7 +21,7 @@ TargetOutputMedium=Folder Structure
VariantName=[No Variations]
VariantScope=1
CurrentConfigurationName=
TargetPrinter=Microsoft Print to PDF
TargetPrinter=Insane
PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
OutputMedium1=Print Job
OutputMedium1_Type=Printer
......@@ -48,7 +48,7 @@ OutputEnabled1_OutputMedium4=0
OutputEnabled1_OutputMedium5=1
OutputDefault1=0
Configuration1_Name1=OutputConfigurationParameter1
Configuration1_Item1=AddToAllLayerClasses.Set= |AddToAllPlots.Set=SerializeLayerHash.Version~2,ClassName~TLayerToBoolean|CentrePlots=False|DrillDrawingSymbol=GraphicsSymbol|DrillDrawingSymbolSize=200000|EmbeddedApertures=True|FilmBorderSize=10000000|FilmXSize=200000000|FilmYSize=160000000|FlashAllFills=False|FlashPadShapes=True|G54OnApertureChange=False|GenerateDRCRulesFile=True|GenerateDRCRulesFile=True|GenerateReliefShapes=True|GerberUnit=Imperial|GerberUnit=Imperial|IncludeUnconnectedMidLayerPads=False|LayerClassesMirror.Set= |LayerClassesPlot.Set= |LeadingAndTrailingZeroesMode=SuppressLeadingZeroes|MaxApertureSize=2500000|MinusApertureTolerance=40|MinusApertureTolerance=40|Mirror.Set=SerializeLayerHash.Version~2,ClassName~TLayerToBoolean|MirrorDrillDrawingPlots=False|MirrorDrillGuidePlots=False|NoRegularPolygons=False|NumberOfDecimals=5|NumberOfDecimals=5|OptimizeChangeLocationCommands=True|OptimizeChangeLocationCommands=True|OriginPosition=Relative|Panelize=False|Plot.Set=SerializeLayerHash.Version~2,ClassName~TLayerToBoolean,16973830~1,16973834~1,16777217~1,16842751~1,16973835~1,16973831~1,16973837~1|PlotPositivePlaneLayers=False|PlotUsedDrillDrawingLayerPairs=False|PlotUsedDrillGuideLayerPairs=False|PlusApertureTolerance=40|PlusApertureTolerance=40|Record=GerberView|SoftwareArcs=False|Sorted=False|Sorted=False
Configuration1_Item1=AddToAllLayerClasses.Set= |AddToAllPlots.Set=SerializeLayerHash.Version~2,ClassName~TLayerToBoolean|CentrePlots=False|DrillDrawingSymbol=GraphicsSymbol|DrillDrawingSymbolSize=200000|EmbeddedApertures=True|FilmBorderSize=10000000|FilmXSize=200000000|FilmYSize=160000000|FlashAllFills=False|FlashPadShapes=True|G54OnApertureChange=False|GenerateDRCRulesFile=True|GenerateDRCRulesFile=True|GenerateReliefShapes=True|GerberUnit=Imperial|GerberUnit=Imperial|IncludeUnconnectedMidLayerPads=False|LayerClassesMirror.Set= |LayerClassesPlot.Set= |LeadingAndTrailingZeroesMode=SuppressLeadingZeroes|MaxApertureSize=2500000|MinusApertureTolerance=40|MinusApertureTolerance=40|Mirror.Set=SerializeLayerHash.Version~2,ClassName~TLayerToBoolean|MirrorDrillDrawingPlots=False|MirrorDrillGuidePlots=False|NoRegularPolygons=False|NumberOfDecimals=5|NumberOfDecimals=5|OptimizeChangeLocationCommands=True|OptimizeChangeLocationCommands=True|OriginPosition=Relative|Panelize=False|Plot.Set=SerializeLayerHash.Version~2,ClassName~TLayerToBoolean,16973830~1,16973834~1,16777217~1,16842751~1,16973835~1,16973831~1,16908289~1,16973837~1|PlotPositivePlaneLayers=False|PlotUsedDrillDrawingLayerPairs=False|PlotUsedDrillGuideLayerPairs=False|PlusApertureTolerance=40|PlusApertureTolerance=40|Record=GerberView|SoftwareArcs=False|Sorted=False|Sorted=False
OutputType2=NC Drill
OutputName2=NC Drill Files
OutputCategory2=Fabrication
......@@ -62,7 +62,7 @@ OutputEnabled2_OutputMedium4=0
OutputEnabled2_OutputMedium5=2
OutputDefault2=0
Configuration2_Name1=OutputConfigurationParameter1
Configuration2_Item1=BoardEdgeRoutToolDia=2000000|GenerateBoardEdgeRout=False|GenerateDrilledSlotsG85=False|GenerateEIADrillFile=False|GenerateSeparatePlatedNonPlatedFiles=False|NumberOfDecimals=5|NumberOfUnits=2|OptimizeChangeLocationCommands=True|OriginPosition=Relative|Record=DrillView|Units=Imperial|ZeroesMode=SuppressTrailingZeroes
Configuration2_Item1=BoardEdgeRoutToolDia=2000000|GenerateBoardEdgeRout=False|GenerateDrilledSlotsG85=False|GenerateEIADrillFile=False|GenerateSeparatePlatedNonPlatedFiles=False|NumberOfDecimals=5|NumberOfUnits=2|OptimizeChangeLocationCommands=True|OriginPosition=Relative|Record=DrillView|Units=Imperial|ZeroesMode=SuppressLeadingZeroes
OutputType3=Schematic Print
OutputName3=Schematic Prints
OutputCategory3=Documentation
......@@ -294,7 +294,7 @@ Configuration10_Item5=LibRef=100|Designator=100|Design comment=100
[PublishSettings]
OutputFilePath2=Z:\brukere\Lysreklamen\Lysreklamekontroller2015\Kontrollerkort\Project Outputs for Kontrollerkort\seedstudio.PDF
ReleaseManaged2=1
OutputBasePath2=Project Outputs for Control_Card
OutputBasePath2=Project Outputs for OV-CAN-Node
OutputPathMedia2=
OutputPathMediaValue2=
OutputPathOutputer2=[Output Type]
......@@ -321,7 +321,7 @@ PDFACompliance2=Disabled
PDFVersion2=Default
OutputFilePath3=C:\Users\Jakob\Documents\Git\LED-Matrix\Control_Card\Project Outputs for Control_Card\
ReleaseManaged3=1
OutputBasePath3=Project Outputs for Control_Card
OutputBasePath3=Project Outputs for OV-CAN-Node
OutputPathMedia3=
OutputPathMediaValue3=
OutputPathOutputer3=[Output Type]
......@@ -334,7 +334,7 @@ OutputFileNameSpecial3=
OpenOutput3=1
OutputFilePath4=
ReleaseManaged4=1
OutputBasePath4=Project Outputs for Control_Card
OutputBasePath4=Project Outputs for OV-CAN-Node
OutputPathMedia4=
OutputPathMediaValue4=
OutputPathOutputer4=[Output Type]
......
%%%%%%%% Node1 / Atmel Atmega162 %%%%%%%%
Controls OLED
Reads joystick and slider
Transmits values onto the CAN-network
%%%%%%%% Node2 / Arduino %%%%%%%%
Controls motor encoder box
Controls Solenoide
Controls Solenoide angle
Reads IR
%%%%%%%% Node3 / Atmel AT90CAN128 %%%%%%%%
Reads game-controller from Nordic central node via SPI
Transmits values onto the CAN-network
%%%%%%%% Nordic NRF chip / central %%%%%%%%
Recieves game-controller values from Nordic Pheripheral node, transmits via SPI to Node3.
%%%%%%%% Nordic NRF chip / pheripheral %%%%%%%%
Reads game-controller values from PS2-controller. Transmit values via bluetooth to Nordic Central node.
################################################################################
# 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:=
LIB_DEP:=
LINKER_SCRIPT_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 += \
../can.c \
../led.c \
../main.c \
../mcp2515.c \
../spi.c
PREPROCESSING_SRCS +=
ASM_SRCS +=
OBJS += \
can.o \
led.o \
main.o \
mcp2515.o \
spi.o
OBJS_AS_ARGS += \
can.o \
led.o \
main.o \
mcp2515.o \
spi.o
C_DEPS += \
can.d \
led.d \
main.d \
mcp2515.d \
spi.d
C_DEPS_AS_ARGS += \
can.d \
led.d \
main.d \
mcp2515.d \
spi.d
OUTPUT_FILE_PATH +=OV_CAN_Node_V2.elf
OUTPUT_FILE_PATH_AS_ARGS +=OV_CAN_Node_V2.elf
ADDITIONAL_DEPENDENCIES:=
OUTPUT_FILE_DEP:= ./makedep.mk
LIB_DEP+=
LINKER_SCRIPT_DEP+=
# AVR32/GNU C Compiler
./%.o: .././%.c
@echo Building file: $<
@echo Invoking: AVR/GNU C Compiler : 4.9.2
$(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -x c -funsigned-char -funsigned-bitfields -DDEBUG -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATtiny_DFP\1.1.102\include" -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -g2 -Wall -mmcu=attiny816 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATtiny_DFP\1.1.102\gcc\dev\attiny816" -c -std=gnu99 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" -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) $(LIB_DEP) $(LINKER_SCRIPT_DEP)
@echo Building target: $@
@echo Invoking: AVR/GNU Linker : 4.9.2
$(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -o$(OUTPUT_FILE_PATH_AS_ARGS) $(OBJS_AS_ARGS) $(USER_OBJS) $(LIBS) -Wl,-Map="OV_CAN_Node_V2.map" -Wl,--start-group -Wl,-lm -Wl,--end-group -Wl,--gc-sections -mmcu=attiny816 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATtiny_DFP\1.1.102\gcc\dev\attiny816"
@echo Finished building target: $@
"C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-objcopy.exe" -O ihex -R .eeprom -R .fuse -R .lock -R .signature -R .user_signatures "OV_CAN_Node_V2.elf" "OV_CAN_Node_V2.hex"
"C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-objcopy.exe" -j .eeprom --set-section-flags=.eeprom=alloc,load --change-section-lma .eeprom=0 --no-change-warnings -O ihex "OV_CAN_Node_V2.elf" "OV_CAN_Node_V2.eep" || exit 0
"C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-objdump.exe" -h -S "OV_CAN_Node_V2.elf" > "OV_CAN_Node_V2.lss"
"C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-objcopy.exe" -O srec -R .eeprom -R .fuse -R .lock -R .signature -R .user_signatures "OV_CAN_Node_V2.elf" "OV_CAN_Node_V2.srec"
"C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-size.exe" "OV_CAN_Node_V2.elf"
# Other Targets
clean:
-$(RM) $(OBJS_AS_ARGS) $(EXECUTABLES)
-$(RM) $(C_DEPS_AS_ARGS)
rm -rf "OV_CAN_Node_V2.elf" "OV_CAN_Node_V2.a" "OV_CAN_Node_V2.hex" "OV_CAN_Node_V2.lss" "OV_CAN_Node_V2.eep" "OV_CAN_Node_V2.map" "OV_CAN_Node_V2.srec" "OV_CAN_Node_V2.usersignatures"
\ No newline at end of file
:1000000019C02AC029C069C027C026C025C024C085
:1000100023C022C021C020C01FC01EC01DC01CC0E4
:100020001BC01AC019C018C017C016C015C014C014
:1000300013C012C011241FBECFEFCDBFDFE3DEBF60
:100040002FE3A0E0BEE301C01D92A132B207E1F7A9
:100050000E94A7000C9422020C9400000E947101DF
:100060000E94680108958FB7F89410920D3E109287
:100070000C3E10920B3E8FBF08950E94F2010E9429
:1000800033000E9447010895FC01A0910D3E8BE0D2
:10009000A89FD0011124A25FB14C9BE001900D926A
:1000A0009A95E1F780910D3E8F5F80930D3E8931E7
:1000B00011F410920D3E80910B3E893128F0809111
:1000C0000D3E80930C3E08959FB7F89480910B3EAF
:1000D0008F5F80930B3E9FBF08951F920F920FB6C4
:1000E0000F9211242F933F934F935F936F937F93BE
:1000F0008F939F93AF93BF93EF93FF9380910804E7
:1001000085FD08C080E09EE30E94B10180E09EE38F
:100110000E944400FF91EF91BF91AF919F918F9109
:100120007F916F915F914F913F912F910F900FBEF3
:100130000F901F90189588E080934104089588E0FF
:1001400080934504089588E0809346040895CF93F2
:10015000DF93CDB7DEB72B97CDBFDEBF0E949B00EC
:100160000E949F002FE78AE196E021508040904056
:10017000E1F700C000000E94A30006C08FE493ECEA
:100180000197F1F700C000000E943D008823B1F301
:100190000E949F0088E08B832AE030E029833A8325
:1001A00091E09C8392E09D8393E09E8394E09F8303
:1001B00095E0988796E0998797E09A878B87CE019C
:1001C00001960E942E008FE493EC0197F1F700C096
:1001D0000000F5CF81E00E94180280EC0E9413021B
:1001E0000E941E020895CF93C82F81E00E9418023A
:1001F00083E00E9413028C2F0E9413020E940E02C1
:10020000C82F0E941E028C2FCF910895CF93DF93A9
:10021000D82FC62F81E00E94180282E00E941302AC
:100220008D2F0E9413028C2F0E9413020E941E0227
:10023000DF91CF9108951F93CF93DF93182FD62F7F
:10024000C42F81E00E94180285E00E941302812FD2
:100250000E9413028D2F0E9413028C2F0E94130202
:100260000E941E02DF91CF911F910895CF93C82F56
:10027000482F60EE8FE00E941B018FE00E94F30088
:10028000982F907E81E0C91380E0CF910895E0E43B
:10029000F4E081E0858B85E082830E94EA0080E8BB
:1002A0000E943601882399F063E08AE20E940601E9
:1002B00060ED89E20E94060162E088E20E94060188
:1002C00063E08BE20E94060180E00E9436010895FF
:1002D00081E00E94180281E80E9413020E941E021F
:1002E0000895CF93DF93EC0181E00E94180280E42F
:1002F0000E94130288819981969587959695879596
:10030000969587950E94130288818295880F807E3A
:100310000E94130280E00E94130280E00E941302F8
:100320008A818F700E9413028B810E9413028C813C
:100330000E9413028D810E9413028E810E9413027B
:100340008F810E94130288850E94130289850E9472
:1003500013028A850E9413020E941E02DF91CF9130
:100360000895CF93DF93EC0181E00E94180280E9A9
:100370000E9413020E940E0228E0829FC0011124F5
:10038000888399830E940E02282F22952695277034
:1003900088819981822B888399830E940E020E9412
:1003A0000E020E940E028F708A830E940E028B83BF
:1003B0000E940E028C830E940E028D830E940E0208
:1003C0008E830E940E028F830E940E0288870E94F5
:1003D0000E0289870E940E028A870E941E02DF9108
:1003E000CF910895E0E0F4E080E1818382E08183B1
:1003F00084E0828388E08183E0E2F8E080818062AB
:10040000808380818460808380818F7E80838081EF
:10041000816080838281816E82830895E0E2F8E0CA
:10042000148284810895E0E2F8E084838481089551