mirror of
https://github.com/intrepidcs/libicsneo.git
synced 2026-08-05 01:18:36 +02:00
Refining the FlexRay API
This commit is contained in:
@@ -38,6 +38,18 @@ std::vector<uint8_t> FlexRayControlMessage::BuildWriteCCRegArgs(uint8_t controll
|
||||
});
|
||||
}
|
||||
|
||||
std::vector<uint8_t> FlexRayControlMessage::BuildAddConfiguredTxMessageArgs(
|
||||
uint8_t controller, uint16_t descriptionId, uint16_t slotId, uint8_t baseCycle, uint8_t cycleReps, FlexRay::Channel channel) {
|
||||
return BuildBaseControlArgs(controller, FlexRay::Opcode::AddConfiguredTxMessage, {
|
||||
uint8_t(descriptionId),
|
||||
uint8_t(descriptionId >> 8),
|
||||
uint8_t(slotId),
|
||||
uint8_t(slotId >> 8),
|
||||
uint8_t(baseCycle + cycleReps),
|
||||
uint8_t(channel)
|
||||
});
|
||||
}
|
||||
|
||||
FlexRayControlMessage::FlexRayControlMessage(const Packet& packet) : Message() {
|
||||
if(packet.data.size() < 2)
|
||||
return; // huh?
|
||||
|
||||
@@ -21,7 +21,7 @@ std::shared_ptr<FlexRayMessage> HardwareFlexRayPacket::DecodeToMessage(const std
|
||||
// Eventually we'll have to get this from the framelen
|
||||
} else {
|
||||
msg->tsslen = data->tss_length_12_5ns * 12.5e-9;
|
||||
msg->channelB = data->statusBits.bits.chb;
|
||||
msg->channel = data->statusBits.bits.chb ? icsneo::FlexRay::Channel::B : icsneo::FlexRay::Channel::A;
|
||||
|
||||
if(data->statusBits.bits.bytesRxed >= 5) {
|
||||
if(data->statusBits.bits.hcrc_error)
|
||||
|
||||
Reference in New Issue
Block a user