ESOS32
ESOSOn32-bitProcessors
esos_stm32l4.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 // Documentation for this file. If the \file tag isn't present,
29 // this file won't be documented.
35 #ifndef ESOS_STM32L4_H
36 #define ESOS_STM32L4_H
37 
38 //#include "user_config.h"
39 
40 #ifdef __linux
41 /*
42 * Oh! We're running on a real computer (PC/Linux/etc.)
43 * So let's emulate the MCU instead
44 */
45 
46 #define pcrlf() printf("\n")
47 
48 // Emulate the STM32L4's registers in RAM variable
49 // The user must provide these variables in the user file
50 // extern uint8_t PIE1; etc. etc. etc.
51 
52 #else
53 /*
54  * OK! We have a real microprocessor, so start including the real
55  * hardware files for the compiler
56  */
57 
58 #include "stm32l4xx_hal.h"
59 
60 #endif // __linux
61 
62 // include the IRQ mask definitions
63 #ifdef ESOS_USE_IRQS
64 #include "esos_stm32l4_irq.h"
65 #endif
66 #ifdef ESOS_USE_SERIAL_PORT
67 #include "esos_stm32l4_rs232.h"
68 #endif
69 
70 #endif // ESOS_STM32L4_H