esp32-owb
ESP32-compatible C library for Maxim Integrated 1-Wire Bus.
Main Page
Related Pages
Data Structures
Files
File List
Globals
All
Data Structures
Files
Functions
Variables
Enumerations
Enumerator
Macros
Pages
include
owb_rmt.h
Go to the documentation of this file.
1
/*
2
* MIT License
3
*
4
* Copyright (c) 2017 David Antliff
5
* Copyright (c) 2017 Chris Morgan <chmorgan@gmail.com>
6
*
7
* Permission is hereby granted, free of charge, to any person obtaining a copy
8
* of this software and associated documentation files (the "Software"), to deal
9
* in the Software without restriction, including without limitation the rights
10
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
* copies of the Software, and to permit persons to whom the Software is
12
* furnished to do so, subject to the following conditions:
13
*
14
* The above copyright notice and this permission notice shall be included in all
15
* copies or substantial portions of the Software.
16
*
17
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23
* SOFTWARE.
24
*/
25
34
#pragma once
35
#ifndef OWB_RMT_H
36
#define OWB_RMT_H
37
38
#include "freertos/FreeRTOS.h"
39
#include "freertos/queue.h"
40
#include "freertos/ringbuf.h"
41
#include "driver/rmt.h"
42
43
#ifdef __cplusplus
44
extern
"C"
{
45
#endif
46
50
typedef
struct
51
{
52
int
tx_channel
;
53
int
rx_channel
;
54
RingbufHandle_t
rb
;
55
int
gpio
;
56
OneWireBus
bus
;
57
}
owb_rmt_driver_info
;
58
68
OneWireBus
*
owb_rmt_initialize
(
owb_rmt_driver_info
* info, gpio_num_t gpio_num,
69
rmt_channel_t tx_channel, rmt_channel_t rx_channel);
70
71
#ifdef __cplusplus
72
}
73
#endif
74
75
#endif // OWB_RMT_H
owb_rmt_driver_info::rx_channel
int rx_channel
RMT channel to use for RX.
Definition:
owb_rmt.h:53
owb_rmt_driver_info
RMT driver information.
Definition:
owb_rmt.h:50
OneWireBus
Structure containing 1-Wire bus information relevant to a single instance.
Definition:
owb.h:68
owb_rmt_driver_info::gpio
int gpio
OneWireBus GPIO.
Definition:
owb_rmt.h:55
owb_rmt_driver_info::rb
RingbufHandle_t rb
Ring buffer handle.
Definition:
owb_rmt.h:54
owb_rmt_driver_info::bus
OneWireBus bus
OneWireBus instance.
Definition:
owb_rmt.h:56
owb_rmt_driver_info::tx_channel
int tx_channel
RMT channel to use for TX.
Definition:
owb_rmt.h:52
owb_rmt_initialize
OneWireBus * owb_rmt_initialize(owb_rmt_driver_info *info, gpio_num_t gpio_num, rmt_channel_t tx_channel, rmt_channel_t rx_channel)
Initialise the RMT driver.
Definition:
owb_rmt.c:454
Generated by
1.8.6