6658905f |
1 | //-----------------------------------------------------------------------------\r |
2 | // Definitions internal to the app source.\r |
3 | // Jonathan Westhues, Aug 2005\r |
4 | // Added ISO14443-A support by Gerhard de Koning Gans, April 2008\r |
5 | //-----------------------------------------------------------------------------\r |
6 | \r |
7 | #ifndef __APPS_H\r |
8 | #define __APPS_H\r |
9 | \r |
10 | /// appmain.c\r |
11 | void AppMain(void);\r |
12 | void DbpIntegers(int a, int b, int c);\r |
13 | void DbpString(char *str);\r |
14 | void SpinDelay(int ms);\r |
15 | void ToSendStuffBit(int b);\r |
16 | void ToSendReset(void);\r |
17 | extern int ToSendMax;\r |
18 | extern BYTE ToSend[];\r |
19 | extern DWORD BigBuf[];\r |
20 | \r |
21 | /// fpga.c\r |
30f2a7d3 |
22 | void FpgaSendCommand(WORD cmd, WORD v);\r |
6658905f |
23 | void FpgaWriteConfWord(BYTE v);\r |
24 | void FpgaDownloadAndGo(void);\r |
25 | void FpgaSetupSsc(void);\r |
26 | void SetupSpi(int mode);\r |
27 | void FpgaSetupSscDma(BYTE *buf, int len);\r |
28 | void SetAdcMuxFor(int whichGpio);\r |
29 | \r |
30f2a7d3 |
30 | // Definitions for the FPGA commands.\r |
31 | #define FPGA_CMD_SET_CONFREG (1<<12)\r |
32 | #define FPGA_CMD_SET_DIVISOR (2<<12)\r |
6658905f |
33 | // Definitions for the FPGA configuration word.\r |
34 | #define FPGA_MAJOR_MODE_LF_READER (0<<5)\r |
35 | #define FPGA_MAJOR_MODE_LF_SIMULATOR (1<<5)\r |
36 | #define FPGA_MAJOR_MODE_HF_READER_TX (2<<5)\r |
37 | #define FPGA_MAJOR_MODE_HF_READER_RX_XCORR (3<<5)\r |
38 | #define FPGA_MAJOR_MODE_HF_SIMULATOR (4<<5)\r |
39 | #define FPGA_MAJOR_MODE_HF_ISO14443A (5<<5)\r |
40 | #define FPGA_MAJOR_MODE_UNUSED (6<<5)\r |
41 | #define FPGA_MAJOR_MODE_OFF (7<<5)\r |
42 | // Options for the LF reader\r |
43 | #define FPGA_LF_READER_USE_125_KHZ (1<<3)\r |
44 | #define FPGA_LF_READER_USE_134_KHZ (0<<3)\r |
45 | // Options for the HF reader, tx to tag\r |
46 | #define FPGA_HF_READER_TX_SHALLOW_MOD (1<<0)\r |
47 | // Options for the HF reader, correlating against rx from tag\r |
48 | #define FPGA_HF_READER_RX_XCORR_848_KHZ (1<<0)\r |
49 | #define FPGA_HF_READER_RX_XCORR_SNOOP (1<<1)\r |
50 | // Options for the HF simulated tag, how to modulate\r |
51 | #define FPGA_HF_SIMULATOR_NO_MODULATION (0<<0)\r |
52 | #define FPGA_HF_SIMULATOR_MODULATE_BPSK (1<<0)\r |
53 | // Options for ISO14443A\r |
54 | #define FPGA_HF_ISO14443A_SNIFFER (0<<0)\r |
55 | #define FPGA_HF_ISO14443A_TAGSIM_LISTEN (1<<0)\r |
56 | #define FPGA_HF_ISO14443A_TAGSIM_MOD (2<<0)\r |
57 | #define FPGA_HF_ISO14443A_READER_LISTEN (3<<0)\r |
58 | #define FPGA_HF_ISO14443A_READER_MOD (4<<0)\r |
59 | \r |
60 | /// iso14443.h\r |
61 | void SimulateIso14443Tag(void);\r |
62 | void AcquireRawAdcSamplesIso14443(DWORD parameter);\r |
fb25b483 |
63 | void ReadSRI512Iso14443(DWORD parameter); |
6658905f |
64 | void SnoopIso14443(void);\r |
65 | \r |
66 | /// iso14443a.h\r |
67 | void SnoopIso14443a(void);\r |
68 | void SimulateIso14443aTag(int tagType, int TagUid); // ## simulate iso14443a tag\r |
69 | void ReaderIso14443a(DWORD parameter);\r |
70 | \r |
71 | /// iso15693.h\r |
72 | void AcquireRawAdcSamplesIso15693(void);\r |
73 | void ReaderIso15693(DWORD parameter); // Simulate an ISO15693 reader - greg\r |
74 | void SimTagIso15693(DWORD parameter); // simulate an ISO15693 tag - greg\r |
75 | \r |
76 | /// util.h\r |
77 | int strlen(char *str);\r |
78 | void *memcpy(void *dest, const void *src, int len);\r |
79 | void *memset(void *dest, int c, int len);\r |
80 | int memcmp(const void *av, const void *bv, int len);\r |
81 | \r |
82 | #endif\r |