MRMS
Public Member Functions | List of all members
SensorBoard Class Reference
Inheritance diagram for SensorBoard:
Board Mrm_8x8a Mrm_col_b Mrm_col_can Mrm_fet_can Mrm_ir_finder3 Mrm_ir_finder_can Mrm_lid_can_b Mrm_lid_can_b2 Mrm_node Mrm_ref_can Mrm_switch Mrm_therm_b_can Mrm_us Mrm_us1 Mrm_us_b

Public Member Functions

 SensorBoard (Robot *robot, uint8_t devicesOnABoard, const char *boardName, uint8_t maxNumberOfBoards, BoardId id)
 
void continuousReadingCalculatedDataStart (uint8_t deviceNumber=0xFF)
 
virtual bool messageDecode (uint32_t canId, uint8_t data[8])
 
- Public Member Functions inherited from Board
 Board (Robot *robot, uint8_t maxNumberOfBoards, uint8_t devicesOnABoard, const char *boardName, BoardType boardType, BoardId id)
 
void add (char *deviceName, uint16_t canIn, uint16_t canOut)
 
bool alive (uint8_t deviceNumber=0, bool checkAgainIfDead=false, bool errorIfNotAfterCheckingAgain=false)
 
uint8_t count ()
 
void aliveSet (bool yesOrNo, uint8_t deviceNumber=0)
 
BoardType boardType ()
 
uint8_t deadOrAliveCount ()
 
uint8_t devicesOnASingleBoard ()
 
uint8_t devicesMaximumNumberInAllBoards ()
 
uint8_t devicesScan (bool verbose=true, uint16_t mask=0xFFFF)
 
uint8_t errorCodeLast ()
 
uint8_t errorWasInDeviceNumber ()
 
void firmwareRequest (uint8_t deviceNumber=0xFF)
 
uint16_t fps (uint8_t deviceNumber=0)
 
void fpsDisplay ()
 
void fpsRequest (uint8_t deviceNumber=0xFF)
 
BoardId id ()
 
void idChange (uint16_t newDeviceNumber, uint8_t deviceNumber=0)
 
void info (uint8_t deviceNumber=0xFF)
 
bool isForMe (uint32_t canIdOut, uint8_t deviceNumber)
 
bool isFromMe (uint32_t canIdOut, uint8_t deviceNumber)
 
uint32_t lastMessageMs (uint8_t deviceNumber=0)
 
bool messagePrint (uint32_t msgId, uint8_t dlc, uint8_t *data, bool outbound)
 ‍** Prints a frame More...
 
void messageSend (uint8_t *data, uint8_t dlc, uint8_t deviceNumber=0)
 
char * name (uint8_t deviceNumber)
 
char * name ()
 
void notificationRequest (uint8_t commandRequestingNotification, uint8_t deviceNumber)
 
void oscillatorTest (uint8_t deviceNumber=0xFF)
 
void reset (uint8_t deviceNumber=0xFF)
 
void start (uint8_t deviceNumber=0xFF, uint8_t measuringModeNow=0, uint16_t refreshMs=0)
 
void swap (uint8_t deviceNumber1, uint8_t deviceNumber2)
 
void stop (uint8_t deviceNumber=0xFF)
 
virtual void test (uint8_t deviceNumber=0xFF, uint16_t betweenTestsMs=0)
 

Additional Inherited Members

- Protected Member Functions inherited from Board
bool messageDecodeCommon (uint32_t canId, uint8_t data[8], uint8_t deviceNumber=0)
 
- Protected Attributes inherited from Board
uint32_t _alive
 
bool _aliveReport = false
 
char _boardsName [12]
 
BoardType _boardType
 
uint8_t canData [8]
 
uint8_t devicesOnABoard
 
uint8_t errorCode = 0
 
uint8_t errorInDeviceNumber = 0
 
std::vector< uint16_t > * fpsLast
 
BoardId _id
 
std::vector< uint32_t > * idIn
 
std::vector< uint32_t > * idOut
 
std::vector< uint32_t > * lastMessageReceivedMs
 
std::vector< uint32_t > * _lastReadingMs
 
uint8_t maximumNumberOfBoards
 
uint8_t measuringMode = 0
 
uint8_t measuringModeLimit = 0
 
uint8_t _message [29]
 
std::vector< char[10]> * _name
 
int nextFree
 
RobotrobotContainer
 

Constructor & Destructor Documentation

◆ SensorBoard()

SensorBoard::SensorBoard ( Robot robot,
uint8_t  devicesOnABoard,
const char *  boardName,
uint8_t  maxNumberOfBoards,
BoardId  id 
)
Parameters
robot- robot containing this board
esp32CANBusSingleton- a single instance of CAN Bus common library for all CAN Bus peripherals.
devicesOnABoard- number of devices on each board
boardName- board's name
maxNumberOfBoards- maximum number of boards
id- unique id

Member Function Documentation

◆ continuousReadingCalculatedDataStart()

void SensorBoard::continuousReadingCalculatedDataStart ( uint8_t  deviceNumber = 0xFF)

Starts periodical CANBus messages that will be refreshing values that mirror sensor's calculated values

Parameters
deviceNumber- Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0.

◆ messageDecode()

virtual bool SensorBoard::messageDecode ( uint32_t  canId,
uint8_t  data[8] 
)
inlinevirtual

Read CAN Bus message into local variables

Parameters
canId- CAN Bus id
data- 8 bytes from CAN Bus message.
Returns
- true if canId for this class

Implements Board.

Reimplemented in Mrm_us1, Mrm_us, Mrm_us_b, Mrm_therm_b_can, Mrm_ref_can, Mrm_node, Mrm_lid_can_b2, Mrm_lid_can_b, Mrm_ir_finder3, Mrm_ir_finder_can, Mrm_fet_can, Mrm_col_can, Mrm_col_b, and Mrm_8x8a.


The documentation for this class was generated from the following files: