DisplayLezen¶
author: | albert |
---|
In deze (deel)opdracht wordt de module ‘het (uit)lezen van het display van een zakrekenmachine’ beschreven.
Doel¶
See also
Zie ook Project Kaders
Globaal¶
- Lezen van het (7-segment, LCD) Display.
- Te starten met 1 stuk type (naar keuze)
- Uiteindelijk zullen ‘alle’ rekenmachientjes ondersteund worden.
Uitgangspunt is dat er één (display) regel –op commando— gelezen moet worden en als text en/of getal (float/int) teruggegeven wordt. Ook moeten errorcode’s, etc terug gegeven worden. Er mag geen interpretatie plaatsvinden (behalve het omzetten van een plaatje naar test/getallen); dat gebeurd extern (in de aanroeper). Ofwel: alles was op het rekenmachine display staat moet (begrijpbaar) opgeleverd worden.
Niet-Functionele Eisen
Het lezen moet zeer betrouwbaar en snel gebeuren; zonder menselijk interventie of supervisie.
- Bij voorkeur duurt het lezen niet langer dan 50ms. Het moet altijd binnen 0.2sec gebeuren. Het systeem moet continue kunnen werken. Dus 5 à 20 lees-commando’s per seconde. En dat urenlang!
- Een eenmalige calibratie van de opstelling (ook fysiek) is toegestaan; dit moet eenvoudig en snel kunnen, aan de hand van een duidelijke gebruikershandleiding. Daarna zal menselijk handelen niet meer nodig zijn.
- Het lezen van de correcte getallen is belangrijk. Een eis van maximaal 1 fout opgeleverd per honderdduizend lees-commando’s is zeer wenselijk. Optioneel mag een ‘kan-niet-lezen’ melding gebruikt worden (dat liever dan een fout getal). Dat mag echter niet vaker dan 1 op de duidend keer gebeuren; als er een getal op het display staat.
- Ook bij niet-getallen, als die op het display staan mag eens in de duizend keer onjuiste opgeleverd worden. Maar dit mag nooit een getal opleveren; lees: dat telt mee voor de max 1-op-100000 fouten eis.
Opleveren
- Een ‘library’ die alle benodigde functionaliteit bevat. Tezamen met een gedocumenteerde API hoe deze gebruikt zal worden. Het ‘lees-commando` is hiervan het belangrijkste onderdeel.
- Een eenvoudig, standalone, “command-line” programma, dat die library gebruikt en als ‘demo’ dient (voor HighTech-type medewerkers). Ook dit zal gedocumenteerd worden
- Alles (programmatuur, documentatie, etc) zal zowel als source als kant en klaar opgeleverd worden. Ook moet het ‘bouw’ process eenvoudig en gedocumenteerd zijn.
- Project documentatie; zodat anderen gemakkelijk dit deel kunnen gebruiken en/of verder kunnen ontwikkelen.
- Ook alle test, zowel op unit- als systeem-niveau (en alles daartussen). Liefst als Automatische- Test-Scripts. En anders als handmatige test (ontwerpen).
- Optioneel: tools die gebruikt zijn cq handig zijn tijdens (door)ontwikkelen.