<?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>Continuous Cyclic SAADC on NRF52</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/47183/continuous-cyclic-saadc-on-nrf52</link><description>Hello All, 
 I want to use SAADC with BLE working Mode. In my application, I will be using Image transfer Example for full blazing speed so I don&amp;#39;t want to use any CPU resource during the ADC process. I want to send one buffer via ble while the other</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 20 May 2019 06:49:48 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/47183/continuous-cyclic-saadc-on-nrf52" /><item><title>RE: Continuous Cyclic SAADC on NRF52</title><link>https://devzone.nordicsemi.com/thread/187772?ContentTypeID=1</link><pubDate>Mon, 20 May 2019 06:49:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fd69e225-9461-4eb7-b618-7bf3d6e7145d</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;That sentence from the driver documentation is somewhat confusing. The thing is that even if you connect the END event with the START task, you still need to update the buffer pointer in the &lt;a href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.nrf52832.ps.v1.1/saadc.html?cp=3_1_0_36_10_40#register.RESULT.PTR"&gt;RESULT.PTR&lt;/a&gt;, and this must be done in SW (the driver). There is only a single result pointer buffer in the SAADC HW, so this is a HW limitation.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Continuous Cyclic SAADC on NRF52</title><link>https://devzone.nordicsemi.com/thread/187718?ContentTypeID=1</link><pubDate>Sat, 18 May 2019 09:14:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c1228fb9-d95e-4ff7-914c-19945b92da8c</guid><dc:creator>Waqas Qammar</dc:creator><description>&lt;p&gt;the document says this:&lt;br /&gt;&lt;span&gt;&amp;nbsp;if only one channel is used, EasyDMA could automatically start processing using the second buffer if PPI is used to bind SAADC END events with the SAADC START task.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;I want to ask by doing this event handling call can be avoided?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Continuous Cyclic SAADC on NRF52</title><link>https://devzone.nordicsemi.com/thread/186848?ContentTypeID=1</link><pubDate>Tue, 14 May 2019 07:44:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:824fc04e-2f6d-4cf2-8a15-ba7da7927b67</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
[quote user=""]MY Questions is how can I bind the saadc end event with start task. for the start task I can get the address using&amp;nbsp;&lt;a title="Function for getting the address of a SAMPLE SAADC task." href="https://devzone.nordicsemi.com/support/add/group__nrf__drv__saadc.html#ga87429c85f0ae72ca731a0cc7eced5a88"&gt;nrf_drv_saadc_sample_task_get&lt;/a&gt;&lt;span&gt;(); but how could I get the address of end event to bind it using PPI.&lt;/span&gt;[/quote]
&lt;p&gt;The reason for the&amp;nbsp;nrf_drv_saadc_sample_task_get() function is that it handles differences between the driver normal and low power mode (see implementation). For all other tasks and events, you should simply use the enum in nrf_saadc.h (for instance&amp;nbsp;NRF_SAADC_EVENT_END).&lt;/p&gt;
[quote user=""]My 2nd question is if I do that is this would be a cyclic process. I mean after the 2nd buffer gets completed the saadc automatically shifts towards first buffer.[/quote]
&lt;p&gt;There is no way to do this in a cyclic way. the SAADC peripheral hardware will write samples to memory using DMA for as many samples as configured. After that, you must use software to process the samples before you start a new sampling sequence.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>