Enum NegativeResponseCode

Source
#[repr(u8)]
pub enum NegativeResponseCode {
Show 41 variants PositiveResponse = 0, GeneralReject = 16, ServiceNotSupported = 17, SubFunctionNotSupported = 18, IncorrectMessageLengthOrInvalidFormat = 19, ResponseTooLong = 20, BusyRepeatRequest = 33, ConditionsNotCorrect = 34, RequestSequenceError = 36, NoResponseFromSubnetComponent = 37, FailurePreventsExecutionOfRequestedAction = 38, RequestOutOfRange = 49, SecurityAccessDenied = 51, InvalidKey = 53, ExceededNumberOfAttempts = 54, RequiredTimeDelayNotExpired = 55, UploadDownloadNotAccepted = 112, TransferDataSuspended = 113, GeneralProgrammingFailure = 114, WrongBlockSequenceCounter = 115, RequestCorrectlyReceivedResponsePending = 120, SubfunctionNotSupportedInActiveSession = 126, ServiceNotSupportedInActiveSession = 127, RpmTooHigh = 129, RpmTooLow = 130, EngineIsRunning = 131, EngineIsNotRunning = 132, EngineRunTimeTooLow = 133, TemperatureTooHigh = 134, TemperatureTooLow = 135, VehicleSpeedTooHigh = 136, VehicleSpeedTooLow = 137, ThrottlePedalTooHigh = 138, ThrottlePedalTooLow = 139, TransmissionRangeNotInNeutral = 140, TransmissionRangeNotInGear = 141, BrakeSwitchNotClosed = 143, ShiftLeverNotInPark = 144, TorqueConverterClutchLocked = 145, VoltageTooHigh = 146, VoltageTooLow = 147,
}
Expand description

So called NRC - when server (ECU) sends negative response (SID 0x7F) it is followed by NRC byte, representing the error.

Variants§

§

PositiveResponse = 0

§

GeneralReject = 16

§

ServiceNotSupported = 17

§

SubFunctionNotSupported = 18

§

IncorrectMessageLengthOrInvalidFormat = 19

§

ResponseTooLong = 20

§

BusyRepeatRequest = 33

§

ConditionsNotCorrect = 34

§

RequestSequenceError = 36

§

NoResponseFromSubnetComponent = 37

§

FailurePreventsExecutionOfRequestedAction = 38

§

RequestOutOfRange = 49

§

SecurityAccessDenied = 51

§

InvalidKey = 53

§

ExceededNumberOfAttempts = 54

§

RequiredTimeDelayNotExpired = 55

§

UploadDownloadNotAccepted = 112

§

TransferDataSuspended = 113

§

GeneralProgrammingFailure = 114

§

WrongBlockSequenceCounter = 115

§

RequestCorrectlyReceivedResponsePending = 120

§

SubfunctionNotSupportedInActiveSession = 126

§

ServiceNotSupportedInActiveSession = 127

§

RpmTooHigh = 129

§

RpmTooLow = 130

§

EngineIsRunning = 131

§

EngineIsNotRunning = 132

§

EngineRunTimeTooLow = 133

§

TemperatureTooHigh = 134

§

TemperatureTooLow = 135

§

VehicleSpeedTooHigh = 136

§

VehicleSpeedTooLow = 137

§

ThrottlePedalTooHigh = 138

§

ThrottlePedalTooLow = 139

§

TransmissionRangeNotInNeutral = 140

§

TransmissionRangeNotInGear = 141

§

BrakeSwitchNotClosed = 143

§

ShiftLeverNotInPark = 144

§

TorqueConverterClutchLocked = 145

§

VoltageTooHigh = 146

§

VoltageTooLow = 147

Trait Implementations§

Source§

impl Debug for NegativeResponseCode

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl From<NegativeResponseCode> for u8

Source§

fn from(enum_value: NegativeResponseCode) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for NegativeResponseCode

Source§

fn eq(&self, other: &NegativeResponseCode) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl TryFrom<u8> for NegativeResponseCode

Source§

type Error = TryFromPrimitiveError<NegativeResponseCode>

The type returned in the event of a conversion error.
Source§

fn try_from(number: u8) -> Result<Self, TryFromPrimitiveError<Self>>

Performs the conversion.
Source§

impl TryFromPrimitive for NegativeResponseCode

Source§

const NAME: &'static str = "NegativeResponseCode"

Source§

type Primitive = u8

Source§

type Error = TryFromPrimitiveError<NegativeResponseCode>

Source§

fn try_from_primitive( number: Self::Primitive, ) -> Result<Self, TryFromPrimitiveError<Self>>

Source§

impl StructuralPartialEq for NegativeResponseCode

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.