Magic Disk 64

home to index to html: MD8804-BASTELWARE-USERPORT_I+O_MULTIPLEXER_TEIL_1-4.1.html
              Bastelware                
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
Vielleicht haben Sie sich  schon  einmal
gewünscht,  mehr  Datenquellen  mit  dem
Userport Ihres C64 zu verbinden als die-
ser mit seinen maximal 8  Eingabeleitun-
gen verarbeiten kann.                   
Nehmen wir als Beispiel an,  Sie  wollen
ein Zimmer überwachen.  Da  bietet  sich
an, einen Schalter an der  Zimmertür  zu
befestigen, der dann Kontakt gibt,  wenn
die Tür geöffnet wird. Dazu  reicht  uns
schon eine Leitung am Userport, und  wir
können mit einem Programm sogar festhal-
ten, wann die Tür geöffnet, wann  wieder
geschlossen  wurde  und  wie  oft   dies
geschah.                                
Damit wollen wir uns aber nicht  zufrie-
den geben. Wir wollen nun auch noch wis-
sen, was sonst noch in  dem  überwachten
Zimmer vor sich geht, während wir  nicht
daheim sind. Der C64 kann mit seinen  64
KByte leicht mehrere Wochen lang wachen,
ist also auch geeignet, uns einen  "Sta-
tus-Report"   nach   einem   eventuellen
Urlaub zu geben.                        
Wir möchten wissen, welche  Schränke  in
unserer  Abwesenheit  geöffnet   wurden.
Dazu befestigen wir, wie bei der Zimmer-
tür, an jeder zu überwachenden  Schrank-
tür wieder einen Schalter. So  weit,  so
gut. Was aber tun, wenn wir mehr  als  8
Türen überwachen wollen?  Das  ist  doch
eigentlich bei maximal 8 Eingangsleitun-
gen gar nicht möglich...                
Ist es natürlich doch. Denn wieder  ein-
mal hilft uns hier die  Elektronik.  Das
Zauberwort   heißt   "Multiplexer"   und
erlaubt uns, ganze 16 Schalter oder Kon-
takte abzufragen. Und dabei  werden  von
den 8  Userport-Leitungen  nur  ganze  5
benötigt, 3 bleiben also noch  frei  für
weitere Anwendungen. Aber hier  zunächst
der Schaltplan, der eigentlich  nur  aus
einem einzigen Integrierten  Schaltkreis
besteht: Dem IC SN 74150, das es für ein
paar Mark  in  jedem  Elektronikgeschäft
gibt.                                   
MD8804-BASTELWARE-4.4.shematic1.png
An die Datenleitungen, die mit den  Zah-
len 0 bis 9 und den Buchstaben A  bis  F
bezeichnet sind, können Sie 16  Schalter
anschließen.  Den  zweiten   Pol   jedes
Schalters  verbinden   sie   mit   Minus
(Masse).                                
Was macht nun dieser  Multiplexer?  Nun,
zunächst prüft er die Bitkombination  an
seinen  Datenselektionseingängen.  Diese
sind mit den Userportleitungen  PB0  bis
PB3 verbunden. Mit diesen vier Leitungen
können wir  2↑4  =  16  Bitkombinationen
darstellen. Das klingt komplizierter als
es in Basic ist. Hier ein  kurzes  Test-
programm:                               
10 POKE 56579,15                        
20 INPUT"LEITUNG NUMMER";N              
30 POKE 56577,N                         
40 A = PEEK(56577) AND 16               
50 IF A=0 THEN 80                       
60 PRINT"SCHALTER IST OFFEN"            
70 PRINT : GOTO 20                      
80 PRINT"SCHALTER IST GESCHLOSSEN"      
90 PRINT : GOTO 20                      
Am Anfang des Programms werden in  Zeile
10 die Leitungen PB0 bis PB3 auf  Ausga-
be geschaltet. Dieser  Vorgang  ist  nur
einmal notwendig und muß nur nach  einem
eventuellen NMI (=RUN/STOP RESTORE)  neu
ausgeführt werden.                      
In Zeile 20 wird dann über den INPUT-Be-
fehl eine Zahl zwischen 0 und 15  einge-
geben, die den  entsprechenden  Schalter
auswählt. Der Multiplexer  schaltet  nun
diese Leitung auf seinen  Ausgang,  wel-
cher mit PB4  des  User-Ports  verbunden
ist. Hier können wir nun in Zeile 40 den
Zustand der Leitung  abfragen.  Ist  der
Wert Null, so ist der Schalter geschlos-
sen, bzw. die Leitung am Multiplexer ist
mit Masse verbunden. Bei  einem  anderen
Wert als 0 ist der Schalter offen.      
In einem "Überwachungsprogramm" kann zum
Beispiel in einer FOR-NEXT-Schleife  von
0 bis 15 jeder Wert nacheinander in  die
Speicherzelle    56577    gepoked    und
anschließend  die  Ausgangsleitung   des
Multiplexers abgefragt werden.          
Hier sind Ihnen als Anwender keine Gren-
zen gesetzt. Da  ja  am  User-Port  noch
drei Leitungen frei sind, wäre es natür-
lich auch möglich, noch  weitere  Multi-
plexer anzuschließen  und  so  statt  16
Schaltern 32, 48 oder gar  64  Stück  zu
überwachen. Diese  Zahlen  dürften  dann
aber auch den Anforderungen eines Möbel-
hauses genügen...                       
Wir hoffen, daß Sie mit  dieser  Bastel-
ware einige Anregungen  bekommen  haben,
den Multiplexer mit seinen Möglichkeiten
im Haus einzusetzen.                    
Valid HTML 4.0 Transitional Valid CSS!