Project

General

Profile

Statistics
| Revision:

root / lab5 / utils.h @ 306

History | View | Annotate | Download (1.12 KB)

1 109 up20180655
#ifndef UTILS_H_INCLUDED
2
#define UTILS_H_INCLUDED
3
4
/**
5
 * @brief Gets the least significant byte of a 16-bit variable
6
 * @param val 16-bit variable
7
 * @param lsb Pointer to a 8-bit variable to store the value of the LSB
8
 * @return ERROR_CODE code representing the result of the operation, SUCCESS code is returned if everything is OK
9
 */
10
int(util_get_LSB)(uint16_t val, uint8_t *lsb);
11
12
/**
13
 * @brief Gets the most significant byte of a 16-bit variable
14
 * @param val 16-bit variable
15
 * @param lsb Pointer to a 8-bit variable to store the value of the MSB
16
 * @return ERROR_CODE code representing the result of the operation, SUCCESS code is returned if everything is OK
17
 */
18
int(util_get_MSB)(uint16_t val, uint8_t *msb);
19
20
#ifdef LAB3
21
    uint32_t sys_inb_counter;
22
#endif
23
24
/**
25
 * @brief sys_inb wrapper
26
 * @param port Port to read from
27
 * @param value Pointer to byte to store value read
28
 * @return ERROR_CODE code representing the result of the operation, SUCCESS code is returned if everything is OK
29
 */
30
int (util_sys_inb)(int port, uint8_t *value);
31
32 137 up20180642
int16_t min(int16_t a, int16_t b);
33
int16_t max(int16_t a, int16_t b);
34 134 up20180642
35 137 up20180642
36 109 up20180655
#endif //UTILS_H_INCLUDED