* — Microchip, CIP — Core Independent Peripheral.
4
[
1], [
2] [
3] () Microchip: , / , . , PIC (BaseLine, Mid-Range, Enhanced Mid-Range, PIC18, 16-, 32-bit), , .. . , , , .
«», .
, , .1 .0, . PIC .
AM2302
DIY DHT22 (AM2302). 3 , . ( 1ms), , 40 , : . «0» – 30 , . «1» – 70 ( ). 5 : 2 , 2 – 1 .
 .1. DHT22.
.1. DHT22.. :
loopCnt = TIMEOUT;
while(PIN) {
	if(--loopCount == 0) return ErrorTimeout;
} 
if (loopCnt <  cntOne) {
…
} else {
…
}
:
— (>5) «» ;
— ;
— ;
(. .2)
 . 2. .
. 2. ./ .
SPI. 5 SPI.
CIP ( ). .. , . TMR6 .3. , TMR6 = PR6 (PR – ). (CLC, . 1).
, , SCK SPI. . SPI (. .3 SCK).
, . , SPI , . CIP.
: 2, 2 (. TMR4 .3) (. EN .3), SPI.
 .3. , DHT22.
.3. , DHT22.SCK (CLC), - .4.
SCK, DHT22 MOSI SPI. (.5). .
.4. CLC PIC .. 5. ., 2- , «» CLC.
, : , SPI (. «0» ~1).
SPI.
.6. DHT22 . .7. . SSP1IF – SPI.
.7. . SSP1IF – SPI..7 , :
DHT (dat) – – MOSI SPI;
TMR6 != RP6 – – SCK SPI;
SSP1IF – ( SPI) – – .
«» . , , . « ». , . – , - . . 8 , .

 .8. .
.8. ., , , SPI, .

 . 9. SPI.
. 9. SPI.. , RC5, ( , «0» 10, «1» 01) [4]. [1].
100% Arduino (-, , ), . , , SPI.
, «», , .
1. 
PIC .2. 
50 . /3. 
50 . Microchip4. 
sbprojects.com/knowledge/ir/rc5.php