Hallo,
Benutze gerade zum ersten Mal den ATtiny1606 mit megaTinyCore und versuche gerade einen PIN Interrupt zu erzeugen. So habe ich den PIN konfiguriert:
PORTB.PIN0CTRL = (PORTB.PIN0CTRL & ~PORT_ISC_gm) | PORT_ISC_LEVEL_gc | PORT_PULLUPEN_bm ;
Die dazu gehörige ISR: ISR(PORTB_PORT_vect)
Sobald ich PORTB_PORT_vect verwende, bekomme ich folgenden Fehler:
/.arduino15/packages/DxCore/tools/avr-gcc/7.3.0-atmel3.6.1-azduino6/bin/avr-gcc -Wall -Os -g -flto -fuse-linker-plugin -Wl,--gc-sections -Wl,--section-start=.text=0x0 -mrelax -mmcu=attiny1606 -o /tmp/arduino_build_914852/ArduinoIgnition.ino.elf /tmp/arduino_build_914852/sketch/ArduinoIgnition.ino.cpp.o /tmp/arduino_build_914852/libraries/SoftwareSerial/SoftwareSerial.cpp.o /tmp/arduino_build_914852/../arduino_cache_329881/core/core_24badb4bb45499506442b3073c6f1218.a -L/tmp/arduino_build_914852 -lm
WInterrupts.c.o (symbol from plugin): In function `intFunc':
(.text+0x0): multiple definition of `__vector_4'
/tmp/arduino_build_914852/sketch/ArduinoIgnition.ino.cpp.o (symbol from plugin):(.text+0x0): first defined here
/home/matthias/.arduino15/packages/DxCore/tools/avr-gcc/7.3.0-atmel3.6.1-azduino6/bin/../lib/gcc/avr/7.3.0/../../../../avr/bin/ld: Disabling relaxation: it will not work with multiple definitions
collect2: error: ld returned 1 exit status
Bibliothek SoftwareSerial in Version 1.0.1 im Ordner: .arduino15/packages/megaTinyCore/hardware/megaavr/2.6.1/libraries/SoftwareSerial wird verwendet
exit status 1
Fehler beim Kompilieren für das Board ATtiny3226/3216/1626/1616/1606/826/816/806/426/416/406.
Nehme ich zum testen mal ISR(TCB0_INT_vect) (was natürlich nicht funktioniert), kompiliert er sauber durch.
Ich verstehe die Fehlermeldung nicht. DxCore sollte eignetlich gar nicht installiert sein und doch habe ich diesen Ordner im Ordner "packages". Benenne ich diesen um, wird die Kompilierung sofort abgebrochen.
Ich hoffe, ihr habt eine Lösung für das Problem. Ich komme nämlich tatsächlich nicht weiter
VG
Matze