kopia lustrzana https://github.com/espressif/esp-idf
Porównaj commity
2 Commity
0b425f593b
...
f01b5b1e34
Autor | SHA1 | Data |
---|---|---|
Arseny Vakhrushev | f01b5b1e34 | |
neoxic | 2800a0bed5 |
|
@ -708,8 +708,6 @@ FORCE_INLINE_ATTR void uart_ll_set_mode_rs485_app_ctrl(uart_dev_t *hw)
|
|||
hw->conf0.irda_en = 0;
|
||||
hw->conf0.sw_rts = 0;
|
||||
hw->conf0.irda_en = 0;
|
||||
hw->rs485_conf.dl0_en = 1;
|
||||
hw->rs485_conf.dl1_en = 1;
|
||||
hw->rs485_conf.en = 1;
|
||||
}
|
||||
|
||||
|
@ -726,12 +724,9 @@ FORCE_INLINE_ATTR void uart_ll_set_mode_rs485_half_duplex(uart_dev_t *hw)
|
|||
hw->conf0.sw_rts = 1;
|
||||
// Half duplex mode
|
||||
hw->rs485_conf.tx_rx_en = 0;
|
||||
// Setting this bit will allow data to be transmitted while receiving data(full-duplex mode).
|
||||
// But note that this full-duplex mode has no conflict detection function
|
||||
hw->rs485_conf.rx_busy_tx_en = 0;
|
||||
// This is to void collision
|
||||
hw->rs485_conf.rx_busy_tx_en = 1;
|
||||
hw->conf0.irda_en = 0;
|
||||
hw->rs485_conf.dl0_en = 1;
|
||||
hw->rs485_conf.dl1_en = 1;
|
||||
hw->rs485_conf.en = 1;
|
||||
}
|
||||
|
||||
|
@ -749,8 +744,6 @@ FORCE_INLINE_ATTR void uart_ll_set_mode_collision_detect(uart_dev_t *hw)
|
|||
hw->rs485_conf.tx_rx_en = 1;
|
||||
// Transmitter should send data when the receiver is busy,
|
||||
hw->rs485_conf.rx_busy_tx_en = 1;
|
||||
hw->rs485_conf.dl0_en = 1;
|
||||
hw->rs485_conf.dl1_en = 1;
|
||||
hw->conf0.sw_rts = 0;
|
||||
hw->rs485_conf.en = 1;
|
||||
}
|
||||
|
|
|
@ -711,8 +711,6 @@ FORCE_INLINE_ATTR void uart_ll_set_mode_rs485_app_ctrl(uart_dev_t *hw)
|
|||
hw->conf0.irda_en = 0;
|
||||
hw->conf0.sw_rts = 0;
|
||||
hw->conf0.irda_en = 0;
|
||||
hw->rs485_conf.dl0_en = 1;
|
||||
hw->rs485_conf.dl1_en = 1;
|
||||
hw->rs485_conf.en = 1;
|
||||
}
|
||||
|
||||
|
@ -727,14 +725,11 @@ FORCE_INLINE_ATTR void uart_ll_set_mode_rs485_half_duplex(uart_dev_t *hw)
|
|||
{
|
||||
// Enable receiver, sw_rts = 1 generates low level on RTS pin
|
||||
hw->conf0.sw_rts = 1;
|
||||
// Half duplex mode
|
||||
// Must be set to 0 to automatically remove echo
|
||||
hw->rs485_conf.tx_rx_en = 0;
|
||||
// Setting this bit will allow data to be transmitted while receiving data(full-duplex mode).
|
||||
// But note that this full-duplex mode has no conflict detection function
|
||||
hw->rs485_conf.rx_busy_tx_en = 0;
|
||||
// This is to void collision
|
||||
hw->rs485_conf.rx_busy_tx_en = 1;
|
||||
hw->conf0.irda_en = 0;
|
||||
hw->rs485_conf.dl0_en = 1;
|
||||
hw->rs485_conf.dl1_en = 1;
|
||||
hw->rs485_conf.en = 1;
|
||||
}
|
||||
|
||||
|
@ -752,8 +747,6 @@ FORCE_INLINE_ATTR void uart_ll_set_mode_collision_detect(uart_dev_t *hw)
|
|||
hw->rs485_conf.tx_rx_en = 1;
|
||||
// Transmitter should send data when the receiver is busy,
|
||||
hw->rs485_conf.rx_busy_tx_en = 1;
|
||||
hw->rs485_conf.dl0_en = 1;
|
||||
hw->rs485_conf.dl1_en = 1;
|
||||
hw->conf0.sw_rts = 0;
|
||||
hw->rs485_conf.en = 1;
|
||||
}
|
||||
|
|
|
@ -909,8 +909,6 @@ FORCE_INLINE_ATTR void uart_ll_set_mode_rs485_app_ctrl(uart_dev_t *hw)
|
|||
hw->conf0_sync.irda_en = 0;
|
||||
hw->conf0_sync.sw_rts = 0;
|
||||
hw->conf0_sync.irda_en = 0;
|
||||
hw->rs485_conf_sync.dl0_en = 1;
|
||||
hw->rs485_conf_sync.dl1_en = 1;
|
||||
hw->rs485_conf_sync.rs485_en = 1;
|
||||
uart_ll_update(hw);
|
||||
}
|
||||
|
@ -932,12 +930,9 @@ FORCE_INLINE_ATTR void uart_ll_set_mode_rs485_half_duplex(uart_dev_t *hw)
|
|||
hw->conf0_sync.sw_rts = 1;
|
||||
// Half duplex mode
|
||||
hw->rs485_conf_sync.rs485tx_rx_en = 0;
|
||||
// Setting this bit will allow data to be transmitted while receiving data(full-duplex mode).
|
||||
// But note that this full-duplex mode has no conflict detection function
|
||||
hw->rs485_conf_sync.rs485rxby_tx_en = 0;
|
||||
// This is to void collision
|
||||
hw->rs485_conf_sync.rs485rxby_tx_en = 1;
|
||||
hw->conf0_sync.irda_en = 0;
|
||||
hw->rs485_conf_sync.dl0_en = 1;
|
||||
hw->rs485_conf_sync.dl1_en = 1;
|
||||
hw->rs485_conf_sync.rs485_en = 1;
|
||||
uart_ll_update(hw);
|
||||
}
|
||||
|
@ -960,8 +955,6 @@ FORCE_INLINE_ATTR void uart_ll_set_mode_collision_detect(uart_dev_t *hw)
|
|||
hw->rs485_conf_sync.rs485tx_rx_en = 1;
|
||||
// Transmitter should send data when the receiver is busy,
|
||||
hw->rs485_conf_sync.rs485rxby_tx_en = 1;
|
||||
hw->rs485_conf_sync.dl0_en = 1;
|
||||
hw->rs485_conf_sync.dl1_en = 1;
|
||||
hw->conf0_sync.sw_rts = 0;
|
||||
hw->rs485_conf_sync.rs485_en = 1;
|
||||
uart_ll_update(hw);
|
||||
|
|
|
@ -751,8 +751,6 @@ FORCE_INLINE_ATTR void uart_ll_set_mode_rs485_app_ctrl(uart_dev_t *hw)
|
|||
hw->conf0_sync.irda_en = 0;
|
||||
hw->conf0_sync.sw_rts = 0;
|
||||
hw->conf0_sync.irda_en = 0;
|
||||
hw->rs485_conf_sync.dl0_en = 1;
|
||||
hw->rs485_conf_sync.dl1_en = 1;
|
||||
hw->rs485_conf_sync.rs485_en = 1;
|
||||
uart_ll_update(hw);
|
||||
}
|
||||
|
@ -770,12 +768,9 @@ FORCE_INLINE_ATTR void uart_ll_set_mode_rs485_half_duplex(uart_dev_t *hw)
|
|||
hw->conf0_sync.sw_rts = 1;
|
||||
// Half duplex mode
|
||||
hw->rs485_conf_sync.rs485tx_rx_en = 0;
|
||||
// Setting this bit will allow data to be transmitted while receiving data(full-duplex mode).
|
||||
// But note that this full-duplex mode has no conflict detection function
|
||||
hw->rs485_conf_sync.rs485rxby_tx_en = 0;
|
||||
// This is to void collision
|
||||
hw->rs485_conf_sync.rs485rxby_tx_en = 1;
|
||||
hw->conf0_sync.irda_en = 0;
|
||||
hw->rs485_conf_sync.dl0_en = 1;
|
||||
hw->rs485_conf_sync.dl1_en = 1;
|
||||
hw->rs485_conf_sync.rs485_en = 1;
|
||||
uart_ll_update(hw);
|
||||
}
|
||||
|
@ -794,8 +789,6 @@ FORCE_INLINE_ATTR void uart_ll_set_mode_collision_detect(uart_dev_t *hw)
|
|||
hw->rs485_conf_sync.rs485tx_rx_en = 1;
|
||||
// Transmitter should send data when the receiver is busy,
|
||||
hw->rs485_conf_sync.rs485rxby_tx_en = 1;
|
||||
hw->rs485_conf_sync.dl0_en = 1;
|
||||
hw->rs485_conf_sync.dl1_en = 1;
|
||||
hw->conf0_sync.sw_rts = 0;
|
||||
hw->rs485_conf_sync.rs485_en = 1;
|
||||
uart_ll_update(hw);
|
||||
|
|
|
@ -1022,8 +1022,6 @@ FORCE_INLINE_ATTR void uart_ll_set_mode_rs485_app_ctrl(uart_dev_t *hw)
|
|||
hw->conf0_sync.irda_en = 0;
|
||||
hw->conf0_sync.sw_rts = 0;
|
||||
hw->conf0_sync.irda_en = 0;
|
||||
hw->rs485_conf_sync.dl0_en = 1;
|
||||
hw->rs485_conf_sync.dl1_en = 1;
|
||||
hw->rs485_conf_sync.rs485_en = 1;
|
||||
uart_ll_update(hw);
|
||||
}
|
||||
|
@ -1045,12 +1043,9 @@ FORCE_INLINE_ATTR void uart_ll_set_mode_rs485_half_duplex(uart_dev_t *hw)
|
|||
hw->conf0_sync.sw_rts = 1;
|
||||
// Half duplex mode
|
||||
hw->rs485_conf_sync.rs485tx_rx_en = 0;
|
||||
// Setting this bit will allow data to be transmitted while receiving data(full-duplex mode).
|
||||
// But note that this full-duplex mode has no conflict detection function
|
||||
hw->rs485_conf_sync.rs485rxby_tx_en = 0;
|
||||
// This is to void collision
|
||||
hw->rs485_conf_sync.rs485rxby_tx_en = 1;
|
||||
hw->conf0_sync.irda_en = 0;
|
||||
hw->rs485_conf_sync.dl0_en = 1;
|
||||
hw->rs485_conf_sync.dl1_en = 1;
|
||||
hw->rs485_conf_sync.rs485_en = 1;
|
||||
uart_ll_update(hw);
|
||||
}
|
||||
|
@ -1073,8 +1068,6 @@ FORCE_INLINE_ATTR void uart_ll_set_mode_collision_detect(uart_dev_t *hw)
|
|||
hw->rs485_conf_sync.rs485tx_rx_en = 1;
|
||||
// Transmitter should send data when the receiver is busy,
|
||||
hw->rs485_conf_sync.rs485rxby_tx_en = 1;
|
||||
hw->rs485_conf_sync.dl0_en = 1;
|
||||
hw->rs485_conf_sync.dl1_en = 1;
|
||||
hw->conf0_sync.sw_rts = 0;
|
||||
hw->rs485_conf_sync.rs485_en = 1;
|
||||
uart_ll_update(hw);
|
||||
|
|
Ładowanie…
Reference in New Issue