PIC16F877 + DHT22

B0sc0: Logický analyzátor se Ti hodí (osciloskop je v tomhle případě poněkud těžkopádný, pokud nemáš k dispozici paměťový), nicméně tentokrát bych řekl, že Tvůj PICkit2 to zvládnul. Trochu jsem pohledal a DHT22 posílá data sice stejným způsobem jako DHT11, ale rozkódovat je musíš trošku jinak. Pokud jsem dobře počítal a simulační software nekecá, tak jsi z čidla dostal 02 01 00 E4 E7 (kontrolní součet tam sice nemáš zachycený celý, ale je to nižších 8 bitů součtu bytů na pozicích 0-3). První 2 byty jsou 10xvlhkost, druhé 2 byty jsou 10xteplota. 0x0201 je 513 => 513/10 = 51,3%, teplota je 0x00E4 = 228 => 228/10 = 22,8°C.

Záporná hodnota není kódovaná “klasicky”, ale hodnota je doplněná jedničkou na bitu 15 :
0x00E4 = 228 => 22,8°C
0x80E4 = -228 => -22,8°C