Forum: Compiler & IDEs Wie bei arduino nano F_CPU einstellen?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Karl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe mehrere Arduino nano im Einsatz und die gehen auch alle ohne 
Probleme.
Aber nun habe ich eine Platine bekommen wo im Grunde der arduino nano 
drauf ist, aber die einen 8MHz anstatt dem 16MHZ Quarz drauf haben.
Somit sind alle Timings daneben!

Ich habe erst nicht schlecht gestaunt weil meine Serialschnittstelle nur 
Müll ausgegeben hat. Dache schon ich hätte mist gebaut, aber als ich den 
Quarz gesehen habe war mit klar das hier falsch ist. Ist halt ungewohnt 
wenn man 9600 einstellt und 4800 raus kommt.

Also wir kann man die Frequenz bei arduino einstellen?

von 900ss D. (900ss)


Bewertung
0 lesenswert
nicht lesenswert
Ich meine in der IDE kann man beim Nano auch die Frequenz 16 oder 8MHz 
wählen.
Da wo du den Nano auswählst "in der Gegend" ungefähr.

: Bearbeitet durch User
von Karl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Danke, dann werde ich nachher mal auf die suche gehen.

von Joachim B. (jar)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Karl schrieb:
> Also wir kann man die Frequenz bei arduino einstellen?

in der boards.txt erweitern

mach dir deinen eigenen nano mit deiner F_CPU

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

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/ ATmega328P (new boot full mem low upload)
## --------------------------
nano.menu.cpu.atmega328fullmemlowup=ATmega328P (New Boot Full Mem Low 
Upload)

nano.menu.cpu.atmega328fullmemlowup.upload.maximum_size=32256
nano.menu.cpu.atmega328fullmemlowup.upload.maximum_data_size=2048
nano.menu.cpu.atmega328fullmemlowup.upload.speed=57600

nano.menu.cpu.atmega328fullmemlowup.bootloader.low_fuses=0xFF
nano.menu.cpu.atmega328fullmemlowup.bootloader.high_fuses=0xDE
nano.menu.cpu.atmega328fullmemlowup.bootloader.extended_fuses=0xFD
nano.menu.cpu.atmega328fullmemlowup.bootloader.file=optiboot/optiboot_at 
mega328.hex

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

## Arduino Nano w/ ATmega328P (new bootloader full mem)
## --------------------------
nano.menu.cpu.atmega328fullmem=ATmega328P (New Bootloader Full Mem)

nano.menu.cpu.atmega328fullmem.upload.maximum_size=32256
nano.menu.cpu.atmega328fullmem.upload.maximum_data_size=2048
nano.menu.cpu.atmega328fullmem.upload.speed=115200

nano.menu.cpu.atmega328fullmem.bootloader.low_fuses=0xFF
nano.menu.cpu.atmega328fullmem.bootloader.high_fuses=0xDE
nano.menu.cpu.atmega328fullmem.bootloader.extended_fuses=0xFD
nano.menu.cpu.atmega328fullmem.bootloader.file=optiboot/optiboot_atmega3 
28.hex

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

## Arduino Nano w/ ATmega328P (new bootloader old mem)
## --------------------------
nano.menu.cpu.atmega328=ATmega328P (New Bootloader Old Mem)

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

nano.menu.cpu.atmega328.bootloader.low_fuses=0xFF
nano.menu.cpu.atmega328.bootloader.high_fuses=0xDA
nano.menu.cpu.atmega328.bootloader.extended_fuses=0xFD
nano.menu.cpu.atmega328.bootloader.file=optiboot/optiboot_atmega328.hex

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

## Arduino Nano w/ ATmega328P (old bootloader low mem)
## --------------------------
nano.menu.cpu.atmega328old=ATmega328P (Old Bootloader Low Mem)

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

nano.menu.cpu.atmega328old.bootloader.low_fuses=0xFF
nano.menu.cpu.atmega328old.bootloader.high_fuses=0xDA
nano.menu.cpu.atmega328old.bootloader.extended_fuses=0xFD
nano.menu.cpu.atmega328old.bootloader.file=atmega/ATmegaBOOT_168_atmega3 
28.hex

nano.menu.cpu.atmega328old.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=0xF8
nano.menu.cpu.atmega168.bootloader.file=atmega/ATmegaBOOT_168_diecimila. 
hex

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

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

: Bearbeitet durch User
von Karl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Die boards.txt war dann die richtige Antwort.
Ich habe mir die NANO Einstellungen kopiert und auf was anders 
umbenannt.
Jetzt geht alles sauber mit 8MHz.

Danke.

von Joachim B. (jar)


Bewertung
0 lesenswert
nicht lesenswert
Karl schrieb:
> Ich habe mir die NANO Einstellungen kopiert

kopieren reicht aber nicht es muss auch angepasst werden:

Joachim B. schrieb:
> nano.build.f_cpu=16000000L

auf deine 8 MHz, sonst weiss es die Arduino IDE ja nicht, bzw. der GCC

von Arduino Fanboy D. (ufuf)


Bewertung
0 lesenswert
nicht lesenswert
Karl schrieb:
> Die boards.txt war dann die richtige Antwort.

Nicht wirklich!
Denn es ist nicht nötig die mitgelieferten Dateien zu modifizieren.

Man kann neben die originale boards.txt eine eigene boards.local.txt 
legen.
Einträge in der boards.local.txt überschreiben Einträgen in boards.txt

Eigene boards.local.txt oder platform.local.txt Dateien erleichtern die 
Mitnahme/Weitergabe, oder Wiederanpassung, nach Updates.

von Joachim B. (jar)


Bewertung
0 lesenswert
nicht lesenswert
Arduino Fanboy D. schrieb:
> Man kann neben die originale boards.txt eine eigene boards.local.txt
> legen.

gut zu wissen! Danke

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.