Keil için arduino vs gibi c++ kodlarını kullanabilir miyiz?
Ayrıca bir dosyada şöyle birşey gördüm
Header
#ifdef __cplusplus
#include "RF22.h"
#include "RF22Mesh.h"
#include "RF22Datagram.h"
#include "RF22ReliableDatagram.h"
extern RF22Mesh rf22;
extern "C" {
#endif
#define RF22_MESH_MAX_MESSAGE_LEN_ 58/*64-5-1 = RF22_MESH_MAX_MESSAGE_LEN*/
bool RF22_Init(void);
uint8_t RF22_Sendtowait(uint8_t* buf, uint8_t len, uint8_t address);
bool RF22_recvfromAckTimeout(uint8_t* buf, uint8_t* len, uint16_t timeout, uint8_t* from);
void RF22_Reassign(uint8_t New_address);
void RF22_Service_ISR(void);
bool RF22_Sendto(uint8_t* buf, uint8_t len, uint8_t address);
void RF22_Set_New_Sequence(uint8_t newSequence);
// bool RF22_SendtoWait(uint8_t* buf, uint8_t len, uint8_t address);
#ifdef __cplusplus
}
#endif
C
RF22Mesh rf22(ATTACH_POINT);
extern "C" bool RF22_Init(void){
return rf22.init();
}
extern "C" uint8_t RF22_Sendtowait(uint8_t* buf, uint8_t len, uint8_t address){
return rf22.sendtoWait(buf, len, address);
}
extern "C" bool RF22_recvfromAckTimeout(uint8_t* buf, uint8_t* len, uint16_t timeout, uint8_t* from) {
return rf22.recvfromAckTimeout(buf, len, timeout, from);
}
extern "C" void RF22_Reassign(uint8_t New_address){
rf22.setThisAddress(New_address);
}
extern "C" void RF22_Service_ISR(void){
rf22.handleInterrupt();
}
extern "C" bool RF22_Sendto(uint8_t* buf, uint8_t len, uint8_t address){
return rf22.sendto(buf,len,address);
}
extern "C" void RF22_Set_New_Sequence(uint8_t newSequence){
rf22.pokeAtSequence(newSequence);
}