Les 4 - onderwerpen

Post on 23-Mar-2016

38 views 3 download

description

Les 4 - onderwerpen. Tellen op een enkel 7-segment display Multiplexen (tellen op meerdere displays) Beep read switches. 7 –segment display. eigenlijk gewoon 7 LEDjes je kan 1 cijfer selecteren dmv RA0, RA1, RA2:. segment letters. A. B. F. G. E. C. DF. DP. multiplexen. - PowerPoint PPT Presentation

Transcript of Les 4 - onderwerpen

Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

1Computertechniek

Les 4 - onderwerpen

• Tellen op een enkel 7-segment display• Multiplexen (tellen op meerdere displays)• Beep• read switches

Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

2Computertechniek

7 –segment display• eigenlijk gewoon 7 LEDjes• je kan 1 cijfer selecteren dmv RA0, RA1, RA2:

Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

3Computertechniek

segment letters

AB

CDF

E

FG

DP

Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

4Computertechniek

multiplexen

Laat Digit 1 zien (wacht)

Doe eentueel ander werk

Laat Digit 2 zien (wacht)

Laat Digit 3 zien (wacht)

Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

5Computertechniek

multiplexen

Laat het volgende Digit zien

Doe eentueel ander werk

eventueel (extra) vertraging

Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

6Computertechniek

opdrachten les 4 - 1 : tellen

tel op de 1 cijfer van het 7-segment display van 0 tot 9 (en dan weer opnieuw, bv 1 tikken per seconde)

Gebruik een sprongtabel (les 2) om te vertalen van een getal (0..9) naar het bitpatroon van de segmenten.

Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

7Computertechniek

opdrachten les 4 - 2 : tellen

tel op de 3 cijfer van de 7-segment displays van 0 tot 999 (en dan weer opnieuw, bv 5 tikken per seconde)

Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

8Computertechniek

opdrachten les 4 - 3: beep

Maak een programma dat 1 keer een piep laat horen (bv 1/4 seconde op 1 kHz)

Piepen is niets anders dan knipperen, maar dan met een luidspreker in plaats van een LED, en wat sneller.

1 kHz = 1ms per puls = 500 us hoog / 500 us laag500 us = 1000 instructies bij 8 MHz1/4 seconde = 250 pulsen

Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

9Computertechniek

opdrachten les 4 - 4 : vrije opdracht

De laatste twee/drie lessen (en thuis!) ga je werken aan een vrije opdracht.

Verzin zelf een project(je). Stem af. Schijf zelf de opdracht.

een paar suggesties:• (random!) RC5 IR zender• RC5 ontvanger• voorwerp-detector (IR zender + ontvanger)• Fur Elise• Reactiesnelheid tester• ‘Kitt’ display met 10 verschillende patronen (selecteer mbv de knoppen, sla

op in de EEPROM)• iets externs, bv LCD

Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

10Computertechniek

Read the switches

• Zet de juiste code op RA0 .. RA2 om een rij schakelaars te selecteren

• Zet ANSEL (0x91, dus bank 1) op 0• Zet CMCON0 op 7• Wacht even (bv 5us = 10 instructies) • Lees RC0 .. RC3• Als een van die pinnen hoog is dan is de schakelaar in die

kolom ingedrukt• Herhaal (eventueel) voor de andere 3 rijen

Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

11Computertechniek

Switch bounce (denderen)

Als je een drukknop indrukt maakt hij niet 1 keer contact: hij dendert een tijdje (maximaal ~ 50 ms)

Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

12Computertechniek

opdrachten les 4 - 5: count• Maak een programma dat op de drie 7-segment digits telt

hoe vaak de drukknop ‘1’ is ingedrukt.• Zorg dat je de schakelaar ten minste 1000 keer per

seconde checkt• Als je het effect van denderen hebt gezien maak de lus

dan trager (check de schakelaars max. 20 ker perseconde)

for(;;){ show digit(s) check schakelaar verhoog de teller}