Internal oscillator

Processing/Wiring (illetve C) nyelvű programozási fogások, tippek. (AVR-Duino, Arduino, EthDuino, Diecimila, Severino, Nano, LilyPad)
Válasz küldése
Avatar
prmpec
DrótVégénSzéndarab
Hozzászólások: 46
Csatlakozott: 2009. december 2. szerda, 7:00

Internal oscillator

Hozzászólás Szerző: prmpec »

Sziasztok!
Egyszerű kapcsolásokat próbálgatok atmega8-cal, még a kristályt is kihagytam.
Létrehoztam egy új "board"-ot Arduinoban 4MHz-el, és az így fordított kódot égetem bele a megfelelően fuse-olt atmega8-ba. Minden jól működik kivéve a sebességet.

Először fel sem tünt, de később megdöbbenve tapasztaltam, hogy pontosan kétharmada a sebesség a vártnak. Háromszor átnéztem mindent, de nem jövök rá, hogy mi lehet a baj. (Az Arduino "millis()" függvényét használom, de a soros kommunikáció sem ment.)

Van valami ötletetek? Esetleg tapasztalat ilyen téren?
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Hozzászólás Szerző: Robert »

A chipen kvarc nélkül alapértelmezetten a sebesség 1 MHz.
Avatar
gomba2
Újonc
Újonc
Hozzászólások: 4
Csatlakozott: 2012. december 19. szerda, 7:00

8MHZ-es belső oszcillátor

Hozzászólás Szerző: gomba2 »

Sziasztok!

ATMEGA328-as uC-met szeretném a 8MHz-es belső oszcillátorral használni. A uC TAVIR féle bootloaderes. A megvalósítást úgy gondoltam, hogy az Arduino keretrendszer boards.txt fájlban a CKSEL fuse biteket átírtam (0010), majd az arduino uno boardban ráküldtem a blink példát.
A boardon villogott is a 13-as LED, de onnan kivéve, tesztpanelbe rakva meg sem nyikkan. Valamit nagyon félreértettem? Lehet egyáltalán a fuse biteket íly módon változtatni? Esetleg a tesztpanelen keressem a hibát?

Előre is köszönöm a segítséget!
Péter
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Hozzászólás Szerző: Robert »

A FUSE bitek csak programozóval állíthatóak át.
Ahogy TE átírtad nem - sőt ha így marad és ez alapján írod be programozóval: hibás működést kapsz.
Avatar
gomba2
Újonc
Újonc
Hozzászólások: 4
Csatlakozott: 2012. december 19. szerda, 7:00

Hozzászólás Szerző: gomba2 »

Robert írta:A FUSE bitek csak programozóval állíthatóak át.
Ahogy TE átírtad nem - sőt ha így marad és ez alapján írod be programozóval: hibás működést kapsz.
Köszi a választ! Ettől féltem. (Sikerült)
Lenne 4 kérdésem.
Ha internal 8MHz belső óráról fut a kontroller, tudom-e használni
1. I2C kommunikációra
2. Soros kommunikációra
3. Arduino keretrendszerből
4. Timereket

Előre is köszönöm!
Jóéjt!
Péter
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Hozzászólás Szerző: Robert »

I2C: igen
soros: max9600 bps
Arduino gen: 9600 bps feltöltéssel... / Arduino Pro
Timer: igen

Soros esetben hőfokfüggés és bizonytalan működésed lesz....
Timer is pontatlan...


Robert
Avatar
gomba2
Újonc
Újonc
Hozzászólások: 4
Csatlakozott: 2012. december 19. szerda, 7:00

Hozzászólás Szerző: gomba2 »

Robert írta:I2C: igen
soros: max9600 bps
Arduino gen: 9600 bps feltöltéssel... / Arduino Pro
Timer: igen

Soros esetben hőfokfüggés és bizonytalan működésed lesz....
Timer is pontatlan...


Robert
Nagyon szépen köszönöm a segítséget!
Válasz küldése