Steuerung über Atmel 8051

Gast #1572395
Lesenswert?

Hallo,
arbeite zur Zeit an nem Schulprojekt und hab nen problem muss ein 
Programm für den Atmel 8051 schreiben in C, Assambler oder mischung.
Ich weis genau wie das Programm laufen soll nur bekomme es irgendwie net 
hin.
Kleine übersicht:

Endlosschleife
{
  Port0 soll gelesen werden
  if(Port0>=1)
  {
    if(Port0=3)
    {
      auf Port1 01h übertragen
      (Verzögerungsschleife von 20sek)
        if(Port0=3)//Ja erneute Abfrage
        {
           While(Port0>2)
           {
              Port1 07h
           }
         Port1 00h
        }
         else
         {
            Port1 00h
}}} }

So hoffe mir kann jemand helfen.
MfG
SK
#1572405
Lesenswert?

1
//Endlosschleife
2
*fett*while(1)*fett*
3
{
4
  //Port0 soll gelesen werden
5
  if(Port0>=1)
6
  {
7
    *fett*if(Port0==3)*fett*
8
    {
9
      auf Port1 01h übertragen
10
      (Verzögerungsschleife von 20sek)
11
       *fett* if(Port0==3)*fett*//Ja erneute Abfrage
12
        {
13
           While(Port0>2)
14
           {
15
              Port1 = 07;
16
           }
17
         Port1 = 00h;
18
        }
19
         else
20
         {
21
            Port1 = 00;
22
         }
23
      }
24
   
25
   }
26
}

So vielleicht?
Persönliche Seite #1572499
Lesenswert?

Was denn jetzt C oder Assembler?
Findet sich alles im Netz.
In Assembler: schau Dir den Befehlssatz an. Z.B. hier:
http://www.ipd.uka.de/~buchmann/microcontroller/assembler2.htm
1
JB [Pin],[Sprungziel] springe wenn Pin high
2
JNB [Pin],[Sprungziel] springe wenn Pin low
3

4
CJNE [Op1],[Op2],[Label] springe zu Label, wenn Op1 und Op2 unterschiedlich
In C:
Kommt es auf den Compiler an --> Handbuch, beim SDCC geht:
1
if (P1_0) tu was; //Pinabfrage
2
if (P1 == 0x07) tu was; //Portabfrage
Das da oben ist aber noch kein vollständiges Programm...

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