modm API documentation
modm::UartDevice< Uart, NestingLevels > Class Template Reference

#include <modm/architecture/interface/uart_device.hpp>

Inheritance diagram for modm::UartDevice< Uart, NestingLevels >:
modm::NestedResumable< NestingLevels+1 >

Public Member Functions

bool hasReceived ()
 
void setTxTimeout (ShortPreciseDuration timeout)
 
void setRxTimeout (ShortPreciseDuration timeout)
 

Protected Member Functions

modm::ResumableResult< bool > write (uint8_t data)
 
modm::ResumableResult< bool > write (const uint8_t *data, std::size_t length)
 
modm::ResumableResult< bool > read (uint8_t &data)
 
modm::ResumableResult< bool > read (uint8_t *buffer, std::size_t length)
 
modm::ResumableResult< ReturnType > resumable function (...)
 
int8_t getResumableDepth () const
 
bool isResumableRunning () const
 
void stopResumable ()
 Force all resumable functions to stop running at the current nesting level.
 

Detailed Description

template<class Uart, uint8_t NestingLevels = 10>
class modm::UartDevice< Uart, NestingLevels >

Base class of an UART Device.

This class provides generic transaction-like semantics

Author
Rasmus Kleist Hørlyck Sørensen

Member Function Documentation

modm::ResumableResult< ReturnType > resumable modm::NestedResumable< 1 >::function (   ...)
inherited

Run the resumable function.

You need to implement this method in you subclass yourself.

Returns
>NestingError if still running, <=NestingError if it has finished.
int8_t modm::NestedResumable< 1 >::getResumableDepth ( ) const
inheritedinline
Returns
the nesting depth in the current resumable function, or -1 if called outside any resumable function
bool modm::NestedResumable< 1 >::isResumableRunning ( ) const
inheritedinline
Returns
true if a resumable function is running at the current nesting level, else false

The documentation for this class was generated from the following file: