Tecnologia vestible

Per començar Elements d'entrada Programació CircuitPython   Recursos CITCEA
Elements no electrònics Elements de sortida Programació Arduino    
Projectes Elements de control Dades pràctiques   Inici

Consola sèrie

Sovint ens interessarà que el microcontrolador pugui enviar dades a l'ordinador per tal que les poguem veure. Això és molt interessant en fase de disseny i també per detectar errades en el programa.

Si treballem amb Mu, la consola per veure la informació que envia el microcontrolador ja està incorporada en el programa. Només cal prémer el botó REPL i ens apareixerà. Si per algun motiu no podem fer servir Mu ens caldrà algun programa que ens permeti rebre missatges de comunicació sèrie. Si fem servir Windows podem instal·lar el programa PuTTY seguint les instruccions d'aquesta pàgina.

Per exemple, podem afegir un parell de línies al programa del LED intermitent que ens vagin informant de l'estat del LED.

import board
import digitalio
import time
led = digitalio.DigitalInOut(board.D13)
led.direction = digitalio.Direction.OUTPUT
while True:
    led.value = True
    print("LED ences")
    time.sleep(0.5)
    led.value = False
    print("LED apagat")
    time.sleep(0.5)

Si piquem REPL i enviem el programa podrem veure una pantalla com la següent:

REPL

Si en aquesta pantalla piquem Control-C el programa del microcontrolador s'aturarà i la pantalla ens indicarà a on s'ha aturat:

REPL

En l'exemple de la imatge, s'ha aturat a la línia 9, o sigui al primer sleep, això vol dir que el LED ens ha d'haver quedat permanentment encès. Aturar el programa és un bon recurs quan no entenem què està fent el microcontrolador perquè així podem saber en quina línia s'ha aturat.

Si ara premem Control-D el programa tornarà a començar des del començament, com si l'haguéssim tornat a gravar.

Si, en canvi, haguéssim premut la tecla Enter (o Intro, segons el teclat) hauríem anat a parar a la consola pròpiament dita:

REPL

On surten els caràcters     >>>     podem escriure instruccions de python que seran executades immediatament. Amb Control-D podem tornar a executar el programa.

La consola sèrie també ens ajuda a detectar els errors de sintaxi del programa. Imaginem que ens hem deixat una e a la instrucció sleep i veiem què fa:

REPL

Veiem que el microcontrolador ha executat les diferents línies del programa fins a la 11 (ha escrit "LED ences" i "LED apagat". Després ens diu que la darrera línia que ha mirat és la 12 i finalment que no ha trobat cap instrucció que es digui "slep". A partir del que surt a la consola sol ser força fàcil corregir aquests tipus d'errors.

 

 

 

En aquest web, les fotografies marcades amb [AF] són del web d'Adafruit, les marcades amb [SF] del web d'Sparkfun i les marcades amb [AU] del web d'Arduino.

 

 

 

 

 

 

 

 

 

 

Llicència de Creative Commons
Aquesta obra d'Oriol Boix està llicenciada sota una llicència no importada Reconeixement-NoComercial-SenseObraDerivada 3.0.