<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>UART and UARTE peripherals</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/84083/uart-and-uarte-peripherals</link><description>I&amp;#39;ve asked before about these two peripherals, the way they are presented is a little confusing. 
 I understand that UARTE has DMA possibilities, UART doesn&amp;#39;t. Also that in effect there is only one UART on the chip. 
 In the case that I just want a very</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 27 Jan 2022 07:25:01 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/84083/uart-and-uarte-peripherals" /><item><title>RE: UART and UARTE peripherals</title><link>https://devzone.nordicsemi.com/thread/349873?ContentTypeID=1</link><pubDate>Thu, 27 Jan 2022 07:25:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9454de9c-47e6-4014-8ba1-a64e9b862cad</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;The file you refer to is the legacy nrf_drv_uart.c/.h files, which if from before the UART and UARTE drivers had separate files. In the nrfx drivers we have separate files for UART and UARTE, and it works similar to what Markku describes, where the UARTE and UART is just the peripheral with and without EasyDMA. We generally recommend using the UARTE with EasyDMA as there isn&amp;#39;t much extra setup compared to the simple UART, but you&amp;#39;re free to use the basic UART if you prefer that.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART and UARTE peripherals</title><link>https://devzone.nordicsemi.com/thread/349782?ContentTypeID=1</link><pubDate>Wed, 26 Jan 2022 13:56:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:467cb038-6b2d-4456-86ed-bdef3d3ccabc</guid><dc:creator>danmcb</dc:creator><description>&lt;p&gt;no, there are separate files, typedefs, everything, for UART and UARTE.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART and UARTE peripherals</title><link>https://devzone.nordicsemi.com/thread/349781?ContentTypeID=1</link><pubDate>Wed, 26 Jan 2022 13:53:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:50bb2b93-b47d-4642-b8b2-2d5907fe76c9</guid><dc:creator>mrono</dc:creator><description>&lt;p&gt;I think that is just the Nordic uart driver&amp;#39;s way of choosing either uart or uarte.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART and UARTE peripherals</title><link>https://devzone.nordicsemi.com/thread/349771?ContentTypeID=1</link><pubDate>Wed, 26 Jan 2022 13:33:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0c3035e6-723d-45b7-a98c-7f289f131c9a</guid><dc:creator>danmcb</dc:creator><description>&lt;p&gt;there is this though - a flag to turn off DMA use.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div style="background-color:#1e1e1e;color:#d4d4d4;font-family:Consolas, &amp;#39;Courier New&amp;#39;, monospace;font-size:14px;font-weight:normal;line-height:19px;white-space:pre;"&gt;
&lt;div&gt;&lt;span style="color:#6a9955;"&gt;/**@brief Structure for UART configuration. */&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#569cd6;"&gt;typedef&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt; &lt;/span&gt;&lt;span style="color:#569cd6;"&gt;struct&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#d4d4d4;"&gt;{&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#d4d4d4;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#4ec9b0;"&gt;uint32_t&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style="color:#9cdcfe;"&gt;pseltxd&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt;; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style="color:#6a9955;"&gt;///&amp;lt; TXD pin number.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#d4d4d4;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#4ec9b0;"&gt;uint32_t&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style="color:#9cdcfe;"&gt;pselrxd&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt;; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style="color:#6a9955;"&gt;///&amp;lt; RXD pin number.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#d4d4d4;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#4ec9b0;"&gt;uint32_t&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style="color:#9cdcfe;"&gt;pselcts&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt;; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style="color:#6a9955;"&gt;///&amp;lt; CTS pin number.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#d4d4d4;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#4ec9b0;"&gt;uint32_t&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style="color:#9cdcfe;"&gt;pselrts&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt;; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style="color:#6a9955;"&gt;///&amp;lt; RTS pin number.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#d4d4d4;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#569cd6;"&gt;void&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt; * &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style="color:#9cdcfe;"&gt;p_context&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt;; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style="color:#6a9955;"&gt;///&amp;lt; Context passed to interrupt handler.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#d4d4d4;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#4ec9b0;"&gt;nrf_uart_hwfc_t&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#9cdcfe;"&gt;hwfc&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt;; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#6a9955;"&gt;///&amp;lt; Flow control configuration.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#d4d4d4;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#4ec9b0;"&gt;nrf_uart_parity_t&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#9cdcfe;"&gt;parity&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt;; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#6a9955;"&gt;///&amp;lt; Parity configuration.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#d4d4d4;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#4ec9b0;"&gt;nrf_uart_baudrate_t&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt; &lt;/span&gt;&lt;span style="color:#9cdcfe;"&gt;baudrate&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt;; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#6a9955;"&gt;///&amp;lt; Baudrate.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#d4d4d4;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#4ec9b0;"&gt;uint8_t&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#9cdcfe;"&gt;interrupt_priority&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt;; &lt;/span&gt;&lt;span style="color:#6a9955;"&gt;///&amp;lt; Interrupt priority.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#c586c0;"&gt;#if&lt;/span&gt;&lt;span style="color:#569cd6;"&gt; &lt;/span&gt;&lt;span style="color:#c586c0;"&gt;defined&lt;/span&gt;&lt;span style="color:#569cd6;"&gt;(&lt;/span&gt;&lt;span style="color:#569cd6;"&gt;NRF_DRV_UART_WITH_UARTE&lt;/span&gt;&lt;span style="color:#569cd6;"&gt;) &lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span style="color:#569cd6;"&gt; &lt;/span&gt;&lt;span style="color:#c586c0;"&gt;defined&lt;/span&gt;&lt;span style="color:#569cd6;"&gt;(&lt;/span&gt;&lt;span style="color:#569cd6;"&gt;NRF_DRV_UART_WITH_UART&lt;/span&gt;&lt;span style="color:#569cd6;"&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#d4d4d4;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#569cd6;"&gt;bool&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style="color:#9cdcfe;"&gt;use_easy_dma&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#c586c0;"&gt;#endif&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#d4d4d4;"&gt;} &lt;/span&gt;&lt;span style="color:#4ec9b0;"&gt;nrf_drv_uart_config_t&lt;/span&gt;&lt;span style="color:#d4d4d4;"&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#d4d4d4;"&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART and UARTE peripherals</title><link>https://devzone.nordicsemi.com/thread/349751?ContentTypeID=1</link><pubDate>Wed, 26 Jan 2022 12:24:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bad9fb35-5aa4-44cb-9a5e-f07769ba9eb2</guid><dc:creator>mrono</dc:creator><description>&lt;p&gt;The way I look at UART/UARTE is that there is only one peripheral with two different access methods.&lt;/p&gt;
&lt;p&gt;If you access the peripheral using UARTE-&amp;gt; -registers, DMA will be enabled automatically. And similarly if you use UART-&amp;gt; -registers, DMA will be disabled.&lt;/p&gt;
&lt;p&gt;Both should be fairly equal in terms of complexity for a simple debug uart.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>