Forum: Mikrocontroller und Digitale Elektronik LED-Quiz programmieren - nur wie?


von Un K. (cubix)


Lesenswert?

Guten Abend,

ich habe folgendes Problem:

Da ich noch neu in der Mikrocontroller-Programmierung bin, hatte ich 
vor, ein kleines Quiz in C zu schreiben.
Dabei werden Fragen über die Konsole gestellt und die Tastatureingabe 
wird eingelesen. Wenn die Antwort richtig ist, soll eine grüne LED, bei 
falscher Antwort eine rote LED angeschaltet werden.

Nun dachte ich mir, dass ich mithilfe von printf die Fragen über die 
Konsole stelle und über scanf die Tastatureingabe einlese. Dann soll 
mithilfe einer if-Abfrage geprüft werden, ob die Antwort richtig oder 
falsch ist und je nachdem der PORT von der grünen oder der roten LED 
geöffnet werden.
Doch es ist mir nicht möglich, die printf-Funktion aufzurufen.

Vielleicht fassen sich manche nun an den Kopf und denken, dass ich 
komplett dumm bin, aber wie gesagt, ich bin noch neu in der 
Mikrocontroller-Programmierung und sammle zurzeit noch meine Erfahrungen 
;)

Hoffe, ihr könnt mir helfen :)

LG

: Verschoben durch User
von Un K. (cubix)


Lesenswert?

Was vielleicht noch erwähnenswert ist, ich verwende Atmel Studio und 
einen ATmega88

von Un K. (cubix)


Lesenswert?

Oh, ich glaube ich weiß schon das Problem:

Ich programmiere ja nicht den Computer, sondern den Mikrocontroller und 
der hat ja keinen Zugriff auf die Konsole....

Gibt es auch eine andere Möglichkeit, das Programm zu realisieren?

: Bearbeitet durch User
von Christophe J. (chj)


Lesenswert?

Du könntest beispielsweise ein LCD-Display verwenden oder den Text über 
eine serielle Schnittstelle ausgeben.

von Fuzzi (Gast)


Lesenswert?

oh, ein Monolog Thread; mal was Neues ;-)

von Diek (Gast)


Lesenswert?

Nimm ein LCD und zeige darauf die Frage an.
Dann n mögliche Antworten mit n Tastern abfragen und entsprechend die 
Led leuchten lassen.
Ist am einfachsten.

Erweitern könntest du es dann mit RS232 und Hyperterminal am PC.

Beispiele dazu gibts genug im Forum.

von Jauch (Gast)


Lesenswert?

Diek schrieb:
> Nimm ein LCD und zeige darauf die Frage an.
> Dann n mögliche Antworten mit n Tastern abfragen und entsprechend die
> Led leuchten lassen.

Quasi 'Wer wird Millionaer'

von STK500-Besitzer (Gast)


Lesenswert?

Mario C. schrieb:
> Doch es ist mir nicht möglich, die printf-Funktion aufzurufen.

Hast du sie inkludiert?
Und dann sollte dein Test nur Anworten wie "Ja" und "Nein" oder Zahlen 
erwarten. Alles andere dürfte momentan deine Fähigkeiten übersteigen.

von Besucher (Gast)


Lesenswert?

Mario C. schrieb:
> Oh, ich glaube ich weiß schon das Problem:
>
> Ich programmiere ja nicht den Computer, sondern den Mikrocontroller und
> der hat ja keinen Zugriff auf die Konsole....
>
> Gibt es auch eine andere Möglichkeit, das Programm zu realisieren?

Wenn es in der Form komplett auf einer MCU laufen soll könntest du 
(neben einem Display) freilich auch eine Tastatur anschließen. Eine 
einfache und billige Möglichkeit dazu wäre eine IR-Tastatur[1], ein 
IR-Empfänger[2] und IRMP[3] als "Tastaturtreiber".
Sowohl die Ansteuerung eines Displays (mit eingebautem Displaycontroller 
wie dem HD44780) als auch die Nutzung von IRMP sind eigentlich schöne 
Aufgaben für den Einstieg. Funktionen für das Einlesen und Ausgeben von 
Zeichenketten sind auch nicht besonders schwierig zu schreiben (es 
müssen ja nicht solche eierlegende Wollmilchsäue wie printf und scanf 
werden). Vielleicht nicht gleich am ersten Tag, aber in wenigen Wochen, 
an einem eingeschneiten Winterwochenende. :)

[1] z.B. 
http://www.pollin.de/shop/dt/MzQ5ODgyOTk-/Computer_Informationstechnik/PC_Systeme_Peripherie/Tastaturen/Infrarot_Tastatur_FDC_3402.html
[2] z.B. 
http://www.pollin.de/shop/dt/NzQ4ODc4OTk-/Bauelemente_Bauteile/Aktive_Bauelemente/Optoelektronik/Infrarot_Empfaenger_HUEY_JANN_IR1261_38_kHz_10_Stueck.html
[3] http://www.mikrocontroller.net/articles/IRMP

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.