<?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>Register level programming</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/62186/register-level-programming</link><description>I want to try register level programming of Nrf52832 i.e low level programming. I referred your This GitHub repository but there are sill some libraries used . Is there any other document ?</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 08 Jun 2020 14:56:03 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/62186/register-level-programming" /><item><title>RE: Register level programming</title><link>https://devzone.nordicsemi.com/thread/253854?ContentTypeID=1</link><pubDate>Mon, 08 Jun 2020 14:56:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:aa9960ef-83d4-40c4-9d24-d328fac8268d</guid><dc:creator>awneil</dc:creator><description>&lt;p&gt;It will be somewhere in that repository, or its specified prerequisites.&lt;/p&gt;
&lt;p&gt;Have you read the &lt;strong&gt;documentation&lt;/strong&gt; there ?&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/pastedimage1591628081419v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;Sadly, those links are out-of-date.&lt;/p&gt;
&lt;p&gt;Why did you choose this particular repository? It really doesn&amp;#39;t seem to be suitable for your level of experience.&lt;/p&gt;
&lt;p&gt;Again, this is an independent 3rd-part repository - nothing to do with Nordic. If you want support with that code, you need to find some way to contact the author of that code.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Register level programming</title><link>https://devzone.nordicsemi.com/thread/253783?ContentTypeID=1</link><pubDate>Mon, 08 Jun 2020 12:03:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5a5924f3-a546-4432-9c97-2fc7d9db358c</guid><dc:creator>Manoj Hiwarkar</dc:creator><description>&lt;p&gt;&lt;span&gt;Where is GPIO_PIN_CNF_DIR_Output&amp;nbsp;&amp;nbsp;defined ?&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Register level programming</title><link>https://devzone.nordicsemi.com/thread/253702?ContentTypeID=1</link><pubDate>Mon, 08 Jun 2020 08:38:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:86acd22c-0074-4fc5-ab84-77db8b218143</guid><dc:creator>awneil</dc:creator><description>[quote userid="67033" url="~/f/nordic-q-a/62186/register-level-programming/253562"]what is GPIO_PIN_CNF_DIR_Output&amp;nbsp; ?[/quote]
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;You mean in this:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;int main(void)
{
  // Configure GPIO pin as output with standard drive strength.
  NRF_GPIO-&amp;gt;PIN_CNF[PIN_GPIO] = (GPIO_PIN_CNF_DIR_Output &amp;lt;&amp;lt; GPIO_PIN_CNF_DIR_Pos) |
                                (GPIO_PIN_CNF_DRIVE_S0S1 &amp;lt;&amp;lt; GPIO_PIN_CNF_DRIVE_Pos) |
                                (GPIO_PIN_CNF_INPUT_Connect &amp;lt;&amp;lt; GPIO_PIN_CNF_INPUT_Pos) |
                                (GPIO_PIN_CNF_PULL_Disabled &amp;lt;&amp;lt; GPIO_PIN_CNF_PULL_Pos) |
                                (GPIO_PIN_CNF_SENSE_Disabled &amp;lt;&amp;lt; GPIO_PIN_CNF_SENSE_Pos);&lt;/pre&gt;&lt;/p&gt;
[quote userid="67033" url="~/f/nordic-q-a/62186/register-level-programming/253562"]Is this a register name? I don&amp;#39;t think so[/quote]
&lt;p&gt;No, it&amp;#39;s the name of a bit position &lt;em&gt;within&lt;/em&gt; the register.&lt;/p&gt;
&lt;p&gt;Again, this is basic stuff - you really need to get a good grounding in these basics before jumping into this!&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.avrfreaks.net/forum/tut-c-bit-manipulation-aka-programming-101"&gt;https://www.avrfreaks.net/forum/tut-c-bit-manipulation-aka-programming-101&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.avrfreaks.net/comment/2079906#comment-2079906"&gt;www.avrfreaks.net/.../2079906&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Register level programming</title><link>https://devzone.nordicsemi.com/thread/253700?ContentTypeID=1</link><pubDate>Mon, 08 Jun 2020 08:33:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6c0f218d-0982-4672-8e20-5d2d3f73ebdd</guid><dc:creator>awneil</dc:creator><description>&lt;p&gt;Go on - the author is the owner of the Github page.&lt;/p&gt;
&lt;p&gt;&lt;img alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/pastedimage1591604925447v2.png" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;img alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/pastedimage1591604945288v3.png" /&gt;&lt;/p&gt;
&lt;p&gt;He is also named in the LICENSE file.&lt;/p&gt;
&lt;p&gt;As already noted, he is an independent 3rd party - nothing to do with Nordic.&lt;/p&gt;
&lt;p&gt;But all this does assume that you are already familiar with &amp;#39;C&amp;#39; programming &lt;em&gt;in general&lt;/em&gt;, and embedded microcontroller programming in particular.&lt;/p&gt;
&lt;p&gt;If (as it seems) that&amp;#39;s not the case, I would definitely suggest that this is &lt;em&gt;&lt;strong&gt;not&lt;/strong&gt; &lt;/em&gt;the place to start.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Register level programming</title><link>https://devzone.nordicsemi.com/thread/253691?ContentTypeID=1</link><pubDate>Mon, 08 Jun 2020 08:17:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:be3ad123-6a6d-489b-b4c3-ace2e78ee046</guid><dc:creator>Manoj Hiwarkar</dc:creator><description>&lt;p&gt;Where is this&amp;nbsp;&lt;strong&gt;author&amp;nbsp;&lt;/strong&gt;?&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Register level programming</title><link>https://devzone.nordicsemi.com/thread/253565?ContentTypeID=1</link><pubDate>Fri, 05 Jun 2020 13:48:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:37e1acc5-1af6-407e-b496-9f8841442056</guid><dc:creator>awneil</dc:creator><description>&lt;p&gt;where do you see that?&lt;/p&gt;
&lt;p&gt;As noted, &lt;a href="https://github.com/andenore/NordicSnippets"&gt;https://github.com/andenore/NordicSnippets&lt;/a&gt;&amp;nbsp;is a 3rd party repository - nothing to do with Nordic - so you will need to go to the &lt;strong&gt;author&lt;/strong&gt; with any questions about it.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Register level programming</title><link>https://devzone.nordicsemi.com/thread/253562?ContentTypeID=1</link><pubDate>Fri, 05 Jun 2020 13:38:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:36c83ccb-eb6e-4e1f-b7c1-ea7aad85022a</guid><dc:creator>Manoj Hiwarkar</dc:creator><description>&lt;p&gt;&lt;span&gt;what is GPIO_PIN_CNF_DIR_Output&amp;nbsp; ? Is this a register name? I don&amp;#39;t think so.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Register level programming</title><link>https://devzone.nordicsemi.com/thread/253459?ContentTypeID=1</link><pubDate>Fri, 05 Jun 2020 09:02:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0dc3cbca-f37d-4805-83a4-610ffb7cd09e</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;It&amp;#39;s 3rd-party.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Register level programming</title><link>https://devzone.nordicsemi.com/thread/253457?ContentTypeID=1</link><pubDate>Fri, 05 Jun 2020 09:00:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fed4292f-8c0e-45bc-a044-169e7c2ed0e0</guid><dc:creator>awneil</dc:creator><description>[quote userid="4240" url="~/f/nordic-q-a/62186/register-level-programming/253454"]The &amp;quot;NordicSnippets&amp;quot; you linked[/quote]
&lt;p&gt;Is that actually a Nordic thing, or just some 3rd-party ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Register level programming</title><link>https://devzone.nordicsemi.com/thread/253456?ContentTypeID=1</link><pubDate>Fri, 05 Jun 2020 08:59:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7aba3e5e-9215-4f3a-afa5-41fcbef4fc8b</guid><dc:creator>awneil</dc:creator><description>&lt;p&gt;exactly the same way that you&amp;#39;d read/write registers on &lt;em&gt;any&lt;/em&gt; microcontroller.&lt;/p&gt;
&lt;p&gt;If you&amp;#39;re not already familiar with register-level programming on microcontrollers, I would strongly suggest that it would be far better to learn that on a &amp;quot;normal&amp;quot; microcontroller than&amp;nbsp;on an nRF52 - with all its added complications.&lt;/p&gt;
&lt;p&gt;Note that there are some restrictions on what registers you can directly access when using the SoftDevice (the protocol stack)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Register level programming</title><link>https://devzone.nordicsemi.com/thread/253454?ContentTypeID=1</link><pubDate>Fri, 05 Jun 2020 08:49:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:98827b36-6ace-4a54-b67f-b7177437bd2d</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;The &amp;quot;NordicSnippets&amp;quot; you linked to show how registers are accessed directly.&amp;nbsp; One of the simpler examples is the &lt;a href="https://github.com/andenore/NordicSnippets/blob/master/examples/gpio_toggle/main.c"&gt;gpio_toggle&lt;/a&gt; one which sets a GPIO pin as an output by configuring the bitfields according to the register description here: &lt;span&gt;&lt;a href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.nrf52832.ps.v1.1/gpio.html?cp=4_2_0_19_2_26#register.PIN_CNF-17"&gt;PIN_CNF[17] &lt;/a&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Register level programming</title><link>https://devzone.nordicsemi.com/thread/253420?ContentTypeID=1</link><pubDate>Fri, 05 Jun 2020 07:00:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d1b5eafd-629d-443e-a45f-6a4a54a480bc</guid><dc:creator>Manoj Hiwarkar</dc:creator><description>&lt;p&gt;How to read and write the those registers ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Register level programming</title><link>https://devzone.nordicsemi.com/thread/253390?ContentTypeID=1</link><pubDate>Thu, 04 Jun 2020 21:47:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:58896b5f-bc01-4b93-a32b-b3131dcb7979</guid><dc:creator>awneil</dc:creator><description>[quote userid="67033" url="~/f/nordic-q-a/62186/register-level-programming"]Is there any other document[/quote]
&lt;p&gt;The document which contains all the register descriptions and operating details is the &lt;strong&gt;Product Specification&lt;/strong&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>