Błąd podczas kompilacji programu dla Atmega8A

Problemy z realizacją projektów prezentowanych na blogu.
ODPOWIEDZ
Ogrodeusz
Młodszy majsterkowicz
Posty: 4
Rejestracja: 13 sty 2017, 07:04

Błąd podczas kompilacji programu dla Atmega8A

Post autor: Ogrodeusz » 21 lut 2017, 15:05

Witam wszystkich forumowiczów! Na początku pragnę oznajmić, że jestem początkującym jeśli chodzi o programowanie uC i dopiero się uczę, więc proszę nie oceniać stanu mojej wiedzy zbyt surowo ;) Ostatnio zakupiłem 2 mikrokontrolery: Attiny2313 oraz Atmega8A. Posiadam Arduino UNO R3 (klona) i chciałem go użyć do zaprogramowania ich (bazowałem głównie na postach https://majsterkowo.pl/forum/tutoriale- ... -t280.html i https://majsterkowo.pl/forum/tutoriale- ... -t280.html). Z Attiny jakoś mi się udało, ale z Atmegą niestety mam problem. Zrobiłem wszystko tak, jak w instrukcji. Po podłączeniu Atmegi do Arduino podłączam całość do komputera, wgrywam ArduinoISP, otwieram przykładowego sketcha (Blink), ustawiam programator na Arduino as ISP, ustawiam programowany kontroler jako Atmega8 (kod do boards.txt wgrany i plik z bootloaderem też) i na końcu wybieram Plik -> Załaduj używając programatora. Wtedy kompilator zaczyna pracę, ale po chwili pojawia się:
D:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino\HardwareSerial.cpp: In function 'void __vector_11()':
D:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino\HardwareSerial.cpp:94: error: 'rx_buffer' was not declared in this scope
Nie wgrywałem bootloadera, ponieważ podczas programowania Attiny tego nie robiłem i wszystko było ok. Myślę, że ten błąd jest związany tylko z Arduino IDE, ponieważ nawet kiedy chcę tylko skompilować kod, nie wgrać, błąd się pojawia. Posiadam Arduino IDE 1.5.3. Proszę o pomoc.

Co miesiąc do wygrania nagrody o wartości ponad 1600 zł!


Awatar użytkownika
ethanak
Złota rączka
Posty: 755
Rejestracja: 21 lis 2015, 14:41
Kontakt:

Re: Błąd podczas kompilacji programu dla Atmega8A

Post autor: ethanak » 21 lut 2017, 16:06

Przede wszystkim upgrade Arduino IDE (bo masz jakąś przedpotopową wersję) - jeśli na najnowszej będziesz miał ten błąd to możemy pogadać.
Pisze człowiek ambitnie, a tu przychodzi prostak i wszystko rozumie.
To jest ewidentna bezczelność!
Ogrodeusz
Młodszy majsterkowicz
Posty: 4
Rejestracja: 13 sty 2017, 07:04

Re: Błąd podczas kompilacji programu dla Atmega8A

Post autor: Ogrodeusz » 21 lut 2017, 17:00

Zainstalowałem Arduino IDE 1.8.0. Jest jeszcze gorzej, nie mogę nawet wgrać ArduinoISP. Pojawia się błąd:
Błąd kompilacji dla płytki Arduino Genuino Uno.
Property line '?# See: http://code.google.com/p/arduino/wiki/Platforms' in file D:\Program Files (x86)\Arduino\hardware\arduino\avr\boards.txt is invalid
Awatar użytkownika
ethanak
Złota rączka
Posty: 755
Rejestracja: 21 lis 2015, 14:41
Kontakt:

Re: Błąd podczas kompilacji programu dla Atmega8A

Post autor: ethanak » 21 lut 2017, 19:40

Pokaż pełny kod
Pisze człowiek ambitnie, a tu przychodzi prostak i wszystko rozumie.
To jest ewidentna bezczelność!
Ogrodeusz
Młodszy majsterkowicz
Posty: 4
Rejestracja: 13 sty 2017, 07:04

Re: Błąd podczas kompilacji programu dla Atmega8A

Post autor: Ogrodeusz » 22 lut 2017, 06:21

Proszę. Na końcu dodane Atmegi.

Kod: Zaznacz cały

# See: http://code.google.com/p/arduino/wiki/Platforms

menu.cpu=Processor

##############################################################

yun.name=Arduino Yún
yun.upload.via_ssh=true

yun.vid.0=0x2341
yun.pid.0=0x0041
yun.vid.1=0x2341
yun.pid.1=0x8041
yun.vid.2=0x2A03
yun.pid.2=0x0041
yun.vid.3=0x2A03
yun.pid.3=0x8041

yun.upload.tool=avrdude
yun.upload.protocol=avr109
yun.upload.maximum_size=28672
yun.upload.maximum_data_size=2560
yun.upload.speed=57600
yun.upload.disable_flushing=true
yun.upload.use_1200bps_touch=true
yun.upload.wait_for_upload_port=true

yun.bootloader.tool=avrdude
yun.bootloader.low_fuses=0xff
yun.bootloader.high_fuses=0xd8
yun.bootloader.extended_fuses=0xfb
yun.bootloader.file=caterina/Caterina-Yun.hex
yun.bootloader.noblink=caterina/Caterina-Yun-noblink.hex
yun.bootloader.unlock_bits=0x3F
yun.bootloader.lock_bits=0x2F

yun.build.mcu=atmega32u4
yun.build.f_cpu=16000000L
yun.build.vid=0x2341
yun.build.pid=0x8041
yun.build.usb_product="Arduino Yun"
yun.build.board=AVR_YUN
yun.build.core=arduino
yun.build.variant=yun
yun.build.extra_flags={build.usb_flags}

##############################################################

uno.name=Arduino/Genuino Uno

uno.vid.0=0x2341
uno.pid.0=0x0043
uno.vid.1=0x2341
uno.pid.1=0x0001
uno.vid.2=0x2A03
uno.pid.2=0x0043
uno.vid.3=0x2341
uno.pid.3=0x0243

uno.upload.tool=avrdude
uno.upload.protocol=arduino
uno.upload.maximum_size=32256
uno.upload.maximum_data_size=2048
uno.upload.speed=115200

uno.bootloader.tool=avrdude
uno.bootloader.low_fuses=0xFF
uno.bootloader.high_fuses=0xDE
uno.bootloader.extended_fuses=0x05
uno.bootloader.unlock_bits=0x3F
uno.bootloader.lock_bits=0x0F
uno.bootloader.file=optiboot/optiboot_atmega328.hex

uno.build.mcu=atmega328p
uno.build.f_cpu=16000000L
uno.build.board=AVR_UNO
uno.build.core=arduino
uno.build.variant=standard

##############################################################

diecimila.name=Arduino Duemilanove or Diecimila

diecimila.upload.tool=avrdude
diecimila.upload.protocol=arduino

diecimila.bootloader.tool=avrdude
diecimila.bootloader.low_fuses=0xFF
diecimila.bootloader.unlock_bits=0x3F
diecimila.bootloader.lock_bits=0x0F

diecimila.build.f_cpu=16000000L
diecimila.build.board=AVR_DUEMILANOVE
diecimila.build.core=arduino
diecimila.build.variant=standard

## Arduino Duemilanove or Diecimila w/ ATmega328
## ---------------------------------------------
diecimila.menu.cpu.atmega328=ATmega328

diecimila.menu.cpu.atmega328.upload.maximum_size=30720
diecimila.menu.cpu.atmega328.upload.maximum_data_size=2048
diecimila.menu.cpu.atmega328.upload.speed=57600

diecimila.menu.cpu.atmega328.bootloader.high_fuses=0xDA
diecimila.menu.cpu.atmega328.bootloader.extended_fuses=0x05
diecimila.menu.cpu.atmega328.bootloader.file=atmega/ATmegaBOOT_168_atmega328.hex

diecimila.menu.cpu.atmega328.build.mcu=atmega328p

## Arduino Duemilanove or Diecimila w/ ATmega168
## ---------------------------------------------
diecimila.menu.cpu.atmega168=ATmega168

diecimila.menu.cpu.atmega168.upload.maximum_size=14336
diecimila.menu.cpu.atmega168.upload.maximum_data_size=1024
diecimila.menu.cpu.atmega168.upload.speed=19200

diecimila.menu.cpu.atmega168.bootloader.high_fuses=0xdd
diecimila.menu.cpu.atmega168.bootloader.extended_fuses=0x00
diecimila.menu.cpu.atmega168.bootloader.file=atmega/ATmegaBOOT_168_diecimila.hex

diecimila.menu.cpu.atmega168.build.mcu=atmega168

##############################################################

nano.name=Arduino Nano

nano.upload.tool=avrdude
nano.upload.protocol=arduino

nano.bootloader.tool=avrdude
nano.bootloader.unlock_bits=0x3F
nano.bootloader.lock_bits=0x0F

nano.build.f_cpu=16000000L
nano.build.board=AVR_NANO
nano.build.core=arduino
nano.build.variant=eightanaloginputs

## Arduino Nano w/ ATmega328
## -------------------------
nano.menu.cpu.atmega328=ATmega328

nano.menu.cpu.atmega328.upload.maximum_size=30720
nano.menu.cpu.atmega328.upload.maximum_data_size=2048
nano.menu.cpu.atmega328.upload.speed=57600

nano.menu.cpu.atmega328.bootloader.low_fuses=0xFF
nano.menu.cpu.atmega328.bootloader.high_fuses=0xDA
nano.menu.cpu.atmega328.bootloader.extended_fuses=0x05
nano.menu.cpu.atmega328.bootloader.file=atmega/ATmegaBOOT_168_atmega328.hex

nano.menu.cpu.atmega328.build.mcu=atmega328p

## Arduino Nano w/ ATmega168
## -------------------------
nano.menu.cpu.atmega168=ATmega168

nano.menu.cpu.atmega168.upload.maximum_size=14336
nano.menu.cpu.atmega168.upload.maximum_data_size=1024
nano.menu.cpu.atmega168.upload.speed=19200

nano.menu.cpu.atmega168.bootloader.low_fuses=0xff
nano.menu.cpu.atmega168.bootloader.high_fuses=0xdd
nano.menu.cpu.atmega168.bootloader.extended_fuses=0x00
nano.menu.cpu.atmega168.bootloader.file=atmega/ATmegaBOOT_168_diecimila.hex

nano.menu.cpu.atmega168.build.mcu=atmega168

##############################################################

mega.name=Arduino/Genuino Mega or Mega 2560

mega.vid.0=0x2341
mega.pid.0=0x0010
mega.vid.1=0x2341
mega.pid.1=0x0042
mega.vid.2=0x2A03
mega.pid.2=0x0010
mega.vid.3=0x2A03
mega.pid.3=0x0042
mega.vid.4=0x2341
mega.pid.4=0x0210
mega.vid.5=0x2341
mega.pid.5=0x0242

mega.upload.tool=avrdude
mega.upload.maximum_data_size=8192

mega.bootloader.tool=avrdude
mega.bootloader.low_fuses=0xFF
mega.bootloader.unlock_bits=0x3F
mega.bootloader.lock_bits=0x0F

mega.build.f_cpu=16000000L
mega.build.core=arduino
mega.build.variant=mega
# default board may be overridden by the cpu menu
mega.build.board=AVR_MEGA2560

## Arduino/Genuino Mega w/ ATmega2560
## -------------------------
mega.menu.cpu.atmega2560=ATmega2560 (Mega 2560)

mega.menu.cpu.atmega2560.upload.protocol=wiring
mega.menu.cpu.atmega2560.upload.maximum_size=253952
mega.menu.cpu.atmega2560.upload.speed=115200

mega.menu.cpu.atmega2560.bootloader.high_fuses=0xD8
mega.menu.cpu.atmega2560.bootloader.extended_fuses=0xFD
mega.menu.cpu.atmega2560.bootloader.file=stk500v2/stk500boot_v2_mega2560.hex

mega.menu.cpu.atmega2560.build.mcu=atmega2560
mega.menu.cpu.atmega2560.build.board=AVR_MEGA2560

## Arduino Mega w/ ATmega1280
## -------------------------
mega.menu.cpu.atmega1280=ATmega1280

mega.menu.cpu.atmega1280.upload.protocol=arduino
mega.menu.cpu.atmega1280.upload.maximum_size=126976
mega.menu.cpu.atmega1280.upload.speed=57600

mega.menu.cpu.atmega1280.bootloader.high_fuses=0xDA
mega.menu.cpu.atmega1280.bootloader.extended_fuses=0xF5
mega.menu.cpu.atmega1280.bootloader.file=atmega/ATmegaBOOT_168_atmega1280.hex

mega.menu.cpu.atmega1280.build.mcu=atmega1280
mega.menu.cpu.atmega1280.build.board=AVR_MEGA

##############################################################

megaADK.name=Arduino Mega ADK

megaADK.vid.0=0x2341
megaADK.pid.0=0x003f
megaADK.vid.1=0x2341
megaADK.pid.1=0x0044
megaADK.vid.2=0x2A03
megaADK.pid.2=0x003f
megaADK.vid.3=0x2A03
megaADK.pid.3=0x0044

megaADK.upload.tool=avrdude
megaADK.upload.protocol=wiring
megaADK.upload.maximum_size=253952
megaADK.upload.maximum_data_size=8192
megaADK.upload.speed=115200

megaADK.bootloader.tool=avrdude
megaADK.bootloader.low_fuses=0xFF
megaADK.bootloader.high_fuses=0xD8
megaADK.bootloader.extended_fuses=0xFD
megaADK.bootloader.file=stk500v2/stk500boot_v2_mega2560.hex
megaADK.bootloader.unlock_bits=0x3F
megaADK.bootloader.lock_bits=0x0F

megaADK.build.mcu=atmega2560
megaADK.build.f_cpu=16000000L
megaADK.build.board=AVR_ADK
megaADK.build.core=arduino
megaADK.build.variant=mega

##############################################################

leonardo.name=Arduino Leonardo
leonardo.vid.0=0x2341
leonardo.pid.0=0x0036
leonardo.vid.1=0x2341
leonardo.pid.1=0x8036
leonardo.vid.2=0x2A03
leonardo.pid.2=0x0036
leonardo.vid.3=0x2A03
leonardo.pid.3=0x8036

leonardo.upload.tool=avrdude
leonardo.upload.protocol=avr109
leonardo.upload.maximum_size=28672
leonardo.upload.maximum_data_size=2560
leonardo.upload.speed=57600
leonardo.upload.disable_flushing=true
leonardo.upload.use_1200bps_touch=true
leonardo.upload.wait_for_upload_port=true

leonardo.bootloader.tool=avrdude
leonardo.bootloader.low_fuses=0xff
leonardo.bootloader.high_fuses=0xd8
leonardo.bootloader.extended_fuses=0xcb
leonardo.bootloader.file=caterina/Caterina-Leonardo.hex
leonardo.bootloader.unlock_bits=0x3F
leonardo.bootloader.lock_bits=0x2F

leonardo.build.mcu=atmega32u4
leonardo.build.f_cpu=16000000L
leonardo.build.vid=0x2341
leonardo.build.pid=0x8036
leonardo.build.usb_product="Arduino Leonardo"
leonardo.build.board=AVR_LEONARDO
leonardo.build.core=arduino
leonardo.build.variant=leonardo
leonardo.build.extra_flags={build.usb_flags}

##############################################################

leonardoeth.name=Arduino Leonardo ETH
leonardoeth.vid.0=0x2a03
leonardoeth.pid.0=0x0040
leonardoeth.vid.1=0x2a03
leonardoeth.pid.1=0x8040

leonardoeth.upload.tool=avrdude
leonardoeth.upload.protocol=avr109
leonardoeth.upload.maximum_size=28672
leonardoeth.upload.maximum_data_size=2560
leonardoeth.upload.speed=57600
leonardoeth.upload.disable_flushing=true
leonardoeth.upload.use_1200bps_touch=true
leonardoeth.upload.wait_for_upload_port=true

leonardoeth.bootloader.tool=avrdude
leonardoeth.bootloader.low_fuses=0xff
leonardoeth.bootloader.high_fuses=0xd8
leonardoeth.bootloader.extended_fuses=0xcb
leonardoeth.bootloader.file=caterina/Caterina-LeonardoEthernet.hex
leonardoeth.bootloader.unlock_bits=0x3F
leonardoeth.bootloader.lock_bits=0x2F

leonardoeth.build.mcu=atmega32u4
leonardoeth.build.f_cpu=16000000L
leonardoeth.build.vid=0x2a03
leonardoeth.build.pid=0x8040
leonardoeth.build.usb_product="Arduino Leonardo ETH"
leonardoeth.build.board=AVR_LEONARDO_ETH
leonardoeth.build.core=arduino
leonardoeth.build.variant=leonardo
leonardoeth.build.extra_flags={build.usb_flags}

##############################################################

micro.name=Arduino/Genuino Micro

micro.vid.0=0x2341
micro.pid.0=0x0037
micro.vid.1=0x2341
micro.pid.1=0x8037
micro.vid.2=0x2A03
micro.pid.2=0x0037
micro.vid.3=0x2A03
micro.pid.3=0x8037

micro.vid.4=0x2341
micro.pid.4=0x0237
# If the board is a 2341:0237 use 2341:8237 for build and set
# other parameters as well
micro.vid.4.build.vid=0x2341
micro.vid.4.build.pid=0x8237
micro.vid.4.build.usb_product="Genuino Micro"
micro.vid.4.bootloader.file=caterina/Caterina-Genuino-Micro.hex

micro.vid.5=0x2341
micro.pid.5=0x8237
# If the board is a 2341:8237 use 2341:8237 for build and set
# other paramters as well
micro.vid.5.build.vid=0x2341
micro.vid.5.build.pid=0x8237
micro.vid.5.build.usb_product="Genuino Micro"
micro.vid.5.bootloader.file=caterina/Caterina-Genuino-Micro.hex

micro.upload.tool=avrdude
micro.upload.protocol=avr109
micro.upload.maximum_size=28672
micro.upload.maximum_data_size=2560
micro.upload.speed=57600
micro.upload.disable_flushing=true
micro.upload.use_1200bps_touch=true
micro.upload.wait_for_upload_port=true

micro.bootloader.tool=avrdude
micro.bootloader.low_fuses=0xff
micro.bootloader.high_fuses=0xd8
micro.bootloader.extended_fuses=0xcb
micro.bootloader.file=caterina/Caterina-Micro.hex
micro.bootloader.unlock_bits=0x3F
micro.bootloader.lock_bits=0x2F

micro.build.mcu=atmega32u4
micro.build.f_cpu=16000000L
micro.build.vid=0x2341
micro.build.pid=0x8037
micro.build.usb_product="Arduino Micro"
micro.build.board=AVR_MICRO
micro.build.core=arduino
micro.build.variant=micro
micro.build.extra_flags={build.usb_flags}

##############################################################

esplora.name=Arduino Esplora
esplora.vid.0=0x2341
esplora.pid.0=0x003C
esplora.vid.1=0x2341
esplora.pid.1=0x803C
esplora.vid.2=0x2A03
esplora.pid.2=0x003C
esplora.vid.3=0x2A03
esplora.pid.3=0x803C

esplora.upload.tool=avrdude
esplora.upload.protocol=avr109
esplora.upload.maximum_size=28672
esplora.upload.maximum_data_size=2560
esplora.upload.speed=57600
esplora.upload.disable_flushing=true
esplora.upload.use_1200bps_touch=true
esplora.upload.wait_for_upload_port=true

esplora.bootloader.tool=avrdude
esplora.bootloader.low_fuses=0xff
esplora.bootloader.high_fuses=0xd8
esplora.bootloader.extended_fuses=0xcb
esplora.bootloader.file=caterina/Caterina-Esplora.hex
esplora.bootloader.unlock_bits=0x3F
esplora.bootloader.lock_bits=0x2F

esplora.build.mcu=atmega32u4
esplora.build.f_cpu=16000000L
esplora.build.vid=0x2341
esplora.build.pid=0x803c
esplora.build.usb_product="Arduino Esplora"
esplora.build.board=AVR_ESPLORA
esplora.build.core=arduino
esplora.build.variant=leonardo
esplora.build.extra_flags={build.usb_flags}

##############################################################

mini.name=Arduino Mini

mini.upload.tool=avrdude
mini.upload.protocol=arduino

mini.bootloader.tool=avrdude
mini.bootloader.low_fuses=0xff
mini.bootloader.unlock_bits=0x3F
mini.bootloader.lock_bits=0x0F

mini.build.f_cpu=16000000L
mini.build.board=AVR_MINI
mini.build.core=arduino
mini.build.variant=eightanaloginputs

## Arduino Mini w/ ATmega328
## -------------------------
mini.menu.cpu.atmega328=ATmega328

mini.menu.cpu.atmega328.upload.maximum_size=28672
mini.menu.cpu.atmega328.upload.maximum_data_size=2048
mini.menu.cpu.atmega328.upload.speed=115200

mini.menu.cpu.atmega328.bootloader.high_fuses=0xd8
mini.menu.cpu.atmega328.bootloader.extended_fuses=0x05
mini.menu.cpu.atmega328.bootloader.file=optiboot/optiboot_atmega328-Mini.hex

mini.menu.cpu.atmega328.build.mcu=atmega328p

## Arduino Mini w/ ATmega168
## -------------------------
mini.menu.cpu.atmega168=ATmega168

mini.menu.cpu.atmega168.upload.maximum_size=14336
mini.menu.cpu.atmega168.upload.maximum_data_size=1024
mini.menu.cpu.atmega168.upload.speed=19200

mini.menu.cpu.atmega168.bootloader.high_fuses=0xdd
mini.menu.cpu.atmega168.bootloader.extended_fuses=0x00
mini.menu.cpu.atmega168.bootloader.file=atmega/ATmegaBOOT_168_ng.hex

mini.menu.cpu.atmega168.build.mcu=atmega168

##############################################################

ethernet.name=Arduino Ethernet

ethernet.upload.tool=avrdude
ethernet.upload.protocol=arduino
ethernet.upload.maximum_size=32256
ethernet.upload.maximum_data_size=2048
ethernet.upload.speed=115200

ethernet.bootloader.tool=avrdude
ethernet.bootloader.low_fuses=0xff
ethernet.bootloader.high_fuses=0xde
ethernet.bootloader.extended_fuses=0x05
ethernet.bootloader.file=optiboot/optiboot_atmega328.hex
ethernet.bootloader.unlock_bits=0x3F
ethernet.bootloader.lock_bits=0x0F

ethernet.build.variant=ethernet
ethernet.build.mcu=atmega328p
ethernet.build.f_cpu=16000000L
ethernet.build.board=AVR_ETHERNET
ethernet.build.core=arduino

##############################################################

fio.name=Arduino Fio

fio.upload.tool=avrdude
fio.upload.protocol=arduino
fio.upload.maximum_size=30720
fio.upload.maximum_data_size=2048
fio.upload.speed=57600

fio.bootloader.tool=avrdude
fio.bootloader.low_fuses=0xFF
fio.bootloader.high_fuses=0xDA
fio.bootloader.extended_fuses=0x05
fio.bootloader.file=atmega/ATmegaBOOT_168_atmega328_pro_8MHz.hex
fio.bootloader.unlock_bits=0x3F
fio.bootloader.lock_bits=0x0F

fio.build.mcu=atmega328p
fio.build.f_cpu=8000000L
fio.build.board=AVR_FIO
fio.build.core=arduino
fio.build.variant=eightanaloginputs

##############################################################

bt.name=Arduino BT

bt.upload.tool=avrdude
bt.upload.protocol=arduino
bt.upload.speed=19200
bt.upload.disable_flushing=true

bt.bootloader.tool=avrdude
bt.bootloader.low_fuses=0xff
bt.bootloader.unlock_bits=0x3F
bt.bootloader.lock_bits=0x0F

bt.build.f_cpu=16000000L
bt.build.board=AVR_BT
bt.build.core=arduino
bt.build.variant=eightanaloginputs

## Arduino BT w/ ATmega328
## -----------------------
bt.menu.cpu.atmega328=ATmega328
bt.menu.cpu.atmega328.upload.maximum_size=28672
bt.menu.cpu.atmega328.upload.maximum_data_size=2048

bt.menu.cpu.atmega328.bootloader.high_fuses=0xd8
bt.menu.cpu.atmega328.bootloader.extended_fuses=0x05
bt.menu.cpu.atmega328.bootloader.file=bt/ATmegaBOOT_168_atmega328_bt.hex

bt.menu.cpu.atmega328.build.mcu=atmega328p

## Arduino BT w/ ATmega168
## -----------------------
bt.menu.cpu.atmega168=ATmega168
bt.menu.cpu.atmega168.upload.maximum_size=14336
bt.menu.cpu.atmega168.upload.maximum_data_size=1024

bt.menu.cpu.atmega168.bootloader.high_fuses=0xdd
bt.menu.cpu.atmega168.bootloader.extended_fuses=0x00
bt.menu.cpu.atmega168.bootloader.file=bt/ATmegaBOOT_168.hex

bt.menu.cpu.atmega168.build.mcu=atmega168

##############################################################

LilyPadUSB.name=LilyPad Arduino USB
LilyPadUSB.vid.0=0x1B4F
LilyPadUSB.pid.0=0x9207
LilyPadUSB.vid.1=0x1B4F
LilyPadUSB.pid.1=0x9208

LilyPadUSB.upload.tool=avrdude
LilyPadUSB.upload.protocol=avr109
LilyPadUSB.upload.maximum_size=28672
LilyPadUSB.upload.maximum_data_size=2560
LilyPadUSB.upload.speed=57600
LilyPadUSB.upload.disable_flushing=true
LilyPadUSB.upload.use_1200bps_touch=true
LilyPadUSB.upload.wait_for_upload_port=true

LilyPadUSB.bootloader.tool=avrdude
LilyPadUSB.bootloader.low_fuses=0xff
LilyPadUSB.bootloader.high_fuses=0xd8
LilyPadUSB.bootloader.extended_fuses=0xce
LilyPadUSB.bootloader.file=caterina-LilyPadUSB/Caterina-LilyPadUSB.hex
LilyPadUSB.bootloader.unlock_bits=0x3F
LilyPadUSB.bootloader.lock_bits=0x2F

LilyPadUSB.build.mcu=atmega32u4
LilyPadUSB.build.f_cpu=8000000L
LilyPadUSB.build.vid=0x1B4F
LilyPadUSB.build.pid=0x9208
LilyPadUSB.build.usb_product="LilyPad USB"
LilyPadUSB.build.board=AVR_LILYPAD_USB
LilyPadUSB.build.core=arduino
LilyPadUSB.build.variant=leonardo
LilyPadUSB.build.extra_flags={build.usb_flags}

##############################################################

lilypad.name=LilyPad Arduino

lilypad.upload.tool=avrdude
lilypad.upload.protocol=arduino

lilypad.bootloader.tool=avrdude
lilypad.bootloader.unlock_bits=0x3F
lilypad.bootloader.lock_bits=0x0F

lilypad.build.f_cpu=8000000L
lilypad.build.board=AVR_LILYPAD
lilypad.build.core=arduino
lilypad.build.variant=standard

## LilyPad Arduino w/ ATmega328
## ----------------------------
lilypad.menu.cpu.atmega328=ATmega328

lilypad.menu.cpu.atmega328.upload.maximum_size=30720
lilypad.menu.cpu.atmega328.upload.maximum_data_size=2048
lilypad.menu.cpu.atmega328.upload.speed=57600

lilypad.menu.cpu.atmega328.bootloader.low_fuses=0xFF
lilypad.menu.cpu.atmega328.bootloader.high_fuses=0xDA
lilypad.menu.cpu.atmega328.bootloader.extended_fuses=0x05
lilypad.menu.cpu.atmega328.bootloader.file=atmega/ATmegaBOOT_168_atmega328_pro_8MHz.hex

lilypad.menu.cpu.atmega328.build.mcu=atmega328p

## LilyPad Arduino w/ ATmega168
## ----------------------------
lilypad.menu.cpu.atmega168=ATmega168

lilypad.menu.cpu.atmega168.upload.maximum_size=14336
lilypad.menu.cpu.atmega168.upload.maximum_data_size=1024
lilypad.menu.cpu.atmega168.upload.speed=19200

lilypad.menu.cpu.atmega168.bootloader.low_fuses=0xe2
lilypad.menu.cpu.atmega168.bootloader.high_fuses=0xdd
lilypad.menu.cpu.atmega168.bootloader.extended_fuses=0x00
lilypad.menu.cpu.atmega168.bootloader.file=lilypad/LilyPadBOOT_168.hex

lilypad.menu.cpu.atmega168.build.mcu=atmega168

##############################################################

pro.name=Arduino Pro or Pro Mini

pro.upload.tool=avrdude
pro.upload.protocol=arduino

pro.bootloader.tool=avrdude
pro.bootloader.unlock_bits=0x3F
pro.bootloader.lock_bits=0x0F

pro.build.board=AVR_PRO
pro.build.core=arduino
pro.build.variant=eightanaloginputs

## Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328
## -------------------------------------------------
pro.menu.cpu.16MHzatmega328=ATmega328 (5V, 16 MHz)

pro.menu.cpu.16MHzatmega328.upload.maximum_size=30720
pro.menu.cpu.16MHzatmega328.upload.maximum_data_size=2048
pro.menu.cpu.16MHzatmega328.upload.speed=57600

pro.menu.cpu.16MHzatmega328.bootloader.low_fuses=0xFF
pro.menu.cpu.16MHzatmega328.bootloader.high_fuses=0xDA
pro.menu.cpu.16MHzatmega328.bootloader.extended_fuses=0x05
pro.menu.cpu.16MHzatmega328.bootloader.file=atmega/ATmegaBOOT_168_atmega328.hex

pro.menu.cpu.16MHzatmega328.build.mcu=atmega328p
pro.menu.cpu.16MHzatmega328.build.f_cpu=16000000L

## Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega328
## --------------------------------------------------
pro.menu.cpu.8MHzatmega328=ATmega328 (3.3V, 8 MHz)

pro.menu.cpu.8MHzatmega328.upload.maximum_size=30720
pro.menu.cpu.8MHzatmega328.upload.maximum_data_size=2048
pro.menu.cpu.8MHzatmega328.upload.speed=57600

pro.menu.cpu.8MHzatmega328.bootloader.low_fuses=0xFF
pro.menu.cpu.8MHzatmega328.bootloader.high_fuses=0xDA
pro.menu.cpu.8MHzatmega328.bootloader.extended_fuses=0x05
pro.menu.cpu.8MHzatmega328.bootloader.file=atmega/ATmegaBOOT_168_atmega328_pro_8MHz.hex

pro.menu.cpu.8MHzatmega328.build.mcu=atmega328p
pro.menu.cpu.8MHzatmega328.build.f_cpu=8000000L

## Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega168
## -------------------------------------------------
pro.menu.cpu.16MHzatmega168=ATmega168 (5V, 16 MHz)

pro.menu.cpu.16MHzatmega168.upload.maximum_size=14336
pro.menu.cpu.16MHzatmega168.upload.maximum_data_size=1024
pro.menu.cpu.16MHzatmega168.upload.speed=19200

pro.menu.cpu.16MHzatmega168.bootloader.low_fuses=0xff
pro.menu.cpu.16MHzatmega168.bootloader.high_fuses=0xdd
pro.menu.cpu.16MHzatmega168.bootloader.extended_fuses=0x00
pro.menu.cpu.16MHzatmega168.bootloader.file=atmega/ATmegaBOOT_168_diecimila.hex

pro.menu.cpu.16MHzatmega168.build.mcu=atmega168
pro.menu.cpu.16MHzatmega168.build.f_cpu=16000000L

## Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega168
## --------------------------------------------------
pro.menu.cpu.8MHzatmega168=ATmega168 (3.3V, 8 MHz)

pro.menu.cpu.8MHzatmega168.upload.maximum_size=14336
pro.menu.cpu.8MHzatmega168.upload.maximum_data_size=1024
pro.menu.cpu.8MHzatmega168.upload.speed=19200

pro.menu.cpu.8MHzatmega168.bootloader.low_fuses=0xc6
pro.menu.cpu.8MHzatmega168.bootloader.high_fuses=0xdd
pro.menu.cpu.8MHzatmega168.bootloader.extended_fuses=0x00
pro.menu.cpu.8MHzatmega168.bootloader.file=atmega/ATmegaBOOT_168_pro_8MHz.hex

pro.menu.cpu.8MHzatmega168.build.mcu=atmega168
pro.menu.cpu.8MHzatmega168.build.f_cpu=8000000L

##############################################################

atmegang.name=Arduino NG or older

atmegang.upload.tool=avrdude
atmegang.upload.protocol=arduino
atmegang.upload.speed=19200

atmegang.bootloader.tool=avrdude
atmegang.bootloader.unlock_bits=0x3F
atmegang.bootloader.lock_bits=0x0F

atmegang.build.mcu=atmegang
atmegang.build.f_cpu=16000000L
atmegang.build.board=AVR_NG
atmegang.build.core=arduino
atmegang.build.variant=standard

## Arduino NG or older w/ ATmega168
## --------------------------------
atmegang.menu.cpu.atmega168=ATmega168

atmegang.menu.cpu.atmega168.upload.maximum_size=14336
atmegang.menu.cpu.atmega168.upload.maximum_data_size=1024

atmegang.menu.cpu.atmega168.bootloader.low_fuses=0xff
atmegang.menu.cpu.atmega168.bootloader.high_fuses=0xdd
atmegang.menu.cpu.atmega168.bootloader.extended_fuses=0x00
atmegang.menu.cpu.atmega168.bootloader.file=atmega/ATmegaBOOT_168_ng.hex

atmegang.menu.cpu.atmega168.build.mcu=atmega168

## Arduino NG or older w/ ATmega8
## ------------------------------
atmegang.menu.cpu.atmega8=ATmega8

atmegang.menu.cpu.atmega8.upload.maximum_size=7168
atmegang.menu.cpu.atmega8.upload.maximum_data_size=1024

atmegang.menu.cpu.atmega8.bootloader.low_fuses=0xdf
atmegang.menu.cpu.atmega8.bootloader.high_fuses=0xca
atmegang.menu.cpu.atmega8.bootloader.extended_fuses=
atmegang.menu.cpu.atmega8.bootloader.file=atmega8/ATmegaBOOT-prod-firmware-2009-11-07.hex

atmegang.menu.cpu.atmega8.build.mcu=atmega8

##############################################################

robotControl.name=Arduino Robot Control
robotControl.vid.0=0x2341
robotControl.pid.0=0x0038
robotControl.vid.1=0x2341
robotControl.pid.1=0x8038
robotControl.vid.2=0x2A03
robotControl.pid.2=0x0038
robotControl.vid.3=0x2A03
robotControl.pid.3=0x8038

robotControl.upload.tool=avrdude
robotControl.upload.protocol=avr109
robotControl.upload.maximum_size=28672
robotControl.upload.maximum_data_size=2560
robotControl.upload.speed=57600
robotControl.upload.disable_flushing=true
robotControl.upload.use_1200bps_touch=true
robotControl.upload.wait_for_upload_port=true

robotControl.bootloader.tool=avrdude
robotControl.bootloader.low_fuses=0xff
robotControl.bootloader.high_fuses=0xd8
robotControl.bootloader.extended_fuses=0xcb
robotControl.bootloader.file=caterina-Arduino_Robot/Caterina-Robot-Control.hex
robotControl.bootloader.unlock_bits=0x3F
robotControl.bootloader.lock_bits=0x2F

robotControl.build.mcu=atmega32u4
robotControl.build.f_cpu=16000000L
robotControl.build.vid=0x2341
robotControl.build.pid=0x8038
robotControl.build.usb_product="Robot Control"
robotControl.build.board=AVR_ROBOT_CONTROL
robotControl.build.core=arduino
robotControl.build.variant=robot_control
robotControl.build.extra_flags={build.usb_flags}

##############################################################

robotMotor.name=Arduino Robot Motor
robotMotor.vid.0=0x2341
robotMotor.pid.0=0x0039
robotMotor.vid.1=0x2341
robotMotor.pid.1=0x8039
robotMotor.vid.2=0x2A03
robotMotor.pid.2=0x0039
robotMotor.vid.3=0x2A03
robotMotor.pid.3=0x8039

robotMotor.upload.tool=avrdude
robotMotor.upload.protocol=avr109
robotMotor.upload.maximum_size=28672
robotMotor.upload.maximum_data_size=2560
robotMotor.upload.speed=57600
robotMotor.upload.disable_flushing=true
robotMotor.upload.use_1200bps_touch=true
robotMotor.upload.wait_for_upload_port=true

robotMotor.bootloader.tool=avrdude
robotMotor.bootloader.low_fuses=0xff
robotMotor.bootloader.high_fuses=0xd8
robotMotor.bootloader.extended_fuses=0xcb
robotMotor.bootloader.file=caterina-Arduino_Robot/Caterina-Robot-Motor.hex
robotMotor.bootloader.unlock_bits=0x3F
robotMotor.bootloader.lock_bits=0x2F

robotMotor.build.mcu=atmega32u4
robotMotor.build.f_cpu=16000000L
robotMotor.build.vid=0x2341
robotMotor.build.pid=0x8039
robotMotor.build.usb_product="Robot Motor"
robotMotor.build.board=AVR_ROBOT_MOTOR
robotMotor.build.core=arduino
robotMotor.build.variant=robot_motor
robotMotor.build.extra_flags={build.usb_flags}

##############################################################

gemma.vid.0=0x2341
gemma.pid.0=0x0c9f

gemma.name=Arduino Gemma

gemma.bootloader.low_fuses=0xF1
gemma.bootloader.high_fuses=0xD5
gemma.bootloader.extended_fuses=0xFE
gemma.bootloader.tool=avrdude
gemma.bootloader.lock_bits=
gemma.bootloader.unlock_bits=
gemma.bootloader.file=gemma/gemma_v1.hex

gemma.build.mcu=attiny85
gemma.build.f_cpu=8000000L
gemma.build.core=arduino
gemma.build.variant=gemma
gemma.build.board=AVR_GEMMA

gemma.upload.tool=avrdude
gemma.upload.maximum_size=5310

##############################################################

# Adafruit Circuit Playground 32u4 w/Caterina Configuration
circuitplay32u4cat.name=Adafruit Circuit Playground
circuitplay32u4cat.bootloader.low_fuses=0xff
circuitplay32u4cat.bootloader.high_fuses=0xd8
circuitplay32u4cat.bootloader.extended_fuses=0xcb
circuitplay32u4cat.bootloader.file=caterina/Caterina-Circuitplay32u4.hex
circuitplay32u4cat.bootloader.unlock_bits=0x3F
circuitplay32u4cat.bootloader.lock_bits=0x2F
circuitplay32u4cat.bootloader.tool=avrdude
circuitplay32u4cat.build.mcu=atmega32u4
circuitplay32u4cat.build.f_cpu=8000000L
circuitplay32u4cat.build.vid=0x239A
circuitplay32u4cat.build.pid=0x8011
circuitplay32u4cat.build.core=arduino
circuitplay32u4cat.build.variant=circuitplay32u4
circuitplay32u4cat.build.board=AVR_CIRCUITPLAY
circuitplay32u4cat.build.usb_product="Circuit Playground"
circuitplay32u4cat.build.usb_manufacturer="Adafruit"
circuitplay32u4cat.build.extra_flags={build.usb_flags}
circuitplay32u4cat.upload.protocol=avr109
circuitplay32u4cat.upload.maximum_size=28672
circuitplay32u4cat.upload.speed=57600
circuitplay32u4cat.upload.disable_flushing=true
circuitplay32u4cat.upload.use_1200bps_touch=true
circuitplay32u4cat.upload.wait_for_upload_port=true
circuitplay32u4cat.upload.tool=avrdude
circuitplay32u4cat.vid.0=0x239A
circuitplay32u4cat.pid.0=0x8011

##############################################################

yunmini.name=Arduino Yún Mini
yunmini.upload.via_ssh=true

yunmini.vid.0=0x2a03
yunmini.pid.0=0x0050
yunmini.vid.1=0x2a03
yunmini.pid.1=0x8050

yunmini.upload.tool=avrdude
yunmini.upload.protocol=avr109
yunmini.upload.maximum_size=28672
yunmini.upload.maximum_data_size=2560
yunmini.upload.speed=57600
yunmini.upload.disable_flushing=true
yunmini.upload.use_1200bps_touch=true
yunmini.upload.wait_for_upload_port=true

yunmini.bootloader.tool=avrdude
yunmini.bootloader.low_fuses=0xff
yunmini.bootloader.high_fuses=0xd8
yunmini.bootloader.extended_fuses=0xfb
yunmini.bootloader.file=caterina/Caterina-Yunmini.hex
yunmini.bootloader.unlock_bits=0x3F
yunmini.bootloader.lock_bits=0x2F

yunmini.build.mcu=atmega32u4
yunmini.build.f_cpu=16000000L
yunmini.build.vid=0x2a03
yunmini.build.pid=0x8050
yunmini.build.usb_product="Arduino Yún Mini"
yunmini.build.board=AVR_YUNMINI
yunmini.build.core=arduino
yunmini.build.variant=yun
yunmini.build.extra_flags={build.usb_flags}

##############################################################

chiwawa.name=Arduino Industrial 101
chiwawa.upload.via_ssh=true

chiwawa.vid.0=0x2a03
chiwawa.pid.0=0x0056
chiwawa.vid.1=0x2a03
chiwawa.pid.1=0x8056

chiwawa.upload.tool=avrdude
chiwawa.upload.protocol=avr109
chiwawa.upload.maximum_size=28672
chiwawa.upload.maximum_data_size=2560
chiwawa.upload.speed=57600
chiwawa.upload.disable_flushing=true
chiwawa.upload.use_1200bps_touch=true
chiwawa.upload.wait_for_upload_port=true

chiwawa.bootloader.tool=avrdude
chiwawa.bootloader.low_fuses=0xff
chiwawa.bootloader.high_fuses=0xd8
chiwawa.bootloader.extended_fuses=0xfb
chiwawa.bootloader.file=caterina/Caterina-Industrial101.hex
chiwawa.bootloader.unlock_bits=0x3F
chiwawa.bootloader.lock_bits=0x2F

chiwawa.build.mcu=atmega32u4
chiwawa.build.f_cpu=16000000L
chiwawa.build.vid=0x2a03
chiwawa.build.pid=0x8056
chiwawa.build.usb_product="Arduino Industrial 101"
chiwawa.build.board=AVR_INDUSTRIAL101
chiwawa.build.core=arduino
chiwawa.build.variant=yun
chiwawa.build.extra_flags={build.usb_flags}

##############################################################

one.name=Linino One
one.upload.via_ssh=true

one.vid.0=0x2a03
one.pid.0=0x0001
one.vid.1=0x2a03
one.pid.1=0x8001

one.upload.tool=avrdude
one.upload.protocol=avr109
one.upload.maximum_size=28672
one.upload.maximum_data_size=2560
one.upload.speed=57600
one.upload.disable_flushing=true
one.upload.use_1200bps_touch=true
one.upload.wait_for_upload_port=true

one.bootloader.tool=avrdude
one.bootloader.low_fuses=0xff
one.bootloader.high_fuses=0xd8
one.bootloader.extended_fuses=0xfb
one.bootloader.file=caterina/Caterina-LininoOne.hex
one.bootloader.unlock_bits=0x3F
one.bootloader.lock_bits=0x2F

one.build.mcu=atmega32u4
one.build.f_cpu=16000000L
one.build.vid=0x2a03
one.build.pid=0x8001
one.build.usb_product="Linino One"
one.build.board=AVR_LININO_ONE
one.build.core=arduino
one.build.variant=yun
one.build.extra_flags={build.usb_flags}

##############################################################

unowifi.name=Arduino Uno WiFi
unowifi.vid.0=0x2A03
unowifi.pid.0=0x0057

unowifi.upload.tool=avrdude
unowifi.upload.protocol=arduino
unowifi.upload.maximum_size=32256
unowifi.upload.maximum_data_size=2048
unowifi.upload.speed=115200
unowifi.upload.network.endpoint_upload=/pgm/upload
unowifi.upload.network.endpoint_sync=/pgm/sync
unowifi.upload.network.sync_return=204:SYNC
unowifi.upload.network.endpoint_reset=/log/reset
unowifi.upload.network.port=80

unowifi.bootloader.tool=avrdude
unowifi.bootloader.low_fuses=0xFF
unowifi.bootloader.high_fuses=0xDE
unowifi.bootloader.extended_fuses=0x05
unowifi.bootloader.unlock_bits=0x3F
unowifi.bootloader.lock_bits=0x0F
unowifi.bootloader.file=optiboot/optiboot_atmega328.hex

unowifi.build.mcu=atmega328p
unowifi.build.f_cpu=16000000L
unowifi.build.board=AVR_UNO_WIFI
unowifi.build.core=arduino
unowifi.build.variant=standard
#################################################################

majsterkowo_atmega8a.name=ATmega8a @ 8 MHz

majsterkowo_atmega8a.upload.maximum_size=7168
majsterkowo_atmega8a.upload.using=arduino:arduinoisp

majsterkowo_atmega8a.bootloader.low_fuses=0xe4
majsterkowo_atmega8a.bootloader.high_fuses=0xc4
majsterkowo_atmega8a.bootloader.path=atmega
majsterkowo_atmega8a.bootloader.file=ATmegaBOOT_8.hex
majsterkowo_atmega8a.bootloader.unlock_bits=0x3F

majsterkowo_atmega8a.build.mcu=atmega8
majsterkowo_atmega8a.build.f_cpu=8000000L
majsterkowo_atmega8a.build.core=arduino
majsterkowo_atmega8a.build.variant=standard

#################################################################

majsterkowo_atmega328p8.name=ATmega328P @ 8 MHz

majsterkowo_atmega328p8.upload.maximum_size=30720
majsterkowo_atmega328p8.upload.using=arduino:arduinoisp

majsterkowo_atmega328p8.bootloader.low_fuses=0xE2
majsterkowo_atmega328p8.bootloader.high_fuses=0xDA
majsterkowo_atmega328p8.bootloader.extended_fuses=0x05

majsterkowo_atmega328p8.bootloader.path=atmega
majsterkowo_atmega328p8.bootloader.file=ATmegaBOOT_328.hex
majsterkowo_atmega328p8.bootloader.unlock_bits=0x3F
majsterkowo_atmega328p8.bootloader.lock_bits=0x0F

majsterkowo_atmega328p8.build.mcu=atmega328p
majsterkowo_atmega328p8.build.f_cpu=8000000L
majsterkowo_atmega328p8.build.core=arduino
majsterkowo_atmega328p8.build.variant=standard

#################################################################

majsterkowo_atmega328p16.name=ATmega328P @ 16 MHz

majsterkowo_atmega328p16.upload.maximum_size=30720
majsterkowo_atmega328p16.upload.using=arduino:arduinoisp

majsterkowo_atmega328p16.bootloader.low_fuses=0xE2
majsterkowo_atmega328p16.bootloader.high_fuses=0xDA
majsterkowo_atmega328p16.bootloader.extended_fuses=0x05

majsterkowo_atmega328p16.bootloader.path=atmega
majsterkowo_atmega328p16.bootloader.file=ATmegaBOOT_328.hex
majsterkowo_atmega328p16.bootloader.unlock_bits=0x3F
majsterkowo_atmega328p16.bootloader.lock_bits=0x0F

majsterkowo_atmega328p16.build.mcu=atmega328p
majsterkowo_atmega328p16.build.f_cpu=16000000L
majsterkowo_atmega328p16.build.core=arduino
majsterkowo_atmega328p16.build.variant=standard
Edit

Udało się! Zainstalowałem Arduino IDE w wersji 1.6.0. Nic nie dopisywałem do boards.txt. Wszystko zrobiłem tak jak wcześniej, tylko w płytkach wybrałem Arduino NG or older i procesor Atmega8. Kiedy chciałem wgrać skecha kompilator "powiedział", żeby jeszcze raz sprawdzić połączenia. Okazało się, że jeden kabelek podłączyłem nie tam gdzie trzeba. Blink się wgrał, tylko jedna rzecz jest trochę dziwna. Kiedy jest wpisana komenda delay(1000), Atmega zamiast czekać 1 sekundę odczekuje 10 sekund (dopiero kiedy wpiszę delay(100) Atmega czeka 1 sekundę). Nie wiem czym to jest spowodowane. Jednak i tak dziękuję za podsunięty pomysł zmiany wersji. Widać z Arduino IDE jest jak z winem, im starsze tym lepsze :D
Ogrodeusz
Młodszy majsterkowicz
Posty: 4
Rejestracja: 13 sty 2017, 07:04

Re: Błąd podczas kompilacji programu dla Atmega8A

Post autor: Ogrodeusz » 22 lut 2017, 16:57

No tak, faktycznie. Ale to tylko ta komenda będzie przez to inaczej działać czy jakieś inne też?
Arturr300
Starszy majsterkowicz
Posty: 307
Rejestracja: 16 paź 2013, 17:24

Re: Błąd podczas kompilacji programu dla Atmega8A

Post autor: Arturr300 » 27 lut 2017, 23:14

Chyba każda która bierze pod uwagę czas :) Czyli głównie biblioteki Serial, OneWire, I2C itd.
ODPOWIEDZ

Strony partnerskie: