]> cvs.zerfleddert.de Git - proxmark3-svn/blame - include/proxmark3.h
add 'detectreader' command - listen for external reader fields
[proxmark3-svn] / include / proxmark3.h
CommitLineData
6658905f 1//-----------------------------------------------------------------------------\r
2// Definitions of interest to most of the software for this project.\r
3// Jonathan Westhues, Mar 2006\r
4//-----------------------------------------------------------------------------\r
5\r
6#ifndef __PROXMARK3_H\r
7#define __PROXMARK3_H\r
8\r
9// Might as well have the hardware-specific defines everywhere.\r
10#include <at91sam7s128.h>\r
11\r
12#include <config_gpio.h>\r
13#define LOW(x) PIO_OUTPUT_DATA_CLEAR = (1 << (x))\r
14#define HIGH(x) PIO_OUTPUT_DATA_SET = (1 << (x))\r
15\r
16#define SPI_FPGA_MODE 0\r
17#define SPI_LCD_MODE 1\r
18\r
19typedef unsigned long DWORD;\r
20typedef signed long SDWORD;\r
21typedef unsigned long long QWORD;\r
22typedef int BOOL;\r
23typedef unsigned char BYTE;\r
24typedef signed char SBYTE;\r
25typedef unsigned short WORD;\r
26typedef signed short SWORD;\r
27#define TRUE 1\r
28#define FALSE 0\r
29\r
30#include <usb_cmd.h>\r
31\r
32#define PACKED __attribute__((__packed__))\r
33\r
34#define USB_D_PLUS_PULLUP_ON() { \\r
35 PIO_OUTPUT_DATA_SET = (1<<GPIO_USB_PU); \\r
36 PIO_OUTPUT_ENABLE = (1<<GPIO_USB_PU); \\r
37 }\r
38#define USB_D_PLUS_PULLUP_OFF() PIO_OUTPUT_DISABLE = (1<<GPIO_USB_PU)\r
39\r
40#define LED_A_ON() PIO_OUTPUT_DATA_SET = (1<<GPIO_LED_A)\r
41#define LED_A_OFF() PIO_OUTPUT_DATA_CLEAR = (1<<GPIO_LED_A)\r
42#define LED_B_ON() PIO_OUTPUT_DATA_SET = (1<<GPIO_LED_B)\r
43#define LED_B_OFF() PIO_OUTPUT_DATA_CLEAR = (1<<GPIO_LED_B)\r
44#define LED_C_ON() PIO_OUTPUT_DATA_SET = (1<<GPIO_LED_C)\r
45#define LED_C_OFF() PIO_OUTPUT_DATA_CLEAR = (1<<GPIO_LED_C)\r
46#define LED_D_ON() PIO_OUTPUT_DATA_SET = (1<<GPIO_LED_D)\r
47#define LED_D_OFF() PIO_OUTPUT_DATA_CLEAR = (1<<GPIO_LED_D)\r
48#define RELAY_ON() PIO_OUTPUT_DATA_SET = (1<<GPIO_RELAY)\r
49#define RELAY_OFF() PIO_OUTPUT_DATA_CLEAR = (1<<GPIO_RELAY)\r
50#define BUTTON_PRESS() !(PIO_PIN_DATA_STATUS & (1<<GPIO_BUTTON))\r
51//--------------------------------\r
52// USB declarations\r
53\r
54void UsbSendPacket(BYTE *packet, int len);\r
55BOOL UsbPoll(BOOL blinkLeds);\r
56void UsbStart(void);\r
57\r
58// This function is provided by the apps/bootrom, and called from UsbPoll\r
59// if data are available.\r
60void UsbPacketReceived(BYTE *packet, int len);\r
61\r
62#endif\r
Impressum, Datenschutz