Forum: Mikrocontroller und Digitale Elektronik Rechteckgenerator Assemblerproblem


von Paul Baumann (Gast)


Lesenswert?

Hallo
Hat schon mal jemand den Rechteckgenerator von der Seite
http://www.avr-asm-tutorial.net/avr_de/rechteckgen/rectgen_m8.html
gebaut?

Ich bekomme die dazugehörige Assemblerdatei im AVR-Studio mit 96
Fehlern assembliert. :-(

Ist es jemand gelungen, daraus eine Hex-Datei zu erzeugen?
Den Autor erreiche ich nicht.

MfG Paul

von crazy horse (Gast)


Angehängte Dateien:

Lesenswert?

hm, geht doch problemlos...

von Paul Baumann (Gast)


Lesenswert?

Staun!
Ich bedanke mich. Ich habe AVR-Studio 3,54 benutzt und die Dateien aus
dem ZIP-Archiv. Es kam 96 mal "Unknown Opcode". Da habe ich vermutet,
das die IF und THEN und so weiter angenölt werden. Das
ist ja keine Assemblersyntax.

MfG Paul

von Thomas O. (Gast)


Lesenswert?

denke mal das es im AVR-Studio 3,54 die Atmega8-Include-Datei nicht gibt
oder wie sich das Ding schimpft. Speichere die mal aus dem Netz in das
entsprechende AVR-Studio Verzeichniss oder Lade dir das neuste Studio
runter. Falls du aber diese AVR VErsion wegen dem geringen
Resourcenverbrauch(z.B. langsamer Laptop) nutz tuh nicht den AVR ISP
updaten sonst findet AVR-Studio 3,54 den nicht mehr.

von gerd (Gast)


Lesenswert?

Hallo Paul,

> Ist es jemand gelungen, daraus eine Hex-Datei zu erzeugen?
> Den Autor erreiche ich nicht.

Du hast den Autor schon erreicht. Nur: der hat Dich nicht erreicht.
Hier der dritte Versuch der Zustellung:

============= Mailserver ====================================
This message was created automatically by mail delivery software.
A message that you sent has not yet been delivered to one or more of
its recipients after 26 hours.
The message has not yet been delivered to the following addresses:
  <lexi@everymail.net>
host smtp.everymail.net[212.69.179.11]:
connection to mail exchanger failed
host smtp-c01.everymail.net[10.0.3.66]:
connection to mail exchanger failed with timeout
host smtp-c02.everymail.net[10.0.3.67]:
connection to mail exchanger failed with timeout
=============== Ende Mailserver ===============================

mfg
gerd

von gerd (Gast)


Lesenswert?

@Paul:

Noch eine Anmerkung: Konstruktionen wie .IF, .ELSE, .ENDIF oder auch
.MESSAGE sind Kennzeichen "erwachsener" Assembler. Es ist so
praktisch, übersichtlich und ich habe mich so an den Komfort gewöhnt,
dass ich heute kein größeres Projekt mehr ohne schreibe. Was für ein
Gewürge war das, als ich noch keine Fehlerabfragen in Assembler
einbauen konnte, z.B. um einen Zahlenbereich zu testen. Oder als ich
noch für jeden Prozessortyp eine eigene asm schreiben und up-to-date
halten musste.

Bei dem Projekt, das Du gerade versuchst, sind die IFs dafür gut, um
die LCD-Anzeige korrekt anzusteuern (ein- oder zweizeilig, 16/20/24
Zeichen pro Zeile. Wenn Du das ignorierst, könnte Deine LCD-Anzeige
ziemlich komisch aussehen.

mfg
gerd

von Paul Baumann (Gast)


Lesenswert?

@Gerd
Danke für die Auskünfte. Weiter oben war jemand so nett, mir die Hex-
datei zu erzeugen. Ob das so läuft weiß ich noch nicht, ich warte noch
auf die LCD-Anzeigen. Platine habe ich schon gemacht und das Programm
in den Prozessor übertragen. Ich melde mich dann nochmal.

Der Mailserver war wohl gestört, denn ich habe erst heute einen Schwung
Mails gkriegt.

MfG Paul

von PeterL (Gast)


Lesenswert?

Bitte verzeiht mir, dass ich diesen alten Beitrag wieder rauskrame.


Wie kann man mit 16MHz Takt am Ausgang 8MHz mit einer Pulsbreite von 
0..100%
erzeugen (Auflösung 10Bit)

8MHz ja aber dann Pulsbreite fix.
oder 4MHz Pulsbreite 4Stufen usw...


Peter

von Jörg G. (joergderxte)


Lesenswert?

>Bitte verzeiht mir, dass ich diesen alten Beitrag wieder rauskrame.
definitiv nicht (Wenn deine Frage irgendwas mit dem Thema zu tun 
hätte, vielleicht - die 6-Monats-Warnung ist schließlich kein 
Aprilscherz...).

> Wie kann man mit 16MHz Takt am Ausgang 8MHz mit einer Pulsbreite von
> 0..100% erzeugen
Bei den meisten AVRs nur mit 50/50 cyclus, d.h. 0%, 50%, 100% (CTC-mode, 
Compare-register=1 bzw. Timer aus- und Pin an/ausschalten)- es gibt 
Attinys mit einer PLL (64MHz) für die Timer, da hättest du 8 stufen 
(=3Bit)
> (Auflösung 10Bit)
Dafür bräuchtest du eine Timerfrequenz von 1024*8MHz = 8,2 GigaHertz ...

Bleibt die Frage: wozu?
 Bei 8Mhz ist doch ein (parallel, am besten sogar memory-mapped 
gesteuerter) DAC die besser Version.
 Und für die meisten Anwedungen braucht's keine 8MHz.

hth, Jörg

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
Noch kein Account? Hier anmelden.