MCPcopy Create free account
hub / github.com/RT-Thread/rt-thread / rt_serial_write

Function rt_serial_write

components/drivers/serial/dev_serial.c:913–939  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

911}
912
913static rt_ssize_t rt_serial_write(struct rt_device *dev,
914 rt_off_t pos,
915 const void *buffer,
916 rt_size_t size)
917{
918 struct rt_serial_device *serial;
919
920 RT_ASSERT(dev != RT_NULL);
921 if (size == 0) return 0;
922
923 serial = (struct rt_serial_device *)dev;
924
925 if (dev->open_flag & RT_DEVICE_FLAG_INT_TX)
926 {
927 return _serial_int_tx(serial, (const rt_uint8_t *)buffer, size);
928 }
929#ifdef RT_SERIAL_USING_DMA
930 else if (dev->open_flag & RT_DEVICE_FLAG_DMA_TX)
931 {
932 return _serial_dma_tx(serial, (const rt_uint8_t *)buffer, size);
933 }
934#endif /* RT_SERIAL_USING_DMA */
935 else
936 {
937 return _serial_poll_tx(serial, (const rt_uint8_t *)buffer, size);
938 }
939}
940
941#if defined(RT_USING_POSIX_TERMIOS)
942struct speed_baudrate_item

Callers

nothing calls this directly

Calls 2

_serial_int_txFunction · 0.85
_serial_poll_txFunction · 0.70

Tested by

no test coverage detected