-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathserial_port.h
37 lines (31 loc) · 1 KB
/
serial_port.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#ifndef _SERIAL_PORT_H_
#define _SERIAL_PORT_H_
typedef enum {
COM1_PORT = 0x3F8,
COM2_PORT = 0x2F8,
COM3_PORT = 0x3E8,
COM4_PORT = 0x2E8
} serial_port;
/*
#define COM1_PORT (0x3F8)
#define COM2_PORT (0x2F8)
#define COM3_PORT (0x3E8)
#define COM4_PORT (0x2E8)
*/
#define COM_PORT_DATA_REGISTER_OFFSET (0)
#define COM_PORT_INT_ENABLE_REGISTER_OFFSET (1)
#define COM_PORT_LSB_DIVISOR_BAUDRATE_OFFSET (0)
#define COM_PORT_MSB_DIVISOR_BAUDRATE_OFFSET (1)
#define COM_PORT_FCR_OFFSET (2)
#define COM_PORT_LINE_CONTROL_REGISTER_OFFSET (3)
#define COM_PORT_MODEM_CONTROL_REGISTER_OFFSET (4)
#define COM_PORT_LINE_STATUS_REGISTER_OFFSET (5)
#define COM_PORT_MODEM_STATUS_REIGSTER_OFFSET (6)
#define COM_PORT_SCRATCH_REGISTER_OFFSET (7)
int initial_serial(serial_port port);
int serial_received(serial_port port);
int read_serial(serial_port port);
int is_transmit_empty(serial_port port);
void write_serial(serial_port port, int data);
void sp_put_string(char *str);
#endif