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?!?
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 ...
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 ;-)
@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#SP12_Programmer http://palmavr.sourceforge.net/cgi-bin/fc.cgi?P_PREV=ATtiny2313&P=ATtiny2313&V_LOW=DC&V_HIGH=DF&V_EXTENDED=FF&M_LOW_0x3F=0x1C&M_LOW_0x40=&M_LOW_0x80=&M_HIGH_0x01=&M_HIGH_0x0E=0x0E&M_HIGH_0x10=&M_HIGH_0x20=0x00&M_HIGH_0x40=&M_HIGH_0x80=&M_EXTENDED_0x01=&B_SUT1=P&B_SPIEN=P&B_CKSEL1=P&B_CKSEL0=P&O_BITS=Apply+fuse+bits MfG Falk
> 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.
@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
>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!
@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
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. ...
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
@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
> Falk har recht und ich meine Ruhe. ;-)
Ist das so neu für dich?
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?
>Was ist dann mit der parallelen Schnittstelle, ist das auch UART?
NEIN!
UART bezeichnet schon seit ewigen Zeiten eine serielle Schnittstelle.
@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
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
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...)
mr-unbekannt wrote: > > stimmen nun meine Einstellungen für einen Quarz mit 4 MHz? Ja, ist so genehmigt ;)
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.
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
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
@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
>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.
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.
> 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.
@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
> Also sind 'Baudratenquarze' doch die 'Guten'.
Wenn Du wirklich jede einzelne der Standard-Baudraten von A bis Z
präzise haben willst, dann ja.
>Standard-Baudraten
Die sind doch bestimmt wieder von irgendwelch zölligen Affen/Texanern
entwickelt worden... (Meine völlig belanglose Meinung)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.