MotorControlModuleSDFM_TMS3.../Projects/EFC_Application/UMLibrary/driver/chipset/PackagerADS1259.cpp

45 lines
985 B
C++

/*
* PackagerADS1259.cpp
*
* Created on: 7 àâã. 2019 ã.
* Author: user
*/
#include "PackagerADS1259.hh"
#include <cstring>
const std::size_t driver::chipset::PackagerADS1259::FrameSize = 32;
unsigned long last_pack = 0;
driver::chipset::PackagerADS1259::Frame driver::chipset::PackagerADS1259::encode(RegAddress rg_address, Data data,
bool write_nread) {
const RegisterAddressAndData frame( rg_address, write_nread, data );
Frame pack;
std::memcpy( &pack, &frame, sizeof(Frame) );
last_pack = pack;
return pack;
}
driver::chipset::PackagerADS1259::Frame driver::chipset::PackagerADS1259::encode(RegAddress control_reg) {
const CommandRegisterForm frame ( control_reg );
Frame pack;
std::memcpy( &pack, &frame, sizeof(Frame) );
return pack;
}
driver::chipset::PackagerADS1259::Data driver::chipset::PackagerADS1259::decode(Frame frame) {
return (frame >> 24) & 0xFFul;
}