|
Logische Grundfunktionen der Digitaltechnik
Hier in der WIKIPEDIA ist sehr schön
ausführlich beschrieben, was Digitaltechnik ist und was logische
Grundfunktionen sind.
Aber vielleicht kennst Du Dich ja schon einwenig mit AND, OR, NAND, NOR, NOT usw.
aus.
Diese Funktionen gibt es fertig in Integrierten Schaltkreisen. Man
nennt Sie da auch "Gatter" (z. B.: NAND-Gatter im IC 7400).
Da man machmal NAND-Gatter mit zwei oder drei oder ... oder acht
Eingängen braucht, kannst Du Dir ja vorstellen, wie groß der
Bauelementeschrank werden kann, wenn man alles vorrätig haben muss.
Oder eben nicht, weil Du ja Dich inzwischen einwenig mit
Mikrocontrollern auskennst. Ein Arduino oder noch besser: Hand voll
einzelner Mikrocontroller ersetzen einen ganzen Sortiments-Schrank
voll Integrierter Logikschaltkreise.
AND (deutsch: UND)
Darf ich Dich mit der dicken Elfriede bekannt machen? Diesen nette
Frau saß an der Stanze, als ich noch Lehrling war. Sie schob immer
ein Blech in so eine riesige Stanze, die dann nach unten krachte.
Und damit sich Elfriede nicht die Finger abstanzen konnte, musste sie
rechts und links an der Stanze gleichzeitig auf zwei Knöpfe drücken.
Erst dann krachte die Stanze runter.
int o = 11; // LED an Pin 11
int i1 = 7; //Taste1 an Pin 7
int i2 = 8; //Taste2 an Pin8
void setup(){
pinMode(o, OUTPUT);
pinMode(i1, INPUT); digitalWrite(i1,
HIGH);
pinMode(i2, INPUT); digitalWrite(i2,
HIGH);
}
void loop(){
if (digitalRead(i1)==LOW &&
digitalRead(i2)==LOW){
digitalWrite(o, HIGH);
}
else {
digitalWrite(o, LOW);
}
}
OR (deutsch: ODER)
Es reicht, einen von zwei Knöpfen zu drücken und ein Verbraucher
geht an.
int
o = 11; // LED an Pin 11
int i1 = 7; //Taste1 an Pin 7
int i2 = 8; //Taste2 an Pin 8
void setup(){
pinMode(o, OUTPUT);
pinMode(i1, INPUT); digitalWrite(i1,
HIGH);
pinMode(i2, INPUT); digitalWrite(i2,
HIGH);
}
void loop(){
if (digitalRead(i1)==LOW ||
digitalRead(i2)==LOW){
digitalWrite(o, HIGH);
}
else {
digitalWrite(o, LOW);
}
}
|