<?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>Received length (UART + EasyDMA)</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/35207/received-length-uart-easydma</link><description>I would like to implement UARTE. 
 &amp;#183; Nrf 52 &amp;#183; SDK15 &amp;#183; S 132 
 The big advantage of EasyDMA is that it does not issue interrupts for each byte received. In nrf 51, &amp;quot;app_uart_get&amp;quot; was done for each &amp;quot;APP_UART_DATA_READY&amp;quot; in the prepared buffer. If you do</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 11 Jun 2018 06:53:15 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/35207/received-length-uart-easydma" /><item><title>RE: Received length (UART + EasyDMA)</title><link>https://devzone.nordicsemi.com/thread/135479?ContentTypeID=1</link><pubDate>Mon, 11 Jun 2018 06:53:15 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1e937bf0-95c3-4df4-b294-a4459cb87705</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;Actually, the examples\ble_app_uart&amp;nbsp; (not ble_app_uart_c, as far as I can tell) uses UART with EasyDMA.&lt;/p&gt;
&lt;p&gt;You can see in the file called apply_old_config.h file in the ble_app_uart example, that it redefines some of the defines from sdk_config. If you try to set a breakpoint in nrfx_uarte.c, e.g. in&amp;nbsp;nrfx_uarte_init() or&amp;nbsp;nrfx_uarte_tx() you will see that it stops there, so&amp;nbsp;this example uses the uarte driver.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Received length (UART + EasyDMA)</title><link>https://devzone.nordicsemi.com/thread/135465?ContentTypeID=1</link><pubDate>Mon, 11 Jun 2018 04:19:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bd5b72a4-6bc3-496b-857c-babdf7d82471</guid><dc:creator>zkt-1400</dc:creator><description>&lt;p&gt;Edvin, Thank you for your reply.&lt;/p&gt;
&lt;p&gt;I want to confirm the following.&lt;/p&gt;
&lt;p&gt;There is no example about EasyDMA in nRF5_SDK_15.0.0.&lt;br /&gt;Do you agree with this recognition?&lt;br /&gt;This recognition is the conclusion of searching the question of the other person.&lt;/p&gt;
&lt;p&gt;I am looking at the example below.&lt;br /&gt;&amp;middot; NRF5_SDK_15.0.0_a53641a \ examples \ peripheral \ uart&lt;br /&gt;&amp;middot; NRF5_SDK_15.0.0_a53641a \ examples \ ble_central \ ble_app_uart_c&lt;/p&gt;
&lt;p&gt;These examples seem to distinguish EasyDMA by #define.&lt;br /&gt;Are these examples really using EasyDMA?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Received length (UART + EasyDMA)</title><link>https://devzone.nordicsemi.com/thread/135307?ContentTypeID=1</link><pubDate>Fri, 08 Jun 2018 08:38:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b040cbbe-2aca-4ec9-b9cd-26f10abe8f0c</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I can really recommend reading through &lt;a href="http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf52832.ps.v1.1%2Fuarte.html"&gt;this page&lt;/a&gt;&amp;nbsp;about UARTE.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;When you are using the UART with EasyDMA, your application will only receive an interrupt when the RX buffer is filled. The UARTE peripheral will keep track of the number of received bytes, but it doesn&amp;#39;t require the CPU in order to do this.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;In the case when the buffer will always be filled, this is quite easy to use. However, if the RX buffer is not filled, and the other device has stopped sending data, you can use a timer to end the RX operation by triggering the&amp;nbsp;STOPRX task. This is described in the section beneath Figure 3.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;It also explains that you can read the number of received bytes from the register&amp;nbsp;RXD.AMOUNT.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>