Subversion Repositories HomeAutomation

Rev

Details | Last modification | View Log | SVN | RSS feed

Rev Author Line No. Line
363 johboh 1
/*********************************************************************
2
 *
3
 *                  ARP Module Defs for Microchip TCP/IP Stack
4
 *
5
 *********************************************************************
6
 * FileName:        ARP.h
7
 * Dependencies:    Stacktsk.h
8
 *                  MAC.h
9
 * Processor:       PIC18, PIC24F, PIC24H, dsPIC30F, dsPIC33F
10
 * Complier:        Microchip C18 v3.02 or higher
11
 *                  Microchip C30 v2.01 or higher
12
 * Company:         Microchip Technology, Inc.
13
 *
14
 * Software License Agreement
15
 *
16
 * This software is owned by Microchip Technology Inc. ("Microchip")
17
 * and is supplied to you for use exclusively as described in the
18
 * associated software agreement.  This software is protected by
19
 * software and other intellectual property laws.  Any use in
20
 * violation of the software license may subject the user to criminal
21
 * sanctions as well as civil liability.  Copyright 2006 Microchip
22
 * Technology Inc.  All rights reserved.
23
 *
24
 * This software is provided "AS IS."  MICROCHIP DISCLAIMS ALL
25
 * WARRANTIES, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, NOT LIMITED
26
 * TO MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND
27
 * INFRINGEMENT.  Microchip shall in no event be liable for special,
28
 * incidental, or consequential damages.
29
 *
30
 *
31
 * Author               Date    Comment
32
 *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
33
 * Nilesh Rajbharti     5/1/01  Original        (Rev 1.0)
34
 * Nilesh Rajbharti     2/9/02  Cleanup
35
 * Nilesh Rajbharti     5/22/02 Rev 2.0 (See version.log for detail)
36
 ********************************************************************/
37
#ifndef ARP_H
38
#define ARP_H
39
 
40
#include "..\Include\StackTsk.h"
41
#include "..\Include\MAC.h"
42
 
43
/*
44
 * Following codes are must be used with ARPGet/Put functions.
45
 */
46
#define ARP_REPLY       (0x00)
47
#define ARP_REQUEST     (0x01)
48
#define ARP_UNKNOWN     (0x02)
49
 
50
 
51
/*********************************************************************
52
 * Function:        BOOL ARPGet(NODE_INFO* remote, BYTE* opCode)
53
 *
54
 * PreCondition:    ARP packet is ready in MAC buffer.
55
 *
56
 * Input:           remote  - Remote node info
57
 *                  opCode  - Buffer to hold ARP op code.
58
 *
59
 * Output:          TRUE if a valid ARP packet was received.
60
 *                  FALSE otherwise.
61
 *
62
 * Side Effects:    None
63
 *
64
 * Overview:        None
65
 *
66
 * Note:            None
67
 ********************************************************************/
68
BOOL    ARPGet(NODE_INFO *remote, BYTE *opCode);
69
 
70
 
71
/*********************************************************************
72
 * Macro:           ARPIsRxReady()
73
 *
74
 * PreCondition:    None
75
 *
76
 * Input:           None
77
 *
78
 * Output:          TRUE if ARP receive buffer is full.
79
 *                  FALSE otherwise.
80
 *
81
 * Side Effects:    None
82
 *
83
 * Overview:        None
84
 *
85
 * Note:            None
86
 ********************************************************************/
87
#define ARPIsTxReady()      MACIsTxReady(TRUE)
88
 
89
 
90
 
91
/*********************************************************************
92
 * Function:        void ARPPut(NODE_INFO* more, BYTE opCode)
93
 *
94
 * PreCondition:    MACIsTxReady() == TRUE
95
 *
96
 * Input:           remote  - Remote node info
97
 *                  opCode  - ARP op code to send
98
 *
99
 * Output:          None
100
 *
101
 * Side Effects:    None
102
 *
103
 * Overview:        None
104
 *
105
 * Note:            None
106
 ********************************************************************/
107
BOOL ARPPut(NODE_INFO *remote, BYTE opCode);
108
 
109
#endif
110
 
111