Creates DAC interface

Fork of DevInterfaces by wimbeaumont Project

Committer:
wbeaumont
Date:
Wed Jan 13 14:14:39 2016 +0000
Revision:
2:58f1d5a3f850
Parent:
1:5672673314f9
for getVersion added infostr and moved constructor implementation to src file

Who changed what in which revision?

UserRevisionLine numberNew contents of line
wbeaumont 0:da1fb7dd363f 1 #include "getVersion.h"
wbeaumont 0:da1fb7dd363f 2
wbeaumont 2:58f1d5a3f850 3 #define GETVERSION_SRC_VER "0.20"
wbeaumont 1:5672673314f9 4 #ifdef MBED
wbeaumont 0:da1fb7dd363f 5 #include "mbed.h"
wbeaumont 1:5672673314f9 6 #else
wbeaumont 1:5672673314f9 7 #include <stdlib.h>
wbeaumont 2:58f1d5a3f850 8 #include <stdio.h>
wbeaumont 1:5672673314f9 9 #endif
wbeaumont 0:da1fb7dd363f 10
wbeaumont 0:da1fb7dd363f 11 #define NULL 0
wbeaumont 0:da1fb7dd363f 12
wbeaumont 2:58f1d5a3f850 13
wbeaumont 2:58f1d5a3f850 14 getVersion::getVersion(const char* ver_h,const char* ver_s, const char* time,const char* date) {
wbeaumont 2:58f1d5a3f850 15 sver=ver_s; hver=ver_h; ctime=time;cdate=date;
wbeaumont 2:58f1d5a3f850 16 sprintf(infostr,"HDR ver: %s, SRC ver: %s",sver,hver);
wbeaumont 2:58f1d5a3f850 17
wbeaumont 2:58f1d5a3f850 18 } ;
wbeaumont 2:58f1d5a3f850 19
wbeaumont 2:58f1d5a3f850 20 getVersion::getVersion(){sver=0; hver=0; ctime=0;cdate=0;
wbeaumont 2:58f1d5a3f850 21 sprintf(infostr,"HDR ver: %s, SRC ver: %s",GETVERSION_HDR_VER,GETVERSION_SRC_VER);
wbeaumont 2:58f1d5a3f850 22 };
wbeaumont 2:58f1d5a3f850 23
wbeaumont 2:58f1d5a3f850 24
wbeaumont 0:da1fb7dd363f 25 void getVersion::get_dec_version( unsigned short hexversion , unsigned char & version, unsigned char& subversion) {
wbeaumont 0:da1fb7dd363f 26 subversion =(unsigned short)( hexversion & 0xFF);
wbeaumont 0:da1fb7dd363f 27 hexversion=hexversion >> 8;
wbeaumont 0:da1fb7dd363f 28 version =(unsigned char)( hexversion & 0xFF);
wbeaumont 0:da1fb7dd363f 29 }
wbeaumont 0:da1fb7dd363f 30
wbeaumont 0:da1fb7dd363f 31
wbeaumont 0:da1fb7dd363f 32
wbeaumont 0:da1fb7dd363f 33 unsigned short getVersion::get_hex_version_nr(const char * vers){
wbeaumont 0:da1fb7dd363f 34 float verf = strtof(vers,NULL);
wbeaumont 0:da1fb7dd363f 35 unsigned short version=(unsigned short) verf;
wbeaumont 0:da1fb7dd363f 36 verf=verf-version;
wbeaumont 0:da1fb7dd363f 37 version = version<<8;
wbeaumont 0:da1fb7dd363f 38 verf=verf*100;
wbeaumont 0:da1fb7dd363f 39 unsigned char sub=(unsigned char)verf;
wbeaumont 0:da1fb7dd363f 40 version=version| sub;
wbeaumont 0:da1fb7dd363f 41 return version;
wbeaumont 0:da1fb7dd363f 42 }
wbeaumont 0:da1fb7dd363f 43
wbeaumont 0:da1fb7dd363f 44
wbeaumont 0:da1fb7dd363f 45
wbeaumont 0:da1fb7dd363f 46
wbeaumont 0:da1fb7dd363f 47
wbeaumont 0:da1fb7dd363f 48
wbeaumont 0:da1fb7dd363f 49 unsigned short getVersion::getHdrVersion(){
wbeaumont 0:da1fb7dd363f 50 if( hver == NULL) return get_hex_version_nr(GETVERSION_HDR_VER);
wbeaumont 0:da1fb7dd363f 51 else return get_hex_version_nr(hver);
wbeaumont 0:da1fb7dd363f 52 }
wbeaumont 0:da1fb7dd363f 53
wbeaumont 0:da1fb7dd363f 54 unsigned short getVersion::getSrcVersion(){
wbeaumont 0:da1fb7dd363f 55 if( sver == NULL) return get_hex_version_nr(GETVERSION_SRC_VER);
wbeaumont 0:da1fb7dd363f 56 else return get_hex_version_nr(sver);
wbeaumont 0:da1fb7dd363f 57 }
wbeaumont 0:da1fb7dd363f 58
wbeaumont 0:da1fb7dd363f 59
wbeaumont 0:da1fb7dd363f 60 unsigned short getVersion::getCompileTime(){
wbeaumont 0:da1fb7dd363f 61 if ( ctime == NULL ) return 0;
wbeaumont 0:da1fb7dd363f 62 else return 0;
wbeaumont 0:da1fb7dd363f 63 }
wbeaumont 0:da1fb7dd363f 64
wbeaumont 0:da1fb7dd363f 65
wbeaumont 0:da1fb7dd363f 66 unsigned short getVersion::getCompileDate(){
wbeaumont 0:da1fb7dd363f 67 if ( cdate == NULL ) return 0;
wbeaumont 0:da1fb7dd363f 68 else return 0;
wbeaumont 0:da1fb7dd363f 69 }
wbeaumont 0:da1fb7dd363f 70
wbeaumont 0:da1fb7dd363f 71 unsigned short getVersion::getCompileYear(){
wbeaumont 0:da1fb7dd363f 72
wbeaumont 0:da1fb7dd363f 73 if ( cdate == NULL ) return 0;
wbeaumont 0:da1fb7dd363f 74 else return 0;
wbeaumont 2:58f1d5a3f850 75 }
wbeaumont 2:58f1d5a3f850 76
wbeaumont 2:58f1d5a3f850 77 char* getVersion::getversioninfo(){
wbeaumont 2:58f1d5a3f850 78 return infostr;
wbeaumont 2:58f1d5a3f850 79 }
wbeaumont 2:58f1d5a3f850 80
wbeaumont 2:58f1d5a3f850 81