Changeset - 51e4ad5deebf
[Not reviewed]
default
0 3 0
kripperger@CL-SEC241-09.cedarville.edu - 12 years ago 2013-02-01 22:04:40
kripperger@CL-SEC241-09.cedarville.edu
Finished Master comms format
3 files changed with 16 insertions and 53 deletions:
0 comments (0 inline, 0 general)
slave/slave/config.h
Show inline comments
 
@@ -19,16 +19,16 @@
 
#define BUFFER_SIZE 32
 
 
// Maximum payload size of command
 
#define MAX_PAYLOAD_LEN 16
 
 
// Number of datatypes to transmit per module type
 
#define DATATYPES_GENERIC 1
 
#define DATATYPES_SENSOR 3 //Should be set to more
 
#define DATATYPES_GEIGER 2
 
#define DATATYPES_CAMERA 1
 
#define DATATYPES_GENERIC 3
 
#define DATATYPES_SENSOR 8
 
#define DATATYPES_GEIGER 4
 
#define DATATYPES_CAMERA 3
 
 
//Sensors and IO
 
#define SENSOR_LOOP 200				// Frequency of sensor reads (in ms)
 
#define HEATER_THRESHOLD 40			// Temperature threshold in Fahrenheit where heater is activated
 
 
 //I2C Addresses
slave/slave/lib/masterComm.c
Show inline comments
 
@@ -86,26 +86,17 @@ void masterComm_packetSend_signed(uint8_
 
 
void masterComm_modules()
 
{
 
	// Send Board Temperature (Common for all modules)
 
	masterComm_packetSend_signed(0,sensors_getBoardTemp());
 
 
	
 
	// Send Heater Status (Common for all modules)
 
	serial0_sendChar('[');
 
	snprintf(buff2,64,"1%u",/*Heater Status Function Here */2);
 
	serial0_sendString(buff2);
 
	serial0_sendChar(']');	
 
	serial0_sendChar(masterComm_checksum(buff2));	
 
	masterComm_packetSend_unsigned(1,/*Heater Status Get Function Here */0);
 
	
 
	// Send Battery Level (Common for all modules)
 
	serial0_sendChar('[');
 
	snprintf(buff2,64,"2%u",/*Heater Status Function Here */2);
 
	serial0_sendString(buff2);
 
	serial0_sendChar(']');	
 
	serial0_sendChar(masterComm_checksum(buff2));	
 
	masterComm_packetSend_unsigned(2,/*Battery Level Get Function Here */0);
 
	
 
	
 
	// Send module specific sensor readings
 
	switch(io_getModuleId())
 
	{
 
		case 0:
 
@@ -114,65 +105,38 @@ void masterComm_modules()
 
			break;
 
		
 
		case 1:
 
			// Sensors
 
			
 
			// Send SPI Temperature (Air)
 
			serial0_sendChar('[');
 
			snprintf(buff2,64,"2%u",sensors_getSpiTemp());
 
			serial0_sendString(buff2);
 
			serial0_sendChar(']');
 
			serial0_sendChar(masterComm_checksum(buff2));
 
			masterComm_packetSend_unsigned(3,sensors_getSpiTemp());
 
			
 
			// Send Ambient Light (Needs to be formatted)
 
			serial0_sendChar('[');
 
			snprintf(buff2,64,"3%u",geiger_getCpm());		//FIX
 
			serial0_sendString(buff2);
 
			serial0_sendChar(']');
 
			serial0_sendChar(masterComm_checksum(buff2));
 
			masterComm_packetSend_unsigned(4,/*Ambient Light Get Function Here */0);
 
			
 
/*			
 
			// Send CPM (radiation)
 
			serial0_sendChar('[');
 
			snprintf(buff2,64,"7%u",geiger_getCpm());
 
			serial0_sendString(buff2);
 
			serial0_sendChar(']');
 
			serial0_sendChar(masterComm_checksum(buff2));
 
			// Send Humidity
 
			masterComm_packetSend_unsigned(5,/*Humidity Get Function Here */0);		
 
		
 
			// Send CPM (radiation)
 
			serial0_sendChar('[');
 
			snprintf(buff2,64,"7%u",geiger_getCpm());
 
			serial0_sendString(buff2);
 
			serial0_sendChar(']');
 
			serial0_sendChar(masterComm_checksum(buff2));
 
			// Send Pressure 
 
			masterComm_packetSend_unsigned(6,/*Pressure Get Function Here */0);			
 
		
 
			// Send CPM (radiation)
 
			serial0_sendChar('[');
 
			snprintf(buff2,64,"7%u",geiger_getCpm());
 
			serial0_sendString(buff2);
 
			serial0_sendChar(']');
 
			serial0_sendChar(masterComm_checksum(buff2));
 
*/
 
			
 
			// Send Altitude
 
			masterComm_packetSend_unsigned(7,/*Altitude Get Function Here */0);
 
			break;
 
			
 
		case 2:
 
			// Geiger
 
			
 
			// Send CPM (radiation)
 
			serial0_sendChar('[');
 
			snprintf(buff2,64,"7%u",geiger_getCpm());
 
			serial0_sendString(buff2);
 
			serial0_sendChar(']');
 
			serial0_sendChar(masterComm_checksum(buff2));
 
			
 
			masterComm_packetSend_unsigned(8,geiger_getCpm());
 
			break;
 
		
 
		case 3:
 
			// Camera
 
			
 
			
 
			break;
 
		
 
		default:
 
			
 
			break;
 
	}
slave/slave/slave.c
Show inline comments
 
@@ -83,13 +83,12 @@ int main(void)
 
			
 
			io_regulateTemp();			// Gets board temperature and enables heater if below threshold
 

	
 
			//snprintf(buff,64,"|ModuleID: %u |BoardTemp: %i |Millis: %lu |Heater: %u\r\n",io_getModuleId(),sensors_getBoardTemp(),time_millis(),io_heaterStatus()); //DEBUG
 
			//serial0_sendString(buff); //DEBUG
 

	
 
			//led_toggle(0);		// Toggle LED0(Blue) to show loop running
 
			_delay_ms(2);		// Delay to prevent the sensor loop from running again before time_millis changes
 
			led_off(0);
 
			led_off(2);
 
		}
 
 
    }
0 comments (0 inline, 0 general)