User manual
23
gaat de controller er van uit dat er nog geen programma is ingevoerd. In dat geval wordt de
EEPROM automatisch gevuld met de voorbeeldprogramma's. Deze functie is eigenlijk bedoeld om
de controller bij de eerste start te voorzien van de voorbeeldprogramma's in de EEPROM maar kan
ook op elk moment worden gebruikt om de oorspronkelijke toestand te herstellen.
Adres
Instructie
Gegevens
Commentaar
00 F F -
01 F F -
Listing 8: herstellen van de oorspronkelijke toestand
Start de programmeermodus door een reset met ingedrukte S2 toets. Voer dan in totaal viermaal
de waarde F in (decimaal 15) waarbij alle LED's A1 t/m A4 branden. Sluit de laatste invoer af met
invoer van S2. Druk vervolgens op reset. De controller heeft nu iets langer dan normaal nodig om
alle Bytes van de voorbeeldprogramma's opnieuw te programmeren. Hiermee is de oorspronkelijke
toestand hersteld. Test bv. zonder draadbrug op de ingangen het wisselende knipperlicht van
pagina 8.
10 TPS-basisinstructies
De programmeerbare besturing beschikt over een totaal van 14 instructies (1-14) Bij veel van deze
instructies hoort een parameter in de vorm van een 4-bits getal 0000 tot 1111 (0-F), dus met een
getalbereik tot 15 (decimaal). Andere instructies kennen subfuncties die worden ingevoerd in de
vorm van parameters. Achter de instructiecode kunnen daarom maximaal 16 subinstructies;
verborgen zitten. Zo staat bv. de instructie 7 voor "Bereken A = ...". De parameter geeft aan welke
rekenfunctie moet worden uitgevoerd.
Hieronder worden instructies en gegevens samen in hexadecimale vorm geschreven als Byte.
De instructie 1 wordt samen met parameter 4 dus de instructie 14h. De Hex markering wordt
weggelaten omdat alle instructies en adressen principieel in hexadecimale notatie worden
weergegeven.
De eerste drie instructies luiden:
10–1F: directe uitvoer aan de poort A1–A4, 0–15, binair 0000 tot 1111
20–2F: wachttijd 0–15
(1, 2, 5, 10, 20, 50, 100, 200, 500, 1.000, 2.000, 5.000, 10.000, 20.000, 30.000, 60.000 ms)
30–3F: Spring terug 0–15
instructie 1 dient voor de uitvoer van een constant getal aan de poort. Hiermee kunnen willekeurige
bitmaskers worden uitgevoerd en bv. ook meerdere LED's gelijktijdig worden ingeschakeld.
De wachtopdracht 2 maakt gebruik van een parameter die de tijd in milliseconden en een
onderverdeling in 1-2-5- stappen bevat. Ondanks het kleine getalbereik van 0 tot 15 kunnen op
deze manier vertragingstijden tussen een milliseconde en een minuut worden uitgevoerd. Nog
langere tijden moeten worden ingevoerd door een wachtopdracht meerdere keren, bv. in een tellus,
uit te voeren.
De instructie 3, terugspringen, is bijzonder eenvoudig en is te gebruiken voor vele taken waarbij
een reeks instructies eindeloos moet worden herhaald. De sprongafstand is beperkt tot 15. Omdat
de sprongafstand relatief is ten opzichte van het huidige adres, kunnen delen van het programma
met deze terugspring willekeurig naar andere adressen worden verschoven.
Voor het programma voor het wisselende knipperlicht zijn deze drie opdrachten voldoende. Het
programma moet hier iets aangepast in het adresbereik vanaf 00 worden geschreven. Ook met