您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ HAL函数代码示例

51自学网 2021-06-01 21:20:38
  C++
这篇教程C++ HAL函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中HAL函数的典型用法代码示例。如果您正苦于以下问题:C++ HAL函数的具体用法?C++ HAL怎么用?C++ HAL使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了HAL函数的17个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: DMSG

int16_t PN532::tgGetData(uint8_t *buf, uint16_t len){    pn532_packetbuffer[0] = PN532_COMMAND_TGGETDATA;        if (HAL(writeCommand)(pn532_packetbuffer, 1)) {        DMSG("TgGetData: no ACK/n");        return -1;    }        int16_t status = HAL(readResponse)(pn532_packetbuffer, sizeof(pn532_packetbuffer), 3000);    if (0 > status) {        DMSG("TgGetData: failed to read response, error code - ");        DMSG(status);        DMSG('/n');        return status;    }        uint16_t length = status;    if (length > len) {        return -4;    }        if (pn532_packetbuffer[0] != 0) {        DMSG("status is not ok/n");        return -5;    }        memcpy(buf, pn532_packetbuffer + 1, length - 1);        return length - 1;}
开发者ID:don,项目名称:PN532,代码行数:32,


示例2: HAL

/** * Peer to Peer */int8_t PN532::tgInitAsTarget(){    static const uint8_t command[] = {            PN532_COMMAND_TGINITASTARGET,            0,            0x00, 0x00,         //SENS_RES            0x00, 0x00, 0x00,   //NFCID1            0x40,               //SEL_RES            0x01, 0xFE, 0x0F, 0xBB, 0xBA, 0xA6, 0xC9, 0x89, // POL_RES            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,            0xFF, 0xFF,            0x01, 0xFE, 0x0F, 0xBB, 0xBA, 0xA6, 0xC9, 0x89, 0x00, 0x00, //NFCID3t: Change this to desired value            0x06, 0x46,  0x66, 0x6D, 0x01, 0x01, 0x10, 0x00// LLCP magic number and version parameter            };        int8_t status = HAL(writeCommand)(command, sizeof(command));    if (status < 0) {        return status;    }        return HAL(readResponse)(pn532_packetbuffer, sizeof(pn532_packetbuffer), 0);}
开发者ID:don,项目名称:PN532,代码行数:28,


示例3: memcpy

uint8_t PN532::mifareclassic_AuthenticateBlock (uint8_t *uid, uint8_t uidLen, uint32_t blockNumber, uint8_t keyNumber, uint8_t *keyData){    uint8_t i;    // Hang on to the key and uid data    memcpy (_key, keyData, 6);    memcpy (_uid, uid, uidLen);    _uidLen = uidLen;    // Prepare the authentication command //    pn532_packetbuffer[0] = PN532_COMMAND_INDATAEXCHANGE;   /* Data Exchange Header */    pn532_packetbuffer[1] = 1;                              /* Max card numbers */    pn532_packetbuffer[2] = (keyNumber) ? MIFARE_CMD_AUTH_B : MIFARE_CMD_AUTH_A;    pn532_packetbuffer[3] = blockNumber;                    /* Block Number (1K = 0..63, 4K = 0..255 */    memcpy (pn532_packetbuffer + 4, _key, 6);    for (i = 0; i < _uidLen; i++) {        pn532_packetbuffer[10 + i] = _uid[i];              /* 4 bytes card ID */    }    if (HAL(writeCommand)(pn532_packetbuffer, 10 + _uidLen))        return 0;    // Read the response packet    HAL(readResponse)(pn532_packetbuffer, sizeof(pn532_packetbuffer));    // Check if the response is valid and we are authenticated???    // for an auth success it should be bytes 5-7: 0xD5 0x41 0x00    // Mifare auth error is technically byte 7: 0x14 but anything other and 0x00 is not good    if (pn532_packetbuffer[0] != 0x00) {        DMSG("Authentification failed/n");        return 0;    }    return 1;}
开发者ID:BerndBaumann,项目名称:Arduino,代码行数:35,


示例4: HAL

uint8_t PN532::readGPIO(void){    pn532_packetbuffer[0] = PN532_COMMAND_READGPIO;    // Send the READGPIO command (0x0C)    if (HAL(writeCommand)(pn532_packetbuffer, 1))        return 0x0;    HAL(readResponse)(pn532_packetbuffer, sizeof(pn532_packetbuffer));    /* READGPIO response without prefix and suffix should be in the following format:      byte            Description      -------------   ------------------------------------------      b0              P3 GPIO Pins      b1              P7 GPIO Pins (not used ... taken by I2C)      b2              Interface Mode Pins (not used ... bus select pins)    */    DMSG("P3 GPIO: "); DMSG_HEX(pn532_packetbuffer[7]);    DMSG("P7 GPIO: "); DMSG_HEX(pn532_packetbuffer[8]);    DMSG("I0I1 GPIO: "); DMSG_HEX(pn532_packetbuffer[9]);    DMSG("/n");    return pn532_packetbuffer[0];}
开发者ID:BerndBaumann,项目名称:Arduino,代码行数:27,


示例5: DMSG

uint8_t PN532::mifareclassic_ReadDataBlock (uint8_t blockNumber, uint8_t *data){    DMSG("Trying to read 16 bytes from block ");    DMSG_INT(blockNumber);    /* Prepare the command */    pn532_packetbuffer[0] = PN532_COMMAND_INDATAEXCHANGE;    pn532_packetbuffer[1] = 1;                      /* Card number */    pn532_packetbuffer[2] = MIFARE_CMD_READ;        /* Mifare Read command = 0x30 */    pn532_packetbuffer[3] = blockNumber;            /* Block Number (0..63 for 1K, 0..255 for 4K) */    /* Send the command */    if (HAL(writeCommand)(pn532_packetbuffer, 4)) {        return 0;    }    /* Read the response packet */    HAL(readResponse)(pn532_packetbuffer, sizeof(pn532_packetbuffer));    /* If byte 8 isn't 0x00 we probably have an error */    if (pn532_packetbuffer[0] != 0x00) {        return 0;    }    /* Copy the 16 data bytes to the output buffer        */    /* Block content starts at byte 9 of a valid response */    memcpy (data, pn532_packetbuffer + 1, 16);    return 1;}
开发者ID:BerndBaumann,项目名称:Arduino,代码行数:30,


示例6: DMSG_STR

bool KeyDuino::inListPassiveTarget(uint8_t cardbaudrate, uint16_t timeout){    pn532_packetbuffer[0] = PN532_COMMAND_INLISTPASSIVETARGET;    pn532_packetbuffer[1] = 1;    pn532_packetbuffer[2] = cardbaudrate;    DMSG_STR("/ninList passive target");    if(cardbaudrate == PN532_ISO14443B){        pn532_packetbuffer[3] = 0x00;        if (HAL(writeCommand)(pn532_packetbuffer, 4))            return false;    } else {        if (HAL(writeCommand)(pn532_packetbuffer, 3))            return false;    }    int16_t status = HAL(readResponse)(pn532_packetbuffer, sizeof(pn532_packetbuffer), timeout);    if (status < 0) {        return false;    }    if (pn532_packetbuffer[0] != 1) {        return false;    }    inListedTag = pn532_packetbuffer[1];    return true;}
开发者ID:CITCEuraRFID,项目名称:KeyDuino,代码行数:30,


示例7:

bool PN532::tgSetData(const uint8_t *header, uint8_t hlen, const uint8_t *body, uint8_t blen){    if (hlen > (sizeof(pn532_packetbuffer) - 1)) {        return false;    }    for (int8_t i = hlen - 1; i >= 0; i--){        pn532_packetbuffer[i + 1] = header[i];    }    pn532_packetbuffer[0] = PN532_COMMAND_TGSETDATA;    if (HAL(writeCommand)(pn532_packetbuffer, hlen + 1, body, blen)) {        return false;    }    if (0 > HAL(readResponse)(pn532_packetbuffer, sizeof(pn532_packetbuffer), 3000)) {        return false;    }    if (0 != pn532_packetbuffer[0]) {        return false;    }    return true;}
开发者ID:BerndBaumann,项目名称:Arduino,代码行数:25,


示例8: DMSG

bool KeyDuino::tgSetData(const uint8_t *header, uint8_t hlen, const uint8_t *body, uint8_t blen){    if (hlen > (sizeof(pn532_packetbuffer) - 1)) {        if ((body != 0) || (header == pn532_packetbuffer)) {            DMSG("tgSetData:buffer too small/n");            return false;        }        pn532_packetbuffer[0] = PN532_COMMAND_TGSETDATA;        if (HAL(writeCommand)(pn532_packetbuffer, 1, header, hlen)) {            return false;        }    } else {        for (int8_t i = hlen - 1; i >= 0; i--){            pn532_packetbuffer[i + 1] = header[i];        }        pn532_packetbuffer[0] = PN532_COMMAND_TGSETDATA;        if (HAL(writeCommand)(pn532_packetbuffer, hlen + 1, body, blen)) {            return false;        }    }    if (0 > HAL(readResponse)(pn532_packetbuffer, sizeof(pn532_packetbuffer), 3000)) {        return false;    }    if (0 != pn532_packetbuffer[0]) {        return false;    }    return true;}
开发者ID:CITCEuraRFID,项目名称:KeyDuino,代码行数:33,


示例9: HAL

    TdmManager::~TdmManager()    {        HAL().UnregisterEventsHandler(this);        HAL().StopDevices();  // here - ?        m_conference.reset();                m_streams.Clear();    }
开发者ID:ixc-software,项目名称:lucksi,代码行数:9,


示例10: once

boolean PN532::readPassiveTargetID(uint8_t cardbaudrate, uint8_t * uid, uint8_t * uidLength) {  pn532_packetbuffer[0] = PN532_COMMAND_INLISTPASSIVETARGET;  pn532_packetbuffer[1] = 1;  // max 1 cards at once (we can set this to 2 later)  pn532_packetbuffer[2] = cardbaudrate;    if (HAL(writeCommand)(pn532_packetbuffer, 3))  {	DMSG("No card(s) read");    return 0x0;  // no cards read  }    // Wait for a card to enter the field  uint8_t status = PN532_I2C_BUSY;   // read data packet  HAL(readResponse)(pn532_packetbuffer, sizeof(pn532_packetbuffer));    // check some basic stuff  /* ISO14443A card response should be in the following format:      byte            Description    -------------   ------------------------------------------    b0..6           Frame header and preamble    b7              Tags Found    b8              Tag Number (only one used in this example)    b9..10          SENS_RES    b11             SEL_RES    b12             NFCID Length    b13..NFCIDLen   NFCID                                      */    DMSG("Found "); DMSG(pn532_packetbuffer[0]); DMSG(" tags/n");  if (pn532_packetbuffer[0] != 1)     return 0;      uint16_t sens_res = pn532_packetbuffer[2];  sens_res <<= 8;  sens_res |= pn532_packetbuffer[3];  DMSG("ATQA: 0x");  DMSG_HEX(sens_res);   DMSG("SAK: 0x");  DMSG_HEX(pn532_packetbuffer[4]);     /* Card appears to be Mifare Classic */  *uidLength = pn532_packetbuffer[5];  DMSG("UID:");   for (uint8_t i=0; i < pn532_packetbuffer[5]; i++)   {    uid[i] = pn532_packetbuffer[6+i];    DMSG(uid[i]);   }  DMSG('/n');  return 1;}
开发者ID:don,项目名称:PN532,代码行数:55,


示例11: return

boolean PN532::SAMConfig(void) {  pn532_packetbuffer[0] = PN532_COMMAND_SAMCONFIGURATION;  pn532_packetbuffer[1] = 0x01; // normal mode;  pn532_packetbuffer[2] = 0x14; // timeout 50ms * 20 = 1 second  pn532_packetbuffer[3] = 0x01; // use IRQ pin!    if (HAL(writeCommand)(pn532_packetbuffer, 4))     return false;  return (0 < HAL(readResponse)(pn532_packetbuffer, sizeof(pn532_packetbuffer)));}
开发者ID:don,项目名称:PN532,代码行数:11,


示例12: once

bool KeyDuino::readPassiveTargetID(uint8_t cardbaudrate, uint8_t *uid, uint8_t *uidLength, uint16_t timeout){    pn532_packetbuffer[0] = PN532_COMMAND_INLISTPASSIVETARGET;    pn532_packetbuffer[1] = 1;  // max 1 cards at once (we can set this to 2 later)    pn532_packetbuffer[2] = cardbaudrate;    if (HAL(writeCommand)(pn532_packetbuffer, 3)) {        DMSG_STR("/nFailed writing");        return 0x0;  // command failed    }    // read data packet    if (HAL(readResponse)(pn532_packetbuffer, sizeof(pn532_packetbuffer), timeout) < 0) {        DMSG_STR("/nFailed reading response");        return 0x0;    }    // check some basic stuff    /* ISO14443A card response should be in the following format:      byte            Description      -------------   ------------------------------------------      b0              Tags Found      b1              Tag Number (only one used in this example)      b2..3           SENS_RES      b4              SEL_RES      b5              NFCID Length      b6..NFCIDLen    NFCID    */    if (pn532_packetbuffer[0] != 1)        return 0;    inListedTag = pn532_packetbuffer[1];    uint16_t sens_res = pn532_packetbuffer[2];    sens_res <<= 8;    sens_res |= pn532_packetbuffer[3];    DMSG("/nATQA: 0x");  DMSG_HEX(sens_res);    DMSG("/nSAK: 0x");  DMSG_HEX(pn532_packetbuffer[4]);    DMSG("/n");    /* Card appears to be Mifare Classic */    *uidLength = pn532_packetbuffer[5];    this->_uidLen = pn532_packetbuffer[5];    for (uint8_t i = 0; i < pn532_packetbuffer[5]; i++) {        uid[i] = pn532_packetbuffer[6 + i];	    this->_uid[i] = pn532_packetbuffer[6 + i];    }    return 1;}
开发者ID:CITCEuraRFID,项目名称:KeyDuino,代码行数:53,


示例13: MxRtyATR

bool PN532::setPassiveActivationRetries(uint8_t maxRetries){    pn532_packetbuffer[0] = PN532_COMMAND_RFCONFIGURATION;    pn532_packetbuffer[1] = 5;    // Config item 5 (MaxRetries)    pn532_packetbuffer[2] = 0xFF; // MxRtyATR (default = 0xFF)    pn532_packetbuffer[3] = 0x01; // MxRtyPSL (default = 0x01)    pn532_packetbuffer[4] = maxRetries;    if (HAL(writeCommand)(pn532_packetbuffer, 5))        return 0x0;  // no ACK    return (0 < HAL(readResponse)(pn532_packetbuffer, sizeof(pn532_packetbuffer)));}
开发者ID:BerndBaumann,项目名称:Arduino,代码行数:13,


示例14: MsgObject

    TdmManager::TdmManager( const TdmManagerProfile &profile ) : 		MsgObject(profile.Thread),        m_profileVerify(profile),        m_prof(profile),        m_log(profile.LogCreator->CreateSession("TdmMng", true)),		m_tagUserCmd(m_log->RegisterRecordKindStr("UserCmd")),		m_tagError(m_log->RegisterRecordKindStr("Error")),        m_buffCreator(profile.BidirBuffSize, profile.BidirBuffCount, profile.BidirBuffOffset),        m_rtpInfra(profile.Thread, profile.RtpInfraPar, m_buffCreator),        m_localIp(profile.LocalIp),        m_eventQueue(iCmp::BfTdmEvent::SrcQueueTdm())    {        HAL().RegisterEventsHandler(this);        // conference        m_conference.reset(             new SndMix::ConferenceMng(*m_log,                           m_eventQueue, m_generalRtpParams, m_rtpInfra, *this)             );        // log		if(m_log->LogActive())		{			*m_log << m_tagUserCmd << "TdmManager created. " << profile.getAsString() << EndRecord;		}    }
开发者ID:ixc-software,项目名称:lucksi,代码行数:26,


示例15: Number

uint8_t KeyDuino::mifareultralight_WritePage (uint8_t page, uint8_t *buffer){    /* Prepare the first command */    pn532_packetbuffer[0] = PN532_COMMAND_INDATAEXCHANGE;    pn532_packetbuffer[1] = 1;                           /* Card number */    pn532_packetbuffer[2] = MIFARE_CMD_WRITE_ULTRALIGHT; /* Mifare UL Write cmd = 0xA2 */    pn532_packetbuffer[3] = page;                        /* page Number (0..63) */    memcpy (pn532_packetbuffer + 4, buffer, 4);          /* Data Payload */    /* Send the command */    if (HAL(writeCommand)(pn532_packetbuffer, 8)) {        return 0;    }    /* Read the response packet */    return (0 < HAL(readResponse)(pn532_packetbuffer, sizeof(pn532_packetbuffer)));}
开发者ID:CITCEuraRFID,项目名称:KeyDuino,代码行数:17,


示例16: Number

uint8_t PN532::mifareclassic_WriteDataBlock (uint8_t blockNumber, uint8_t *data){    /* Prepare the first command */    pn532_packetbuffer[0] = PN532_COMMAND_INDATAEXCHANGE;    pn532_packetbuffer[1] = 1;                      /* Card number */    pn532_packetbuffer[2] = MIFARE_CMD_WRITE;       /* Mifare Write command = 0xA0 */    pn532_packetbuffer[3] = blockNumber;            /* Block Number (0..63 for 1K, 0..255 for 4K) */    memcpy (pn532_packetbuffer + 4, data, 16);        /* Data Payload */    /* Send the command */    if (HAL(writeCommand)(pn532_packetbuffer, 20)) {        return 0;    }    /* Read the response packet */    return (0 < HAL(readResponse)(pn532_packetbuffer, sizeof(pn532_packetbuffer)));}
开发者ID:BerndBaumann,项目名称:Arduino,代码行数:17,


示例17: Pins

bool PN532::writeGPIO(uint8_t pinstate){    // Make sure pinstate does not try to toggle P32 or P34    pinstate |= (1 << PN532_GPIO_P32) | (1 << PN532_GPIO_P34);    // Fill command buffer    pn532_packetbuffer[0] = PN532_COMMAND_WRITEGPIO;    pn532_packetbuffer[1] = PN532_GPIO_VALIDATIONBIT | pinstate;  // P3 Pins    pn532_packetbuffer[2] = 0x00;    // P7 GPIO Pins (not used ... taken by I2C)    DMSG("Writing P3 GPIO: ");    DMSG_HEX(pn532_packetbuffer[1]);    DMSG("/n");    // Send the WRITEGPIO command (0x0E)    if (HAL(writeCommand)(pn532_packetbuffer, 3))        return 0;    return (0 < HAL(readResponse)(pn532_packetbuffer, sizeof(pn532_packetbuffer)));}
开发者ID:BerndBaumann,项目名称:Arduino,代码行数:20,



注:本文中的HAL函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ HALASSERT函数代码示例
C++ HAGGLE_ERR函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。