Frage zu High/Low

Gast #18198
Lesenswert?

Hallo,

ich möchte ein Grafik-Display ansteuern. Manche Pins müssen dafür immer 
"High" und manche immer "Low" sein.

Heißt "High" --> Pin an VDD und "Low" --> Pin an GND!?! (Oder genau 
andersherum?)

2. Frage (dazu ein kleines Programm):

.include "4433def.inc"

.def temp1 = r16

.cseg
.org $000
   start          ;reset handle

start:
   ldi  temp1,RAMEND    ;LOW-Byte der obersten RAM-Adresse
   out  SPL,temp1

   ldi  temp1,0xFF      ;0xFF ins Arbeitsregister r16 laden
   out  DDRB,temp1  ;Inhalt von r16 ins IO-Register DDRB

   ldi  temp1,0b00000111
   out  PortB,temp1

rjmp MainLoop    ; Ab ins Programm!!!
reti

MainLoop:
  rjmp MainLoop

Sind die Pins PORTB0, PORTB1 und PORTB2 nun "High" oder "Low"? LEDs 
leuchten dort nämlich nicht!!!

Vielen Dank!

Sebastian
Gast #18200
Lesenswert?

Hallo,

danke für die turboschnelle Antwort! :-)

Also wenn ich das recht sehe, kann ich von den Ausgangs-Ports quasi 
immer Strom ziehen - es kommt halt nur drauf an, ob ich die LED dann an 
GND oder an 5V anschließe (wobei man LEDs nach 5V anschließen sollte). 
Richtig?

Auf jeden Fall bedeutet "1" = High und "0" = Low. Auch richtig?

Hast Du auch noch eine Antwort auf meine Frage ganz am Anfang?

Schonmal vielen Dank! :-)

Sebastian
Gast #18201
Lesenswert?

Hi 5V
Lo 0V

Die genauen Bereiche dürften im Datenblatt zu finden sein, sonst 
TTL-Standard (den ich auch nicht im Kopf habe).

Dass die LEDs nicht leuchen kann mehrere Gründe haben. Wenn du sie vom 
Port über einen Widerstand nach Masse geschaltet hast, kann es sein, 
dass der Source-Current nicht ausreicht um die LED zum leuchten zu 
bringen. Es ist immer sicherer die LED von VCC über einen passenden 
Widerstand zum Port zu schalten, nun muss man nur noch invertiert 
überlegen ;-)

Port-Pin = 0 -> LED an
Port-Pin = 1 -> LED aus

Soweit ich weiss machen alle AVRs einen Sink-Current von 20mA mit, also 
genügend für eine LED.
Gast #18202
Lesenswert?

Hallo Sascha,

danke für die Erklärung! :-)

Ich denke, das mit den LED ist mir nun klar. Ich fand's halt immer etwas 
verwirrend, daß 0=ein und 1=aus. Aber nun passt es ja wieder!

Bleibt aber immer noch mein "LCD-Problem". Heißt nun "High" --> Pin an 
VDD und "Low" --> Pin an GND!?! (Oder genau andersherum?)

Danke nochmals! :-)

Sebastian
Gast #18203
Lesenswert?

> Heißt nun "High" --> Pin an VDD und "Low" --> Pin an GND!?!
Ja, wenn dein Vdd mit Vcc verbunden ist oder entspricht. Du verwendest 
die Kürzel in einer ungewöhnlichen Mischung.
"Normal": Vcc/GND  oder  Vdd/Vss

> Auf jeden Fall bedeutet "1" = High und "0" = Low. Auch richtig?
Ja.

>> Hi 5V
>> Lo 0V
ja, darf aber nicht zur Vorstellung führen, daß auch "1" = 5V ("0" = 0V) 
ist. Das kann auch mal andere Werte annehmen, oder sogar vertauscht sein 
(z.B. "1" = -12V; "0" = +12V).


Wen interessiert woher die Bezeichnungen stammen...:
http://groups.google.de/groups?hl=de&lr=&ie=UTF-8&oe=UTF-8&threadm=383BF0A5.AB1%40fz-juelich.de&rnum=2&prev=/groups%3Fas_q%3Dvdd%2520vcc%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3Dde.sci.electronics%26lr%3D%26hl%3Dde

Schmittchen.

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