Taal:
DigIn (DIGitale INput kaart)

Gebruik:

Deze toepassings-print is geschikt voor digitale input. Het gebruik vind op 2 manieren plaats:

 

  • Spanningen beneden 2,4 volt worden door de print gezien als een logische 0 en spanningen boven de 2,4 volt als een logische 1.
  • Een oneindige weerstand over een ingang wordt gezien als een logische 0 en een kortsluiting als een logische 1.

 

De voornaamste toepassing van de print is het uitlezen van schakelstanden, bijvoorbeeld van relais, van schakelaars, van microswitches enz.

(Click op het plaatje)
(Click op het plaatje)

Technische specificaties:

 

- Stroom verbruik                        

60 mA

- Ingangsimpedantie 

>10 Mohm

- Toegelaten ingangsspanningen

-0,3 tot +18 volt

- Ingangscapaciteit

10nF

- Gebruikstemperaturen

-40 tot 85 graden Celsius

- Voedingsspanning

4,8 tot 5,2 Volt

Schakeling:

 

Het te meten signaal op één van de ingangen wordt via een zogeheten clamp-schakeling doorgegeven aan één van de buffer-versterkers van het IC HEF4049. De weerstand van 1k5 Ohm limiteert de ingangsstroom. De weerstand van 560 kOhm zorgt ervoor, dat een open input de spanning +5 Volt krijgt. De condensator van 10 nF filtert eventuele spanningsspikes uit het signaal. De diodes zorgen voor eventuele bescherming tegen verkeerd polen en te hoge spanningen.

De bufferversterker is inverterend, d.w.z. een 0 op de ingang levert een 1 op de uitgang en omgekeerd. De versterker (CMOS) ziet de spanningen beneden de 2,4 Volt als 0 en spanningen boven de 2,4 Volt als 1.

Adressering:

 

Het adres van de DIGIN word ingesteld met de tweepolige DIL (Dual In Line) switch. Daarnaast is bit 7 van de instelbare adresbyte kortgesloten met een weerstand van 1 Ohm (R3). Adressering vind geïnverteerd plaats. Met de beide schakelaars op Off is daardoor het adress van de DIGIN-print gelijk aan 127 (=255-128).

Met de schakelaars kan hiervan gemaakt worden 126,125 en 124. Nieuwe adressen zijn te vormen door verbindingen te maken op de nog niet verbonden adresbits. De adressen die ontstaan door verbindingen op bits 2 en 3 zijn daarbij gereserveerd tot de DIGIN-adresruimte. (deze loopt dus van 112 t/m 127)

Controle:

 

Voor de controle op de juiste werking van het systeem kan de status opgevraagd worden me (in BASIC)

Wanneer het resultaat van deze bewerking gelijk is aan 3, dan werkt de interface print naar behoren, maar is de DIGIN print niet geadresseerd. Als dit wel het geval is dient het resultaat 1 te zijn.

Hoe te programmeren:

 

Het bepalen van de meetwaardes van de DIGIN-print geschiedt in BASIC voor de verschillende computers met:

OUT X=1,adres: Y=inp(X): Print Y

Het eerste statement adresseert de DIGIN print; het tweede statement leest de datalijnen uit in de variabele Y; en het derde statement print het meet resultaat (Y) op het scherm.

 

Stel dat op de DIGIN-ingangen de inputbits de volgende spanningen bezitten:

 

bit 0 = 1 Volt

bit 1 = 3 Volt

bit 2 = 0 Volt

bit 3 = 2,2 Volt

bit 4 = 5 Volt

bit 5 = 5 Volt

bit 6 = 5 Volt

bit 7 = 1,5 Volt

 

Dan wordt de ingelezen byte gelijk aan:

0 + 21 + 0 + 0 + 24 + 25 + 26 + 0 = 2 + 16 + 32 + 64 = 114

 

Op het scherm wordt door de inverterende werking van de bufferversterker de waarde 141 = 255 - 114 geprint als waarde van Y.

Subroutines:

 

Om met dit demonstratie programma te kunnen werken moeten er 8 momentdrukschakelaars aangesloten worden op de DIGIN-print aansluit-terminals. Door telkens één schakelaar te verbinden met de punten I0 t/m I7 en de GND aansluiting zal na het indrukken van een toets de schermkleur wisselen. (voor aansluitingen zie tekeningen)

 

Dit programma is geschreven voor de MSX-computers, maar kan op zeer eenvoudige wijze aangepast worden voor de andere computers. Hoofdzaak is dat u het werken met Subroutines onder de knie krijgt. Het bestuderen van het programma geeft al een juiste indruk over het werken met subroutines.

 

In regel 220 wordt het kaartnummer geselecteerd. In regel 230 wordt naar de subroutine gesprongen. In de regels 390 t/m 410 staat de uiteindelijke subroutine en in regel 420 springt men terug naar het hoofd-programma.

10 'Voorbeeld UNIFACE DIGIN
20 '
30 '8 input
40 '
50 CLS
60 WIDTH 37
70 KEY OFF
80 PRINT"                  UNIFACE INPUT"
90 PRINT"                  ============="
100 PRINT
110 PRINT" Dit is een van de vele  "
120 PRINT" mogelijkheden van UNIFACE"
130 PRINT
140 PRINT" Door op een toets naar keuzen."
150 PRINT" zal telkens het."
160 'PRINT"  scherm een ander kleur krijgen."
170 FOR P=1 TO 9
180 PRINT
190 NEXT P
200 PRINT" -> maak uw Keuze ( 1 t/m 8 ) <-"
210 '
220 KA=129 : 'Kaartnummer
230 GOSUB 390
240 '
250 LOCATE 7,13
260 '
270 IF G2=1 THEN COLOR 1,15; PRINT "Zwart op wit                 " : 'Toets 1
280 IF G2=2 THEN COLOR 1,10; PRINT "Zwart op Donker Geel  " : 'Toets 2
290 IF G2=4 THEN COLOR 10,1; PRINT "Donker geel op Zwart  " : 'Toets 3
300 IF G2=8 THEN COLOR 15,9; PRINT "Wit op Licht Rrood         " : 'Toets 4
310 IF G2=16 THEN COLOR 8,11; PRINT "Rood op Licht Geel     " : 'Toets 5
320 IF G2=32 THEN COLOR 15,2; PRINT "Wit op Groen              " : 'Toets 6
330 IF G2=64 THEN COLOR 14,4; PRINT "Wit op Donker Blauw  " : 'Toets 7
340 IF G2=128 THEN COLOR 8,3; PRINT "Rood op Licht Groen  " : 'Toets 8
350 '
360 G2=0
370 GOTO 220
380 '
390 OUT 49,255-KA : 'Asresseren van de Kaart
400 G2=INP(48)       : 'Lees data in
410 OUT 49,0           : 'Reset Kaartadress
420 RETURN
---