Changeset - 72e77cc21515
[Not reviewed]
tip default
0 2 0
ethanzonca@CL-ENS241-08.cedarville.edu - 12 years ago 2013-04-29 20:58:32
ethanzonca@CL-ENS241-08.cedarville.edu
Digital read fixes
2 files changed with 13 insertions and 6 deletions:
0 comments (0 inline, 0 general)
slave/slave/lib/sensors.c
Show inline comments
 
@@ -33,7 +33,8 @@ uint16_t vBatt;		// battery voltage
 
int8_t analogL;		// Low byte of ADC
 
int16_t analog[8];		// Read analog voltage from ADC
 
 
uint8_t digital;	// Byte that contains the digital inputs from PORTA
 
uint8_t digitalA;	// Byte that contains the digital inputs from PORTA
 
uint8_t digitalD;	// Byte that contains the digital inputs from PORTD
 
 
int16_t ac1;		// The following 11 variables are the calibration values for the BMP085
 
int16_t ac2;
 
@@ -257,7 +258,7 @@ void sensors_readAnalog(uint8_t pin)
 
void sensors_readDigitalPORTA(uint8_t pin)
 
{
 
	DDRA &= ~(1 << pin);		// Set pin to input
 
	digital |= (~(1 << pin)) & PINA;
 
	digitalA |= (~(1 << pin)) & PINA;
 
}
 
 
void sensors_readDigitalPORTD(uint8_t pin)
 
@@ -265,7 +266,7 @@ void sensors_readDigitalPORTD(uint8_t pi
 
	if(pin > 3 && pin < 7)
 
	{
 
		DDRD &= ~(1 << pin);		// Set pin to input
 
		digital |= (~(1 << pin)) & PIND;
 
		digitalD |= (~(1 << pin)) & PIND;
 
	}
 
}
 
 
@@ -304,9 +305,14 @@ int16_t sensors_getAnalog(uint8_t pin)		
 
	return analog[pin];
 
}
 
 
uint8_t sensors_getDigital(uint8_t pin)		// Gets battery voltage from variable
 
uint8_t sensors_getDigitalPORTA(uint8_t pin)		// Gets battery voltage from variable
 
{
 
	return ((digital >> pin) & 1);
 
	return ((digitalA >> pin) & 1);
 
}
 
 
uint8_t sensors_getDigitalPORTD(uint8_t pin)		// Gets battery voltage from variable
 
{
 
	return ((digitalD >> pin) & 1);
 
}
 
 
uint32_t sensors_getAltitude(void)
slave/slave/lib/sensors.h
Show inline comments
 
@@ -29,6 +29,7 @@ uint32_t sensors_getLux(void);		// Gets 
 
uint16_t sensors_getBatt(void);		// Gets battery voltage from variable
 
uint32_t sensors_getAltitude(void);	// Gets altitude from variable
 
int16_t sensors_getAnalog(uint8_t pin);		// Gets battery voltage from variable
 
uint8_t sensors_getDigital(uint8_t pin);		// Gets battery voltage from variable
 
uint8_t sensors_getDigitalPORTA(uint8_t pin);		// Gets battery voltage from variable
 
uint8_t sensors_getDigitalPORTD(uint8_t pin);
 
 
#endif /* SENSORS_H_ */
 
\ No newline at end of file
0 comments (0 inline, 0 general)