ESPHome
2023.8.3
esphome
esphome
components
uart
uart.cpp
Go to the documentation of this file.
1
#include "
uart.h
"
2
#include "
esphome/core/log.h
"
3
#include "
esphome/core/helpers.h
"
4
#include "
esphome/core/application.h
"
5
#include "
esphome/core/defines.h
"
6
#include <cinttypes>
7
8
namespace
esphome
{
9
namespace
uart {
10
11
static
const
char
*
const
TAG =
"uart"
;
12
13
void
UARTDevice::check_uart_settings
(uint32_t baud_rate, uint8_t stop_bits,
UARTParityOptions
parity,
14
uint8_t data_bits) {
15
if
(this->
parent_
->
get_baud_rate
() != baud_rate) {
16
ESP_LOGE(TAG,
" Invalid baud_rate: Integration requested baud_rate %"
PRIu32
" but you have %"
PRIu32
"!"
,
17
baud_rate, this->
parent_
->
get_baud_rate
());
18
}
19
if
(this->
parent_
->
get_stop_bits
() != stop_bits) {
20
ESP_LOGE(TAG,
" Invalid stop bits: Integration requested stop_bits %u but you have %u!"
, stop_bits,
21
this->
parent_
->
get_stop_bits
());
22
}
23
if
(this->
parent_
->
get_data_bits
() != data_bits) {
24
ESP_LOGE(TAG,
" Invalid number of data bits: Integration requested %u data bits but you have %u!"
, data_bits,
25
this->
parent_
->
get_data_bits
());
26
}
27
if
(this->
parent_
->
get_parity
() != parity) {
28
ESP_LOGE(TAG,
" Invalid parity: Integration requested parity %s but you have %s!"
,
29
LOG_STR_ARG(
parity_to_str
(parity)), LOG_STR_ARG(
parity_to_str
(this->
parent_
->
get_parity
())));
30
}
31
}
32
33
const
LogString *
parity_to_str
(
UARTParityOptions
parity) {
34
switch
(parity) {
35
case
UART_CONFIG_PARITY_NONE
:
36
return
LOG_STR(
"NONE"
);
37
case
UART_CONFIG_PARITY_EVEN
:
38
return
LOG_STR(
"EVEN"
);
39
case
UART_CONFIG_PARITY_ODD
:
40
return
LOG_STR(
"ODD"
);
41
default
:
42
return
LOG_STR(
"UNKNOWN"
);
43
}
44
}
45
46
}
// namespace uart
47
}
// namespace esphome
uart.h
esphome::uart::UARTComponent::get_stop_bits
uint8_t get_stop_bits() const
Definition:
uart_component.h:58
esphome::uart::UARTComponent::get_baud_rate
uint32_t get_baud_rate() const
Definition:
uart_component.h:64
esphome::uart::UARTParityOptions
UARTParityOptions
Definition:
uart_component.h:16
application.h
esphome::uart::UART_CONFIG_PARITY_NONE
Definition:
uart_component.h:17
esphome::uart::UARTDevice::parent_
UARTComponent * parent_
Definition:
uart.h:68
esphome::uart::UART_CONFIG_PARITY_EVEN
Definition:
uart_component.h:18
esphome::uart::UARTComponent::get_data_bits
uint8_t get_data_bits() const
Definition:
uart_component.h:60
esphome::uart::UARTDevice::check_uart_settings
void check_uart_settings(uint32_t baud_rate, uint8_t stop_bits=1, UARTParityOptions parity=UART_CONFIG_PARITY_NONE, uint8_t data_bits=8)
Check that the configuration of the UART bus matches the provided values and otherwise print a warnin...
Definition:
uart.cpp:13
defines.h
esphome::uart::UART_CONFIG_PARITY_ODD
Definition:
uart_component.h:19
esphome::uart::UARTComponent::get_parity
UARTParityOptions get_parity() const
Definition:
uart_component.h:62
esphome
Definition:
a01nyub.cpp:7
helpers.h
log.h
esphome::uart::parity_to_str
const LogString * parity_to_str(UARTParityOptions parity)
Definition:
uart.cpp:33
Generated by
1.8.13