A1210/Core/Inc/struct.h

120 lines
2.6 KiB
C

/*
* struct.h
*
* Created on: 23 ���. 2019 �.
* Author: toporov
*/
#ifndef STRUCT_H_
#define STRUCT_H_
#include "stm32f4xx_hal.h"
#include <stdbool.h>
typedef union
{
uint8_t ch[4];
uint16_t sh[2];
uint32_t lg;
float fl;
} sfloat;
typedef union{
uint8_t ch[4];
float fl;
} usfloat;
typedef union
{
uint8_t ch[8];
uint16_t sh[4];
uint32_t lg[2];
float fl32[2];
double fl64;
} sfloat64;
typedef union
{
uint8_t ch[4];
uint32_t lg;
} ulong_t;
typedef union
{
uint8_t ch[4];
int32_t lg;
} long_t;
typedef union{
uint8_t ch[2];
uint16_t sh;
} usshort;
typedef union
{
uint8_t ch[2];
int16_t sh;
} sshort_t;
//*********************************************************************************************************************************
//*********************************************************************************************************************************
//*********************************************************************************************************************************
typedef struct
{ //êîëëè÷êñòâî áàéò äîëæíî äåëèòñÿ íà 4 èíà÷å íå ïèøåò!
uint16_t OWN; // 0,1 4001 // Àäðåñ óñòðîéñòâà
uint16_t BAUD; // 2,3 4002 // ñêîðîñòü ïåðåäà÷è
uint16_t INFB; // 4,5 4003 //áèò ÷åòíîñòè
uint16_t IIN; // 6,7 5001 //òèï çàðÿäà ACP=
uint16_t IFV; // 8,9 5002 //ôèëüòð âåðõíèõ ÷àñòîò
uint16_t IFN; // 10,11 5003 //íèæíèõ
uint16_t IKU; // 12,13 5004 //Êîýô óñèëåíèÿ
uint16_t IKE; // 14,15 5005 // Legacy a141
uint16_t IKD; // 16,17 5006 // Legacy a141
uint16_t IKS; // 18,19 5007 // Legacy a141
uint16_t IPZ; // 20,21 5008 // ïðèçíàê ïëàâ çåìëè
uint16_t OPZ; // 22,23 5009 // Legacy a141
uint16_t UNIT; // 22,23 5010 // Çíà÷åíèÿ
uint16_t OVERLOAD; // 24,25 5011 // Èñïîëüçóþ äëÿ ïåðåäà÷è ïåðåãðóçêè
uint16_t IK0; // 14,15 5012 // çíàêîìåñòî 0
uint16_t IK1; // 16,17 5013 // çíàêîìåñòî 1
uint16_t IK2; // 18,19 5014 // çíàêîìåñòî 2
uint16_t IK3; // 20,21 5015 // çíàêîìåñòî 3
uint16_t IK4; // 22,23 5016 // çíàêîìåñòî 4
uint16_t IK5; // 22,23 5017 // çíàêîìåñòî 5
float KCOND; // 28,29,30,31 7501 //Legacy a141
float SENS; // 32,33,34,35 7502 //äóáëèðîâàíèå (êîýôèöèýíò ïðåîáðàçîâàíèÿ)
float ACCEL; // 32,33,34,35 7503 //Legacy a141
} UserData_TypeDef; // ********LENGTH = ** bytes***********
typedef struct {
uint16_t Ku0_1;
uint16_t Ku0_2;
uint16_t Ku0_5;
uint16_t Ku1;
uint16_t Ku2;
uint16_t Ku5;
uint16_t Ku10;
uint16_t Ku20;
uint16_t Ku50;
uint16_t Ku100;
uint16_t Ku200;
uint16_t Ku500;
uint16_t Ku1000;
} CorrectonKuStruct_TypeDef;
#endif /* STRUCT_H_ */