02.05.2013 Aufrufe

beginner_de

beginner_de

beginner_de

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Avr-Asm-Tutorial S. 14<br />

keinen bestimmten Platz braucht.<br />

14.Wenn es jetzt wegen eines einzigen Portbits eng wird, kann <strong>de</strong>r RESET-Pin bei einigen Typen<br />

als Eingang verwen<strong>de</strong>t wer<strong>de</strong>n, in<strong>de</strong>m die entsprechen<strong>de</strong> Fuse gesetzt wird. Da <strong>de</strong>r Chip<br />

anschließend nur noch über Hochvolt-Programmierung zugänglich ist, ist dies für fertig getestete<br />

Software akzeptabel. Für Prototypen in <strong>de</strong>r Testphase ist für ISP ein Hochvolt-Programmier-Interface<br />

am um<strong>de</strong>finierten RESET-Pin und eine Schutzschaltung aus Wi<strong>de</strong>rstand<br />

und Zenerdio<strong>de</strong> gegenüber <strong>de</strong>r Signalquelle vonnöten (beim HV-Programmieren treten +12<br />

Volt am RESET-Pin auf).<br />

In die Entscheidung, welcher Prozessortyp für die Aufgabe geeignet ist, gehen ferner noch ein:<br />

• Wieviele und welche Timer wer<strong>de</strong>n benötigt?<br />

• Welche Werte sind beim Abschalten <strong>de</strong>s Prozessors zu erhalten (EEPROM dafür vorsehen)?<br />

• Wieviel Speicher wird im laufen<strong>de</strong>n Betrieb benötigt (entsprechend SRAM dafür vorsehen)?<br />

• Platzbedarf? Bei manchen Projekten mag <strong>de</strong>r Platzbedarf <strong>de</strong>s Prozessors ein wichtiges Entscheidungskriterium<br />

sein.<br />

• Strombedarf? Bei Batterie-/Akku-betriebenen Projekten sollte <strong>de</strong>r Strombedarf ein wichtiges<br />

Auswahlkriterium sein.<br />

• Preis? Spielt nur bei Großprojekten eine wichtige Rolle. Ansonsten sind Preisrelationen<br />

recht kurzlebig und nicht unbedingt von <strong>de</strong>r Prozessorausstattung abhängig.<br />

• Verfügbarkeit? Wer heute noch ein Projekt mit <strong>de</strong>m AT90S1200 startet, hat ihn vielleicht als<br />

Restposten aus <strong>de</strong>r Grabbelecke billig gekriegt. Nachhaltig ist so eine Entscheidung nicht.<br />

Es macht wesentlich mehr Mühe, so ein Projekt auf einen Tiny- o<strong>de</strong>r Mega-Typen zu portieren<br />

als <strong>de</strong>r Preisvorteil heute wert ist. Das "Portieren" en<strong>de</strong>t daher meist mit einer kompletten<br />

Neuentwicklung, die dann auch schöner aussieht, besser funktioniert und mit einem<br />

Bruchteil <strong>de</strong>s Co<strong>de</strong>s auskommt.<br />

3.6.2 Überlegungen zum Timing<br />

Geht ein Projekt darüber hinaus, ein Portbit abzufragen und daraus abgeleitet irgendwas an<strong>de</strong>res zu<br />

veranlassen, dann sind Überlegungen zum Timing <strong>de</strong>s Projektes zwingend. Timing<br />

• beginnt mit <strong>de</strong>r Wahl <strong>de</strong>r Taktfrequenz <strong>de</strong>s Prozessors,<br />

• geht weiter mit <strong>de</strong>r Frage, was wie häufig und mit welcher Präzision vom Prozesser erledigt<br />

wer<strong>de</strong>n muss,<br />

• über die Frage, welche Timing-Steuerungsmöglichkeiten bestehen, bis zu<br />

• wie diese kombiniert wer<strong>de</strong>n können.<br />

Wahl <strong>de</strong>r Taktfrequenz <strong>de</strong>s Prozessors<br />

Die oberste Grundfrage ist die nach <strong>de</strong>r nötigen Präzision <strong>de</strong>s Taktgebers.<br />

Reicht es in <strong>de</strong>r Anwendung, wenn die Zeiten im Prozentbereich ungenau sind, dann ist <strong>de</strong>r interne<br />

RC-Oszillator in vielen AVR-Typen völlig ausreichend. Bei <strong>de</strong>n neueren ATtiny und ATmega hat<br />

sich die selbsttätige Oszillator-Kalibration eingebürgert, so dass die Abweichungen vom Nominalwert<br />

<strong>de</strong>s RC-Oszillators nicht mehr so arg ins Gewicht fallen.<br />

Wenn allerdings die Betriebsspannung stark schwankt, kann <strong>de</strong>r Fehler zu groß sein. Wem <strong>de</strong>r interne<br />

RC-Takt zu langsam o<strong>de</strong>r zu schnell ist, kann bei einigen neueren Typen (z.B. <strong>de</strong>m ATtiny13)<br />

einen Vorteiler bemühen. Der Vorteiler geht beim Anlegen <strong>de</strong>r Betriebsspannung auf einen voreingestellten<br />

Wert (z.B. auf 8) und teilt <strong>de</strong>n internen RC-Oszillator entsprechend vor. Entwe<strong>de</strong>r per Fuse-Einstellung<br />

o<strong>de</strong>r auch per Software-Einstellung kann <strong>de</strong>r Vorteiler auf niedrigere Teilerverhältnisse<br />

(höhere Taktfrequenz) o<strong>de</strong>r auf einen höheren Wert umgestellt wer<strong>de</strong>n (z.B. 128), um durch

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!