-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
6 changed files
with
45 additions
and
5 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
# Biblioteca para uso do DS18B20 | ||
|
||
Essa biblioteca fornece o código necessário para controlar um sensor de temperatura DS18B20 a partir de um STM Blue Pill (STM32F103C6T6 ou STM32F103C8T6). | ||
|
||
## Como conectar o sensor | ||
- Energize o STM | ||
- Caso queira ler os logs do STM, conecte o RX de um leitor UART ao pino A9 | ||
- Conecte o fio GND (preto) ao ground. | ||
- Conecte o fio VDD (vermelho) a uma fonte de tensão de 3 a 5.5V | ||
- Conecte o fio DQ (amarelo) ao pino A1 do STM. Adicione a essa conexão um resistor de 4.7kΩ (veja o diagrama abaixo) | ||
- Para mudar esse pino, basta modificar o arquivo *stm32_min_dev_blue.overlay*. Se for fazer isso, verifique se o pino substituto apresenta diferenças significativas de hardware com relação ao pino A1, como uma resistência interna, por exemplo. | ||
|
||
![diagrama de circuito do sensor](readme_src/circuito.png) | ||
|
||
## Como usar a biblioteca | ||
Sempre que quiser ler a temperatura do sensor, utilize a função **ds18b20_get_temperature()**. Note que há um valor de retorno da função (fora do intervalo de possíveis temperaturas lidas pelo sensor) que indica erro na leitura, então é necessário checar qual é o valor lido. | ||
|
||
## Sobre os logs do STM | ||
Caso haja algum problema ao se comunicar com o sensor, será emitido um log de erro. | ||
|
||
|
||
## Possíveis problemas / problemas conhecidos | ||
- O protocolo de comunicação OneWire possibilita a conexão de diversos sensores DS18B20 ao mesmo barramento, entretanto essa biblioteca consegue lidar com apenas um sensor. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
-------------------------------------18/10-------------------------------------- | ||
Acabei o desenvolvimento dessa biblioteca. Então aqui vai uma revisão de o que eu | ||
aprendi no processo. | ||
|
||
No começo, eu gastei bastante tempo tentando entender e adaptar a bilioteca já | ||
existente no Zephyr para o sensor DS18B20. Aparentemente, aquela biblioteca é uma | ||
das únicas do Zephyr que é restrita a poucas placasm eu demorei pra perceber isso. | ||
|
||
Outro detalhe que eu não percebi inicialmente foi que era necessário colocar um resistor | ||
entre o VCC e o fio OneWire do sensor. | ||
|
||
Acho que os aprendizados que posso tirar disso são: | ||
1. Sempre ler atentamente o datasheet de um dispositivo novo, especialmente se for a | ||
primeira vez que a equipe está usando aquele dispositivo. (Note que isso foi diferente | ||
do desenvolvimento da biblioteca do SIM800L, já que o Gian já havia usado e conseguiu | ||
me ensinar como usar). | ||
|
||
2. Às vezes, tentar adaptar o trabalho de outra pessoa pode ser mais difícil do que | ||
simplesmente fazer tudo do zero. Acho que eu deveria ter gasto menos tempo com a | ||
biblioteca do Zephyr. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters