forked from GerhardHoffmann/DCLibraries
125 lines
4.0 KiB
C
Executable File
125 lines
4.0 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
|
|
|
|
|
|
|
|
|
|
#endif // TSLIB_H
|
|
|
|
|
|
// qDebug << QDateTime::currentDateTime().toString(Qt::ISODateWithMs) << QByteArray((const char*)dataSendBuf,dataBufLen).toHex(':');
|