Ejemplo n.º 1
0
void PTApplicationCardPlugin::enumerateAPPCard()
{
    tempAddr=0;
    baseAddr = 0x0000000;

    for(int l_nAppcardIndex=0;l_nAppcardIndex<4;l_nAppcardIndex++)
    {
    	int l_nAppFD = open(mapDeviceString.value(l_nAppcardIndex),O_RDWR);
    	if (l_nAppFD < 0)
		{
            printf("Can't open device for Application card communication.\n");
            close(l_nAppFD);
		}
		m_nAppFD = l_nAppFD;
    	if( readAppCardCodeId() == 0x1982)
    	{
    		if(l_nAppcardIndex == 0)
    		{
    			writeScratchpad(0x40);
    		}
    		else if(l_nAppcardIndex == 1)
    		{
    			writeScratchpad(0x10);
    		}
    		else if(l_nAppcardIndex == 2)
    		{
    			writeScratchpad(0x04);
    		}
    		else if(l_nAppcardIndex == 4)
    		{
    			writeScratchpad(0x01);
    		}
    		qDebug()<<"APPCARD CODE ID:"<<hex<<readAppCardCodeId();
        	break;
    	}
    }

}
Ejemplo n.º 2
0
void DS18B20::setResolution(uint8_t resolution) {
    resolution = constrain(resolution, 9, 12);

    switch (resolution) {
        case 9:
            selectedScratchpad[CONFIGURATION] = RES_9_BIT;
            break;
        case 10:
            selectedScratchpad[CONFIGURATION] = RES_10_BIT;
            break;
        case 11:
            selectedScratchpad[CONFIGURATION] = RES_11_BIT;
            break;
        case 12:
            selectedScratchpad[CONFIGURATION] = RES_12_BIT;
            break;
    }

    if (resolution > globalResolution) {
        globalResolution = resolution;
    }

    writeScratchpad();
}
Ejemplo n.º 3
0
void DS18B20::setAlarmHigh(int8_t alarmHigh) {
    alarmHigh = constrain(alarmHigh, -55, 125);
    selectedScratchpad[ALARM_HIGH] = alarmHigh;
    writeScratchpad();
}
Ejemplo n.º 4
0
void DS18B20::setAlarmLow(int8_t alarmLow) {
    alarmLow = constrain(alarmLow, -55, 125);
    selectedScratchpad[ALARM_LOW] = alarmLow;
    writeScratchpad();
}
Ejemplo n.º 5
0
void DS18B20::setAlarms(int8_t alarmLow, int8_t alarmHigh) {
    setAlarmLow(alarmLow);
    setAlarmHigh(alarmHigh);
    writeScratchpad();
}