Eindhoven University of Technology MASTER Microprocessor in de meettechniek Verberne, P.M.J. Award date: 1979 Link to publication Disclaimer This document contains a student thesis (bachelor's or master's), as authored by a student at Eindhoven University of Technology. Student theses are made available in the TU/e repository upon obtaining the required degree. The grade received is not published on the document as presented in the repository. The required complexity or quality of research of student theses may vary by program, and the required minimum study period may vary in duration. General rights Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. • Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain
128
Embed
Eindhoven University of Technology MASTER Microprocessor ... · de besturing voor het uitvoeren van instructies op de juiste manier en in de juiste volgorde, door de juiste stuursignalen
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Eindhoven University of Technology
MASTER
Microprocessor in de meettechniek
Verberne, P.M.J.
Award date:1979
Link to publication
DisclaimerThis document contains a student thesis (bachelor's or master's), as authored by a student at Eindhoven University of Technology. Studenttheses are made available in the TU/e repository upon obtaining the required degree. The grade received is not published on the documentas presented in the repository. The required complexity or quality of research of student theses may vary by program, and the requiredminimum study period may vary in duration.
General rightsCopyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright ownersand it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights.
• Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain
AFDELnm DER ELEKTROTECHNIEK
TECBNISCHE EOGESCnOOL
EINDHOVEN
Vakgroep Heten en Regelen
MICROPROCESSOR
ftlY!}
IN DE NZETTECHNIEK
door P .M.J. Verb<erne
Rapport van het afstudeerwerk (orienteringsfase)uitgevoerd van maart 1978 tot juli 1978in opdracht van prof.dr.C.E.Huldersonder leiding van ir.R.G. van Vliet
- 2 -
Samenvatting
Nadat in dit rapport een toelichting gegeven is over een microcomputer
systeem, worden een aantal bouwstenen besproken waarbij de voornaamste
de microprocessor zal zijn.
Verder worden toepassingsmogelijkheden van de microprocessor besproken,
waarbij ook aandacht geschonken is aan het werkgelegenheidsaspect.
De microprocessor blijkt veel perspectief te bieden voor toepassing in de
meettechniek.
Tot slot is met behulp van selectiecriteria een voorstel gedaan tot aanschaf
van het microcomputer-systeem PET 2001 met verder nog enkele aanbevelingen
voor training in dit onderdeel der elektronica.
Microprocessor in measurement
Summary
After an explanation about a microcomputer-system some microelectronical
chips have been discussed.
Also a review ,was given about applications with special attention for
measurement and cunse~uences for employment.
The microprocessor appeared to be perspective for measurement.
In conclusion a proposal has been made for purchase of the microcomputer-system
PET 2001, and some references for retraining were given.
- 3 -
Inhoudsopgave
bladzijde:46
1416
22
2526
271 definities van microprocessor2 overzicht toepassingsmogelijkheden
woordenlijstfeature sheets PET 2001
Aanhangse1:
Inleiding
1. Hicroprocessors
1.1 Definitie1.2 Opbouw van een systeem1. 3 Bouwstenen
2. De sociale aspecten
3. Toepassingen
4. De selectie
5. Opleiding
Conclusie
Literatuurlijst
Bijlagen:
- 4 -
Inleiding
Sinds 1970 heeft de elektronica een nieuwe bouwsteen: de microprocessor.
Ontwerpers bekijken altijd of de ontwikkeling van een nieuwe technologie
veel voordeel op zal leveren en er een standaard product voor de industrie
uit kan ontstaan.
Mogelijkheden en voordelen van de microprocessor zijn uitgebreid geanalyseerd
en sinds de introductie is algemeen geaccepteerd dat de microprocessor een
stabiel onderdeel vormt in de bouwstenen-markt van de elektronica.
Het is niet juist voor de microprocessor dezelfde houding aan te nemen als
voor de computer. De computer is een dure machine waarvan de werktijd wordt
gemaximaliseerd en die voor vele taken wordt gebruikt. De microprocessor is
een relatief goedkoop massaproduct. Wij dienen hem te beschouwen als een
bouwsteen, zoals bijvoorbeeld een operationele versterker I.C. dat is.
Microprocessors bieden een uitstekende gelegenheid tot gedecentraliseerde
informatieverwerking. De microprocessor wordt bij de databron geinstalleerd
en neemt daar de databewaking, verzameling en verwerking over. Op deze wijze
kunnen intelligente meetapparaten en dataterminals werk verrichten. In toe
nemende mate worden meetapparaten met microprocessors uitgerust, zoals bij
voorbeeld: multimeters, tellers en frekwentieanalysators. De microprocessor
neemt een aantal taken op zich, zoals bijvoorbeeld: het berekenen van meet
resultaten, uitvoeren' van correcties en normeringen, de organisatie van ge
compliceerde meetprocedures.
De geestdrift, die de microprocessor oproept, moet gerelativeerd worden
omdat de software niet eenvoudig op te lossen problemen kan geven.
Op tentoonstellingen ( Het Instrument, Interkama ) en door indrukken uit vak
bladen is bij mij de gedachte gegroeid, dat de microprocessor voor de meet
techniek een belangrijke ontwikkeling vormt en omdat in de vakgroep Meten
en Regelen die gedachten ook leven, heeft dat geresulteerd in mijn afstudeer
opdracht. Die opdracht heeft tot doel een microprocessor te gebruiken voor
een meettechnisch probleem.
- 5 -
Dit verslag is gebaseerd op de orienteringsfase van mijn opdracht.
De uitvoeringsfase zal in een tweede verslag aan de orde komen.
Omdat de aanwezige kennis,bij mijzelf en in de groep~iet voldoende was om
direkt tot aanschaf van een microcomputersysteem over te gaan, is allereerst
een voorstudie verricht. Deze omvatte o.m. een cursus over microprocessors.
Een groot aantal personen llit de groep Meten heeft kennis gemaakt met de
microprocessor door middel van een prakticum, dat een onderdeel is vap het
onderNijsprogramma voor E-studenten.
Na verdere studie en peiling der behoeften voor toepassingen in de groep
is een voorstel gedaan tot aanschaf van een micro~omputer-sYflteem
Na het beeindigen van mijn opdracht biedt het systeem de mogelijkheid tot
algemeen gebruik en verdere afstudeeropdrachten in de groep Meten.
- 6 -
1. Microprocessors
Omdat mijn afstudeerwerk niet het onderzoek aan rnaa.' het gebruik van een
microprocessor tot doel heeft, zal ik de microprocessor niet diepgaand
bespreken. Hiervoor wil ik verwijzen naar de desbetreffende literatuur.
1.1 Definitie
Het lijkt zinvol wat langer stil te blijven staan bij het definieren van
het fenomeen microprocessor, omdat het een met veel vaagheden omgeven bouw
steen is die ook weI onbegrip ontrnoet.
Microprocessorszijn in 1910 ontstaan en sindsdien zijn ze op een explosieve
wijze uitgebreid zowel in aantal als in verscheidenheid en prestatie.
Mede daarom zijn definities over de microprocessor vaag en niet eensluidend.
Dat ligt ook aan het feit dat microprocessors niet wezenlijk verschillen
van andere digitale circuits. Bij microprocessors wordt struct~reel en
functioneel de nadruk gelegd op ontwerp en doel van het circuit.Een aantal grepen uit gegeven definities ( lit.l ) leveren bij voorbeeld op:
WILLIMAN ( Rockwell International ) definieert een microprocessor op basis
van complexiteit of op basis van functionele eigenschappen ( zie bijlage 1 ).
THff&gWIT ( Signetics Coporation ) neemt een ander uitgangspunt voor een
definitie: de microprocessor is een vervangingsbouwsteen van basis-schake
lingen, die opgebouwd zijn met discrete logica en waarbij hardware wordt
vervangen door een combinatie van hardware en software.
BLOMh~R-BARTENSTEIN ( Siemens ) definieert de microprocessor als de C.P.U.
van een microcomputer. Hij verlegt daarmede het discussiepunt. Prestatie
vermogen en snelheid rnoeten volgens hem niet als criterium gebruikt worden,
omdat ze afhankelijk zijn van de halfgeleider technologie ( lit.2 ).
Punt van discussie is ook de vraag waar de grens ligt tussen micro- en mini
computers.
BUNCE ( Memory Devices Ltd. ) beschouwt het meer als een verkoopargument
dan als een elektronica vraagstuk. Volgens hem ( lit.l ) geeft de wijze van
gebruik het verschil aan:
minicomputer: veel gebruikers, die een groot geheugen nodig hebben
microcomputer: voor een speciaal doel, klein geheugen is voldoende.
- 7 -
Dat het niet eenvoudig is om een grens aan te duiden, moge ook blijken uit
een conclusie van BLOMEYER-BARTENSTZIN ( lit.2 ) , die zegt dat een 16 bit
microcomputer altijd een minicomputer is. Hij heeft daarbij de volgende
definities gebruikt:
- een microcomputer is een computer, die een microprocessor als C.P.U. heeft,
voornamelijk uit LSI-bouwstenen opgebouwd is en verder
weinig halfgeleider bouwstenen nodig heeft
- een minicomputer is een computer, die i.h.a. een 16 bit woordlengte heeft,
16 bit-architectuur in registers,geheugen en busbar, en
deze 16 bit parallel verwerkt.
Bovengenoemde stellingnamen spelen bij de keuze van een microprocessor
hun role
Vast staat dat de microprocessor in zijn basl~~Q~_ niet alleen te gebruiken
is.
1.2 Opbouw van een systeem
Deze paragraaf is gebaseerd op de beschrijving van een microcomputer
systeem door BLOMET£R-BARTENSTEIN ( lit.2 ).
In het algemeen is een systeem een gestructureerd geheel dat aan een in
gangspoort informat~e opneemt en daarop bep aalde acties onderneemt en
het resultaat aan een uitgangspoort weergeeft. Bij een computer-systeem
kunnen wij twee basis elementen onderscheiden: hardware en software.
De hardware is samengesteld uit computer en periferie. De software is te
verde len in systeem- en werkprogramma's.
De computer kunnen wij opgebouwd denken uit: centrale processor ( CPU ),
geheugen en in- en uitvoerorgaan ( I/O module ).
In fig.l.2.-1 is de opbouw van het systeem schematisch weergegeven.
Een microcomputer-systeem heeft in principe dezelfde opbouw. Zie fig.l.2.-2.
Toch kunnen wij hier enkele bijzonderheden onderscheiden: het busbar-systeem
en de geheugenblokken.
STEVENS ( lit.3 ) beschrijft het busbar-systeem als volgt: het is een aan
tal bidirectionele paralelle geleiders, die alle eenheden met elkaar door
verbinden. Ret is opgebouwd uit:
Data bus: datatransport van en naar CPU en andere units
Adres bus: voor geheugen- en I/O selectieadressen
Control en timing bus: pad voor besturingssignalen.
- 8 -
In gedetailleerde schema's worden de drie genoemde bussen afzonderlijk
getekend. In een microcomputer schema staat soms nog een module opgetekend.
Dat blok representeert dan extra logica, bij voorbeeld: interrupt- en
(8) Hoff, M.E.; Applications for microcomputers in instrumentation.In: IEEE Int. Conv.,1973, paper number 21/1.
(9) Hu, s.c.; Microprocessors in complex control and measurement systems.In: Micro 77, conference record, Lincoln Plaza Forum, Oklahoma City,page 94-98.
play, printer (Smart interface devices)Bit manipulation No Yes YesInterrupt No Some YesDirect memory access No Some .Usua llyMulti-chip Some Yes TTL or TTL/MaSMicroprogrammable No Some SomeArithmetic BCD (Binary Coded Binary and BCD Binary and BCD
Decimal)
Figure 2: Micropro~e8nor definition by functionalcharacteristics
oscillografenspectrumanalysecomponenten-testapparatuursorteerlogicaweegschalenradarapparatuurmeetinstrumenten waarbij geen bedieningsfoutengemaakt mogen wordendoseersystemenhet controleren van reactors, versnellers,massaspectrometersalarminstallaties voor luchtvervuiling
vliegtuigenschepenvrachtwagensmilitaire systemenruimtevaartprocescontroleverkeersregelingliftensturingdecentrale regelsystemenrobotsystemenmachinebesturingproductiecontrolepersenbesturingtestsystemen voor Ie'sdiagnose-apparatuurlaboratoriumonderzoekpatientenbewakingfysiologische testsystemenpatientenadministratieintelligente terminalsfactureerapparatengeheugensmultiprocessingzakrekenmachinesbankinstallatiesfotokopieermachinesbenzinepompautomatenkasregistersgeldwisselautomatenkabeltelevisieauto'sradio/TV
Hiermede is nog geen uitputtend overzicht gegeven.Overzicht ontleend aan Elektronica Opleiding Dirksen, cursus microprocessors
Woordenlijst
In lit.2,3 is een uitgebreide woordenlijst aanwezig.
ALU
Assembly
BASIC
Bit
Bus
C.P.U.
Data
Handshaking
Hardware
Interface
Interrupt
Periferie
RAM
Ron
Register
Software
Throughput
Woordlengte
Arithmetic and Logical Unit. Een rekenkundig subsysteemvan de processor, dat wiskundige en logische operatiesuitvoert.
Een in symbolische taal geschreven programma dat met eenAssembler omgezet kan worden in machinetaal
:Beginners All purpose Symbolic Instruction Code, hogereprogrammeertaal
Binary digit. Eenheid van informatie
Een pad, waarover digitale informatie van een aantal aangesloten bronnen naar een aantal aangesloten bestemmingenkan worden getransporteerd
Central Processing Unit. Reken- en besturingsorgaan
Informatie bestaande uit letters, cijfers, tekens enuitgedrukt in bit
Werkwijze waarbij apparatuur met verschillende reactiesnelheid aangesloten kan worden
Mechanische, magnstische, elektrische en elektronischeapparatuur
Een elektronische koppeling tussen twee apparaten of bouwstenen
Onderbreking van de normale executie van een programma
Externe randapparatuur zoals floppy-disc, teletype
Random Access Memory. lees/schrijf geheugen
Read Only Memory. lees geheugen
Tijdelijk digitaal geheugen circuit
Het totaal van programma's die de mogelijkheden van de computer vergroten, bv. assemblers, loaders
Gemiddeld aantal operaties van een computer per tijdseenheid
Een aantal aaneengesloten bits, die als eenheid wordenbehandeld
~,\ :. ~ '"'11 ,'"
-".:-
( -
'. ~ . .' '. ~< ~,,;., ..~ , ;' ,
!-
• "t.'
,~,'
".
Der PET 2001 ist ein BASIC-Tischcomputer-System.Seine hervorstechenden Eigenschaften ordnen ihn in die Spitzengruppe der Micro-Computer ein.Die Vielzahl der zur Verfugung stehenden Funktionen und seine groBe Speicherkapazitaterlauben den Einsatz in den meisten technisch-wissenschaftlichen Anwendungen, sowieim finanztechnisch-kommerziellen Bereich.Als Heimcomputer kbnnen Sie mit dem PET 2001 z.B. Sprachen oder Mathematik lernen,Kartenspiele oder Schach spielen, grafische Entwurfe machen, Kuchenrezepte speichernund Menuvorschlage zusammenstellen lassen. AuBerdem kann der PET 2001 Ihr privatesHaushaltsbuch fuhren, helfen die Einkommenssteuererklarung auszufullen oder Telefonnummern und Geburtstage speichern.Die Einsatzmbglichkeiten von PET 2001 sind fast unbegrenzt!PET 2001 arbeitet in der Computersprache BASIC. In dieser sehr leicht zu erlernendenSprac~'le Iiegen bereits viele fertige Programme aus den verschiedensten Bereichen wieStatistik, Statik, Maschinenbau, Elektrotechnik, Buchhaltung, Lagernaltung ... bis hin zurMondlandung und "Siebzehn und vier" vor.Die v'ielseitigen AnschluBmbglichkeiten von peripheren Geraten erlauben nicht nur dasBetreiben von Druckern oder Floppy-Disk-Laufwerken (zur Speicherung von Daten undProgrammen), sondern auch einer breiten Palette von MeBwertgebern. Selbst dasSteuern oder Regeln von Maschinen ist zu realisieren. Die groBe Auswahl an graphischenZeichen erweitert seinen Ein'satzbereich wesentlich.Die Anwendung des PET 2001 erstreckt sich vom Computer fUr Hobby, Industrie, Schuleund Forschung bis hin zum ProzeBrechner.
Arbeitsspeicher
Der frei verfugbare Schreib-Lese-Speicher (RAM) laSt sich von {f~ytet(..S1andaffl) bzw.---(j 8 kByte (optional) bis zu 32 kByte erweitern. .
Der Festwertspeicher (ROM) hat eine Kapazitat von 14 kByte, aufgeteilt in:8 kByte BASIC-I nterpreter.In Verbindung mit einem neuentwickelten, sehr schneller:l Prozessor machtdieser Interpreter den PET 2001 zu einem der schnellsten und vielseitigstenBASIC-Computer. Hervorstechende Eigenschaften von Commodore-BASICsind:• 960 einfache Variable.. 960 Ganzzahl-Variable• 960 String-Variable• je 960 mehrdimensionale Felder fUr jede dieser 3 Variablen-Arten. Diese
konnen mit Konstanten, Variablen oder Ausdrucken dimensioniert werden.• mehrere Befehle pro Zeile (bis zu 80 Zeichen je Zeile)4 kByte Betriebssystem1 kByte Testroutine1 kByte Monitor fUr Maschinensprache (diese ist dem Benutzerzuganglich)
TastenfeldMit 73 Tasten sind samtliche 64 ASCII-Zeichen ohne Umschaltung zuganglich. Mit Umschaltung werden die graphischen Zeichen und die Negativdarstellung samtlicher 128Zeichen erreicht.CLEAR loscht den Bildschirm.Programmk~rrekturdurch Oberschreiben, Einfugen oder Loschen von Zeichen.
Bildschirm23 em Schwarz-WeiB-Bi!drbhre mit hoherAuflbsung. Kapazitat 25 Zeilen zu je 40 Zeichen = 1000 Zeichen in 8 x 8 Matrix-Darstellung. Automatischer Zeilenvorschub beirT!Erreichen des unteren Bildrandes. .64 Standard-ASCII-Zeichen + 64 graphisch\J Zeichen, Negativdarstellung (schwarz dufwei B) flJr samtliche Zeichen mbglich. Blinkender Cursor (Anzeiger) mit voller BewegL',1gs-,freiheit. (Cursorbewegungen sind auch prograrnmierbar.) -
KassetteneinheitDie eingebaute Kassetteneinheit erlaubt eir1e permanente Speicherung von Programmen.Diese kbnnen mit Namen bezeichnet und gezielt aufgerufen werden.Infolge der hohen Stbrsicherheit kbnnen normale Compact-Cassetten Verwendung
. finden.
AnschluB externer Gerate (Interfaci.ng)AuBer einem 8 bit parallelen Ein/Ausgang und einem AnschluB fUr eine zweite Kassetteneinheit ist bereits das In~erface nach IEEE 488 (auch bekannt unter der Bezeichnung IECBus) eingebaut. Hiermit kbnnen gleichzeitig bis zu 15 Bus-kompatible Gerate an den PET2001 angeschlossen werden (MeBgerate, Drucker, Floppy-Disk-Laufwerke, aber auchWandler fur BCD-Parallel-AnschluB, V24-Schnittstelle etc.). Die notwendigen Befehle fUrdie Adressierung und Steuerung dieser Gerate stehen zur VerfIJgung.
Allgemeine Daten
AbmessungenBreite: 42 cmTiefe: 47 cmHbhe: 36 cm
Gewicht: 20 kg
BetriebsdatenNetzspannung: 220 V ± 10%Netzfrequenz: 50 Hz
Lieferb2res Zubehbr
o Drucker 40 oder 80 Zeichen breit9 'Floppy- Dis.ke 2. Kassettee zusatzliche Speicherkapazitatc\) Modeme Software
'.ZuordnulJg (kann weggelassen werden)READ liest Daten (numerisch oder alphanumerisch) ins Programm, welcheunter DATA abgelegt sinderlaubt logische Vergleiche (wenn ... dann)ermbglicht SchleifenSprungbefehlAusgabe auf den Bildschirm; ZeilenvorschubDimensionierung von Feldern (Arrays)letzte Anweisung eines Programmes
Erweiterte BASIC-Anweisungen .
ST~P
GETSTOP
RESTORE ermbglicht mehrfaches Lesen von DATAREM erlaubt Zwischentext (Bemerkungen) im ProgrammGOSUB mehrfach' gebrauchte Programmteile kbnnen alsRETURN Subroutine gerufen werdenON .. GOTO fUr berechnete VerzweigungenON .. GOSUB fUr berechnete SubroutinenINPUT Eingabe von Werten von der TastaturDEF FN Definition von Funktionen, welche dann beliebig oft im Programm
aufgerufen werden kbnnenBestimmung der Schrittweite in FOR:-NEXT-Schleifen
'akzeptiert einzelne Zeichen von der Tastaturbeendet ein laufendes Programm
SystemanweisungenRUNNEWCLRCONTLISTFRE
startet ein ProgrammIbscht den ArbeitsspeicherIbscht aile Variablen (einschlieBlich Dimensionierung)setzt Programmausfuhrung forterstellt eine Liste des Programmsergibt die Anzahl freier Bytes im Programmspeicher
SGNINTABSSORSINCOSTANATNLOGEXPRND
Funktionenermittelt das Vorzeichenergibt den ganzzahligen Anteil einer Zahlliefert den Absolutwert einer Zahlermittelt die OuadratwurzelSinus eines Winkels (WinkelmaB Radianten)KosinusTangensArcus TangensnaWrlicher Logarithmus einer ZahlPotenz zur Basis e (e = 2.718 ...)liefert Pseudo-ZufallszahlenWert n· ist fest gespeichert
..
...
r
LEFT$RIGHT$MID$CHR$ASCSTRgVALLEN
SPCTABpas
String-(Zeichenketten-) Funktionen·Aus einem String k6nnen genau spezifizierteSubstrings (Teile des ursprunglichen Strings)herausgenommen werdenwandelt ASCII-Codes in Zeichen umwandelt Zeichen in den entsprechenden ASCII-Co~e
wandelt Zahlen zu Zahlenstringswandelt Zahlenstrings zu normalen Zahlenermittelt die tatsachliche Lange eines Strings
Formatierungsanweisungenbringt eine spezifizierte Anzahl LeerzeichenTabulatorermittelt die nachste verf(jgbare Druckposition
Logische OperatorenAND Verknupft 2 Werte mit der UND-FunktionOR Verknupft 2 Werte mit der ODER-FunktionNOT Negation
Maschinensprach~-Anweisungen
PEEKPOKEUSRSYS
liest einzeln'e 'Bytes aus dem Speicherspeichert einzelne Bytes in spezifizierte Adressen
verbinden das BAS1C-Programm mit der Maschinensprache
OPEI\JCLOSESAVELOADVERIFYPRINT#INPUT#GET#CMD
Input-Output-Anweisungen
Dateier6ffnungSchlieBen eines BlockesSpeichern eines Programmes auf der KassetteLaden eines Programmes von der KassetteVergleichen des Speicherinhaltes mit dem FileWie Print, jedoch auf Gerat #Wie INPUT, jedoch vom Gerat #Wie GET, jedoch vom Gerat #Hauptanweisung fUrVerkehr mit Geraten am IEEE-Bus
Variable-,
ABC ... AA AB AC ... AO A1 A2 . . . ~
Einfache Variable mit voller Genauigkeit und einem Speicherplatzbedarfvon 5 (bzw. 7) Bytes
A% BOlo ... AA% AB% ... A1% A2% ...Ganzzahlvariable mit einem"Bereich von -32000 bis +32000 Lind einemSpeicherplatzbedarf von 2 Bytes
A$ BS ... AAS AB$ ... AOS A1S ...String (Zeichenketten) variable mit einem Speicherplatzbedarfvon 1 Byte/Zeichen
Bei allen 3 Variablenarten sind mehrdimensionale Felder m6glich
SpezialvariableTITI$ST.
durchlaufende Zeit in 1/60 s-Einheiten, quarzgenauTageszeit in Stunden. Minuten, SekundenStatus von Peripheriegeraten
AFDELING DER ELEKTROTECHNIEK
TECHNISCHZ HOGESCHOOL
EINDHOVEN
Vakgroep Meten en Regelen
MICROCOMPUTER-SYSTEEM PET 2001
door P.M.J. Verberne
Deelrapport van het afstudeerwerk
uitgevoerd van juli 1978 tot medio september 1978
in opdracht van prof.dr.C.E. Mulders
onder leiding van ir.R.G. van Vliet
- 2 -
Samenvat ting
Dit rapport beoogt een handleiding te zijn voor gebruik bij het microcompu
ter-systeem PET 2001 ( Personal Electronic Transactor ) als supplement van
het 'Grote PET Boek'.
Er wordt een beschrijving gegeven van de hardware en software van het PET
systeem.
Omdat het wenselijk is dat programma's zo uniform mogelijk opgesteld word~n,
zijn daarvoor richtlijnen gegeven. Aan dit onderwerp is de meeste aandacht
geschonken, omdat het vaak in de verdrukking komt vanwege de onbekendheid
bij technische gebruikers.
Microcomputer-system PET 2001
Summary
This report aims to be a manual at users of the microcomputer-system PET
( Personal Electronic Transactor) as a supplement of the 'Grote PET Boek'.
A description is given of the hardware and software belonging to the PET 2001.
Chapter three presents some programming rules for obtaining uniform user's
software. This subject gets more attention because it often has been pressed
owing to unknowingness at hardware-oriented users.
8
12
bladzijde:4
5
- 3 -
Inhoudsopgave
Inleiding
1. System hardware
1.1 De microcomputer1.2 De periferie
2. System software
2.1 Programmeertaal2.2 BASIC2.3 Resident software
3. Ret schrijven van programma's
3.1 Ret probleem definieren3.2 De oplossingsmethode3.3 Ret stroomdiagram3.4 Ret coderen3.5 Ret testen3.6 De dokumentatie
Tot besluit 18
Literatuurlijst 20
Bijlagen: 1 Dartmouth R~SIC versus BASIC PET 20012 Memorymap PET 20013 Stroomdiagram-symbolen4 Voorbeeld van een stroomdiagram5 Stroomdiagram-formulier6 BASIC-coderingsformulier1 BASIC statements en commando's8 Elementen van een structogram9 Programma. structuren
- 4 -
Inleiding
Ret eerste gedeelte van mijn afstudeerwerk werd beeindigd met het uitbrengen
van een advies met be trekking tot de aanschaf van een microcomputersysteem.
Er werd ook nagegaan wat microprocessors voor de meettechniek kunnen beteke
nen. Van bovengenoemde onderwerpen aangevuld met een toelichting over de op
bouw van een microcomputer-systeem is een rapport uitgebracht.
Een en ander heeft vervolgens geresulteerd in de aanschaf van het micro
computer-systeem PET 2001.
Dit verslag, waarin de PET 2001 beschreven wordt, is dan ook het vervolg
op het rapport 'Microprocessor in de meettechniek'.
Een aantal aspecten van de hardware en software zijn wat nader bekeken, om
dat zij in de handleiding van het systeem onvoldoende aan de orde komen.
De handleiding en dit rapport moeten dan ook als een geheel beschouwd worden.
Verder bevat dit rapport een hoofdstuk over het schrijven van programma's.
Biermede wordt beoogd een hiaat in de handleiding te compenseren.
Er zijn een aantal formulieren ontworpen en richtlijnen voor het schrijven
van programma's opgesteld,indien dat mogelijk was aan de hand van DIN-normen.
Op het belang van 'een goede programma-voorbereiding kan niet genoeg gewezen
worden. Onvoldoende voorbereidend denkwerk kan tot gevolg hebben dat veel
tijd nodig zal zijn voor het editten en debuggen. In de praktijk kent men
het volgende, Diet utopische, voorbeeld:
- 2 weken denken en coderen
12 weken testen
- 5 weken denken en coderen
1 week controle aan de schrijftafel
1 week testen.
Door gebruik te maken van stroomdiagrammen bij het maken van programma's,
zou wellicht de indruk kunnen ontstaan dat deze methode beter is dan de
gestructureerde programmeertechniek. Echter, de stroomdiagrammen zijn in
gebruik omdat zij reeds langer toegepast worden en in de literatuur de
boventoon voeren. Het moge duidelijk zijn dat ik de discussie over dit
onderwerp open wil houden, zodat in de toekomst opnieuw een keuze gemaakt
kan worden.
- 5 -
1. System hardware
Een microcomputer-systeem is opgebouwd uit een microcomputer en periferie.
De microcomputer is samengesteld uit een microprocessor met geheugen en
in- en uitvoerorganen ( I/O-modules ).
Van de periferie voor de PET 2001 bespreken we de ingebouwde app~ratuur.
1.1 De microcomputer
Ret schema in fig.l.l.-l laat de architectuur van de ~icrocomputer zien. De
CPU is in dit geval de microprocessor MCS 6502 van MaS Technology. Uit een
producten beschrijving ( lit.l ) heb ik een aantal kenmerken overgenomen•.
Deze microprocessor wordt vaak beschouwd als een uitgebreide versie van de
Motorola MC6800 overeenkomstig de Z80 ten opzichte van de 8080A. Dit is niet
juist omdat instructieset en systeem-bus in het geheel niet compatible zijn.
De MCS 6502 bevat on-chip klok logica, zodat nog slechts een externe kristal
oscillator nodig is. De kloktijd is 1 microsec. en de executietijd van in
structies ligt tussen 2 en 12 microsec.
Een 8 bit microprocessor heeft 8 datalijnen. De interne databus heeft een
breedte van 8 bit, zodat de aansluiting van de externe databus ( naar CPU,
geheugen, I/O-modules) ook 8 bit breed moet zijn. De databus is bidirectio
neel en heeft een tristate aansluiting.
De adresbus is monodirectioneel en heeft een breedte van 16 bit, zodat 64k
plaatsen geadresseerd kunnen worden ( 216=65536=64k ). De adresbus van de
MCS6502 heeft een TTL aansluiting. Omdat we bij deze bus geen tristate hebeen,
heeft dat tot gevolg dat de MCS6502 andere control-signals kent dan de Mc6aoo.
Resteert nog de controlbus. Deze heeft 10 lijn~n die diverse input-, output
signals voeren zoals interrupt-request, read/write enz.
Ret geheugen is als voIgt opgebouwd:
- 14k ROM 7 stuks MOS 2k HCS 6540 chips
8k illU1 16 stuks 1024 x 4 bit static RAM 2114
In de ROM bevindt zich de resident software. In de RA}1 kunnen we data opslaan.
De I/O vindt plaats met behulp van speciale interface logica:
- De MCS6520 is gelijk aan de Motorola Mc6820.PIA = peripheral interface adapter
De chip bestaat uit twee 8 bit I/O poorten. Deze PIA kent een aantal opera
tion modes: monodirectionele input/output met of zonder handshaking. Voor een
uitvoerige beschrijving verwijs ik naar de databoeken of naar lit.l.
- 6 -
Een van de twee aanwezige PIA's verzorgt de I/O met de cassetterecorder,
het toetsenbord en CRT. De andere PIA verzorgt de I/O volgens de IEEE 488
standaard.
De MCS 6522. Deze derde periferie chip is een uitgebreide versie van de
Motorola 6820. Deze chip voorziet in meer handshaking logica en in pro
grammeerbare timers. Deze I/O poort staat voor een door de gebruiker te
bestemmen doel ter beschikking. Zie lit.l of de databoeken.
Hiermede zijn de belangrijkste bouwstenen aan de orde geweest. Vermeldens
waard zijn de mogelijkheid om een tweede cassette-recorder aan te sluiten
op een daarvoor bestemde connector en de mogelijkheid tot geheugenuitbreiding
met 24k via een connector zodat S-lOO geheugeneenheden aangestuurd kunnen
worden.
1.2 De periferie
Tot de ingebouwde periferie behoren een cassetterecorder, een beeldscherm en
een toetsenbord. Een aantal aspecten worden in het kort toegelicht.
De cassetterecorder:
Deze recorder maakt het mogelijk om programma's en data op band op te slaan,
zodoende een extern geheugen vormend.
Een van de bezwaren tegen het inlezen van cassettebanden is de lange access
time; vooral bij geb~ik van banden die vele files bevatten. Verder wordt
door het Operating System 7,5 sec gewacht voordat data geregistreerd wordt.
Het opzoeken van de file-header kan dan ook tientallen seconden duren.
Door middel van programmatuur wordt de betrouwbaarheid van dataoverdracht
verhoogd door de programma's tweemaal te laden. De data-rate wordt daarmede
gehalveerd tot 500 Baud. We gaan uit van het volgende 12 bits dataformaat:
1 bit ASCII, 1 bit pariteit, 1 start en 3 stop bits. Voor de overdracht van
een byte is derhalve een tijd nodig van 24 msec.
Dit betekent dat het inlezen van een 4k programma ca. 100 sec zal duren.
Dus voor grote programma's en datablokken moet men uitwijken naar snellere
periferie indien de tijd van belang is. Wellicht zal de aangekondigde floppy
disc hier uitkomst kunnen bieden.
Ret beeldscherm:
Het betreft een standaard 23 cm zwart-wit CRT. De capaciteit is' 1000 tekens
( 25 regels met 40 tekens per regel ) waarbij ieder teken door middel van een
8 x 8 dot-matrix voorgesteld wordt.
De aansturing van het scherm vindt plaats vanuit een karakter-generator, die
- 1 -
in een ROM zit. De ROM kan 256 karakters genereren:
64 ASCII karakters , ten gevolge van het inverse karakter wordt het dan
128 karakters,plus een restant. Dat restant bevat ook nog kleine letters
a tim z, waarbij de grafische tekens op de letter-toetsen dan niet te ge_
bruiken zijn. Door een POKE instructie kunnen we de kleine letters oproepen.
Het vermoeden bestaat dat het resterende deel van de ROM het griekse alfabet
en kantoormachine-symbolen bevat.
Het toetsenbord:
Het toetsenbord is gescheiden in twee delen. Een veld is voor letters en
grafische tekens en een veld is voor cijfers en enkele grafische tekens.
Dit numerieke toetsenbord heeft men gemaakt om data sneller in te kunnen
voeren.
De PET 2001 is voorzien van een IEEE 488/1915 interface bus. Apparatuur die
aan deze standaard beantwoord,kan op deze bus aangesloten worden. Zodoende
kunnen we een data-ac~uisitie systeem opbouwen.
Voor de bediening van het PET systeem verwijs ik naar het 'Grote PET Boek'.
8BITDATABUS-A ...
-..,.
11 n JL..
r--,- I I I O'·DEVI (ES~
prog, ... I 1
(P U ROM RAM I/O-BUg ,I I 0 .... I
I,
t-- .J
11 ft Tf controA
...~ ) 16 BIT ADRES BUS
I (ONTROL LINES -. v
fig,1,1.-1 a rc hi t gC tuu r microcomputer
- 8 -
2. System software
Een van de kenmerken van het PET 2001 systeem is de aanwe~igheid van een
8k ~te BASIC-interpreter in ROM.
Ret PET 2001 systeem kan dus programma's verwerken, die in een hogere pro
grammeertaal geschreven zijn. Na een korte toelichting over programmeertalen
wordt de software van de PET beschreven.
2.1 Programmeertaal
Mede omdat het werken in machinetaal praktisch ondoenlijk is, zijn andere
programmeertalen ontwikkeld. Op grote schaal wordt de machinegerichte taal
Assembly toegepast.Deze taal vereist een goede kennis van het systeem omdat
de instructies een directe afspiegeling zijn van de mogelijkheden van het
systeem. Voor de diverse fabricaten in microcomputers zijn evenzo vele
versies van Assembly taal ontstaan. Omdat microcomputers voortkomen uit de
hoek der elektronica, waar dus veel hardware kennis is, geniet Assembly
vaak de voorkeur. Van de zijde der software deskundigen is men meer gericht
op de machine onafhankelijke talen.
De middelhoge programmeertalen ( Macro's) zijn vrij recent ontstaan als
een compromis tussen de lage en hoge programmeertalen in. De macro-taal is
nauw verbonden met de gestructureerde programmeertechnieken.
De hoge programmeertalen hebben dus, zoals eerder gezegd, tot voordeel dat
geen preciese kennis' van de microcomputer nodig is.
Een toch wel belangrijk minpunt van hogere programmeertalen is, dat zij in
het algemeen niet zo'n efficiente programma's toelaten. Er is dus meer ge
heugen nodig.
Voor een uitgebreide beschouwing over de voor- en nadelen verwijs ik gaarne
naar de literatuur. Lit.3 en lit.4.
De gebruikelijke hogere programmeertalen zoals FORTRAN, COBOL, PASCAL en
PL/l zijn te omvangrijk voor microcomputers en bevatten geen faciliteiten
voor direkte regeling van I/O organen.
Er zijn een aantal 'kleinere' hoge programmeertalen ontwikkeld zoals PL/M.
Deze hebben het nadeel dat zij meestal alleen voor systemen van een bepaald
fabrikaat geschikt zijn. Een uitzondering daarop is BASIC.
Ret nadeel van BASIC is de trage verwerking vanwege het interpreteren. Toch
wordt BASIC steeds meer toegepast omdat de taal eenvoudig is en gemakkelijk
te gebruiken.
Ret lijkt mij zinvol nu even stil te blijven staan bij het begrip interpre
ter.
!language
- 9 -
Wat wordt met een interpreter bedoeld? Een taal moet equivalent zijn met
een processor-definitie en vice versa. Bijvoorbeeld: een definitie van een
machinetaal definieert de hardware die hem begrijpt en ook omgekeerd.Lit.3.
Om een taal te realiseren voor een bepaalde hardware zijn er twee methoden:
- de taal omzetten in de machinecode voor de gegeven hardware
- de hardware de taal laten 'begrijpen'.
De tweede methode kan verwezenlijkt worden door software, die resident
aanwezig is in de hardware. Deze noemt men de interpreter. Zie fig.2.1.-1.
De eerste methode gebruikt een'translator'.
~anslator~L_~-----J.rs-- ~hard'r/are
interpretE'rfig~2.1.-1 relatie tussen interpreter en translator
Door middel van de interpreter kan het systeem de hoge programmeertaal accep-
teren als zijn machinetaal. Nadeel is dat programma's vertraagd worden ver
werkt door de interpretatieve methode. Bij een translator worden de program
ma's eerst geheel vertaald en pas dan wordt het verwerkt.
Een ander nadeel van de interpreter is dat er permanent een programma in
de hardware aanwezig moet zijn. Bij de PET 2001 is de interpreter in ROM
aanwezig, zodat niet eerst ingelezen behoeft te worden zoals bij sommige
systemen het geval is ( 8k Byte~ ).
Een voordeel is dat een interpreter relatief eenvoudig te schrijven is en
bestaande programma's kunnen op nieuwe hardware verwerkt worden door de in
terpreter aan te passen.
2.2 BASIC
Een grote gebruikersgroep van microcomputer~systemenbestaat uit technici
of academici, die geen professionele opleiding tot programmeur hebben genoten.
Zij gebruiken een systeem als hulpmiddel om snel korte berekeningen te maken
of om snel data te kunnen analyseren. De taal moet derhalve eenvoudig zijn.
Omdat een algemene programmeertaal, die de spreektaal benadert, zich gemak
kelijker eigen te maken is heeft men BASIC ontwikkelt. Studietijd ~ 16 uren.
Ret woord BASIC is een afkorting van Beginner's All-purpose Symbolic Instruc
tion Code.
BASIC is een op het engels gerichte taal die voor allerlei doeleinden ge
bruikt kan worden.
Van de tijd die nodig is om programma's te maken, kan niet veel gezegd wor-
- 10 -
den. Dit is afhankelijk van de ervaring van de programmeur en van het pro
bleem dat om een oplossing vraagt. Een'goede'gebruiker heeft twee tot vier
. maanden nodig om een programma te maken van ongeveer 3k Byte ( lit.5 ).
In de praktijk is gebleken dat de meeste programmalengten liggen tussen
0,5 en 4 kByte. Zie lit.4 op bIz. 107.Roewel BASIC een algemene taal is, zijn er toch weer enkele versies ontstaan.
De basistaal is het Dartmouth-BASIC, maar hierop zijn uitbreidingen gemaakt
die systeem gericht zijn.
Zie bijlagel voor een vergelijking van Dartmouth-BASIC en hetBASIC voor de
PET 2001.
Indien men de diverse BASIC versies vergelijkt, dan treft men behalve enkele
verschillen in symbolen-gebruik de meeste verschillen aan bij de I/O opera
ties. Bij gebruik van programma's op een ander systeem dan waarvoor ze ge
schreven zijn, behoeven deze programma's meestal geen rigoureuze verandering
en te ondergaan.
Ik zal in dit rapport geen cursus in R~SIC opnemen omdat 'Ret Grote PET Boek'
reeds voorziet in een eenvoudige cursus die als introductie kan dienen. Ik wil
weI een literatuur opgave vermelden:
- Albrecht, R.L. en Finkel L. en Brown J.;R~SIC. Wiley and Sons, New York,1973.
Dit is een boek dat als geprogrammeerde cursus voor zelfstudie kan dienen.
Een goede eenvoudige cursus die geen programmatuur ervaring vereist.
- Farina, M.; Flowcharting. Prentice Hall inc., Englewood U.S.A., 1970.
Een boek dat vrij summier de beginselen behandelt.
- Amstel, J.J.van; basic. EIT dictatenserie nr. 3, Academic Service, Den Haag,
1976.
Een cursus waarbij de nadruk ligt op de syntaxis van BASIC. Programmatuur
ervaring is wenselijk.
- Rubin, W.N.; BASIC Programming for Scientists and Engineers. Prentice Hall
Inc., Englewood U.S.A., 1978.
Een boek dat geschikt is voor zelfstudie en vele opdrachten en voorbeelden
bevat.
2.3 Resident software
In het algemeen kunnen we software in twee groepen indelen: de gebruikers
en de systeemprogrammatuur. Zie fig.2.3.-1.
De gebruikersprogrammatuur is weer onder te verdelen in bron-, object- en
werk-programma's. In hoofdsttL~ 3.5 komen we hierop terug.
- 11 -
De systeemprogrammatuur kan vervolgens weer in twee deelgroepen ingedeeld
worden: de resident- en de cross-software.
Omdat momenteel nog geen sprake is van gebruik van cross-software voor het
PET systeem, laten we deze deelgroep verder onbesproken.
(8) Pauwels, ir.F.P.C.; Systeem- en ontwikkelingsprogrammatuur. In: Afdelingsleergang Microcomputers, vakgroep Schakeltechniek van de afdeling Elektrotechniek THD, Delft, Technische Hogeschool, 1977, page71-92.
(9) llenbach, Dipl.-Ing.F.; Strukturierte Programmierung auch bei Microcomputer. Elektronik, Sonderheft 11, Mtinchen, 1977, page 118-123.
(10) Havermans, G.M.J.; Handleiding voor het prakticum Digitale Rekenmachines. Technische Hogeschool, Eindhoven, voorjaar 1976.
'~.
Bij1age 1
D = Dartmouth BASIC D P D PP = BASIC PET 2001
Rekenkundige operators: Statements:opte11en + + FOR v=e1 TO e2 STEP e3 x xaftrekken - - FOR v=e1 TO e2 x xvermenigvu1digen * * NEXT v x xde1en / / GOSUB S x xexponent t , RETURN x x
Re1atie operators: GOT TO S xkleiner < < GOTO xk1einer of ge1ijk <= .::=,::< RESTORE x xgroter :> ~ IF ere THEN S x xgroter of ge1ijk "'7= ) ::/=~ PAUSE xgelijk := :::: WAIT I,J,K xniet ge1ijk <) <:;> STOP x x
Logische operators: END x xAND x REM x xOR x IF ere GOTO xNOT x ON e GOTO x
Bib1iotheek-functies: ON e GOSUB xSIN ( X ) x x POKE I,J xCOS ( X ) x x SYS (I) xTAN ( X ) x x TI xATN ( X ) x x TIg xEXP(X) x x USR(X) xABS ( X ) x ~ Stringfuncties:LOG ( X ) x x ASC(X8) jfSQR ( X ) x x CHR$(I) xSGN ~ X ) x x LEFT$(X$,I) xEND X) x x LEN(X$) xINT ( X ) x x MID$(X$,I) xTAB ( I ) x RIGHT$(X$,I) xFRE(I) x STR$(X) xPEEK ( I ) x VAL(X$) xSPC ( I ) x Data dec1araties:
x DIM Z(e1) x xMatrix-statements: DIM Z(e1,e2) x x
MAT A = B x DATA n1,n2, •••••nm x xMAT C = A+B x Toekennings statements:MAT C = A-B x LET v=e x xMAT C = ~B x v=e x xMATC = (k)*B x DEF FNa(d)=e x xMATC = INV(A) x I/O statements:MATC = TRN(A) x INPUT v1,v2, ••• vn x xMATC = ZER x READ v1,v2, ••••vn x xMATC = CON x GET xMATC = IDN x PRINT x xHAT READ A,B,C x PRINT(string) x xMAT PRINT A,B,C x PRINT v1,v2 •••• x x
Commando's: OPEN xCLR x CLOSE xLIST x LOAD xRUN x VERIFY xNEW x c. MJ) "CONT SAVe. l<.x
Bij1age 2
MEMORYMAP PET 2001
RAM: 0000
0279
027Acassettebuffer 1
0339
033A cassettebuffer 21k 03FF
0400vrij voor gebruik
7k 1FFF
memory expansion
24k
ROM: 8000
operating system4k 8FFF
9000
interpreter
8k AFFF
BOOO
1k B3FFtestroutines
:8400
FBFF
FCOO
lk FFFFmonitor
Bijlage 3
STROOMDIAGRAM-SYMBOLEN volgens DIN 66001
~ proces, veer algeroeen gebruik
oDo·oo
>
-1o
C )
decision
subroutine
programmamodificaties ( preparation )
manual operation
input/output
flow line
junction
connector
terminal of interrupt
Bijlage 4
VOORBEELD VAN EEN STROOMDIAGRAM
3 - 6
JA .
15
S USR.
20
NEE
17 1 8
PROG RAMMA DOK.-NR.0:: origineel BLZ.
NAAM FUNK TIE H= herzien
/KOM MENT AAR
STROO MOl AGRAMNR . TEKST
..
L
-
,
PROGRAMM£UR DATUM VfRVOlG BlZ.
-
HERZIEN o OaF'{ DATUM lIE
P ROGR AMMA-NAAM
BA SIC PROGRAMMA
PROGRAMMEUR
LLLI I I I_I I I J I I I I I·' I I f I I ILl I I I I I I I
Standard-BASIC-AnweisungenZLJordnulJg (kann weggelassen werden)READ liest Daten (numerisch oder alphanumerisch) ins Programm, welcheunter DATA abgelegt sinderlaubt logische Verglelche (wenn ... dann)ermbglicht SchleifenSprungbefehlAusgabe auf den Bildschirm; ZeilenvorschubDimensionierung von Feldern (Arrays)letzte Anwelsung eines Programmes
Erweiterte BASIC-Anweisungen .ermoglicht mehrfaches Lesen von DATAerlaubt Zwischentext (Bemerkungen) im Programmmehrfach gebrauchte Programmteile kbnnen alsSubroutine gerufen werdenfur berechnete Verzweigungenfur berechnete SubroutinenEingabe von Werten von der TastaturDefinition von Funktionen, welche dann beliebig oft im Programmaufgerufen werden kbnnenBestimmung der Schrittweite in FOR-NEXT-Schleifen
'akzeptiert einzelne Zeichen von der Tastaturbeendet ein laufendes Programm
Systemanweisungenstartet ein Programmloscht den ArbeitsspeicherIbscht aile Variablen (einschlieBlich Dimensionierung)setzt Programmausfuhrung forterstellt eine Liste des Programmsergibt die Anzahl freier Bytes 1m Programmspeicher
r
SGNINTABSSOR
. SINCOSTANATNLOGEXPRND
LEFTZRIGHTSMID$CHR$ASCSTRSVALLEN
SPCTABpas
Funktionenermittelt das Vorzeichenergibt den ganzlahligen Anteil elner lahl!iefert de" Absolutwert einer lahlermittelt die OuadratwurzelSinus elnes Winkels (WinkelmaB Radianten)l< ..,OSlnusTangensArcus Tangensnaturlicher Logarithmus einer lahlPotenz zur Basis e (e = 2.718 ... )liefert Pseudo-ZufallszahlenWert 1t. ist fest gespeichert
String-(Zeichenketten-) FunktionenAus einem String kbnnen genau spezifizierteSubstrings (Teile des ursprunglichen Strings)herausgenommen werdenwandelt ASCII-Codes in leichen umwandelt leichen in den entsprechenden ASCII-Codewandelt lah!en zu lahlenstrings .wandelt lahlenstrings zu normalen lahlenermlttelt die tatsachliche Lange eines Strings
Formatierungsanweisungenbringt eine spezifizierte Anzahl LeerzeichenTabulatorermittelt dIe nachste verfugbare Druckposition
Logische OperatorenAND Verknupft 2 Werte mit der UND-FunktionOR Verknupft 2 Werte mit der ODER-FunktionNOT Negation
Maschinensprache-AnweisungenPEEKPOKEUSRSYS
liest einzeln'e "Bytes aus dem Speicherspeichert einzelne Bytes in spezifizierte Adressen
verbinden das BASIC-Programm mit der Maschinensprache
OPENCLOSESAVELOADVERIFYPR.lNT#INPUT#GET#CMD
Input-Output-Anweisungen
DatelerbffnungSchlieBen eines BlockesSpeichern eines Programmes auf der KassetteLaden eines Programmes von der KassetteVergleichen des Spelcherinhaltes mit dem FileWie Print, jedoch auf Gerat #Wie INPUT, jedoch vom Gerat #Wie GET, jedoch vom Gerat #Hauptanweisung fUr Verkehr mit Geraten am IEEE-Bus
Variable'.
ABC ... AA AB AC ... AO A1 A2 . . . r'\Einfache Variable mit voller Genauigkeit und einem Speicherplatzbedarfvon 5 (bzw. 7) Bytes
A% B% ... AA% AB% ... A1% A2% ...Ganzzahlvariable mit einemBereich von -32000 bis +32000 und einemSpeicherplatzbedarf von 2 Bytes
A$ B$ ... AA$ AB$ ... AO$ A1$ ...String (Zeichenketten) variable mit einem Speicherplatzbedarfvon 1 Byte/Zeichen
Bei allen 3 Variablenarten sind mehrdimen,sionale Felder moglich
SpezialvariableTITI$ST.
durchlaufende Zeit in 1/60 s-Einhelten, quarzgenauTageszeit in Stunden, Minuten, SekundenStatus von PeripheriegeriHen
Bijlage 8
ELEMc."""'NTEN VAN BEN STRUCTOGRAM
A A
B
c
nee
HerhA.al ~ "1." L.c:ll.n~e r
tA.An conolitie worolt:voLo(AAn
c
J)
nee
E.J>
Bijlage 9
Programma structuren
Oe----
Modulair opgezet programma
Programma met boomstructuur, opgezet met structogram
AFDELING DER E1.J:!J"KTROTECHl'UEK
TECHNISCHE HOGESCHOOL
EINDHOVEN
Vakgroep l1eten en Regelen
MEETSYST.s'Et-1 HET DE
MICROCOHPUTER PET 2001
door P.M.J. Verberne
•
Deelrapport van het afstudeerwerk
uitgevoerd van medio september 1978 tot maart 1979in opdracht van prof.dr.C.E. }fulders
onder leiding van ir.R.G. van Vliet
- 2 -
Samenvatting
Uit de onderz~ekslijnen, die bij het onderzoek naar de toepassing van
microprocessors naar boven zijn gekomen, heb ik gekozen voor het realiseren
van een modern meetsysteem.
De IEEE-488 standaard valt niet meer weg te denken uit de meettechniek.
De implementatie van deze standaard op de PET 2001 maakte deel uit v&~
mijn onderzoek.
In-dit deelrapport heb ik beschreven op welke wijze een meetsysteem ontwor
pen en opgebouwd kan worden.
Ik heb aangetoond dat het beoogde doel, het verwezenlijken van een intelli
gent meetsysteem met IEEE-488 bus structuur, mogelijk is.
Bet onderzoek heeft geleid tot een goedwerkend intelligent meetsysteem met
een configuratie, die gebaseerd is op het microcomputersysteem PET 2001.
Bet bleek ook noodzakelijk te zijn de PET 2001 hardware uit te breiden voor
het testen van programmatuur.
Measuring system based on the microcomputer PET 2001
SUmmary
- --Searching-for mIcroprocessor applications in measurement has led to research
lines, from which I have chosen a modern measuring system.
The IEEE-488 standard can not longer be ignored when dealing with measuring
-systems.
The IEEE-488 implementation on the PET 2001 formed part of my research.
A description is given of the design and the set-up of a measuring system.
I demonstrated that it is possi~le to set up an intelligent measuring system
with an IEEE-488 bus structure based on the microcomputer system PET 2001.
It was necessary to make a hardware expansion of the PET 2001 for the testing
of software.
- 3 -
Inhoudsopgaveb1adzijde:
11
21
31
4
5
\
Inleiding
1. De IEEE 488 - 1975 Bus1.1 Beschrijving van de bus1.2 Co~~unicatie via de bus1.3 Kenmerken van de bus
2. Meetsystemen__ 2.1 Opbouw
2.2 Het adresseren2.3 System operations
3. Gerealiseerd meetsysteem3.1 Ontwerp van een meetsysteem3.2 Operation
4. De microprocessor MCS 65024.1 Aspecten v~~ het MCS 6500 systeem4.2 Pinout van de MCS 65024.3 Programmabesturing
5. Een systeemuitbreiding- 5.1 Statisch testen. 5.2 D,ynamisch testen
_. __ .__ 5.•.3._~fer interface\
Conc1usies en aanbevelingen 36
-----lri-t€ratuur1ijst 37
Bij1agen: 1 Voorbeeld van een meetsysteem2 Stroo~diagram IEEE 488 communicatie3 Systeemstructuren
De spreker zet de data byte op de databus. Nadat de traagste luisteraar
zich gemeld heeft ( N~D , tl ), maakt de spreker de data geldig ( DAV, t2 )
en wacht totdat de data geaccepteerd wordt. De luisteraar(s) zijn nu bezig
. en kunnen geen nieuwe data. byte ontvangen ( NRFD, t3 ). Nadat de snelste
luisteraar de data ontvangen heeft ( NDAC, t4 ) en ook de traagste luisteraar
dit gemeld heeft ( NDAC, t5 ) kan de spreker de data weer ongeldig maken
( DAV, t6 ). De luisteraars maken zich wee gereed om nieuwe data bytes te
ontvangen ( NDAC, t8 ). De spreker kan weer een nieuwe data byte op de data
bus zetten ( t7 ). De snelste luisteraar meidt zich weer gereed ( NRFD, t9 )
tot aan de traagste luisteraar ( NP~, tlO ). En het beschreven proces her
haalt zich dan weer.
1.3 Kenmerken van de bus
Tot slot wil ik puntsgewijs nag eIL~ele facetten van de bus bespreken.
- Een van de grootste bezwaren, die geuit kunnen worden tegen de standaard,
is het ontbreken van een norm voor de software. De code en het form3.at van
de berichten worden momenteel door de fabrikanten zelf bepaald. Zie lit.6,5 •
- De gebruikte kabels moeten samen een lengte in meters hebben, die kleiner
,
DI 0 1-8 <. FIRST DATA B1JTE X i S~COND DATA BIJ TE/
7
H r-r~ f··; .-I ,,,l 1 ,
NRFD l !! 1 I I
I
H t:1/ I 1/ t 'II J - I r j\0
DAV I I
L
H~···;-T t ~r-r
NDAC I I! I
L ! ;, S
FIG.1.2~1 TlJDVO LCiORDE DIAGRAM I EEE-4'8~•
-10 -
is dan 2 x aantal app~-aten, vaarbij ~e EaXimale kabellengte gelimiteerd is
op 20 m • Voor grote afstanden is dus een koppeling ( interfacing ) nodig
met de PDV-bus ( Projekt Prozesslenkung mit Datenverarbeitungsanlagen ).
Deze interfaces zijn neg niet als bouwsteen in de handel. Deze interfaces
zijn zelf vaak van een microprocessor voorzien vanNege de complexe f~~ctie.
-.Bet data forrnaat is byte-serial, bit-parallel. Voor de codering gebr~ikt
men de ASCII code. Ret 8-bit binaire woord vormt een byte, die via de 8 pa
rallelle lijnen verzonden wordt. TIe bytes worden achtereenvolgend ( serial )
verzonden. De data transfer geschiedt asynchroon, hetgeen een flexibele
systeemopbouw toe staat.
- Ret formaat is vrij. Ret ene instrument verzendt data in floating point
fonnat en een ander weer in fixed point formaat. Ook de 'ranges' van de in
strumenten hebben andere coderino-en en data formats.
Ondanks deze nadelen zijn de voordelen voor de systeemopbouw veel talrijker
en belangrijker. Er wordt gewerkt aan een herziening van de standaard. Zie
lit.6 • •
- 11 -
2. Meetsystemen
2.1 Opbouw
Aan meetsystemen worden steeds meer eisen gesteld, zodat de niet-intelligen
te systemen op de achtergrond gedrongen worden. Op het Interkama Kongress '77hebben o.a. f1UCKLI en K~LL de nieuwe tendens aangegeven. Zie lit. 7.Enkele wensen en eisen waaraan voldaan moet kunnen worden:
- Metingen moeten gevoeliger en nauwkeuriger verricht worden. Men kan dit be
reiken door meetgegevens te vergelijken met andere metingen en de voorge
schiedenis er bij te betrekken.
- Verwerken van grote aantallen meetgegevens, die pas door hun totaliteit de
gevraagde informatie opleveren, terwijl enkele meetgegevens maar een be
trekkelijke waarde hebben.
- Overdracht van meetgegevens over grote afstanden. Dit wordt veroorzaakt
door verspreiding van de te meten en te testen objekten.
Bet verrichten van metingen op tijdstippen en met een regelmaat die beiden
in te stellen zijn.
- Bet vaak en snel testen van systeemcondities.
Bet testen van complexe onderlinge ,afhankelijkheden, waarbij afzonderlijke
metingen niet mogelijk zijn ( indirekt meten ).
- Flexibiliteit van de meetopstelling omdat de metingen en meetobjekten vaak
"kunnen wijzigen.
- ~~etsystemen moeten gemakkelijk te onderhouden zijn en vooral 'overzichtelijk
blijven.
Een oplossing voor zulke meetsystemen is aIleen denkbaar met intelligente
meetsystemen. Hieronder worden dan systemen verstaan, die opgebouwd zijn met
micro- en/of minicomputers. Men is vaak geneigd om een krachtiger minibased
systeem te nemen, terwijl dat economisch niet verantwoord is en men met een
microbased systeem kan volstaan.
Om aan bovenstaande eisen te kunnen voldoen, moet de opbouw van het meetsy
steem geschieden met van elkaar onafhankelijke modulen, die gekoppeld kuIL~en
worden via een bussysteem. We kunnen de keuze voor een busstructuur aanneme
lijker maken door een afweging van voor- en nadelen van diverse systeemstruc
turen. In lit. 8 worden de structuren besproken. Op deze plaats wil ik enkele
punten naar voren halen.
De noodzaak van een systeemstructuur vindt deels zijn oorzaak bij de lokale
data-acquisitie en deels bij test/meetsystemen.
-- 12 -
Er.zijn diverse structuren mogelijk, zoals bijvoorbeeld: buss truc tuur,
netstructuur, sterstructuur of mengvormen zoals net-sterstructuur. Op bij-
- lage 3 staan enkele structuren getekend.
De andere structuren zijn ten opzichte van de busstructuur gecompliceerder
en kunnen vaak niet met een controller toe. Doorgaans is de systeembetrouw
baarheid minder ten gevolge van afhankelijkheid van de modulen onderling.
Er is meestal meer apparatuur en bekabeling nodig. Voordeel is dat de
snelheid groter is omdat de modulen onderling meer communicatielijnen hebben.
Fig. 2.1.-1 laat een voorbeeld zien van een intelligent meetsysteem zonder
busstructuur. Fig. 2.1.-2 toont een meetsysteem met busstructuur.
De moderne meetsystemen hebben tot voordeel dat systeemontwikkeling een
voudiger is, doordat de apparatuur als het ware plug-in units zijn.
Hierdoor zijn veranderingen in de opstelling en van de funkties ook gemak
ke1ijker te implementeren.
Verder is de betrouwbaarheid van het moderne meetsysteem groter omdat de
modulen ( apparaten ) onafhankelijkzijn.
Natuurlijk is het economische voordeel door -de besparing op bekabeling. Dit
___.~~e_~~_d~re_kt~ok e~n na.~e~l__~~t _gevole;.• AIle c(:)Inmun~catie moet_over die ene
kabel ( Bus ) plaats vinden. Dit v~gt om voorzieningen, opdat oproepen
----¥an· modulen door de-controller herkentkunnen worden ( polling: ). -
Zoals uit het vorige hoofdstuk is gebleken, biedt de IEEF. 488 standaard
bus hiervoor een uitkomst.
Hoe kan men een meetsysteem ontwerpen en.opbouwen? Bij het ontwerpen van een
meetsysteem blijkt het handig te zijn enkele regels te volgen:
1 ProgrammaontwiY~eling. In de analyse van het probleem worden ook de te ge
bruiken modulen betrokken en wordt de meetprocedure vastgelegd. In mijn
vorige deelrapport staan richtlijnen voor het schrijven van programma's.
Zie lit. 9.2 Adressering. De te gebruiken apparatuur krijgt adressen toegewezen. Ret
is vaak nuttig deze adressen te tabelleren. In paragraaf 2.2 kom ik terug
op het adresseren. Tabel 2.1.-1 laat een voorbeeld zien van een 'address
assignment table'.
3 Set-up. Ret setup diagram toont de configuratie van het meetsysteem. In net
setup diagram worden de modulen ( apparaten ), de kabelverbindingen e.d.
vermeld. Fig. 2.1.-3 laat een voorbeeld zien van een setup diagram.
Bij de set-up hoort verder een'setup manual'. In deze manual vermelden we
- 13 -
de aan te brengen verbindingen ( soorten kabels ) en gebruik van speciale
plug-ins voor apparaten ( bus interface cards ). In de manual komt verder
te staan welke frontpaneel funkties wel lokaal ingesteld moeten worden
en wat de instelwearden zijn. Vaak moeten signaalniveau's met de hand
ingesteld worden.
Het opbouwen en uitvoeren noemen we 'measurement operation'. Bier kunnen we
een aantal punten onderscheiden:
1 Assemblage. Het meetsysteem wordt opgebouwd aan de hand van het.setup dia
gram en van de manual.
2 ~rogramma invoer. Het pro~~ wordt ingelezen. Dit kan op verschillende
manieren, bijvoorbeeld via het toetsenbord of een cassetterecorder.
Eij een nieuw programma zal er meestal nog een programma verificatie moeten
plaats vinden. Zie lit. 9 voor program editting en debugging bij de PST.
3 Programma executie. Het programma wordt ten uitvoer gebracht ( RUN ).
H-P l862A H-P 8660B subject H-P 3490Aplotter signal "- under "- DVI~
~ ....generator test
fig. 2.1.-3 setup diagram
iI
\ \
\\
CONTRoLLEn rAnT
, : :
J . i j
.. I I,
DIGITAL I ; SCDJECt' Uf\OEn rRoaRA~NEm.E
VOLT~ETER 'fEST pO'ir.n SUVrLY
. -.., I, I
PRISTER
• ..i
FIG. 2.\-1 MEETSYSTEEM ZONDE~ BUSSTRUCTUUR
.. '"
~~
I
('
,.
\
. ,
nus1
I
. , ., .. . . .
CO~TROtLER r,\RT
· ... , . .. .
DICITAL Sl:BJECT U"OER PR(,CRA"~IEU1.t
VOLT~E:TER TEST PO\;E Il St!l't'LY
-
·• .
PRIST£R ... ,
·.
FIG, 2. 1.-2 MEETSYSTEEM MET BUSSTRUC.TUUR
II..JV1
- 16 -" .
..-.~2.2 Ret adresseren
Bet IEEE 488 systeem heeft een bijzondere adresserings methode voor het aan
roepen van de sprekers en luisteraars. Ik zal de methode hier toelichten.
Aan iedere module ( apparaat ) in het systeem worden adressen toegekend.
--Daarbij kan een module een spreekadres of luisteradres ofwel beide adressen
hebben. Een module kan bijvoorbeeld via het luisteradres geprogrammeerde
instructies ontvangen en via het spreekadres data verzenden.
Ret komt ook voor dat een apparaat twee lUiste~- en/of twee spreekadressen
heeft. Via het ene luisteradres worden dan b.v. geprogrammeerde instructies
ontvangen en over het andere luisteradres data. Ret is ook mogelijk dat een
apparaat de data in verschillend formaat kan verzenden via de verschillende
spreekadressen. Dergelijke apparaten hebben dan vier in te stellen schakelaars
nl. A5 t/m A2. De adresinstelling met schakelaars bespreek ik verderop.
Veel apparaten hebben verder nog een schakelaar waarmee een 'addressable mode'
"resp. een 'talk-only mode' of 'listen-only mode' kan worden ingesteld. Bij
meetsystemen waarin een controller is opgenomen, IDoeten de apparaten in de
addressable mode gezet worden.
__ -Ret adres -bestaat uit een 7-bit-binaire-code.-Het zesde en-zevende bit van de
code bepalen of we te maken hebben met een spreek- of luisteradres. De eerste
-viJrbits ~lijzen het apparaat aan.
De IEEE 488 standaard bevat weI een lijst met coderingen van bus berichten,.maar legt niet vast hoe dat gecodeerd moet worden. In tabel 2.2.-1 staan ter
illustratie een viertal berichten opgenomen.
mnemonic message DID 8 - 1 ~andshake mana.gement
DAB Data Byte D8 D7 D6 D5 D4 D3 D2 DJ x x x 0 x x x xLAG Listen Address Group x 0 1 x x x x x x x x 1 x x x xTAG Talk Address Group x 1 0 x x x x x x xx 1 x x x xUNL Unlisten x 0 1 1 1 1 1 1 x x x 1 x xxx.
De PET 2001 wordt met een ASCII bus kabel verbonden met de H-P 5345A.De H-P 5345A is een electronic counter, die indien voorzien van option 011,
geschikt is voor COmIDlLiicatie via d~ IEEE 488 bus. Het te testen apparaat
wordt via een afgeschermde kabel aangesloten op channel A v~~ de H-P 5345A.Voor het te testen apparaat nemen we bijvoorbeeld een RQ-oscillator Peekel 23A.
--~kaal moet de Level Control, de Slope svdtch, Input impedance switch en de
Attenuation switch ingesteld worden in overeenste~~ingmet het aan te bieden
ingangss i gnaal •
. Bv.Level in de midde~stand bij een 0,5 v AC signaal;
Slope + ; 1 Mohm ; ATTEN 1 X •
3.2 Operation
3.2.1 Assemblage
llet meetsysteem wordt opgebouwd aan de hand v~~ het setup diagram ( fig. 3.1.-2 )
en zoals voorgeschreven in de setup manual.
3.2.2 Pro~~ invoer
Het werkpro~amma heb ik op cassette gezet. Het cassette-bandje kan ingelezen
worden via de cassette-recorder, die bij de ingebouwde periferie van d~ PET
hoort.
3.2.3 Executie
Bij de executie van de progra~a's voor dit meetsysteem heb ik een aantal
onvolkome~~eden ~~~en constateren.
~likele van de eerste: problemen, de excessive gate time en de tijdslimiet
in de h~~dshaking, heb ik door middel van software routines ~~en aanpakken.
- 26 -
Deze routines zitten in het ter bescpikking staande werkprogramma.
Er zijn~og problemen met de operating modes van de H-P 5345A. nit betreft
dan het wachten van de H-P 5345A in zijn output phase en de gate time die
groter moet zijn dan 10 msec. Onderzoek op deze punten is niet eenvoudig
met een busanalyzer te doen omdat de PET een tijdslimiet van 65 msec in zijn
handshaking kent.
De meetwaarden worden in dit programma in floiting-point notatie ingelezen,
het is echter interessant om de andere notaties te implementeren.
Al met al mag toch wel de conclusie getrok~en worden dat met de PST als
controller/calculator een geed werkend geautomatiseerd meetsysteem op ~e
bouwen is. Zie verder het hoofdstuk Conclusies en Aanbevelingen.
,
- 27 -
4. De microprocessor MCS 6502
Eij het bespreken van de testschakelingen voor het p~~ 2001 systeem ga ik
er van uit dat de lezer de MCS 6502 kent. Diegenen, die bekend zijn met
de MCS 6502, kurL~en dit hoofdstuk overslaan. Ik zal hier in het kort enkele
punten van de MCS 6502 bespreken; voor een uitgebreide bespreking verwijs ik
graag naar de databoeken en lit. 11, 12.
4.1 Aspecten van het HCS 6500 systeem.
Onder het MCS 6500 systeem verstaatMOS Tec~~ology een systeem, dat opgebouwd
is uit een produktenverzameling v~~ enkele tJ~en microprocessors, PIA's,
-. ROM's enz. Het PET 2001 systeem is in het deelrapport 'microcomputer-systeem
PET 2001' al eerder ter sprake gekomen. In dit hoofdstuk zullen we enkele
aspecten, zoals UQSstructuur, tL~ng enz. wat nader bekijken.
4.1.1 frQSstructuur
In het systeem onderscheiden we dri~ bussen: de adresbus, de databus en de
controlbus. De adresbilS is unidirectioneel en 16 bit breed. Deze bus ver
schilt van de adresbus van de Motorola Mc6soo.De instructieset van de microprocessor Mc6soo heeft een HALT-instructie. 3ij.
_.. h~t_uitvo~renyan de HALT-instr~ctie stopt de microprocessor na het.ceeindi-
gen van de in gang zijnde instrQctie. De adresbus is dan in de off-state,
want deze bus van d~ ~c6soo heeft een three-state uitgang. De Mc6soo geeft
door middel van een V}t~ ( valid memor/ address ) signaal aan dat het adres
geldig is.
De databus bestaat uit een 8-bit bidirectioneel datapad. De richting van het
datat~~sport wordt gestuurd door het READ/\iRITE signaal. L~dien R/W hoog
is, wordt data naar de microprocessor getransporteerd ( READ ). Indien R/W
laag is, wordt data van de microprocessor naar oa. het geheugen getrans
porteerd ( ~nuTE ).
4.1. 2 Timing
De timing van aIle datatransporten wordt bepaald door de systeem-klok. De
systeem-klok bestaat uit twee signalen, zogenaamde fase i ( ¢l ) en fase 2
( ¢2 ) kloksignaal. Cp bijlage 9 vindt u een clock timing diagram.
Gedurende de tijd dat fase 1 hoag is, verandert de adresbus en wordt stabiel.
Vervolgens wordt gedurende de tijd dat fase 2 hoag is de data getranspor
teerd. De tijddiagra~uen voor het lezen en schrijven van data vindt u even
eens op bijlage 9•
....
- 28 -
A.I.3 System reset
Een power-on- circuit genereert automatisch een reset signaal. Hiermede wordt
bet systeem opgestart volgens een vaste procedure o~dat de inhoud van latches,
registers enz. in het gehele systeem random data bevatten."-
Voar een microprocessor betekent dit, dat de progra~ateller een bekende in-
boud moet krijgen. Deze inhoud moet de eerste instructie v~~ het systeem-pro
gramma zijn. Een andere belangrijke functie van de system reset is het voor
komen dat de microprocessor interrupts van periferie interface devices krijgt
voor dat de interne registers van de microprocessor geinitieerd zijn.
4.2 Pinout van de MCS 6502
In fig. 4.2.-1 zien we de pinout van de MCS 6502 chip •
De uitgaande signalen zijn: system reset, RDY. Intern zijn er nog : display
enable en reset.
Bijlage 10 bevat de printuitvoering van de test schakeling, evenals een lijst
met de connector pin-funkties.
Bet is dus mogelijk, zoals we in hoofstuk 4 gezien hebhen, om de microproces
sor te stoppen door de RDY-lijn laag te maken. Hiervoor moeten we als voIgt
handelen:
de RUN/HALT schakelaar in de HALT stand zetten
door de single step schakelaar te bedienen ( momentaan ), wordt de RDY-lijn
hoog voor het uitvoeren van een subcyclus ( step ).
De single step command kan de processor gedurende een WRITE subcyclus niet
laten stoppen. De schakeling laat we~ toe dat de processor in een WRITE sub
cyclus komt. De processor werkt deze subcyclus af en stopt in de eerst volgende
READ subcyclus. In de schakeling is ook een 'data trap' aanwezig waarmede de
-data~-( WRITE) gelatched en aangehouden wordt~gedurende de~volgende READ sub-
_____C!~~us. Een latch reset schakelaar geeft dan de mogelijkheid om de R&iD sub
cyclus uit te lezen.
De uitlees-schakeling bevat de latches, decoders en het display. Omdat de
databus 8 bit breed is en de adresbus 16 bit, hebben we voor de databus
2 hexadecimale displays nodig en voor de adresbus 4 hexadecimale displays.
De Texas Instruments TIL311 heeft een 4 bit latch, decoder, current driver
en hexadecimaal display geintegreerd in een chip.
5.1.2 Single instruction
De werking van de testschakeling voor single instruction is gebaseerd op het
feit dat de microprocessor een SYl{C-signaal genereert bij iedere OP CODE
fetch. Met behulp van dit SYl1C-signaal wordt de RDY-lijn gestuurd, zodat de
processor stopt bij een op code-adres op de adresbus en de op code op de data
bus. De processor wordt in de rL< toestand gebracht met behulp van de HALT
schakelaar en vervolgens kan men door de single instruction schakelaar te
bedienen ( momentaan ) aIle instructies onderzoeken.
De single instruction en de single step bieden dus de mogelijY~eid om de
programmatuur te testen. De beide test-faciliteiten zijn in eell schakeling
ondergebracht.
- 33 -
5.2 D.y.namisch testen
De dynamische testschakeling is vooral van belang indien er een systeemuit
breiding plaats vindt. Welliswaar is dat voor mijn opdracht niet aan de orde.
Veor de volledigheid is toch voorzien in een dynamische testschakeling.
°Dynamisch testen kan noodzakelijk zijn, omdat veel periferie pas volledig ge
test kan worden indien de microprocessor op 'volle snelheid' werkt.
We kunnen twee methoden onderscheiden:
- de microprocessor een eenvoudig lusprogramma te laten doorlopen. Ret is
niet noodzakelijk dat het gehele systeem al operationeel is.
- het sturen van de RES-, IRQ- of N}U-lijn van de microprocessor met een
signaalgenerator. Door RES-lijn sturing kan de timing van adres-, data- en
R/W signalen onderzocht worden. Door de IRQ- of 1~1I-lijn te sturen kan de
interrupt polling sequence onderzocht worden ( de huidige PET systeempro
grammatuur voorziet hierin niet ).
De hierboven genoemde signaallijnen ~en met behulp van een oscilloscoop
of analyzer onderzocht worden. Zie bijlage 10 voor de dynamic reset schakeling.
5.3 Buffer interface
De buffer interface zorgt voor bus-buffering van de MCS ?502. AIle gebufferde
---lijnen-hebben 3-state buffers. De databus is -reeds bidirectioneel uitgevoerd
ten gerieve van andere toepassingen dan de testschakeling. Voor gebruik vall
de testschakeling wordt ae databus aIleen uitgelezen, zodat we slechts RK~D
-- -van de DBB behoeven te enablen.
Fig. 5.3.-1 toont het blokschema van de buffer interface.
De gebufferde signalen en enkele microprocessor-signalen ( GND, RES, IRQ,
NMI en RDY ) staan ter beschikking van de gebruiker via een connector, die
achter op de kast van de PET is gemonteerd.
Bijlage 11 laat de printuitvoering zien van de buffer interface. Om demon
tage van de PET te vereenvoudigen, zijn aIle MCS 6502 signalen via connectors
van en naar de buffer interface geleid. In bijlage 11 zijn ook aIle connector
pin-fUnkties vermeld.
Tot slot wil ik vermelden dat aIle connectors van de PET yoor een tweede
cassetterecorder, de geheugenuitbreiding, de IEEE 488 bus, de User Port en
de eerder genoemde buffer interface sarnen zijn gebracht op een connector kast
achter op de PET-kast. Zie bijlage 11.
\I . "ysTf M /leSE,,
Reser . .~ >EE.et>(lNlc~-k- / 0 CIAC~/7
VI~
I
Will"'!! ~ <:1-= t.E~":.z;/J'j't.l1y ,fese T
•
"~ff.z
(//!!!.!..!-
::tJ~-6t>v,y ~E / ..ry4'cH,( . ...JYA/C ' .
CI"'C~/7I f.4TC
!
IIF c./,c/£E.d Ol/A-
) SYA/C¥.( :,cE .Tot .q~y~
Ch~~N"T \.")'N'c 'hPN. i . ( ffiTc ->(
~...~
9~Te--- / I
sy.vc..- r::yetE1J':7.1f4'o 7/~N
PIT L I:E.J" 13L?/JI hie I~,
('~ -'7 i't·..• ,.
\ "::Pop'-.9 y E,f/i'I.{3t £ .... r I Ii
:J \ I II..( i i- tA"/w " \ . \J I.::JJIS'p'.I9)" .I? & J € T \.,._. ~IjE.TEC 701('
YR rR fl.JJRes: •
,.f/w " !
~,
.ff.t ..Hi'll.,..:2ETEc.
~
.1'1
.J'/4.
L'i
-1:1 ~
FI,.. {'. t. - I STe.p clllOlt'lr
- 35 -
microprocessor periferieABB = address bus buffer
AO - A15 ..l\ AO - A15 ..,) if
v v
.eBB = control bus buffer
,phase 2 phase 4-. I'
sync sync..-t(
-...phase 1 phase 1
R/W . R/W.... ,
-- .READ.------_.
+5 v WRI~E I.,- - - .-- .. -.- - -
]IJ - D 7 .. -t>- .. DO - D7 ... ) II1\
'\J II
-<:J- 'l .
DBB = data bus bui'fer
t- tl.v v
BE.J
"'( + 8,5 V ruwe ge1ijkspanning )
• GND GND •
RDY RDY.. ~
fig. 5.3.-1 B1oY~chema buffer interface
- 36 -
Conc1usies en aanbeve1ingen
Met -de PET 2001 is het mogelijk om een intelligent meetsysteem op te bouwen•
.Ret voordeel van dit meetsysteem ten opzichte van een hard-wired meetsysteem,
is de grote f1exibi1iteit. Door de modul8,ire opbouw is het systeem eenvoudig
te wijzigen. De meetfunktie van het systeem is geimp1ementeerd in de gebruikers
progra.r.:rrnatuur, die dan aangepas t k.an worden.
Er resteren nog er.L~e1e punten,die OD nader onderzoek vragen:
De IEF.F'.-488 standaard is een hardware conventie.
Ret is nodig om zelf onderzoek te verrichten aan dataformaat en busberichten
ten behoeve van de PET 2001.
De software van de PET 2001 verdient op een drieta1 punten aanpassing:
de watchdog-routine verwijderen, po11ing-tecr~eken en service request
routine implementeren.
De onderzoeks1ijnen voor toepassing van microcomputers in de meettechniek
kunnen beiden voortgezet worden:
- Bet gebruik van de PET 2001 als microcomputersysteem ten dienste van ~~n
onderzoekprojekt. Men kan daarbij denken aa-~ signaa10pne~er, een AID omzetter
--- en -de-PET; by. de titreerautomaat.
- Onderzoek aan inte11igente meetsystemen. Bv. een meetsysteem met meerdere-- - - ~ ~-- - -- ~ - _.
sprekers en 1uisteraars en met de PET 2001 a1s controller/calculator.
Een waarschuwing is hie~ ook we1 op zijn p1aats. Er is een tendens te constateren,
waarbij prob1ernen verschoven worden van hardware naar software. De betekenis
en inbreng van de software wordt vaak foutief beoordeeld.
Men moet daarbij we1 bedell-ken dat de software van microcomputersystemen zich
nog in een aanvangsstadium bevindt. :De gebruikers van het microco::lputersysteem
moeten ze1f de programmatuur ont·NiY~elen. Omdat deze programma-ontwikkeling
evenzo geed kostbaar is, verdient het aanbev~ling om naast de door mij aangereikte
programmeer-methodiek ook aandacht te besteden -aan het ontwerpen van algoritmen.
Literatuurlijst
(1) Verberne, P.M.J.; l1icroprocessor in de meettechniek.Technische Eogeschool, ~indhoven, 1978.
(2) IEEE Standard Digital Interface For Programnable Instrumentation;IEEE Standard 488- 1975.The Institute of Electrical and ElectronicEngineers ,Inc. , New York, April 1975.
(~) Hewlett-PacY~ Interface Bus Users Guide.Hewlett-Packard Company,Santa Clara Calif. September 1974•
.(4) Getting Aboard The 488-1975 Bus Motorola Inc.,Geneve, 1978.
(5) Richter, M.; C~t on the IEC bus.Electronic Design, November 22,1976,pag.124-l27.
(6) IEEE-488 bus to get face-lift. Electronics,October 26, 1978,·pag.44-46.
(7). Muckli, Dr.-Ing. ~'I en Hall Dr.-Ing M.; neue T,1ege bei der Automatisierung von Mess- und prJfsy~temen.
In: Automatisieru....'1gstechnik im ilandel durch Hikroprozessoren,Interkama-Kongress 1977, Springer-Verla,g Eerlin-Heidelberg, 1917,pag.128-l43.
(8) Neunert, Ing.(grad.) H.; Systemtehnik mit r1iY~ocomputern.
In: Elek~roni~, Heft 10, 197~, _p~g.39l-395.
(9) Verberne, P.M.J.; Ydcrocomputersysteem PET 2001. TechnischeHogeschool, Ein~oven, 1918.
(10) __Operating and Service }funual Zlectronic Counter 5345A. HewlettPackard Company, Santa Clara, U.S.A., july 1914.
(()igitll from E in Data String)(Digit l'ollition Oefined from Right to Left,
.- Decimal Point on Right Side of Digit)
a. 0 Digits .. 0" 0 D;b. I Digit 0 ••••••••••••••••••••••••••••••••• D:c. 2 Digits D9d. 3 Digits •................................ DBe. 4 Digits D?r. 5 Digits 0•••••••••••••••••••••••• D>g. 6 Digits D=h. 7 Digit!! : D<i. 8 Digits D3j. 9 Di~:its ..........................•...... D2k. 10 Digits DJl. Auto Position + Auto Suffix D0
Multiplier
4. Reset
a. Resetb. Remote Program Initialize
5. Input Amplifier Control
a. COM A or Separateb. Check
6. Local - Remote
a. Switch to Localb. Switch to Remote
7. Output Mode
ONLY IF addressedo WAIT until addressed
8. Remote GAting
EXTERNAL GATEINTEHNAL GATE
9. Sample Rate
(Wait Time Between Measurement)
a. Not Hold
1. Min time (1-5 msec)2. ",50 msec time (required for
Start Function)
b. Hold
1. Take a measurement
10. Accum Mode Sian/Slop
A+BA-~
E7E?
' ... EO
E8
E2E;
E',E3
EL
E<E4
-,.E9
Jl
E=:
.cr· F...5
O••
:~. ,'0 ., ..., ~\. ,...- .~
o •
RESET PUSHBUTrON/POWER UP/12 PROGRAM conditions are F0, GO, 00, E7, EfI, E2,E3, El, E4, E5 o.
NAAM FUN KTIE
u= VI 1~1I1':: ... ,
H= hNzlenDL :.
j----------t-----------------I--·-..--····.
REMOTE COUNTING bepalen van M en SA vanserie meetwaarden
STROOMDI AGRAMNR.
1 /KOMMENT AAR
TEKST
1
start
1
2r----~--........,
frontpanelcheck
nee
1 het instellen van defrontpaneel funktiesvan de H-P 5345A,zoals: funktie,gate time,operation mode
2,3 de. H-P 5345A heefteen ingebouwde timer,die wacht gedurendeeen tijd van 3,5 xgeselecteerde gatetime en dan de metingbeeindigd d.m.v. eenreset. Bij local fronpanel control zou mengate time opnieuw inmoe ten stellen. Dezetest op de excessivegate time wordt nu
·Uoor een routine inhet programma grdaan
4 de invoer van hetaanta1 metingen N envan de wenselijkheidvoor het afbeeldenvan de meetwaarden
remoteprograrnrnin~
5 voor de H-P 5345Aworden de front pane]functions en de meetprocedure geprogrammeerd
t-- HER ZIE N _O_O_O_R_· -r-_D_f._~T_U_H --t._._~~~._
---,- ~~" ..n /u
NAAM fUNKTIE
0= orlgineel
11= hi'r zient--------+---------------- I --·------·---- _.. .-_..--- ..-
,>.REHOTE COUNTTI1G bepalen van 11 en So'\. van
serie meetwaarden .1 / 2
STROOMOI AGRAHNR
I<OMMENi AAR
TEKST
1
6
remotemeasurement
6 de R-P 5345A wordtgeinitieerd voorhet starten van eenmeting en vervolgenswordt de meetwaardedoor de PET L~gelezen
de -meetprocedurewordt herhaald tothet opgegeven aantalmetingen •
7
8 van het a&~tal meet-- - .__.. --- - -waarden wordt de
gemidde1de ·.....aa.rde en__________________ de sta..."1d.aardafwijking
berekend
nee
.....
aantalmetingen
=N?
ja
8 •_.. _compute H,
SA
7
9
display\
I
9 het aantal metingen Nde gemidde1de waardeen de standa.a.rdafwijking worden op scherr.(CRT) va.~ de PETafgebeeld
end
t-----------------'T--------~-_L---_,__-----PRQG RA M ~-j [UR [JATUH VfRVWG !3LZ.
c--------------------+--------------------- -
verberne 781109 1
/
ZIEDA TUriHER11[ N OOQR tt-------------ii------ --------t
i IBAsIC PkOG~AMM,A.
5LZDOK-NRJATUMI
..~_PROGRA~.!!..A-NAAr-' I PROGRAr"ME~. I I I I
/lEM07E COUll/TINt} VeR -8 e R IJ/.£ ?8 I1o!J " "REGE~ NR 10 20 30 Lo 50 60 70 8-l..l.J.LLLl. U..:.LLL.LlL.LJ....LLLJ...LL..l......LLL..t..JJ.LL L I J.;L L~_L!.-.L1J......L.Li.. I ' I I !.:..J....LLLU..J I I : Ii! I , I 1--l....L..; ._.__ ..~
l J ..
I " I . I-LLJI.k?~. fl:cHLLl8!EiP..'RJ'JEM..-JJ!jI1.~E..'hllJ1J1l>!ELl.J/J'El_WRR.A'.JUE.-'--E'IIL.....:. i I I I : i I .-LU.L. I I I I ": -J- I I...L.U..-L...&....... _-i_ .
! ."....l....LlJ.+...LJJ-l-..LLS"Jl"9Wi)19A'A'A..JlE..J4NflJuM;J.P'.l9111C.rE.R.Z.~ ..Y£JrJJN;eW~J Iii I ! I I I I :: i I I I I I I I ," t._
;" 11f}"...L..LJ2JOt_n1E~JEl"tl"JZ:~-~~L1L~~~l..JflJ;~lt:~_LLL_..1..._LL.u...l....i._..LiI I I I I ! I I I I '. ;: Ii; I I I , I I I, I
" ,up" I .~.t'+-l'?-iE'M...+JLV'&JZ£ltJ"!E.M....PJ9.A1J'"n_~.1..wL~'J...J.J ..l..J_L..L.J I I I I I ! 1 I I! I I I I I I J I ' I It! I I I I I J..-L-
_...l..L..i?yJ_~iLWJT..LL.L.l...l..1...l I I I I I LL..L~...LLJ uLLi....J..L.L+..:.....l I I I I ! L.J I I I! I I I I I I Ii: I ! I I I I It! j-l......J.....JI I.
I : i "
...LL2;~Lt'~1/.fr:11J.j~.l7Y"RLJI.3~EJSJ<=JM/..;k~~I~iN#AAje:'..JV~.flntJE.:t'LEH~1".L1.EA..l1 I J I J I i I I I I i I I I I I 1'1 I
..J.Lr~L_jPAVJM~~lEAJL~-.0~..LJBLJ;(~JCJ~~_1U1~' ": -LJ..J.--l.....1. I ) I I I i I I 1 I : I I; [ I i I I I I I I I
. L(JDi.lLW~\lf9' I (I ~{('&1!!.L'rJ!...JCJ.J!.Jll..Al~I: I PJfz. h1r~_L.l.J....L..!. f 1 I I ! 1 I I I I I I "! I ,,!,! I I I I I I" I I ! I II
'..: ,b:r.> ""7[ ," I .L~ .no ~.,., "'"._,,. "...LL~p~~..!~l.~.L...L~$I?I,-ICl Ir'Lu...=....L~1M1..J I I I I I-LU I I I I I I I , I L J i ( I ! I I I ! I I I I I I' I! I I I I ! I I ,
! hI I 1.,,:.LlL.etl~~.u5t~1 I ) If-Eci ,:t'l 111/1 I I I I I I I I ill: I ! i I I I I I I I I I I I I I I I I I I I I , , I I I I I I I I I I I i I I 1"
I
D ,~ No DJ..~H1Ltl-L" I I I/I--U.~CI 1=1 rtel I t I I I I I I I I I I I I I I I : 1 ! I I I I I I I I I I I I I I I I : , I I ! ! I I ' I I iii'
LLB~.tfJl-».r21....LJ.l.Iclo.1~_~e-Sl~-fI?!'"I I I_I I I I : I I 1--J.....L1.. I I I I I I I I I I I , I I I t" I I I I J ( ! I I I i I I LLLLLW__LI
~l....£~?') t', tlA ~~J.C~jLI I I!! I I ! I ! I I I I ! ! , I ! I I I I I I ! Ii" • ! ! ! ! : I I I ! [ ! I i I I I I I I . , , I ,
•• IJ:l1l121 I , I III fMSlElc:.u~I=t I I I , I I I I I I I I I I j I I
iI ,D.b" .. I' .
i...L.9J.tLL.rr.Jl..m?I I JPI.Il.L.tt!OOC, I-I 1~J.~LLL.LLJ.....LL~LLL.L..Llill 1 I I I I I J I I I ' I I I ! I I ! I I I I 1 I I I ! I I I !.LLJ
~U..l!~J"lilr"~L~r"1!1?11L.1ItI'JC1C.u==t._~;~rt I I 1 I.J...LLl I I 1 I I LLL..LLLLLl.. L1..J ..LLLL..L1 I I I lit. ...-.LLU....L.Ll..J I I I j-L
I. J ..9i4'~ .f.rf.L[JI'1:'-IJ~~ljl::'j~.6JJleICLJ::L 9"~Lu.U_LLI.~_J-LL.l_i.-LLLLU-LLU..J.J.....L.LUJ--L1.J.l..J..J-:..J...L..J i I I I I ! "I i I I
...._,....1 ,.n, •• • ,_J ..... /1 ....... /fl .......... _. _ ........ , f,lj I I, " ••• ,, I !. I • I I , I I I I I I • I I I I I I I I , I I : I I I I I I I I i I.L.l... L_
<:1:1:-<-- --'-.x:-CJ...,.L~
N _J.J ~
tOlco j )
I. lI .I
J ~C> 1r- ~
t •
ISA SiC
I ! j
I !I !
PI-\8G~AMMfi "P R OGR AMHA - NAAM
;
PR OGRAr-': MEUR DATUM DOK-NR 1HZ,
1 I
.JJ1l.t:1JCJ.~J~LJ.fL.J_L.LLL1_.Ll I I I I I I I I I I I I ..L-li..L..L..LJ I I , I I I J I I I I I I , I I I I I I I I I : I i I I I J I J J I I I I I I I
J.f.lJ.e!I.I!fi It! ~1~~l!!lY.~..nJ!LfI&'lr.p"o,J.'3J>...JJ.. I I : I I I I I I I I I I I I I I .LL1..J.J...J..11 I I J I I I , I.:..-LLI I I J I I I I~J:rJroL~;:l~Alld~L.LJ. I I I I 1 I I I I I I I I LLL.u I I I I ! I I I ! I 'I I I I I I I I I I 1 I I I I I I L...Ll , I I ' ! I I I , , I I I I I •
..... ,I ... 1\,_........ 11, •• _- •• h_... ,1'.", I I I •• ,,"" "I I., I ,'1 I I r J I J I I II I, I I I I I lLL..Ll_L.J_l.L...L.-1.-L
i
I/cMt:l7~ aOU/V7IN 9 I J/ElI8eklVlE I 78 II o!J I -( ~
REGEl. N~ 10 20 30 I..fJ 50 60 70 8.iLLLLLLl.J'! I 1 I .1LLLL1...1-11 I I J r LJ__J.LLLLI_l:..LLL: I tIl: I : I ! I I ! ! I LU I I I I I I : I I \ I I '-1_: •
I ! ~
1 i IJ_.R,J1'D~. f1lr.'N'J1.J~'l/jJ))"Fi.r/1():lb-J/5JDLitI'J.JJE'CIJi :rf-LJ.I.e~J a~e: ei /1": I : I' I I I I I I I I 'J I I I I I I I I I I i
, "II.J.....l.tVJ5"':-~:~.:zln{7i._.LW1"l1LM"~~.....l!JCl<ll...m.t£JCdLJtL().At..Q!L.:I~-l.j;".1~E.LEJt!: I I I I I I I I I I I ( I I ,~,
1 ,.,17, i ,.... LJ -,) A - ,/ UO·~·JI" ,'7""'&' I.', .'"r'1I ' ',JU ID 1T."r, .. ,t. ,OIL-Ii I f I I I' I ' , I ! ' I~.l<Jc,;._J.l'j..v.l:'j~ILL.~Ol~l.CL_.l(.-l-'ru.C!--JU.l.-..lLlL..LI.JlLJ..:t"L.L-VJlJ.JEJ'I':I~lI~~ '~-Jl..L...7. . I ! I' I I
..LJ.2~bLJlil~JM.&....Y.f~lt'JZi.....t>.BMe0 C.1hteCJfl "1 I I L...i.-l.LU_L..L-' Ii! I I I I I I I: I I I I I I ! i I I I I I I I j i I I I,I
£JOi..p£JC1'J.1 1/',u.JfLL..L.L..L.J I 1 I I I I I I I I I , I I I I I I !.-L.....L I i I I I I I I . f ! , I Ii' I I 'I I ! I I, I I ! I I 'I I
J~vi t::Y'k\L1lJ I I I I I , I I , ) I 1 I 1 I I I I I I I I i I I I I I I I 1'1 I I I I I I !! J I I I , I : : I I I ! I ! I I
! n u~~O~I;~~~~Z~~~~~ I I I I I I I I J 1'1 I I I I I I I I I I ( I I II J I i I! I ; [I Ii" I I Iii I I I t
I / ~~~~~ I I! II I I I I I I I I I I I I I I I I!
I".lJ-ll>lcLttPUIeI 1/, I I I I I I
I..kfu>~Je'ClM' ill" J I:
I.-LJtj!f~.i....Ct'Sl~1 I ! I ) I I ! I I J ! ! I I ! I , J I [ I ! ! I ! I I ! I ; I I I I J ! I I , ! , J J I I I J I I, J I I ! I I I I I I • I I J I I I I'
"" 'I
..t:lJalJ.t.t;'ld I I I I I I I I ! I I I I J I I I I I 1 I r I I I ! I I I I I I I I I I I ! I I I I I I I I J I ! I I I 1 I I I 1 I J i I I I I I ! I I ' 'II .J~41rr!I' I 'j't-1=lII It'! I ! I ! I ! J I J ! I I I I ! I I I I I I I , I J I ! I I I I I I I I I I I I I J I ! ! I I I I I J I I I ! I ! J ! I I ! I I •
I •
SA SIC
I
II
P\'\CCi!iAMMA:
P ROGR AMMA-NAAM
He H D 7!: Co~N"" ,,/J/1PR OGRAMMEUR
J/E AS E/l AI E
DATUM
78 II oS
DOK-NR
I
~ LZ,
6
Ii
! I I I i I I I I I f I I J I I I I f I II I I I I I I I ! I I I I I J I I I i I ! I I I I J I I I I I I I I ! I I I I I I I I I ! i I I I I I ! 1 I I ;. I
II I I I I ! ! I I I I I ! ! I I ! I I I I I I I I I I I I I L...L.L I I I I I .'.LL...1 I I I I I I I I I I -LLI I I I I I I I I I I I I I I I I ! I I I I I I-LJ.
::::I::::::::::::::: :: ::::::::::::::::: : ' ::::I : : LLLLUl I I I I I I I I ii, I I I LU-LLlJi~; I ::::,: : : ;;1;;; ;I;1I;I;;;II ;I;;,I;: ;I II"; I ; II I I I I , I I I I I I I I I I I I I I I I I t I I I I I ; I
. ", • I I I. I I • I I I I I I I • 1 I I I I I I I , r I LL1..l...LLLu..J..J...LL1...LLL.L.LL.LJ __LLLL
I COMMON CHARACTERISTICS f
"
~c...Ip:
~
~.4"
THRW'''' .... -
-REF "B",
'-- REF "S"I
i., 'I V
I
1
TRoNS ...."
~... i. ....... _. - o,ev I
!- REF "A"I
i.·4V-.J
i-REF "A"
I._ .'1'1
-J 'iF\WS f4--. ~
___:_X _
-~ TAOS .... -- Zk. ~>-
I C' e, .i ...~x '''' --,"~,,,~ ... '""
~2_0V ;
____...;~1l;-- . ~o.ev :i
-- ,,", - i '<r >-: 08'"
+ TMOS 04·- ... TH.... "4Il-I I
\
. ,..TROI .50 04
~.~" 2 Ov :X ../.:<'~ ~.~---.--........ ~....:.....·-t
T.. t. • 04
~:iX'- ::: ~y:-
Timing for Writing Data to Memory or Peripherals
I~ TSH'C ...-
Timing for Reading Data from Memory or Peripherals