Psi Swarm robot library version 0.9

Fork of PsiSwarmV9 by Psi Swarm Robot

Revision:
17:bf614e28668f
Parent:
14:2f1ad77d281e
Child:
18:9204f74069b4
--- a/eprom.h	Thu Jun 01 23:02:32 2017 +0000
+++ b/eprom.h	Sun Jun 04 13:11:09 2017 +0000
@@ -23,6 +23,22 @@
 #ifndef EPROM_H
 #define EPROM_H
 
+
+//FIRMWARE DEFAULTS
+//Batch number (0-255), Serial number (1 - 255)
+#define FD_BATCH_NUMBER 3
+#define FD_SERIAL_NUMBER 1
+#define FD_CREATE_DAY 01
+#define FD_CREATE_MONTH 06
+#define FD_CREATE_YEAR 17
+#define FD_PCB_VERSION_BIG 1
+#define FD_PCB_VERSION_LITTLE 6
+
+//Firmware Version (eg 1.1)
+#define FD_FIRMWARE_VERSION_BIG 1
+#define FD_FIRMWARE_VERSION_LITTLE 1
+
+
 /** Eprom Class
  * Functions for accessing the 64Kb EPROM chip and reading the reserved firmware block
  *
@@ -68,7 +84,24 @@
      * @return 1 if a valid firmware is read, 0 otherwise
      */
     char read_firmware ( void );
+    
+    /** Update the firmware to include features from the current software version
+     *
+     */
+    void update_firmware( void );
+    
+    void write_firmware(char _flash_count, char _create_day, char _create_month, char _create_year, char _batch_number, char _serial_number, char _pcb_version_big, char _pcb_version_little, char _firmware_version_big, 
+                           char _firmware_version_little, char _has_compass, char _has_side_ir, char _has_base_ir, char _has_base_colour_sensor, char _has_top_colour_sensor, char _has_encoders, char _has_audio_pic, char _has_ultrasonic,
+                           char _has_temperature, char _has_recharging, char _has_433_radio, char _motor_calibration_set, char _base_ir_calibration_set, char _base_colour_calibration_set);
 
+
+    void write_string(char value);
+    
+    void write_firmware_byte ( int address, char data );
+    char read_firmware_byte ( int address );
+    
+    void IF_write_base_ir_calibration_values(short white_values[5], short black_values[5]);
+    void IF_write_base_colour_calibration_values(int white_values[4], int black_values[4]);
 };
 
 #endif
\ No newline at end of file