Digitale Ausgänge

Gast
Da wir nicht wissen welchen Controller, I/O-Chip, oder weiß der Geier
was meinst, ist das Beantworten deiner Frage recht schwierig. Selbst
wenn du uns das verraten würdest, bliebe noch die Frage der
Programmiersprache offen.

Daher meine sehr allgemein gehaltene Antwort weiter oben...

Also:
- Im Datenblatt nachschaun, wie der Port funktioniert (es gibt da
  Unterschiede),
- im Datenrichtungsregister das entsprechrende Bit (falls vorhanden)
  auf Betriebsart "Ausgang" setzen,
- im Ausgangsregister (Portregister) das gewünschte Bit auf 0
  setzen...

Wie das geht, hängt vom jeweiligen Chip, seinem Befehlsvorrat und der
verwendeten Programmiersprache ab, denn da gibt es gewaltige
Unterschiede...

Also: "Es gibt viel zu tun! - Schauen wir weg..."

...HanneS...
Um einen Pin auf 0 zu setzen, mußt Du das entsprechende Bit im
IOCLRx-Register auf 1 setzen.

Nachfolgend ein Beispiel:

#include <lpc21xx.h>

#define LED   7         // P0.7
#define BUTTON  31      // P0.31

int main( void )
{
  IODIR0 = 1<<LED;      // LED as output
  for(;;){
    if( !(IOPIN0 & (1<<BUTTON ))){
          IOSET0 = 1<<LED;
        }else{
          IOCLR0 = 1<<LED;
        }
  }
}


Peter
Gast
hi,

Programmsprache: C
µController: Siemens B 58 657

ich hab mir das so vorgestellt(Bitte nicht lachen)

sbit Bit0 = P6^0;

main()
{
Bit0 = 0;
}

Der Compiler(Keil, µVision V1) sagt mir:

'Bit0=': undefined identifier

Mit sbit definier ich den Pin 0 an Port6 als variable Bit0

Würde das so funktioniern??
Warum sagt mir der Compiler das Bit0 nich definiert ist??

Steff
Gast
hi,

Hä???

"sbit Bit0 = P6^0;" <--- P6^0 ist das Bit0 vom Port 6

versuchs mal so P6^0=0;

Da ich bis jetzt nur den SDCC genommen habe, weiß ich es nicht so
genau. Aber dort geht es so:

#define Entladen_Stop  P6_0


main()
{
Entladen_Stop = 0;
}
Gast
Hi,
bin glaub ich auf den fehler drauf gekommen.

hab die falsche reg.h Datei.
In der reg.h Datei sind ja die ganzen hex-adressen für die Ports
festgelegt, oder?

In der Schule arbeiten wir mit einen 8051 Microcontroller und ich hab
einfach die gleiche reg517.h Datei genommen.

Mein µController ist der Siemens B 58 657.

Zu welcher familie gehört mein µC.
Hab schon im Internet gesucht aber nichts passendes gefunden???

Oder ist die reg.h Datei für alle µC gleich???


LG
Gast
Den Microcontroller hab ich mir in der schule ausgeborgt.

Also die Platine sieht folgendermaßen aus

1.Längliches Bauteil auf dem steh:
SB 9106
NMC27C256Q
250
...das ist entweder der ROM oder RAM

2.Längliches Bauteil auf dem steh:
KM68100Al6-7
410C
...das ist entweder der  ROM oder RAM

1. quadratisches Bauteil auf dem steht:
Siemens
B 58 657
LA+copyright INTEL 80
9550
...das ist der Microprozessor, oder??
hab angenommen das  Microprozessor und Microcontroller von der
Bezeichnung her gleich sind?!?!

dann ist noch ein zweites, kleineres quadratisches Bauteil
auf dem steh:
XILINX
XC9538
PC44AMM0813
F1258761A
weiß nicht was das für ein Bauteil sein soll
Gast
Könnte daran liegen, daß der B 58 657 keinen Port6 hat. Wenn der nur 44
Pins hat, dann gibt es nur Port0 bis Port 3.

Nur so eine Idee, da ich keine Infos über den Chip finde.
Gast
nein ich hab von einem Lehrer eine Schaltplan bekommen und da gibts
einen Port 6.

Ich werd morgen nochmal mit dem Lehrerh redn, vielleicht weiß er
näheres.

DANKE übrigens!!!!!!!!!

LG Steff
Gast
Hi,

Da müßte eigentlich noch mehr stehen...............

"1. quadratisches Bauteil auf dem steht:
 Siemens
 B 58 657
 LA+copyright INTEL 80
 9550                                    "

Was steht denn auf der Platine?

Mfg Sascha

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 22 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.