Software: Source code

Testprogramma's

Vooraleer het volledige programma te testen en te debuggen, is het aangewezen enkele kleinere testprogramma's te schrijven en te runnen. Zo schreven wij allereerst een programma dat de lichtsensoren test. Dit uiterst eenvoudig programma laat een ledje branden wanneer een lichtsensor een object detecteert. Dit laat toe om te testen of de sensoren goed werken (en er bv geen slecht contact is) en ze bovendien netjes in te stellen aan de hand van de lichtintensiteit.

Voor de microswitchen schreven we soortgelijke software. Wanneer een microswitch wordt aangesproken, gaat er een overeenkomstig lampje branden. Dit biedt alweer de mogelijkheid eenvoudiger te debuggen (worden signalen goed ingelezen, is de verwerking correct, etc...) en de mogelijkheid om de contacten na te gaan.

Het signaal van de potentiometer die de oriëntatie op de wand bepaalt, moeten we analoog verwerken om meer dan twee gedefinieerde gevallen te kunnen verkrijgen. De aansturing van een analoge poort is verschillend van die van een digitale en ook lichtjes moeilijker. Het is dus handig om deze schakeling afzonderlijk te kunnen testen en instellen. Hieronder zijn twee testprogrammma's te vinden voor de potentiometer. Het ene programma telt binair met behulp van de ledjes, en laat zo zien wat de waarde is die de analoge poort inleest, en dus de waarde die de potentiometer weergeeft. Aan de hand van dit programma kan je de waarden aflezen die de poort zal zien wanneer Vertigo zich in een bepaalde positie bevindt en zodoende enkele parameters van de software bepalen.
Het tweede testprogramma voor de potentiometer laat dan toe om de zonet bepaalde waarden en de manier van inlezen en verwerken van het signaal te testen. Overeenkomstig met de drie vooraf bepaalde posities gaat er een ledje branden.

Het laatste testprogramma laat de motortjes draaien en test zo ook meteen de 'Motor Driver chip' of beter gezegd de aansturing van die chip. Vertigo wordt dan veronderstelt van achtereenvolgens verschillende combinaties van aandrijvingen (voorwaarts, achterwaarts, enkel links,...) te kunnen uitvoeren.

  • TestSwitchen
  • TestLichtsensoren
  • TestPot1
  • TestPot2
  • TestMotors
  • In de onderstaande file staat de configuratie van de PIC16F877A beschreven. Je hebt deze dan ook nodig om de assembler files te kunnen compileren.
    De compilatie-software, een simulator en software om je Pic in te laden, vind je eveneens onder Links.

  • Pic_configuratiefile
  •  

    Hoofdprogramma Vertigo

    De structuur van het hoofdprogramma werd reeds volledig uit de doeken gedaan door de verscheidene flowcharts. Om dit programma te debuggen en de correcte parameters te bepalen (bvb lengte van de delay), kan je ook best in stappen werken. Vooraleer dit aan te pakken, worden eerst alle testprogramma's even geladen en gecheckt. Nadien kan je overstappen op het grote werk. Gelukkig hebben wij dit al voor je gedaan en vind je dus hieronder de volledig gedebugde, complete software voor Vertigo.

  • Vertigo
  •