RISC-V/V203/usb/common/usart.h
2024-10-15 19:26:19 +02:00

22 lines
646 B
C++

#ifndef USART_H
#define USART_H
#include "fifo.h"
#include "baselayer.h"
#include "ctrlinterface.h"
/** @class Usart
* @brief Sériový port.
*
*/
class Usart : public BaseLayer, public CDC_CtrlInterface {
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 SetBaud (const uint32_t baud) const;
// Obsluha přerušení musí být veřejná.
void irq (void);
// Přetížení pro CDC.
bool IOCtrl (const CTRL_TYPES_DEF type, const void * data, const uint32_t len) override;
};
#endif // USART_H