MCPcopy Create free account
hub / github.com/CANopenNode/CANopenNode / CO_LSSmaster_inquireCheckWait

Function CO_LSSmaster_inquireCheckWait

305/CO_LSSmaster.c:510–530  ·  view source on GitHub ↗

* Helper function - wait for confirmation */

Source from the content-addressed store, hash-verified

508 * Helper function - wait for confirmation
509 */
510static CO_LSSmaster_return_t
511CO_LSSmaster_inquireCheckWait(CO_LSSmaster_t* LSSmaster, uint32_t timeDifference_us, uint8_t csWait, uint32_t* value) {
512 CO_LSSmaster_return_t ret;
513
514 if (CO_FLAG_READ(LSSmaster->CANrxNew)) {
515 uint8_t cs = LSSmaster->CANrxData[0];
516 *value = CO_getUint32(&LSSmaster->CANrxData[1]);
517 *value = CO_SWAP_32(*value);
518 CO_FLAG_CLEAR(LSSmaster->CANrxNew);
519
520 if (cs == csWait) {
521 ret = CO_LSSmaster_OK;
522 } else {
523 ret = CO_LSSmaster_check_timeout(LSSmaster, timeDifference_us);
524 }
525 } else {
526 ret = CO_LSSmaster_check_timeout(LSSmaster, timeDifference_us);
527 }
528
529 return ret;
530}
531
532CO_LSSmaster_return_t
533CO_LSSmaster_InquireLssAddress(CO_LSSmaster_t* LSSmaster, uint32_t timeDifference_us, CO_LSS_address_t* lssAddress) {

Callers 2

CO_LSSmaster_InquireFunction · 0.85

Calls 2

CO_getUint32Function · 0.85

Tested by

no test coverage detected