Programació en ASM del PIC 16F690 amb PICkit 2

.
Referència Trucs Perifèrics  Recursos CITCEA
Tutorial Exemples Projectes   Inici

Dau electrònic

En aquest projecte volem fer un dau electrònic. Per això disposarem d'uns LED que podrem encendre i apagar convenientment. També tindrem un Brunzidor piezoelèctric que ens permetrà, si ho desitgem, afegir una melodia al nostre dau.

No volem només veure un número aleatori de l'u al sis sinó que també volem que tingui aspecte de dau. Per això hem disposat els LED de manera que ens permetin representar les cares d'un dau convencional:

dau

I, per tant, calen set LED i no sis per representar totes les posicions. Addicionalment, hem afegit dos LED més que ens permeten representar xifres fins al nou, per a possibles ampliacions. També podem fer altres combinacions de LED que no siguin les habituals en un dau.

dau ampliat

Per connectar els LED de la forma convencional ens caldria fer servir nou sortides del microcontrolador (tantes com LED) més una per al brunzidor. Per reduir el nombre de sortides que fan falta, hem optat per fer un connexionat a base de LED en antiparal·lel que ens permet controlar quatre LED amb només tres sortides. El circuit complet que hem muntat és:

Circuit

On la forma normal de connectar el LED seria la que correspon a L5. La següent taula mostra el comportament dels LED L1, L3, L7 i L9 segons sigui l'estat de les sortides RB4, RB6 i RB7. Per a l'altre conjunt de quatre LED el funcionament és anàleg.

                Sortides Leds
                RB6 RB4 RB7 L1 L3 L7 L9
                0 0 0 0 0 0 0
                1 1 1
                1 0 0 1 0 0 0
                0 1 1 0 1 0 0
                1 1 0 0 0 1 0
                0 0 1 0 0 0 1
                1 0 1 1 0 0 1
                0 1 0 0 1 1 0

Ja es veu que aquesta metodologia impedeix poder encendre simultàniament alguns LED. Si, per exemple, volem obtenir la combinació de la figura:

dau amb signe més

Podem fer-ho a partir de dues combinacions:

                Sortides Leds
                RC6 RCB4 RC7 RB5 L2 L4 L6 L8 L5
                1 0 1 0 1 0 0 1 0
                0 1 0 1 0 1 1 0 1

Si alternem ràpidament les dues combinacions ens semblarà que els cinc LED estan encesos. Cal que cada combinació estigui activa prou estona per tal que els LED s'encenguin bé però no massa ja que si l'alternança és massa lenta veurem els LED intermitents.

Convé que les dues combinacions estiguin actives durant, aproximadament, el mateix temps; en cas contrari uns LED farien més llum que els altres. Per la mateixa raó, el LED L5 només s'activa en una de les dues combinacions.

A continuació posarem els programes realitzats pels grups. Estan tal com els han deixat i tenint present que no els va donar temps de simplificar-los o millorar-los. També pot ser que hi hagi errades ortogràfiques.

Programa del grup 1

Programa del grup 2

Programa del grup 3

Programa del grup 4

Programa del grup 5

 

 

Licencia de Creative Commons
This obra by Oriol Boix is licensed under a Creative Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.