LTlib LaurTec Library
4.0.3
Open Source C Library for Microchip Microcontrollers based on XC8 Compiler
Main Page
Data Structures
Files
File List
Globals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
main.c
Go to the documentation of this file.
1
2
#include <xc.h>
3
4
#include "
LTlib.h
"
5
6
#include "
module_IO.h
"
7
#include "
module_IO.c
"
8
9
#include "
module_SPI.h
"
10
#include "
module_SPI.c
"
11
12
#define BUTTON_MASK 0xF0
13
14
#define BUTTON_1 0x01
15
#define BUTTON_2 0x02
16
#define BUTTON_3 0x04
17
#define BUTTON_4 0x08
18
19
#define BUTTON_1_PRESSED 0b11100000
20
#define BUTTON_2_PRESSED 0b11010000
21
#define BUTTON_3_PRESSED 0b10110000
22
#define BUTTON_4_PRESSED 0b01110000
23
24
25
//*************************************
26
// SPI Master
27
//*************************************
28
int
main
(
void
) {
29
30
IO_set_all_ports_as_inputs
();
31
IO_enable_pull_up_resistors
(
IO_PORTB
, 0xFF);
32
33
SPI1_baudrate
(
SPI_CLK_OSC_64
);
34
SPI1_mode
(
SPI_MODE_1
);
35
SPI1_open
(
SPI_MASTER_DEVICE
);
36
37
//check pressed buttons
38
while
(1) {
39
40
switch
(PORTB &
BUTTON_MASK
) {
41
42
case
BUTTON_1_PRESSED
:
SPI1_write_byte
(
BUTTON_1
);
43
break
;
44
case
BUTTON_2_PRESSED
:
SPI1_write_byte
(
BUTTON_2
);
45
break
;
46
case
BUTTON_3_PRESSED
:
SPI1_write_byte
(
BUTTON_3
);
47
break
;
48
case
BUTTON_4_PRESSED
:
SPI1_write_byte
(
BUTTON_4
);
49
break
;
50
}
51
}
52
}
LTlib_v_4.0.3
ex
PIC18
_module_SPI
01_SPI_Master.X
main.c
Generated on Wed Aug 3 2016 19:57:31 for LTlib LaurTec Library by
1.8.3.1