forked from GerhardHoffmann/DCLibraries
		
	
		
			
				
	
	
		
			129 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			129 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
#ifndef TSLIB_H
 | 
						|
#define TSLIB_H
 | 
						|
#include <QByteArray>
 | 
						|
#include "stdint.h"
 | 
						|
 | 
						|
#define LOWBYTE     false
 | 
						|
#define HIGHBYTE    true
 | 
						|
 | 
						|
uint16_t uchar2uint(char Highbyte, char Lowbyte);
 | 
						|
uint16_t uchar2uint(uint8_t Highbyte, uint8_t Lowbyte);
 | 
						|
uint32_t uchar2ulong(uint8_t Highbyte, uint8_t MHbyte, uint8_t MLbyte, uint8_t Lowbyte);
 | 
						|
 | 
						|
uint8_t  uint2uchar(uint16_t uival, bool getHighB);
 | 
						|
 | 
						|
uint8_t ulong2uchar(uint32_t ulval, uint8_t getBytNr);
 | 
						|
    // getBytNr: 0=LSB  3=MSB
 | 
						|
 | 
						|
 | 
						|
void delay(uint16_t MilliSec);
 | 
						|
 | 
						|
#define     MITSEK          1
 | 
						|
#define     OHNESEK         0
 | 
						|
#define     HourSys12h          1
 | 
						|
#define     HourSys24h          0
 | 
						|
 | 
						|
void GetTimeString(uint8_t hours, uint8_t minutes, uint8_t seconds, uint8_t System12h, uint8_t ShowSec, uint8_t *buf);
 | 
						|
    // generate time as ascii string from integers hours/minutes/seconds
 | 
						|
    // System12h=0:  24h system    =1: 12h System
 | 
						|
    // ShowSec=0:     String has 5 digits (hh:mm)   =1: String has 8 digits (hh:mm:ss)
 | 
						|
    // return String in *buf      // 12 byte für buf!
 | 
						|
 | 
						|
#define     DateFormatDeutsch       0
 | 
						|
#define     DateFormatAmerica       1
 | 
						|
#define     UsePointSeperator       0
 | 
						|
#define     UseSlashSeperator       1
 | 
						|
 | 
						|
 | 
						|
void GetDateString(uint8_t day, uint8_t month, uint8_t yearhigh, uint8_t yearlow, uint8_t format, uint8_t sep, uint8_t *buf);
 | 
						|
    // generate date as ascii string from integers day/month/year
 | 
						|
    // yearhigh in europe always 20 (not in arabia)
 | 
						|
    // format=  0: dd.mm.yyyy   (deutsch)
 | 
						|
    //          1: mm.dd.yyyy   (amerika)
 | 
						|
    //          2: yyyy.mm.dd   (Iran, Dubai)
 | 
						|
    //          3: dd.yyyy.mm
 | 
						|
    //          4: mm.yyyy.dd
 | 
						|
    //          5: yyyy.dd.mm
 | 
						|
        // sep: 0: use . as seperator   1: use / as seperator
 | 
						|
    // return String in *buf      // 11 byte für buf!
 | 
						|
 | 
						|
 | 
						|
void GetShortDateString(uint8_t day, uint8_t month, uint8_t yearlow, uint8_t format, uint8_t sep, uint8_t *buf);
 | 
						|
    // generate date as ascii string from integers day/month/year
 | 
						|
    // format=  0: dd.mm.yy   (deutsch)
 | 
						|
    //          1: mm.dd.yy   (amerika)
 | 
						|
    //          2: yy.mm.dd   (Iran, Dubai)
 | 
						|
    //          3: dd.yy.mm
 | 
						|
    //          4: mm.yy.dd
 | 
						|
    //          5: yy.dd.mm
 | 
						|
        // sep: 0: use . as seperator   1: use / as seperator
 | 
						|
    // return String in *buf      // 11byte für buf!
 | 
						|
 | 
						|
 | 
						|
uint16_t tslib_strlen(char *buf);
 | 
						|
uint16_t tslib_strlen(uint8_t *buf);
 | 
						|
 | 
						|
void tslib_strclr(char *buf, char clrsign, uint16_t len);
 | 
						|
void tslib_strclr(uint8_t *buf, char clrsign, uint16_t len);
 | 
						|
 | 
						|
void tslib_strcpy(char *srcbuf, char *destbuf, uint16_t len);
 | 
						|
void tslib_strcpy(char *srcbuf, uint8_t *destbuf, uint16_t len);
 | 
						|
void tslib_strcpy(uint8_t *srcbuf, uint8_t *destbuf, uint16_t len);
 | 
						|
 | 
						|
 | 
						|
uint16_t tslib_calcCrcCcitt(uint16_t BufLength, uint8_t *buf);
 | 
						|
 | 
						|
bool tslib_isDecAsciiNumber(char sign);
 | 
						|
bool tslib_isHexAsciiNumber(char sign);
 | 
						|
 | 
						|
 | 
						|
int tslib_getMinimum(int val1, int val2);
 | 
						|
 | 
						|
void tslib_text2array(QByteArray text, char *aray, uint16_t maxArayLen);
 | 
						|
    // usage:  tslib_text2array("my text", ctmp, 50);
 | 
						|
 | 
						|
void biox_CopyBlock(uint8_t *src, uint16_t srcPos, uint8_t *dest, uint16_t destPos, uint16_t len);
 | 
						|
    // both buffers starting from pos 0
 | 
						|
 | 
						|
bool tslib_strComp(uint8_t *buf, char *compStr);
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
uint16_t tslib_StrLen(char *str);
 | 
						|
 | 
						|
 | 
						|
 | 
						|
void tslib_itoa(int n, char *str);
 | 
						|
    // -23456 -> str[0]='-'   str[1]='2' ...[5]='6' str[6]=0
 | 
						|
    // 5      -> str[0]='5'   str[1..6]=0
 | 
						|
 | 
						|
void tslib_uitoa(unsigned int n, char *str);
 | 
						|
 | 
						|
void tslib_ltoa(long n, char *str);
 | 
						|
    // -2147483647 -> str[0]='-'   str[1]='2' ...[10]='6' str[11]=0
 | 
						|
 | 
						|
void tslib_ultoa( long n, char *str);
 | 
						|
    // 0... ->4294967296   str[0]='4'   str[1]='2' ...[9]='6' str[10]=0   str[11]=0
 | 
						|
 | 
						|
void tslib_uitobin( int  decval, char *str);
 | 
						|
 | 
						|
long tslib_atol( char *AscString);
 | 
						|
    // change ascii string ( of ascii numbers '0'..'9') to number
 | 
						|
    // AscString must be 0-terminated!
 | 
						|
    // a leading '-' is ignored, a'.' or a ',' stops calculation
 | 
						|
 | 
						|
void swl_returnWeekdayStr(char dow, char language, char *buf);
 | 
						|
    // dow=1...7
 | 
						|
    // always returns 10byte
 | 
						|
    // languages: 1=german  2=english
 | 
						|
 | 
						|
 | 
						|
 | 
						|
#endif // TSLIB_H
 | 
						|
 | 
						|
 | 
						|
// qDebug << QDateTime::currentDateTime().toString(Qt::ISODateWithMs) << QByteArray((const char*)dataSendBuf,dataBufLen).toHex(':');
 |