components/esp32-owb/include/owb_rmt_bus_symbols.h

Mon, 24 Jun 2024 17:09:07 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Mon, 24 Jun 2024 17:09:07 +0200
branch
idf 5.1
changeset 130
96ee5cb45b37
permissions
-rw-r--r--

Added new files and remove obsolete.

130
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1 /**
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2 * Copyright (c) 2023 mjcross
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
3 *
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
4 * SPDX-License-Identifier: MIT
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
5 **/
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
6
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
7 #include "owb_rmt_bus_timings.h"
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
8
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
9 // RMT transmit channel symbols for the onewire bus signals and conditions
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
10 //
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
11
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
12 // basic bus levels
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
13 // ----------------
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
14 // note: we configure the transmit channel to be hardware inverted,
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
15 // so that the bus initialises in the 'released' state
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
16 #define OWB_RMT_BUS_ASSERTED 1
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
17 #define OWB_RMT_BUS_RELEASED 0
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
18
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
19 // bus symbols as `rmt_symbol_word_t`
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
20 // ----------------------------------
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
21
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
22 // send 'zero' bit
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
23 #define OWB_RMT_SYMBOL_0BIT { \
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
24 .level0 = OWB_RMT_BUS_ASSERTED, \
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
25 .duration0 = OWB_TIMING_PARAM_C, \
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
26 .level1 = OWB_RMT_BUS_RELEASED, \
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
27 .duration1 = OWB_TIMING_PARAM_D }
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
28
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
29 // send 'one' bit
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
30 #define OWB_RMT_SYMBOL_1BIT { \
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
31 .level0 = OWB_RMT_BUS_ASSERTED, \
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
32 .duration0 = OWB_TIMING_PARAM_A, \
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
33 .level1 = OWB_RMT_BUS_RELEASED, \
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
34 .duration1 = OWB_TIMING_PARAM_B }
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
35
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
36 // send bus reset
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
37 #define OWB_RMT_SYMBOL_RESET { \
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
38 .level0 = OWB_RMT_BUS_ASSERTED, \
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
39 .duration0 = OWB_TIMING_PARAM_H, \
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
40 .level1 = OWB_RMT_BUS_RELEASED, \
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
41 .duration1 = OWB_TIMING_PARAM_I + OWB_TIMING_PARAM_J }
96ee5cb45b37 Added new files and remove obsolete.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
42

mercurial