General Instrument’s AY-3-8500 (1976)

In een tijd waarin veel mensen nog geen televisie hadden, zwart-wit televisies nog eerder regel dan uitzondering waren, we geen afstandsbediening hadden en waarin Chriet Titulaer nog geen enkel boek over onze toekomst met computers had geschreven kan er niet een meer bijzondere chip op de markt zijn gekomen dan de AY-3-8500. Voor de consument was het een onzichtbaar onderdeel, verstopt in een plastic doosje met de opdruk ’tennis’ of ‘squash’ erop dat moest worden aangesloten op de antenne-ingang van de zwart-wit televisie.

Het Amerikaanse General Instrument bracht met de AY-3-8500 een eenvoudig voor fabrikanten van speelgoed te implementeren ’televisie tennis’ chip uit, die gretig door hen werd gebruikt om een eigen variant van tennis op de televisie naar de massa te brengen. De chip had weinig meer nodig dan een printplaat, batterijvoeding en een hoogfrequent uitgang als televisie uitgang. Twee regelbare weerstanden, een 6-standenschakelaar en een plastic behuizing naar keuze maakte het product af.

De 7 mogelijke spellen heetten ’tennis’, ‘soccer’, ‘squash’, ‘practice’, ‘rifle game 1’, ‘rifle game 2’ en ‘handicap’. De chip had een geluidsuitgang die eenvoudige sinus-gebaseerde geluiden voortbracht om aan te geven dat een ‘bal’ geraakt of gemist was.

Parallax Inc’s BASIC Stamp (1992)

De BASIC stamp is een kleine single board computer, ontwikkeld door Parallax, die gebruikt wordt door hobbyisten en studenten om bekend te raken met de basisprincipes van microcontrollers, zoals het aansturen van een servomotoren, leds, etc. Hij staat bekend om zijn kleine formaat en is populair omdat hij eenvoudig te programmeren is in een variant van de BASIC programmeertaal. De eerste uitvoering van de BASIC Stamp, de BASIC Stamp 1, is uitgevoerd als een single-in-line module, met alle aansluitingen aan één zijde van de printplaat. De BASIC Stamp 2 is uitgevoerd als een dual-in-line module, met aansluitingen aan beide zijden van de printplaat.

Elektuur heeft de BASIC Stamp 1 toegepast in haar ontwerp van de BASIC Buggy (1999)

Intel 8052AH-BASIC (1986)

De afgelopen 50 jaar hebben toegezien op parallelle ontwikkelingen in computer architectuur, chipfabricatie en massaproductie. De microprocessor is hiervan een tekenend resultaat, dat voor het eerst in 1971 een commercieel succes werd door de introductie van de 4-bit 4004 van een toen nog klein en onbekend bedrijfje genaamd Intel. Veel bedrijven volgden Intel’s voorbeeld en tegen het eind van de jaren ’70 kon je uit een half dozijn microprocessoren kiezen. In die jaren explodeerde het aantal computergebruikers van een handvol ondernemende hobbyisten en technisch onderlegde ‘hackers’ naar miljoenen zakelijke, industriële, ambtelijke, educatieve en thuisgebruikers, die allemaal de beschikking hadden over relatief betaalbare computeroplossingen.

Gelijktijdig aan de microprocessor, gebruikmakend van dezelfde ontwikkelingen ontstond de microcontroller, met de TMS1000 van Texas Instruments als lichtend voorbeeld. Microcontrollers zijn voor het grote publiek veel minder als eindproduct bekend dan de veel vaker genoemde microprocessoren, hoewel termen als ‘Arduino‘ en ‘ESP32’ ook bij de gemiddelde consument bekend beginnen te raken. Het grote publiek is zich echter zeer bewust van het feit dat ‘iets’ verantwoordelijk is voor de slimmigheid in huishoudelijke apparaten zoals broodroosters, koffiemachines, televisies, ovens, wasmachines, koelkasten, elektrische tandenborstels en ontelbare andere ‘gadgets’.

Een microcontroller bestaat intern uit een microprocessor, werkgeheugen, programmaopslaggeheugen en I/O voorzieningen. Dit maakt het in veel opzichten een regelcomputer-in-een-chip, waarbij er slechts een externe voedingsspanning nodig is om een programma uit te voeren. De eerste microcontroller was de TMS1000 van Texas Instruments (1974), gevolgd door de 8048 van Intel (1977). Een opvolger van de 8048 was de 8051 (1980), met als speciale uitvoering de hier beschreven 8052AH-BASIC (1986).

Het grootste verschil tussen microprocessoren en microcontrollers is gelegen in hun toepassingsgebieden: waar de microprocessor bedoeld is voor generieke toepassingen is de microcontroller bedoeld voor besturingstoepassingen met minimale externe componenten. Zo heeft een microprocessor over het algemeen geen intern geheugen, terwijl een microcontroller dat wel heeft. Een microcontroller heeft veel meer bitvergelijkingsinstructies en overwegend een beperktere instructieset die vooral op snelheid is ingericht. Ook de mogelijkheden om met andere chips en direct met digitale en analoge elektronica te communiceren is bij een microcontroller meer uitgemeten dan bij een microprocessor.

De MCS-51 is een familie van microcontroller IC’s, ontwikkeld, geproduceerd en op de markt gebracht door Intel, gebaseerd op de archetype 8051. Andere IC-fabrikanten zoals Siemens, Advanced Micro Devices (AMD), Fujitsu en Philips zijn gelicentieerde fabriekanten van deze microcontrollers. De microcontrollers uit de MCS-51 familie zijn geoptimaliseerd voor besturingstoepassingen voor ondermeer de automobielindustrie met in de instructieset een verscheidenheid aan adresseringsmodi, handige 8-bits rekenkundige instructies, ínclusief instructies voor vermenigvuldigen en delen en ondersteuning voor één-bit variabelen met bijbehorende bitmanipulatiemogelijkheden.

In de tabel zijn enkele van de MCS-51 microcontrollers weergegeven met hierbij aangegeven de hoeveelheid interne geheugen. Het interne gebeugen ligt in hetzelfde adresbereik als het externe geheugen, wat de uitwisselbaarheid van de microcontrollers vergroot.

Configuraties in de MCS-51 familie van microcontrollers

Een speciale variant van de 8052AH, de 8052AH-BASIC, heeft een af-fabriek in het maskeerbaar ROM ondergebrachte drijvendekomma-BASIC genaamd MCS-BASIC, een terminalserver en een EPROM programmeercircuit voor de opslag van programma’s. Intel bracht deze 40-pins microcontroller in 1986 op de markt.

Intel 8052AH-BASIC, een 8052AH microcontroller uit de MCS-51 familie met firmware in maskeerbaar ROM

De 8052AH-BASIC was bij de introductie in 1986 om verschillende redenen bijzonder: het bevatte een eenvoudige terminalserver met een ingebouwde editor, zodat programma’s met een seriële terminal of terminalemulatieprogramma beheerd konden worden. Ook de ingebouwde MCS-51 BASIC maakte deze microcontroller speciaal. Nog niet eerder was er een besturingschip met een ingebouwde hogere programmeertaal beschikbaar geweest.

Elektuur kwam met het november 1987 nummer met het ontwerp van een microcontrollerboard gebaseerd op de 8052AH-BASIC, ongeveer rondom de tijd waarin ik zelf ook voor mijn studie met deze microcontroller bezig was. Het ontwerp was opgebouwd rondom een 8052AH-BASIC V1.1, twee 6264 RAM’s, een 2764 of 27128 EEPROM, wat bus logica, een programmeerspanning-beveiliging, RS232 niveau-aanpassing en een reset-schakelaar.

Schema van de 8052AH-BASIC V1.1 schakeling

De opgebouwde microcontroller was een dubbelzijdige, doorgemetaliseerde printplaat met afmetingen van 10×15 centimeter. Twee connectoren maakten I/O en busuitbreidingen mogelijk. Op de printplaat zaten, buiten de 8052AH-BASIC micocontroller, twee RAM-chips, een EPROM-voet en enkele logicachips. De seriële ansluiting voor een terminal of computer met terminalsoftware bestond uit een 5-polige DIN aansluiting, in die tijd bekend als audioconnector waarmee audioapparaten onderling konden worden verbonden. De toepassing hiervan was niet standaard (een 9-polige D-connector was hier toepasselijker geweest), zodat er een kabel op maat gemaakt moest worden. Twee leds en een schakelaar maakten het geheel af. De printplaat was voorzien van montagegaten zodat het eenvoudig in een behuizing kon worden ingebouwd, een en ander overgelaten aan de creatieve vaardigheden van de constructeur.

Elektuur’s 8052AH-BASIC board, voorzien van twee RAM IC’s en een EPROM voet

Na het aansluiten van een geschikte terminal aan de 5-pins DIN-aansluiting en het inschakelen van de voeding werd een prompt op de terminal getoond en kon een programma worden ingetoetst:

*MCS-51(tm) BASIC V1.1*
READY
>10 FOR I=1 TO 3
>20 PRINT I
>30 NEXT I
>RUN
1
2
3
READY
>

Op de prompt konden enkele commando’s worden gegeven: RUNLISTNEWNULLRAMROMXFERPROGBAUDCALL en variaties hierop. Met LIST (of LIST met een regelbereik) werd het programma (of een deel hiervan) naar de terminal teruggegeven. Een regel werd gecorrigeerd door deze opnieuw in te voeren.

De geplaatste EPROM kon vanuit de controller worden geprogrammeerd met het commando PROG en programma’s konden eenvoudig vanuit de EPROM worden opgestart met het commando ROM. Programma’s konden slechts met UV-licht uit de EPROM worden gewist:

>LIST
10 FOR I=1 TO 3
20 PRINT I
30 NEXT I
READY 
>PROG
12
READY
>NEW
READY
>LIST
READY
>ROM 12
READY
>LIST
10 FOR I=1 TO 3
20 PRINT I
30 NEXT I
READY
>

Externe links

De 8052 microcontroller werd gebruikt als DSP processor op de Creative SoundBlaster serie geluidskaarten voor PC’s.

Texas Instruments’ SN76477 (1978)

De SN76477 van Texas Instruments is een heel veelzijdige audiochip. Deze chip herbergt onder andere een (blokgolf)oscillator voor zeer lage frequenties (SLF), een spanninggestuurde oscillator (VCO), een ruisgenerator, een ruisfilter, een mixer en een eindtrapje (waarmee overigens niet rechtstreeks een luidspreker kan worden aangestuurd). Met behulp van enkele passieve componenten zoals weerstanden en condensatoren (maar vooral potmeters en schakelaars) kan rondom deze chip een schakeling worden gebouwd die verschillende geluiden kan produceren. Deze eigenschap maakt de SN76477 heel geschikt voor gebruik in synthesizers. Vrijwel alle onderdelen die de chip herbergt zijn naar eigen goeddunken in- of uit te schakelen c.q. in te stellen:

  1. De frequentie van het uitgangssignaal van zowel de VCO als de SLF kan met behulp van potmeters naar hartenlust worden gevarieerd;
  2. Met behulp van schakelaars kunnen de (drie) ingangen van de mixer worden ge(de)activeerd;
  3. Er kan (met behulp van een schakelaar) voor worden gekozen om het uitgangssignaal van de SLF te gebruiken om de VCO mee aan te sturen;
  4. De ruisgenerator kan naar believen worden in- of uitgeschakeld.

Elektuur Lego Buggy (1999)

Met behulp van de Parallax BASIC Stamp, wat losse elektronica, enkele Lego-blokjes en -motoren is op eenvoudige wijze een compacte en programmeerbare mini-robot te maken. De Elektuur Lego Buggy is daar een mooi voorbeeld van: alles heel klein, maar toch flexibel en veelzijdig.

Weerstanden
R1 = 22 k
R2 = 10 k
R3 = 6k8
R4,R5 = LDR
P1,P2 = 250 , instelpotentiometer, staand

Condensatoren
C1…C4,C6,C10,C11 = 100 n, steek 5 mm
C5,C7 = 330 n
C8,C9 = 10 µ/25 V, radiaal
C12 = 100 µ /16 V, radiaal

Halfgeleiders
D1,D2 = infrarood zenddiode, bijv. LD271
IC1 = 74HC04
IC2 = L293D
IC3 = 78L05

Diversen
K1, K2 = infrarood detector IS741F (Sharp)
K3,K6…K9 = 2-polige SIL-socket
S1,S2 = microswitch, enkel maakcontact
Bz1 = piëzo-buzzer
M1, M2 = motor, zie overzicht gebruikte Lego-componenten
K4 = 3-polige SIL-header
K5 = 14-polige SIL-socket
BASIC-Stamp V1
Print: EPS 990035

General Instrument’s SP0256-AL2 (1982)

De SP0256-AL2 is een spraakchip met een 10KHz samplerate en een 12-punts audiofilter dat in staat is om enkelvoudige spraakklanken te genereren. Spraakklanken zijn het elementaire bestandsdeel van gesproken taal: iedere taal heeft een beperkt aantal klanken waarmee alle woorden in die taal gesproken kunnen worden. De chip werd ondermeer door Radio Shack verkocht onder het eigen merk Archer als itemnummer 276-1784. Een uitbreiding hierop, de CTS256A-AL2 maakte het mogelijk om met een eenvoudige seriële aansturing Engelse woorden in spraak om te zetten.