📄 main.c
字号:
#include "cc2511_app_ex_lib_headers.h"
#include "simple_hid_eb.h"
#include "RF04EB.h"
#include "lcd.h"
BYTE __xdata rfTransmitBuffer[16];//Used to store RF packets that are to be sent
RF_PACKET __xdata * pRfTxBuffer = (RF_PACKET __xdata *) &rfTransmitBuffer[0];//For simplicity we make a RF_PACKET pointer to the RX buffer
BYTE dongleAddress; //device address of the USB dongle.
volatile BOOL ackTimeout; //is set if no ACK packet is received after sending a data packet.
volatile BOOL radioReadyToSend; //used to know when the radio is ready for a new packet
void main(void) {
INIT_JOYSTICK();
INIT_BUTTON();
INIT_POT();
INIT_JOYSTICK_PUSH();
initLcd();
CLKCON |= 0x20;//set TICKSPD
rfruInit(16);//Initialize the RF framework, buffer size 18. That is 9 byte payload data + 7 byte header required by the RF framework.
t4mgrInit(25000);//Initialize the timer4 manager with 25 ms resolution.
INT_GLOBAL_ENABLE(INT_ON);
rfruSetMyAddress(0x12, 0x13, 0x14, 0x42);//simply use a fixed address, no binding.
dongleAddress = 0x01;//simply use a fixed address, no binding.
while (TRUE) {
if(getPotValue() < POT_CENTER) { simpleMouse(); }//use potmeter do decide which mode to enter.
else { practicalJoke(); }
}
}
// ****************************************************************************************
// Hook required by the RF library.
// ****************************************************************************************
void rfruHookRfEvent(BYTE rfEvent, BYTE eventData){
switch (rfEvent)
{
case RFRU_EVENT_DATA_PACKET_RECEIVED ://dont care
break;
case RFRU_EVENT_RETRANSMSSION_RECEIVED ://dont care
break;
case RFRU_EVENT_ACK_RECEIVED :
//a packet successfully sent, tell main loop we are ready to send a new packet.
radioReadyToSend = TRUE;
break;
case RFRU_EVENT_NACK_RECEIVED ://dont care
break;
case RFRU_EVENT_DATA_REQUEST_NACKED://dont care
break;
case RFRU_EVENT_BIND_SUCCESSFULL ://dont care
break;
case RFRU_EVENT_ACK_TIMEOUT :
//tell main loop
ackTimeout = TRUE;
break;
case RFRU_EVENT_DATA_PACKET_REQUEST_TIMEOUT://dont care
break;
case RFRU_EVENT_BIND_REQUEST_TIMEOUT://dont care
break;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -