Forum: Mikrocontroller und Digitale Elektronik KISS 8051 - USB AT89S52 Anfänge was sinnvolles damit zu machen


von Horst A. (s-m-a-r-t)


Angehängte Dateien:

Lesenswert?

Helas,

Dies ist mein erster Beitrag in dieser Community und auch nach großer 
Suche habe ich nicht wirklich was gefunden, um mir meine Fragen selbst 
zu beantworten.

Es ist so,

ich habe eine KISS 8051 Lernplatine und programmiere den µC über 
Assembler (C ist auch möglich, aber ich mag ASM ;))

Mein Code wird dann über USB an den µC gesendet und der führt das auch 
alles schön aus.
Nur wie man auf den angehangenen Bildern sieht, sind dort 8 LEDs die 
mein Output darstellen.
LEDs zum Leuchten bringen ist aber schon lange nicht mehr das, was ich 
mit dem feinen Teil anstellen möchte.

Die Hauptsächliche Frage ist hierbei, wie ich quasi andere Geräte wie 
z.B. einen stumpfen kleinen E-Motor zum drehen bekomme oder ähnliches.
Quasi irgendwelche Basics um mit der Zeit sinnvollere kleine Dinge zum 
Laufen zu bringen.

Nun hoffe ich alles konform getextet zu haben und euch hier nicht mit 
sollchen Basics zu langweilen.

Im Anhang befinden sich zwei Grafiken, eine von der fertigen Platine und
eine vom SW-Grafik mit Beschriftung der Bauteile.

Gruß

von Ralf (Gast)


Lesenswert?

Ein Schaltplan wäre auch nicht schlecht. Prinzipiell musst du gucken, ob 
du die Ports sinnvoll rausführen kannst, was ja durch die gezeigten 
Stift-/Buchsenleisten ziemlich einfach gehen dürfte.
Für Motoren musst du auf eine entsprechende Treiberstufe achten, vor 
allem die Freilaufdiode nicht vergessen.
Detaillierter kann man eigentlich nur helfen, wenn man genau weiss, was 
du denn nun machen willst...

Ralf

von Wolfgang B. (et-tutorials) Benutzerseite


Lesenswert?

Hallo Horst,
über die Stiftleiste ist ja der Port 2 herausgeführt.

Wenn Du Motoren anschließen möchtest, dann solltest Du wie Ralf bereits 
gesagt hat auf angemessene Treiberstufen achten.

Ziemich einfach geht das für kleine Spielereien beispielsweise mit einem 
L293D, einer Treiberstufe, die für kleinere Motoren (< 600mA) geeignet 
ist und bei der auch die Freilaufdioden schon eingebaut sind.

von Max (Gast)


Lesenswert?

Oder baust selber mit FETs eine H-Brücke die du ansteuerst ;)

von Wolfgang B. (et-tutorials) Benutzerseite


Lesenswert?

Max schrieb:
> Oder baust selber mit FETs eine H-Brücke die du ansteuerst ;)

Oder so ;-)

Je nachdem, wa Dich mehr interessiert, HW oder SW, kannst Du dich mit 
diesem Board sicher austoben.

Ein schönes Projekt wäre vielleicht, die Drehzahl des angeschlossenen 
Motors langsam über PWM hoch- und wieder runterfahren zu lassen.

von Horst A. (s-m-a-r-t)


Angehängte Dateien:

Lesenswert?

Hallo,

danke erstmal für die Antworten.

@Ralf
Einen Schaltplan habe ich angehangen.

@Wolfgang & Max
Um zu erfahren wie das laufen wird, um überhaupt irgendwelche externen 
Gerätschaften anzusteuern ist quasi Ziel eines der Ziele dieses Threads.

Bislang habe ich lediglich Anhand von den DIP-Schaltern (P2) Werte zur 
Berechnung eingegeben und diese über die LEDs (P0) ausgegeben.

Anhand von Lektüre habe ich mich so mit der Assemblerprogrammierung 
vertraut gemacht und bin offen um das gelernte in weiteren Projekten zu 
vertiefen.

Wolfgangs Vorschlag ist dementsprechend auf jeden Fall schonmal eine 
Sache die mich interessieren würde.

Für den Anfang würde es ja schon reichen wenn der µC auf 4 Rädern steht 
und 3m vor und zurück fährt (das sollte mit dem USB-Kabel funktionieren 
;))
Ein wenig Lego-Technik und die Sache wäre realisierbar (von wegen 
Zahnräder und was man noch so braucht).

Ein Robo der mir hier durchs Haus fährt und Hindernissen aus dem Weg 
geht, ist zwar nicht unbedingt mein Ziel, aber wäre bestimmt eine 
Möglichkeit eben mit extern gesammelten Informationen zu arbeiten.

Gruß

von Matthias K. (matthiask)


Lesenswert?

Ein übliches Dotmatrix LC-Display wäre auch nützlich, wird immer wieder 
gebraucht. Oder RS-232 Schnittstelle und Kommunikation mit einem PC, 
müsstest allerdings einen MAX-Treiber nachrüsten.

Eventuell solltest Du den ..S52 gegen einen AT89S8253 austauschen, um 
einiges moderner, dann könntest Du auch mit den EEPROM experimentieren.
Bin mir da allerdings nicht sicher, ob der USB-Chip dessen 
Programmierung unterstützt.

von Horst A. (s-m-a-r-t)


Lesenswert?

@ Matthias
Für weiterführendes sicher eine Option, doch möchte ich jetzt nicht 
allzu weit streuen.

Wenn ich es erstmal hinbekomme nen kleinen Motor anzusteuern, wird 
weiteres sicher folgen.

von namenlos (Gast)


Lesenswert?

Für den Anfang ganz nett:
http://www.ipd.uka.de/~buchmann/microcontroller/index.htm

Es geht zwar um den AT89C2051, ist aber fast das selbe...

von Kevinho F. (falkao)


Lesenswert?

Hallo zusammen,

ich brauche die Hilfe von erfahrenen Programmierern.
Habe ein Lauflicht-Programm mit dem Compiler RIDE IDE (in C) geschrieben 
und möchte dieses Lauflicht-Programm jetzt auf mein Kissboard laden.
Habe auch die software WORKBENCH, nur weiß ich nicht genau wie ich jetzt 
vorgehen muss.
Ich wäre euch sehr dankbar, wenn ir mir kurz erläutern könntet was ich 
genau tun muss.

Freundliche Grüße
Falkao (c:

von Elektriker Horst (Gast)


Lesenswert?

Ich befürchte, dass das KISS-Board hier nicht sehr bekannt sein wird.

Ich vermute, dass die Software "Workbench" zum flashen des Controllers 
verwendet wird? Der at89s52 lässt sich ganz einfach über SPI 
programmieren, was sich mittels eines FDTI auch über USB machen lässt.

Prinzipiell benötigtst du das *.hex File, welches dir RIDE generieren 
muss. Dieses musst du nun in Workbench einladen und dann den Controller 
flashen. Wahrscheinlich musst du vorher noch den richtigen COM-Port 
einstellen (FDTI ist ein USB-Seriell-Wandler). Genaueres musst du 
allerdings in der Hilfe zu Workbench nachschauen, da ich das Programm 
nicht kenne.

von Kevinho F. (falkao)


Lesenswert?

Vielen Dank für die Hilfe!
Habe das Problem gelöst bekommen

Gruß Falkao

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.