RISC-V/V203F6P6/common/usart.h
2025-01-26 16:50:07 +01:00

22 lines
616 B
C++

#ifndef USART_H
#define USART_H
#include "fifo.h"
#include "baselayer.h"
/** @class Usart
* @brief Sériový port.
*
* Zde RS485, vstup i výstup.
* Při vysílání je zakázán příjem a to jak v software, tak v hardware.
* Tady u toho typu je pin řízení směru přenosu dělán čistě softwarově,
* překrytí je minimální, zdá se že to nevadí.
*/
class Usart : public BaseLayer {
FIFO<char, 64> tx_ring;
public:
explicit Usart (const uint32_t baud = 9600) noexcept;
uint32_t Down (const char * data, const uint32_t len) override;
void irq (void);
};
#endif // USART_H