Empaquetant estructures

L’ús d’estructures (struct en C) per emmagatzemar dades que estan relacionades és força habitual. Per fer-ho, només cal definir una estructura i cada camp es defineix amb el tipus desitjat. Tota l’estructura funciona com un paquet de dades, que es pot moure, copiar i accedir com un tot. Anuncis

Read More Empaquetant estructures

C vs C++ en sistemes encastats

En aquest blog s’ha treballat exclusivament en llenguatge C (versió C99) i no s’ha parlat res de C++. Anem a fer-ho ara en aquest capítol. La discussió sobre usar o no C++ en sistemes encastats deu ser tant antiga com l’aparició d’aquest llenguatge orientat a objectes. Si bé als seus inicis el llenguatge presentava força […]

Read More C vs C++ en sistemes encastats

Baix consum en RTOS

Quan treballem amb un RTOS funcionant en el nostre microcontrolador, hi ha diferents estratègies per aconseguir disminuir el consum energètic. Bàsicament hi ha dues estratègies: Aprofitar la tasca Idle per posar al microcontrolador en un mode de baix consum. Passar a un sistema sense tick (també dit tickless).  Tasca Idle per baix consum L’estratègia més […]

Read More Baix consum en RTOS

Un timer de baix consum

Un mode que es fa servir sovint en sistemes de baix consum és el de tenir un timer configurat per que desperti el sistema cada cert temps. Així per exemple, en un sistema que ha de llegir un sensor cada 30 segons, el timer seria l’únic perifèric en funcionament actiu i estaria configurat per generar […]

Read More Un timer de baix consum

Fent servir un DAC

Un DAC és un dispositiu que es pot veure com l’invers d’un ADC, ja que a partir d’unes dades digitals genera un senyal analògic equivalent. Els paràmetres de funcionament d’un DAC son, doncs, molt similars als del seu perifèric germà l’ADC. Al datasheet de la família amb la que treballem (EFM32GRM, pàg. 421) hi ha […]

Read More Fent servir un DAC

Baix consum: modes de baix consum

Un dels temes més habituals de trobar-se quan es tracten temes amb microcontroladors és el del baix consum. Gràcies a la tecnologia de fabricació dels microxips i els avenços en les arquitectures dels microcontroladors, aquests han arribat a unes fites de consum molt baixes, permeten desenvolupar aplicacions on el sistema pugui anar alimentat per bateries […]

Read More Baix consum: modes de baix consum

Detectant errors greus a ARM

  Sovint treballant amb sistemes encastats ens trobem amb errors d’origen desconegut que es poden provocar per múltiples causes. Així, per exemple, una divisió per zero, accés incorrecte a una zona de memòria o accés a la memòria fora de rang. Aquests casos poden ser molt difícils de trobar si son casos esporàdics, però l’arquitectura ARM […]

Read More Detectant errors greus a ARM

Una aplicació completa

Ja va sent hora de fer una aplicació completa (senzlla) per il·lustrar tot el que hem anat aprenent durant el curs. Anem a veure una aplicació sencera (senzilla) on ajuntarem unes quantes coses de les que hem vist fins ara. Farem una aplicació que segons la proximitat de la ma al sensor (o del sensor […]

Read More Una aplicació completa

Fent servir Mutex

Quan tenim un recurs, driver, memòria compartida, secció crítica o qualsevol altre recurs que només es pot fer servir una sola tasca a cada moment, cal muntar un mecanisme d’exclusió mútua que ens asseguri que no tindrem cap problema. Aquest mecanisme és molt similar a un semàfor binari però cal incloure algun mecanisme per prevenir […]

Read More Fent servir Mutex