DHT22는 앞에서 설명한대로 GPIO 핀을 통해 작동합니다. 즉, GPIO가있는 모든 장치에서 사용할 수 있습니다.
라이브러리 정보. 작성된 GPIO를 통해 통신하기위한 두 개의 주요 라이브러리가 있으며, 하나는 C++ 용이고 다른 하나는 Python 용입니다. 즉, GPIO가 있고 Python 또는 C++을 실행할 수있는 모든 장치에서 DHT22를 사용할 수 있습니다.
C++, Python, Java 기반 라이브러리는 없습니까? 글쎄, 아니요GPIO를 통해 통신하기위한 Linux 표준 라이브러리이 있습니다. 물론, 배우고 탐구하기를 열망한다면 Assembly 나 Bash에서 LSL에 가까운 라이브러리를 작성할 수 있습니다. 이를 통해 다른 프로그래밍 언어 없이도 Linux 셸에서 GPIO를 통해 네이티브 방식으로 통신 할 수 있습니다. Bash에 관심이 있다면 this을 살펴보십시오.
리눅스는 0과 1 만 읽을 수있을 때 온도와 습도를 어떻게 알 수 있습니까? 두 가지를 고려 :
- 어떻게 컴퓨터 상점 번호 합니까? 컴퓨터는 과 '만 알고 있으므로 을 이진으로 변환해야합니다. 32 = 2^6은 10 진수로, 은 2 진수입니다.
컴퓨터는 온도와 습도를 어떻게 읽습니까? 당신이 DHT22에서 온도를 요청
get_temperature()
같은 기능을 실행하면, 어떤 실제로 발생하면 컴퓨터가 (이 OUT과 동일하다, DHT22에 IN을 통해 GPIO를 통해 DHT22에 "기록"DHT22에 신호를 보내는 것입니다 컴퓨터에서). 그런 다음 DHT22가 온도를 감지하고 데이터를 다시 전송합니다. 어떻게 보내나요? GPIO (컴퓨터의 GPIO IN과 DHT22의 GPIO OUT)를 통해 일련의 전하를 생성합니다. 우리의 경우, 온도가 이면 다음 시퀀스를 전송합니다 : 1-0-0-0-0-0. 컴퓨터가 시퀀스를 읽고 화면에 인쇄하려고하면이를 십진수로 변환합니다.
희망은 분명합니다. 그리고 이것이 당신이 원하는 것입니다.
이 link에서 원하는 경우 DHT22 온도 및 습도를 읽는 C 코드를 찾을 수 있습니다. 당신이 일반적으로하고 싶은 것을 알려주십시오. (온도와 험을 읽으십시오.라이브러리를 통해 GPIO를 통한 통신을위한 새 라이브러리 작성, DHT22의 다른 언어로 새 라이브러리 작성 ...).
답장을 보내 주셔서 감사합니다. GPIO 기능에 관한 질문은 어떻습니까? 왜 리눅스에서만 값 0 또는 1을 얻을 수 있고 C++ 또는 파이썬으로이 경우 습도의 온도를 읽을 수 있습니까? – Lomezno
나는 그것을 완성하기 위해 답을 편집 할 것이다, 나에게 뭔가를 놓친 것을 상기시켜 주셔서 감사합니다 ... – campovski
링크를 가져 주셔서 감사합니다. 여기에 내 문제가 어디서 오는지, DHT22를 gpio에 연결 한 다음 나에게 보내는 링크와 마찬가지로, 내가 얻는 유일한 것은 0입니다. 주기적으로 일부 값을 얻을 것으로 예상되지만, 그렇지 않습니다. 이 센서가 제대로 연결되지 않았을 수도 있습니다. – Lomezno