HR202L 2
HR202L 2
1. HR202L is a new kind of humidity-sensitive resistor made from organic macromolecule materials,
it can be used in occasions like: hospitals, storage, workshop, textile industry, tobaccos,
pharmaceutical field, meteorology, etc.
2. Features:
Excellent linearity, low power consumption, wide measurement range, quick response,
anti-pollution, high stability, high performance-price ratio.
3. Technical Specification:
Operating range: humidity(20-95%RH) temperature(0-60Celsius)
Power supply: 1.5V AC(Max sine)
Operating frequency: 500Hz-2kHz
Rated power: 0.2mW(Max sine)
Central value: 31kΩ(at 25Celsius, 1kHz ,1V AC, 60%RH)
Impedance range: 19.8-50.2kΩ(at 25Celsius, 1kHz ,1V AC, 60%RH)
Accuracy: +-5%RH
Hysteresis: +-1%RH
Long-term stability: +-1%RH/year
Response time: <10s
Dimensions: with case 6.5*10*3mm, without case 5*7*0.6mm
4. Main parts
8. Dimensions
Cautions:
(1) Avoid polarization, driving voltage or current should be 100% alternative.
(2) Please measure the sensor with LCR alternative-current bridge, don't use multimeter.
(3) Avoid dew condensation.
(4) Recommended storage conditions: temperature 0-60Celsius; humidity <80%RH
9. Circuit diagram
/**********************
SCM:SN8P2501B
Crystal: built-in 16M 4 Divide
Subroutine instructions:
__interrupt IntIn() Timer interrupt function
StartOneTImeSample(void) Perform a detection operation
**********************/
typedef struct
{
unsigned char u8WihtchIOCharge;
unsigned long u16ChargeTimeIo; // Fixed resistor charging time
unsigned long u16ChargeTimeHumi; // Humidity resistance charging time
}ChargeTyPe;
#define CHARGE_HUMIDITY_IO_HIGH() FP21 = 1
#define CHARGE_HUNIDITY_IO_LOW() FP21 = 0
#define CHARGE_IO_HIGH() FP20 = 1
#define CHARGE_IO_LOW() FP20 = 0
#define CHARGE_IO_HI() P2M = 0X00
#define F_data 20
__interrupt IntIn()
{
WDTR = 0X5A; // Watchdog
T0C = F_data;
m_st_ChargeType.u8WihtchIOCharge++;
if(m_st_ChargeType.u8WihtchIOCharge&0x80) // Wet charge
{
if(m_st_ChargeType.u8WihtchIOCharge >= 0x84) //High and low pulse 3:1
{
CHARGE_HUNIDITY_IO_LOW();
m_st_ChargeType.u8WihtchIOCharge = 0x80;
}
else if(m_st_ChargeType.u8WihtchIOCharge >= 0x81)
{
CHARGE_HUMIDITY_IO_HIGH();
}
}
else
{
if(m_st_ChargeType.u8WihtchIOCharge == 0x01)// Standard Charge
{
CHARGE_IO_HIGH();
}
else if(m_st_ChargeType.u8WihtchIOCharge == 0x04)// High and low pulse 3:1
{
CHARGE_IO_LOW();
m_st_ChargeType.u8WihtchIOCharge = 0x00;
}
}
m_st_ChargeType.u16ChargeTimeIo++;
FT0IRQ = 0; //clear t0 irq flag
}
void StartOneTImeSample(void)
{
CHARGE_IO_HI(); // P1 port into input as a high impedance
m_st_ChargeType.u16ChargeTimeIo = 0; // Variable initialization
if(m_st_ChargeType.u8WihtchIOCharge&0x80)
{
FP21M = 1; // Export
CHARGE_HUNIDITY_IO_LOW();
}
else
{
FP20M = 1; // Export
CHARGE_IO_LOW();
}
delay1N(2); // Delay to wait for the port stable
T0C = F_data; // Hutchison values from the new loading
FT0ENB = 1; // Timer automatically measured
while(1)
{
if(FP22) // Detecting the charging threshold
{
FT0ENB = 0; // Threshold to OFF timer
if(m_st_ChargeType.u8WihtchIOCharge&0x80)
{
m_st_ChargeType.u16ChargeTimeHumi = m_st_ChargeType.u16ChargeTimeIo;
}
break;
}
}
P2M = 0X23;
P2 = 0X00; // Discharge
FP22M = 1;
FP22 = 0;
delay1N(100);
FP22M = 0;
}