/*	setSensorMode: It sets ON/OFF the different sensor switches
 *	Parameters:	uint8_t mode 
 * 						- SENS_ON : turn on the sensor
 * 						- SENS_OFF : turn off the sensor
 * 				uint16_t sensor
 * 							- SENS_CITIES_DUST : Dust Sensor
 * 							- SENS_CITIES_LD : Linear Displacement Sensor
 * 							- SENS_CITIES_AUDIO : Noise Sensor
 * 							- SENS_CITIES_HUMIDITY : Humidity Sensor
 * 							- SENS_CITIES_TEMPERATURE : Temperature Sensor
 * 							- SENS_CITIES_ULTRASOUND : Ultrasound Sensor
 * 							- SENS_CITIES_LDR : Luminosity Sensor
 *	 						- SENS_CITIES_CD : Crack detection Sensor
 * 							- SENS_CITIES_CP : Crack propagation Sensor
 *  Return:		int8_t error
 * 						1 : success
 * 						0 : wrong mode selected
 * 						-1: wrong sensor selected
 * 
 */
int8_t	WaspSensorCities::setSensorMode(uint8_t mode, uint16_t sensor)
{
	if( mode==SENS_ON )
	{
		switch( sensor )
		{
			case	SENS_CITIES_DUST			:	digitalWrite(DIGITAL2,HIGH);
													break;
			case	SENS_CITIES_LD				:	digitalWrite(DIGITAL1,HIGH);
													break;
			case	SENS_CITIES_AUDIO			:	digitalWrite(DIGITAL6,HIGH);
													//Set amplifiers gain
													setAudioGain(49,1.89);
													break;
			case	SENS_CITIES_HUMIDITY		:	digitalWrite(DIGITAL2,HIGH);
													break;
			case	SENS_CITIES_TEMPERATURE		:	digitalWrite(DIGITAL2,HIGH);
													break;
			case	SENS_CITIES_ULTRASOUND_5V	:	digitalWrite(DIGITAL2,HIGH);
													break;
			case	SENS_CITIES_ULTRASOUND_3V3	:	digitalWrite(DIGITAL2,HIGH);
													break;
			case	SENS_CITIES_LDR				:	digitalWrite(DIGITAL2,HIGH);
													break;
			case	SENS_CITIES_CD				:	digitalWrite(DIGITAL2,HIGH);
													break;
			case	SENS_CITIES_CP				:	digitalWrite(DIGITAL2,HIGH);
													break;
			default								:	return -1;
		}
	} else if( mode==SENS_OFF )
	{
		switch( sensor )
		{
			case	SENS_CITIES_DUST			:	digitalWrite(DIGITAL2,LOW);
													break;
			case	SENS_CITIES_LD				:	digitalWrite(DIGITAL1,LOW);
													break;
			case	SENS_CITIES_AUDIO			:	digitalWrite(DIGITAL6,LOW);
													break;
			case	SENS_CITIES_HUMIDITY		:	digitalWrite(DIGITAL2,LOW);
													break;
			case	SENS_CITIES_TEMPERATURE		:	digitalWrite(DIGITAL2,LOW);
													break;
			case	SENS_CITIES_ULTRASOUND_5V	:	digitalWrite(DIGITAL2,LOW);
													break;
			case	SENS_CITIES_ULTRASOUND_3V3	:	digitalWrite(DIGITAL2,LOW);
													break;
			case	SENS_CITIES_LDR				:	digitalWrite(DIGITAL2,LOW);
													break;
			case	SENS_CITIES_CD				:	digitalWrite(DIGITAL2,LOW);
													break;
			case	SENS_CITIES_CP				:	digitalWrite(DIGITAL2,LOW);
													break;
			default								:	return -1;
		}
	} else return 0;
	
	return 1;
}
Esempio n. 2
0
void DockAudio::readSettings(QSettings *settings)
{
    if (!settings)
        return;

    bool conv_ok = false;

    int gain = settings->value("audio/gain", QVariant( -200 ) ).toInt(&conv_ok);
    if (conv_ok) {
        setAudioGain(gain);
    }
}
Esempio n. 3
0
void DockAudio::readSettings(QSettings *settings)
{
    if (!settings)
        return;

    bool conv_ok = false;

    int gain = settings->value("audio/gain", QVariant(-200)).toInt(&conv_ok);
    if (conv_ok)
        setAudioGain(gain);

    // Location of audio recordings
    rec_dir = settings->value("audio/rec_dir", QDir::homePath()).toString();
    audioOptions->setRecDir(rec_dir);

    // Audio streaming host and port
    udp_host = settings->value("audio/udp_host", "localhost").toString();
    udp_port = settings->value("audio/udp_port", 7355).toInt(&conv_ok);
    if (!conv_ok)
        udp_port = 7355;

    audioOptions->setUdpHost(udp_host);
    audioOptions->setUdpPort(udp_port);
}