2011-01-03 10 views

Antwort

5

Die Atmel AT89C2051 ist eine 20-Pin-Version des beliebten 8051-Mikrocontrollers. Der Programmspeicher (Flash) ist auf 2K begrenzt und alle Anweisungen bezüglich Springen oder Verzweigen sollten so eingeschränkt werden, dass die Zieladresse in den physikalischen Programmspeicher des Geräts fällt. Die Atmel AT89C2051 hat auch alle normalen 128 Bytes RAM sowie den eingebauten UART.

Die datasheet (PDF-Link) ist oft ein guter Ausgangspunkt für die Entwicklung von Firmware für einen Mikrocontroller.


Da die Atmel AT89C2051 mit der MCS-51 Architektur voll kompatibel ist, und kann mit dem MCS-51 Befehlssatz programmiert werden, sollte http://www.8052.com eine gute Ressource sein.

http://www.google.com/search?q=89C2051+site:www.8052.com


Die Open-Source Small Device C Compiler (SDCC) Toolchain können die notwendigen Firmware-Dateien für die Programmierung der Atmel-Chip zu erzeugen verwendet werden.

Der Atmel C51ASM Assembler ist ein Zwei-Pass-Makro-Assembler für die Atmel AT89-Familie von 8051-Mikrocontrollern und unterstützt gemäß der Dokumentation das AT89C2051.


Der Stack-Überlauf in Frage tagged 8051 kann auch von Nutzen sein.

2

Ich habe Keil µVision für die Entwicklung von Firmware für Mikrocontroller mit MCS51 Befehlssatz verwendet. Es war praktisch, aber es war nicht kostenlos und die Testversion hatte einige Einschränkungen hinsichtlich der Größe der Firmware.

+0

interessiert sein, wenn ich mich richtig erinnere erlegt Keil eine 2K-Grenze mit den [Testversionen] (http://www.keil.com/c51/ devproc.asp) ihrer Werkzeuge. – jschmier

+2

@jschmier: Vermutlich sollte das gut mit dem 2K Flash des 89C2051 funktionieren :-) – psmears

+0

@psmears: es scheint, dass die Keil C51 Evaluierungswerkzeuge mehrere [Einschränkungen] auferlegen (http://www.keil.com/demo/limits.asp) einschließlich einiger, die ein Problem für Single-Chip-Geräte sein können, die 2K oder weniger Programmplatz unterstützen – jschmier

0

Sie benötigen 2 oder 3 Dinge:

  1. die Firmware-Entwicklung: Je nachdem, welche Programmiersprache Sie gut sind, Sie Assemblersprache [a51 & asem51 sind gut Montierer] verwenden, c Cross-Compiler [keil c51 kostenlose Testversion sollte ausreichen] oder sogar einfach [Sie können einen grundlegenden Compiler für 8051 im Netz finden].

  2. Die Firmware sollte im Intel Hex-Format sein; Wenn Ihre Assembler-/Compiler-Ausgabe Binärcode ist, benötigen Sie ein bin2hex Dienstprogramm, um den Binärcode in das Hex-Format zu konvertieren. Sie können Freeware bin2hex Dienstprogramme im Internet finden.

  3. Ein Programmierer [das ist Hardware] zum Laden der Firmware in den Programmspeicher des Mikrocontrollers.