mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Fusebits - tiny2313 mit 4 MHz Quarz


Autor: mr-unbekannt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ich bin ziemlicher Neuling und habe mir soeben bei Pollin 3 ATtiny2313 
gekauft.
Dazu 3 4MHz Quarze-> 2 Füßchen. (Keine Quarzoszillatoren)
Programmieren werde ich mit einem selbstgemachten ISP-Adapter auf den 
LPT.

Ich benutze PonyProg und würde nun gerne wissen, welche Fusebits ich 
setzen, bzw. löschen muss?!?

Im Datenblatt steht: bei 3-8 MHz muss CKSEL3 = 1; CKSEL2 = 1 und CKSEL1 
= 0
sein. Habe bei "crystal oscillator" geschaut.

was muss ich denn jetzt bei CKSEL0 und bei SUTx einstellen?

Ich will nämlich nichts falschmachen...

Vielen DAnk,
mr-unbekannt

PS: ich weiß, dass bei Ponyprog Häkchen setzen 0 bedeutet.
PPS: ICh sehe immer einem Pin bei den Anderen ISP-Adaptern für Vcc, ich 
habe aber keine Spannungsversorgung beim programmieren?!?

Autor: Joe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mach Deine ersten Schritte lieber ohne Quarz und lass die Fusebits in 
Ruhe, solange es geht. Quarz brauchst Du erst für UART, da solltest Du 
dann aber einen Baudratenquarz (z.B. 3,6864 MHz) vorziehen, ist einfach 
zuverlässiger.

Ansonsten stehen die Fuses und ihre Wirkung ausführlich im Datenblatt. 
Das Datenblatt bekommt man kostenlos bei www.atmel.com

...

Autor: mr-unbekannt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo!

Naja, jetzt habe ich einige Fragen!

1.) Was ist UART (ist das das gleiche wie USART)?
2.) Baudrate?!? Habe ich schon oft gehört aber weiß nicht was das ist.
3.) der FuseCalculator ist ganz gut, aber was bedeutet das:
Start-up time 14CK + 4.1 ms???
4.) DAtenblatt habe ich schon

5.) Danke nochmals ;-)

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Hannes Lux

>dann aber einen Baudratenquarz (z.B. 3,6864 MHz) vorziehen, ist einfach
>zuverlässiger.

Idiotensicherer vielleicht, aber kaum zuverlässiger. 
Nichtbaudratenfreqeunzquarze sind nicht böse ;-)

>Ansonsten stehen die Fuses und ihre Wirkung ausführlich im Datenblatt.
>Das Datenblatt bekommt man kostenlos bei www.atmel.com

Und Apfelmus ist Mus aus Äpfeln. Das leidige Thema Fuses und Ponyprog 
haben wir ja schon des öfteren durch. Doofes Ponyprog. Ich nehme SP12, 
das ist super und man gibt die Fuses genauso an wie es im Datenblatt 
steht (0/1). Diese sinnlose Parallelinterpretation programmiert/nicht 
programmiert irritier nur.

http://www.mikrocontroller.net/articles/AVR_Fuses
http://www.mikrocontroller.net/articles/AVR_ISP#SP...

http://palmavr.sourceforge.net/cgi-bin/fc.cgi?P_PR...

MfG
Falk


Autor: Joe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> 3.) der FuseCalculator ist ganz gut, aber was bedeutet das: Start-up time 14CK + 
4.1 ms???

Das ist die Zeit die der Osc. braucht um einzuschwingen.

Baudrate (Geschwindigkeit der seriellen Schnittstelle) USART.

UART = USART, einmal alte Bezeichnung sowie neue. Ebenso ist die USART 
etwas anders konstruiert, steht aber im Datenblatt.


Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@mr-unbekannt

>1.) Was ist UART (ist das das gleiche wie USART)?

Ja. USART ist eine Weiterentwicklung des UART.

>2.) Baudrate?!? Habe ich schon oft gehört aber weiß nicht was das ist.

Das ist deine Übertragungsgeschwindigkeit des UART, angegeben in Bit/s 
oder Baud (Zeichen/Sekunde). Beim UART sind beide Angaben identisch.

>3.) der FuseCalculator ist ganz gut, aber was bedeutet das:
>Start-up time 14CK + 4.1 ms???

Dass es nach dem Deaktivieren des Resets noch 14 Takte (CK) und 4.1 ms 
dauert, ehe dein AVR mit dem Programm loslegt. Nimm lieber 14CK + 65ms, 
ist erstmal sicherer.

MFG
Falk

Autor: Rahul, der Trollige (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>1.) Was ist UART (ist das das gleiche wie USART)?
Ja, nur dass USART auch noch synchrone Übertragungen ermäglicht.

>2.) Baudrate?!? Habe ich schon oft gehört aber weiß nicht was das ist.
http://de.wikipedia.org/wiki/Baudrate

>3.) der FuseCalculator ist ganz gut, aber was bedeutet das:
>Start-up time 14CK + 4.1 ms???
Nah 4.1ms und 14Clockcycles gilt der Takt als stabil

>4.) DAtenblatt habe ich schon
Schön. Jetzt musst du es dir noch noch angucken (so, dass man die 
Schrift lesen kann, und dann am besten von vorne nach hinten...)

>5.) Danke nochmals ;-)
Da nich für!

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Joe
>> 3.) der FuseCalculator ist ganz gut, aber was bedeutet das: Start-up >time 14CK 
+ 4.1 ms???

>Das ist die Zeit die der Osc. braucht um einzuschwingen.

Nein, das ist die Zeit, die die Resetschaltung noch wartet, nachdem die 
Versorgungsspannung einen gültigen Pegel erreicht hat.

MfG
Falk

Autor: Joe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Falk,

Danke für den Hinweis.

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mr-unbekannt wrote:
> hallo!
>
> Naja, jetzt habe ich einige Fragen!
>
> 1.) Was ist UART (ist das das gleiche wie USART)?

UART ist eine Betriebsart (die asynchrone) des Universellen Asynchron 
(oder) Synchron Receiver / Transmitters

Wenn ich die (meistgenutzte) asynchrone Betriebsart meine (RS232), 
spreche ich von UART und nicht von USART. Denn ich nutze ja nicht 
gleichzeitig asynchron und synchron. ;-)

> 2.) Baudrate?!? Habe ich schon oft gehört aber weiß nicht was das ist.

Gut, da halte ich mich jetzt zurück, ich habe keine Lust auf einen 
Meinungsstreit. Falk har recht und ich meine Ruhe. ;-)

Solange Du das nicht brauchst, brauchst Du vermutlich auch keinen Quarz. 
Zeitunkritische Dinge gehen auch mit dem internen RC-Oszillator. Also 
lass die Finger von den Fuses bis Du etwas mehr Wissen hast. Du wärst 
nicht der erste, der sich ausgesperrt hat, bevor das erste Programm im 
AVR lief.

> 3.) der FuseCalculator ist ganz gut, aber was bedeutet das:
> Start-up time 14CK + 4.1 ms???
> 4.) DAtenblatt habe ich schon

Dann solltest Du es lesen und versuchen zu verstehen.

>
> 5.) Danke nochmals ;-)

Nix zu danken.

...

Autor: mr-unbekannt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK, Vielen Dank.

Ich stelle diese Werte jetzt bei PonyProg ein:

 CKDIV8 = 1  DWEN       = 1
 CKOUT  = 1  EESAVE     = 1
 SUT1   = 1  SPIEN      = 1
 SUT0   = 1  WDTON      = 1
 CKSEL3 = 1  BODLEVEL2  = 1
 CKSEL2 = 1  BODLEVEL1  = 1
 CKSEL1 = 0  BODLEVEL0  = 1
 CKSEL0 = 1  RSTDISBL   = 1  SELFPRGEN = 1


Der Takt soll ja nicht geteilt werden oder... deshalb CKDIV 8 = 1.
Wenn CKSEL0, SUT1 und SUT0 1 sind bedeutet das 14CK + 65 ms Crystal 
Oscillator, slowly rising power

stimmen meine Aussagen?

mfg mr

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Hannes Lux

>> 2.) Baudrate?!? Habe ich schon oft gehört aber weiß nicht was das ist.
>Gut, da halte ich mich jetzt zurück, ich habe keine Lust auf einen
>Meinungsstreit. Falk har recht und ich meine Ruhe. ;-)

Wenn das ein Anspielung auf meine Aussage

"Das ist deine Übertragungsgeschwindigkeit des UART, angegeben in Bit/s
oder Baud (Zeichen/Sekunde). Beim UART sind beide Angaben identisch."

sein soll, hast du natürlich Recht, wenn du unter einem ZEICHEN ein Byte 
verstehst. Ich hab in dem Moment mehr Richtung Leitungscode (Zeichen = 
Bit)gedacht, naja, Kommtechniker halt ;-)

MfG
Falk


Autor: Helmut Wendler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Falk har recht und ich meine Ruhe. ;-)

Ist das so neu für dich?

Autor: mr-unbekannt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also im Klartext, UART ist die Übertragungsweise der RS232 
Schnittstelle.
Was ist dann mit der parallelen Schnittstelle, ist das auch UART?

stimmen nun meine Einstellungen für einen Quarz mit 4 MHz?

Autor: Rahul, der Trollige (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Was ist dann mit der parallelen Schnittstelle, ist das auch UART?

NEIN!
UART bezeichnet schon seit ewigen Zeiten eine serielle Schnittstelle.

Autor: Rahul, der Trollige (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@mr-unbekannt

>also im Klartext, UART ist die Übertragungsweise der RS232
>Schnittstelle.

Ja.

>Was ist dann mit der parallelen Schnittstelle, ist das auch UART?

Nein. Das ist schlicht die parallele Schnittstelle. Die könntest du auch 
mit deinem AVR verbinden, allerdings gibts dazu kein spezielles Modul im 
AVR, du musst alles selber per Software machen.

>stimmen nun meine Einstellungen für einen Quarz mit 4 MHz?

Ja.

MfG
Falk

Autor: mr-unbekannt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich habe mir den parallelen Adapter von der bekannten Seite 
http://s-huehn.de/elektronik/avr-prog/avr-prog.htm nachgebaut.

Der dürfte doch ohne weiteren Aufwand funktionieren?!? oder?

@ Falk "Die könntest du auch
mit deinem AVR verbinden, allerdings gibts dazu kein spezielles Modul im
AVR, du musst alles selber per Software machen."

Was ist damit gemeint?

mfg

Autor: Rahul, der Trollige (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
UART ist zusammen mit seinen Baudraten eine Standard-Schnittstelle (Wenn 
man auch noch den Pegel dazunimmt, ist bei bei einer RS232 oder RS422 
bei den Vollduplx-Schnittstellen und RS485 bei den halbduplexen).

Parallele Schnisttellen sind nicht drart vereinbar. (GPIB ist auch eine 
parallele Schnittstelle...)

Autor: Rahul, der Trollige (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
UART ist bitserielle, Parallel >bitseriell...

Autor: Holger Krull (krulli) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mr-unbekannt wrote:
>
> stimmen nun meine Einstellungen für einen Quarz mit 4 MHz?

Ja, ist so genehmigt ;)

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mr-unbekannt wrote:
> @ Falk "Die könntest du auch
> mit deinem AVR verbinden, allerdings gibts dazu kein spezielles Modul im
> AVR, du musst alles selber per Software machen."
>
> Was ist damit gemeint?

Das eine UART ein Hardware Modul in deinem Tiny ist:
Du frägst ab, ob das MOdul bereit ist. Wenn ja stopfst
du das zu übertragende Byte in das MOdul hinein und das
Modul sorgt dafür, dass die Daten auf die Reise gehen.

Bei parallel musst du selbst ran: Du darfst dir selbst
ausdenken, wie die Kommunikation laufen soll: In welcher
Reihenfolge sind welche Pins auf High oder Low zu ziehen um
bestimmte Zustände anzuzeigen.

Autor: Michael U. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

nette Diskussion. ;)

UART und USART bezeichnen schon seit ewigen Zeiten die Hardware eines 
Schnittstellenbausteins, genauso wie PIO (Parallel-Input-Output) oder 
SIO oder CTC.

Ich zumindest denke, dabei sollte es auch besser bleiben.
Wenn ich sehe, daß ein bestimmter AVR einen UART hat, weiß ich, daß der 
in Hardware nur asyncron kann, hat er einen USART kann er eben auch 
syncron.

Ob ich das benutze, steht doch auf einem völlig anderen Blatt.

Denke ich zumindest. Schon seit Z80/6800/6510 Zeiten.

Gruß aus Berlin
Michael

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Falk wrote:
> @Hannes Lux
>
>>> 2.) Baudrate?!? Habe ich schon oft gehört aber weiß nicht was das ist.
>>Gut, da halte ich mich jetzt zurück, ich habe keine Lust auf einen
>>Meinungsstreit. Falk har recht und ich meine Ruhe. ;-)
>
> Wenn das ein Anspielung auf meine Aussage
>
> "Das ist deine Übertragungsgeschwindigkeit des UART, angegeben in Bit/s
> oder Baud (Zeichen/Sekunde). Beim UART sind beide Angaben identisch."

Nein, auf diese:

> Idiotensicherer vielleicht, aber kaum zuverlässiger.
> Nichtbaudratenfreqeunzquarze sind nicht böse ;-)

Ist aber Geschichte, ich werde wohl zukünftig in diesem Forum Niemanden 
mehr zu baudratentauglichen Quarzen raten.

Beste Grüße,
Hannes

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Hannes Lux

>> Idiotensicherer vielleicht, aber kaum zuverlässiger.
>> Nichtbaudratenfreqeunzquarze sind nicht böse ;-)

>Ist aber Geschichte, ich werde wohl zukünftig in diesem Forum Niemanden
>mehr zu baudratentauglichen Quarzen raten.

Endlich erleuchtet? ;-)

SCNR
Falk

Autor: ..,,..-- (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nicht zu fassen...

Autor: Jack Braun (jackbraun)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Ist aber Geschichte, ich werde wohl zukünftig in diesem Forum Niemanden
>mehr zu baudratentauglichen Quarzen raten.

Würde mich mal jetzt interessieren:
Kann man bei einem AVR aus jeder beliebigen Quarzfrequenz jede Baudrate
erzeugen?
Beim 8051 geht das leider nicht.

Autor: Sonic (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Beim AVR mal mit 0.2%, mal mit 3.4% Fehler, also bei den 10 bit eines 
Bytes unerheblich. Im Datenblatt steht die Berechnung von UBRRL.
UBRRL = (Fosc/(16*Baudrate))-1
Glaub' ich jedenfalls.

Autor: johnny.m (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Kann man bei einem AVR aus jeder beliebigen Quarzfrequenz jede Baudrate
> erzeugen?
Im Datenblatt eines jeden AVR sind Tabellen für die Standard-Baudraten 
mit den üblichen Quarzen. Schau einfach da nach. Einen Baudratenquarz 
benötigt man i.d.R. nur dann, wenn man darauf angewiesen ist, lückenlos 
eine große Bandbreite der Standard-Baudraten einstellen zu können. Für 
den Betrieb mit einer festen Baudrate genügt meist ein Standard-Quarz, 
der eben diese Baudrate mit weniger als etwa 2 % erzeugen kann. Mit 
einem 8 MHz-Quarz lassen sich z.B. schon mal alle Baudraten bis einschl. 
38,4 kBd, die 76,8 kBd und die High-Speed-Raten (250 und 500 kBd) mit 
weniger als 1 % Abweichung einstellen. Das reicht für die meisten 
Sachen.

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Jack Braun

>Würde mich mal jetzt interessieren:
>Kann man bei einem AVR aus jeder beliebigen Quarzfrequenz jede Baudrate
>erzeugen?

Nein.

>Beim AVR mal mit 0.2%, mal mit 3.4% Fehler, also bei den 10 bit eines
>Bytes unerheblich.

Kaum. Theoretisch sind 3% gerade noch so akzeptabel, wenn die 
Gegenstelle (meist der PC) mit 0% Fehler arbeitet. Praktisch sollte man 
sich auf Werte <= 1% beschränken.

http://pdfserv.maxim-ic.com/en/an/AN2141.pdf

MfG
Falk

Autor: Jack Braun (jackbraun)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also sind 'Baudratenquarze' doch die 'Guten'.

Autor: johnny.m (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Also sind 'Baudratenquarze' doch die 'Guten'.
Wenn Du wirklich jede einzelne der Standard-Baudraten von A bis Z 
präzise haben willst, dann ja.

Autor: Rahul, der Trollige (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Standard-Baudraten

Die sind doch bestimmt wieder von irgendwelch zölligen Affen/Texanern 
entwickelt worden... (Meine völlig belanglose Meinung)

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.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

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