Zähler programmieren mit AT89C5131

OP #2029539
Lesenswert?

Hallo zusammen,

Seit einer Woche befasse ich mich mit Mikrocontrollertechnik und komme 
bei dieser Aufgabe mit bestem Willen nicht weiter.
Verwende einen Atmel AT89C5131 und Programmiere mit Raisonance, Ride7!
Die Aufgabe lautet:

Bei Programmstart soll ein Zähler 0-9 gestartet werden. Hierzu wird ein 
Zähler so schnell zählen, dass die Zahlen für das Auge nicht zu 
differenzieren sind.
Die Ausgabe der Zahl soll auf der 7 Segment-Anzeige sowie dem LCD, Zeile 
2 angezeigt werden. Auf der Zeile 1 steht folgender Text „Zähler“.
Wird die Taste S2 gerückt, so wird die Würfelzahl in beiden Ausgaben 
angezeigt, so lange die Taste gedrückt bleibt.

Könntet ihr mir da bitte weiterhelfen ?

Danke euch
#2029569
Lesenswert?

Wo ist das Problem?
1
sbit KEY_S2 = P1^1;          // the wanted port pin
2
#define KEY_PRESS 0          // low active
3

4
int main()
5
{
6
  unsigned char i = '0';
7

8
  lcd_init();
9
  lcd_puts( "any text" );
10
  for(;;){
11
    if( i == '9' )
12
      i = '0';
13
    else
14
      i++;
15
    lcd_xy( the_wanted_position );
16
    lcd_putchar( i );
17
    if KEY_S2 == KEY_PRESS ){
18
      delay_ms( 1000 );
19
      while( KEY_S2 == KEY_PRESS );
20
    }
21
  }
22
}

Da ich Deine IDE nicht kenne, können die Funktionen abweichend heißen.


Peter
#2029734
Lesenswert?

Dein Musterbeispiel (das auf dem Papier) ist doch schon fast soweit, 
dass man es zu einem Würfel umfunktionierten könnte!
Dein Musterbeispiel zählt nur dann 1 weiter, wenn die Taste gedrückt 
wird. Und jetzt soll eben dauernd gezählt werden. Und zwar nicht 
beliebig hoch sondern immer von 1 bis 6, wenn der Zähler auf 7 
weitergezählt wurde, dann wird er wieder auf 1 zurück gesetzt. Wobei 
deine Angabe da etwas widersprüchlich ist. Auf der einen Seite ist von 
einem Würfel die Rede, welcher bekanntlich 1 bis 6 Augen haben kann, auf 
der anderen Seite ist von einem Zähler 0 bis 9 die Rede. Aber das ist 
nicht wirklich wichtig, das sind im Programm nur 2 Zahlenwerte.

Faktum ist, dass man aus der Musterlösung mit ein paar Änderungen das 
Gewünschte erhalten kann (wenn man die 7-Segment Anzeige mal beiseite 
legt). Wenn man seine Grundlagen verstanden hat.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren