functions for the communication between SOLID slow control modules and Cprograms

Dependents:   sscm SPItest sscm

Committer:
wbeaumont
Date:
Fri Oct 23 11:22:36 2015 +0000
Revision:
12:cf007e9619e1
Parent:
7:6d3c421026df
production version archiving

Who changed what in which revision?

UserRevisionLine numberNew contents of line
wbeaumont 7:6d3c421026df 1 #include "getVersion.h"
wbeaumont 12:cf007e9619e1 2 /*
wbeaumont 12:cf007e9619e1 3 * (C) Wim Beaumont Univeristeit Antwerpen 2014 , 2015
wbeaumont 12:cf007e9619e1 4 */
wbeaumont 7:6d3c421026df 5
wbeaumont 7:6d3c421026df 6 #define GETVERSION_SRC_VER "0.10"
wbeaumont 7:6d3c421026df 7
wbeaumont 7:6d3c421026df 8 #include "mbed.h"
wbeaumont 7:6d3c421026df 9
wbeaumont 7:6d3c421026df 10 #define NULL 0
wbeaumont 7:6d3c421026df 11
wbeaumont 7:6d3c421026df 12 void getVersion::get_dec_version( unsigned short hexversion , unsigned char & version, unsigned char& subversion) {
wbeaumont 7:6d3c421026df 13 subversion =(unsigned short)( hexversion & 0xFF);
wbeaumont 7:6d3c421026df 14 hexversion=hexversion >> 8;
wbeaumont 7:6d3c421026df 15 version =(unsigned char)( hexversion & 0xFF);
wbeaumont 7:6d3c421026df 16 }
wbeaumont 7:6d3c421026df 17
wbeaumont 7:6d3c421026df 18
wbeaumont 7:6d3c421026df 19
wbeaumont 7:6d3c421026df 20 unsigned short getVersion::get_hex_version_nr(const char * vers){
wbeaumont 7:6d3c421026df 21 float verf = strtof(vers,NULL);
wbeaumont 7:6d3c421026df 22 unsigned short version=(unsigned short) verf;
wbeaumont 7:6d3c421026df 23 verf=verf-version;
wbeaumont 7:6d3c421026df 24 version = version<<8;
wbeaumont 7:6d3c421026df 25 verf=verf*100;
wbeaumont 7:6d3c421026df 26 unsigned char sub=(unsigned char)verf;
wbeaumont 7:6d3c421026df 27 version=version| sub;
wbeaumont 7:6d3c421026df 28 return version;
wbeaumont 7:6d3c421026df 29 }
wbeaumont 7:6d3c421026df 30
wbeaumont 7:6d3c421026df 31
wbeaumont 7:6d3c421026df 32
wbeaumont 7:6d3c421026df 33
wbeaumont 7:6d3c421026df 34
wbeaumont 7:6d3c421026df 35
wbeaumont 7:6d3c421026df 36 unsigned short getVersion::getHdrVersion(){
wbeaumont 7:6d3c421026df 37 if( hver == NULL) return get_hex_version_nr(GETVERSION_HDR_VER);
wbeaumont 7:6d3c421026df 38 else return get_hex_version_nr(hver);
wbeaumont 7:6d3c421026df 39 }
wbeaumont 7:6d3c421026df 40
wbeaumont 7:6d3c421026df 41 unsigned short getVersion::getSrcVersion(){
wbeaumont 7:6d3c421026df 42 if( sver == NULL) return get_hex_version_nr(GETVERSION_SRC_VER);
wbeaumont 7:6d3c421026df 43 else return get_hex_version_nr(sver);
wbeaumont 7:6d3c421026df 44 }
wbeaumont 7:6d3c421026df 45
wbeaumont 7:6d3c421026df 46
wbeaumont 7:6d3c421026df 47 unsigned short getVersion::getCompileTime(){
wbeaumont 7:6d3c421026df 48 if ( ctime == NULL ) return 0;
wbeaumont 7:6d3c421026df 49 else return 0;
wbeaumont 7:6d3c421026df 50 }
wbeaumont 7:6d3c421026df 51
wbeaumont 7:6d3c421026df 52
wbeaumont 7:6d3c421026df 53 unsigned short getVersion::getCompileDate(){
wbeaumont 7:6d3c421026df 54 if ( cdate == NULL ) return 0;
wbeaumont 7:6d3c421026df 55 else return 0;
wbeaumont 7:6d3c421026df 56 }
wbeaumont 7:6d3c421026df 57
wbeaumont 7:6d3c421026df 58 unsigned short getVersion::getCompileYear(){
wbeaumont 7:6d3c421026df 59
wbeaumont 7:6d3c421026df 60 if ( cdate == NULL ) return 0;
wbeaumont 7:6d3c421026df 61 else return 0;
wbeaumont 7:6d3c421026df 62 }