mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Programmieren von AT90PWM3B


Autor: Kaveh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Zusammen,
Die Simulation eines ganz kleinen Programm (siehe unten) in Assembler 
mit AVR Studio 4.18 funktioniert, wenn ich ein ATmega8 controller beim 
Anlegen des Projektes wähle. Aber das gleiche programm bzw. die 
Simulation mit dem Controller AT90PWM3B läuft nicht bzw das programm 
wird zwar assmbliert (meldung :Assembly complete, 0 errors. 0 warnings) 
aber beim debuggieren wird nicht angezeigt, ob der Ausgang nun gesetzt 
ist oder nihct.
Die Übertragung des Programm über AVRISP MKII funktioniert  auch (keine 
Fehlermeldung) aber beim messen des Ausgang mit Oszilloscope zeigt der 
Ausgang keinen H-Pegel.
Und das ist mein Problemm mit diesem Controller, wo ich an dieser Stelle 
nicht weiter komme. Vielleicht hat jemand von euch eine Idee bzw. eine 
Lösung . für jede Hilfe bedanke ich mich im voraus.
mfg
Kaveh

.include"1200.inc"
.def temp=r16
main:
 sbi portb,1
 rjmp main

PS: liegt es vielleicht an dem Header include"1200.inc" ??

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also wenn, dann solltest Du Dein Programm nicht abtippen sondern hier 
reinkopieren und die entsprechenden Code-Tags benutzen.
Eine Datei 1200.inc gibt es nicht, das AVRStudio schmeißt mit Fehlern um 
sich, Deine Aussage "funktioniert" ist also offensichtlich falsch!
Selbst wenn Du den Dateinamen richtig abgetippt hättest ("1200def.inc") 
wäre das für den ATMega8 die verkehrte, die ist für eine AT90S1200. Für 
einen ATMega8 wäre "m8def.inc" das Richtige. Und wenn Du nicht weißt für 
welchen Chip ein File ist, dann schau einfach mal rein, es steht drin.

Autor: Peter Diener (pdiener) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie bereits erwähnt, ist das das falsche Includefile.
Dann muss geprüft werden, ob im AVR-Studio das richtige Target 
(AT90PWM3B) eingestellt ist.
Dann fällt mir noch auf, dass der Port an keiner Stelle als Ausgang 
definiert wird (DDRB korrekt setzen).

Grüße,

Peter

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das meine ich ja. Der hingepfuschte Code und die Beschreibung passen 
einfach nicht zusammen!

Und nochwas, man sollte für den Simulator schon den AVR als Target 
auswählen, für den das Programm übersetzt wurde. Ansonsten ist das 
Ergebnis zumindest fragwürdig.

Autor: Kaveh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für eure Antworten.
ich habe mich gestern vertippt und anstelle Include"1200def.inc" 
include"1200.inc" geschrieben. das habe ich aber nicht für Atmega8 
verwendet sondern für AT90pwm3b und in der Simulatur von AVRStudio habe 
auch den richtigen nämlich At90pwm3B gewählt.
also in sofern war alles nicht falsch.
zum schluss lag an dem Header und den habe ich später richtig gestellt. 
das ist include "pwm3def.inc".
mfg
momo

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.