ESOS32
ESOSOn32-bitProcessors
esos_hwxxx.h
Go to the documentation of this file.
1 /*
2  * "Copyright (c) 2019 J. W. Bruce ("AUTHOR(S)")"
3  * All rights reserved.
4  * (J. W. Bruce, jwbruce_AT_tntech.edu, Tennessee Tech University)
5  *
6  * Permission to use, copy, modify, and distribute this software and its
7  * documentation for any purpose, without fee, and without written agreement is
8  * hereby granted, provided that the above copyright notice, the following
9  * two paragraphs and the authors appear in all copies of this software.
10  *
11  * IN NO EVENT SHALL THE "AUTHORS" BE LIABLE TO ANY PARTY FOR
12  * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT
13  * OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE "AUTHORS"
14  * HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
15  *
16  * THE "AUTHORS" SPECIFICALLY DISCLAIMS ANY WARRANTIES,
17  * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
18  * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
19  * ON AN "AS IS" BASIS, AND THE "AUTHORS" HAS NO OBLIGATION TO
20  * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS."
21  *
22  * Please maintain this header in its entirety when copying/modifying
23  * these files.
24  *
25  *
26  */
27 
28 
29 // Documentation for this file. If the \file tag isn't present,
30 // this file won't be documented.
38 #ifndef ESOS_HWXXX_H
39 #define ESOS_HWXXX_H
40 
41 //#include "user_config.h"
42 
43 #ifdef __linux
44 /*
45 * Oh! We're running on a real computer (PC/Linux/etc.)
46 * So let's emulate the PIC instead
47 */
48 
49 #define pcrlf() printf("\n")
50 
51 // Emulate the PIC24's registers in RAM variable
52 // The user must provide these variables in the user file
53 // extern uint8_t PIE1; etc. etc. etc.
54 
55 #else
56 /*
57  * OK! We have a real PIC24HJxxx, so start including the real
58  * hardware files for the compiler
59  */
60 #include <pic24_all.h>
61 
62 #endif // __linux
63 
64 // include the IRQ mask definitions
65 #ifdef ESOS_USE_IRQS
66 #include "esos_hwxxx_irq.h"
67 #endif
68 // include the USB header if the user needs it
69 #ifdef ESOS_USE_BULK_CDC_USB
70 #include "esos_hwxxx_usb.h"
71 #endif
72 #ifdef ESOS_USE_SERIAL_PORT
73 #include "esos_hwxxx_rs232.h"
74 #endif
75 
76 #endif // ESOS_HWXXX_H
esos_hwxxx_rs232.h
This file contains macros, prototypes, and definitions for hwxxx Family specific communications on ES...
esos_hwxxx_irq.h
This file contains routines which define, configure and allow use of hardware interrupts on the targe...