Files
EJM_Display/PublicFunctions/Basic.h.bak

85 lines
3.0 KiB
C
Raw Normal View History

2025-10-20 22:28:37 +08:00
#ifndef BASIC_H
#define BASIC_H
#include <GlobalDefinitions/DataType.h>
#include <QCoreApplication>
#include <QTime>
/**
* @brief map ,x的值,out_min到out_max的范围内
* @param x
* @param in_min x有可能的最小值
* @param in_max x有可能的最大值
* @param out_min
* @param out_max
* @return
*/
M_d64 map(M_d64 x, M_d64 in_min, M_d64 in_max, M_d64 out_min, M_d64 out_max);
/**
* @brief Sleep_ms 线
* @param msec
*/
void Sleep_ms(M_u16 msec);
/**
* @brief 32 N
* @param data 32 uint32_t int32_t
* @param bitIndex 0 = /131 = /32
* @param defaultValue false
* @return bool true = 1false = 0
*/
bool getBitOf32Data(uint32_t data, int bitIndex, bool defaultValue = false);
/**
* @brief 32 N 1
* @param data 32
* @param bitIndex 0 = 31 =
* @return bool true false data
*/
bool setBitOf32Data(uint32_t &data, int bitIndex);
/**
* @brief 32 N 0
* @param data 32
* @param bitIndex 0 = 31 =
* @return bool true false data
*/
bool clearBitOf32Data(uint32_t &data, int bitIndex);
/**
* @brief 32 N
* @param data 32
* @param bitIndex 0 = 31 =
* @param bitValue true = 1false = 0
* @return bool true false data
*/
bool writeBitOf32Data(uint32_t &data, int bitIndex, bool bitValue);
/**
* @brief QVariant
* @param variant QVariant
* @param decimalDigits2
* @return
*/
QString variantToFormattedString(const QVariant& variant, int decimalDigits);
/**
* uint32_t的8位部分
* @param data 32
* @param index 0=HH(8), 1=HL(8), 2=LH(8), 3=LL(8)
* @return 8
* @throws std::out_of_range 0-3
*/
uint8_t extractUInt32_8BitPart(uint32_t data, uint8_t index);
/**
* uint32_t的16位部分
* @param data 32
* @param index 0=16, 1=16
* @return 16uint16_t类型
* @throws std::out_of_range 0-1
*/
uint16_t extractUInt32_16BitPart(uint32_t data, int index);
#endif // BASIC_H