www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Assembler für AT89C51ED2


Autor: Michael B. (gm8816)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich möchte einen AT89C51ED2 von Atmel programmieren. Leider finde ich 
keinen passenden Assembler dafür. Ich habe zwar den 8051 CROSS ASSEMBLER 
gefunden aber ich weiß nicht so recht ob der auch alle Befehle für 
meinen Controller kennt. Kann mir da vielleicht jemand helfen. Ich suche 
außerdem eine gute Entwicklungsumgebung. Ich habe schon MIDE-51 versucht 
aber beim Kompilieren hängt sich das Programm auf und mein Controller 
ist dort ebenfalls nicht aufgeführt.

Autor: E. B. (roquema) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der AT89C51ED2 ist ein 8051 Kompatibler, d.h. er hat den gleichen 
Befehlssatz wie alle anderen Controller dieser Gattung.
Willst du in C oder Assembler programmieren?
Für Assembler gibts z.B. Batronix Progstudio IMHO ganz ordentlich zu 
gebrauchen.
Für C ist der SDCC (mit MIDE als GUI) doch ok?!
Wenn kein passendes include-file da ist nimm halt eins für einen anderen 
89X51. So viele Unterschiede gibts da nicht, oder pass dir so eins an. 
Siehe Datenblatt für die zusätzlichen Fetures.
Was geht den bei MIDE nicht?

Autor: Michael B. (gm8816)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich programmiere in Assembler. Also kann ich praktisch den 8051 CROSS 
ASSEMBLER benutzen? Ist ja alles der gleiche Befehlssatz obwohl das 
Programm von 1990 ist. MIDE hängt sich immer auf wenn ich kompilieren 
will. Habe einfach mal ein simples Programm ohne include Dateien 
geschrieben. Habe auch einfach mal nur ganz viele nop Befehle benutzt 
aber es stürzt immer ab.

Autor: norad (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Benutze Batronix Progstudio! Ist voll Easy und dort kannst Du den 
AT89C51ED2 über Serielle Schnittstelle programieren.

http://www.progshop.com/versand/software/prog-stud...

Lade dir einfach mal die Demoversion runter.

Alternative ist Ride bis 8k.
http://www.raisonance.com/download/index.php
Brauchst nur "Eval51 (all vendors)" downloaden und von Atmel den Flip
http://www.atmel.com/dyn/products/tools.asp?family_id=604


Gruß
norad

Autor: Michael B. (gm8816)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Leider bin ich noch Schüler und kann mir keine Programme für 200€ 
leisten obwohl Prog Studio 2007 sehr Leistungsfähig aussieht. Ich will 
jetzt eigentlich nur noch wissen ob ich diesen Cross Assembler von der 
Atmel Seite     benutzen kann oder nicht. Ich muss dann wohl bei einem 
Texteditor bleiben. Ist zwar umständlich aber es führt ja auch zum Ziel.

Autor: Michael Werner (michelw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich nehme den Asem51, ist Kostenlos.
Dazu ein Texteditor und ein Paar Batchdateien.
Ich kann sogar über meinen Texteditor die soft in den Controller 
schiessen.
Includefile und die Batchdateien kann ich hier reinstellen.

Autor: Michael B. (gm8816)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das wäre wirklich sehr nett mir die Dateien zu schicken. Damit ist mir 
auf jeden fall weitergeholfen.

Autor: Michael Werner (michelw)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
hier die include Datei.
ASEM gibts unter :
http://plit.de/asem-51/download.htm

Hier mal der Header einer Assembler Datei:

$DATE(JULY 2005)      ;SET DATE STRING
$DEBUG                ;GENERATE DEBUG INFORMATION (OMF-51 OUTPUT ONLY)
$PAGELENGTH (1000)      ;SET LIST FILE PAGE LENGTH TO 60 LINES
$PAGEWIDTH (100)      ;SET LIST FILE LINE WIDTH TO 110 COLUMNS
$NOTABS               ;EXPAND ALL TAB CHARACTERS TO BLANKS
$NOSYMBOLS            ;DON'T GENERATE A SYMBOL TABLE
$XREF                 ;GENERATE A CROSS REFERENCE LISTING
$NOBUILTIN            ;DO NOT LIST PREDEFINED SYMBOLS (SFR)
$NOMOD51              ;DISABLE PREDEFINED STANDARD 8051 SFR SYMBOLS

; 2. GENERAL CONTROLS:
; --------------------

$TITLE(DMX-PWM 5CH)
$INCLUDE (89C51RX2.MCU)   ;INCLUDE 8052 SFR SYMBOL DEFINITIONS
; 3. ANSCHLUSSZUWEISUNG
; ---------------------
  BCD    DATA  020H  ;BCD STELLUNGEN
  AKT_KAN  DATA   022H  ;AKTUELLER KANAL
  FLAGS    DATA   023H  ;STATUSFLAGS
  TEMP     DATA   024H    ;TEMPORÄRE AUSGABE
  BCD_HEX  DATA   025H  ;Hunderter stelle
jetzt kommt das Programm....

Hier die Batchdatei zum Assemblieren
----------------------------------------
PATH=D:\ASEM51
PATH=D:\ASEM51\SOURCE
PATH=D:\ASEM51\mcu
Path=D:\Asem51\DMX-PWM-5CH-24V

SET ASEM51INC=D:\ASEM51\MCU;D:\ASEM51

D:\asem51\ASEMW.EXE DMX_LED_5CH.asm
D:\asem51\hexbinw.exe DMX_LED_5CH.hex
PAUSE
------------------------------------------

Jetzt was zum brennen via Flip:
-------------------------------------------------------
"D:\Asem51\"batchisp.exe -cmdfile 
"D:\asem51\DMX-PWM-5CH-24V-LC\batch.isp"
--------------------------------------------------------

und hier die batch.isp für flip:

-----------------------------------------------------------
-device AT89C51ED2
-autoisp

-hardware RS232
-port COM1
-baudrate 57600

-operation

loadbuffer
"D:\ASEM51\DMX-PWM-5CH-24V-LC\DMX_LED_5CH.hex"
program
verify
start reset 0
----------------------------------------------------------

Als Editor nutze ich Ultra Edit, gibt ne Eingeschränkte Version.
Da kann ich die Batchdatein auf einen Button legen.

Ich hoffe das hilft Dir weiter.

Autor: Michael Werner (michelw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach so, zum Brennen benötigst Du natürlich ein Interface, besteht aus 
ein paar Bauteilen. Findest Du hier im Forum.
Ich habe alles auf Auto ISt stehen, also Flip steuert Reset und PSEN.

Die Pfade der Batchdateien musst Du natürlich an Deine gegebenheiten 
anpassen.

Autor: Michael Werner (michelw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sollte heissen Auto ISP

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.