Biblioteca de Termistores
Criar uma biblioteca genérica de termistores para que outros drivers possam utilizar. A biblioteca não deve depender da forma que as medidas foram adquiridas, seja diretamente via ADC, ou um amplificador/conversor externo. Também não deve depender da plataforma.
Construção de Bibliotecas
Primeiro deve ser determinado o estado da biblioteca, ou seja, qual informação é de escopo global, versus local de uma função. Caso haja um estado global, não é recomendado utilizar variáveis globais. É melhor criar uma struct com esse estado e ela pode ser passada em cada chamada de função. Isso evita problemas caso tenhamos mais de um termistor de tipo diferente.
Uma vez sabendo qual informação pertence a qual escopo, já dá pra identificar as funções, geralmente acaba sendo:
init
measure
- funções auxiliares
Lembrando que toda função da biblioteca deve começar com o nome dela, sugestão: thermistor_*.
Como estamos lidando com medidas físicas, é importante deixar explicito as unidades.
Idealmente, toda constante não óbvia deve ter um nome com um #define no .h da biblioteca.
Como estamos programando para um microcontrolador, o tamanho em memória das variáveis deve ser ponderado.
É recomendado declarar variáveis no momento que são necessárias, não no inicio da função.
Biblioteca de Termistores
Criar uma biblioteca genérica de termistores para que outros drivers possam utilizar. A biblioteca não deve depender da forma que as medidas foram adquiridas, seja diretamente via ADC, ou um amplificador/conversor externo. Também não deve depender da plataforma.
Construção de Bibliotecas
Primeiro deve ser determinado o estado da biblioteca, ou seja, qual informação é de escopo global, versus local de uma função. Caso haja um estado global, não é recomendado utilizar variáveis globais. É melhor criar uma struct com esse estado e ela pode ser passada em cada chamada de função. Isso evita problemas caso tenhamos mais de um termistor de tipo diferente.
Uma vez sabendo qual informação pertence a qual escopo, já dá pra identificar as funções, geralmente acaba sendo:
initmeasureLembrando que toda função da biblioteca deve começar com o nome dela, sugestão:
thermistor_*.Como estamos lidando com medidas físicas, é importante deixar explicito as unidades.
Idealmente, toda constante não óbvia deve ter um nome com um
#defineno.hda biblioteca.Como estamos programando para um microcontrolador, o tamanho em memória das variáveis deve ser ponderado.
É recomendado declarar variáveis no momento que são necessárias, não no inicio da função.