<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>NVIC on AllThingsEmbedded</title><link>https://allthingsembedded.com/tags/nvic/</link><description>Recent content in NVIC on AllThingsEmbedded</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Thu, 03 Jan 2019 09:00:50 +0000</lastBuildDate><atom:link href="https://allthingsembedded.com/tags/nvic/index.xml" rel="self" type="application/rss+xml"/><item><title>ARM Cortex-M Startup code (for C and C++)</title><link>https://allthingsembedded.com/post/2019-01-03-arm-cortex-m-startup-code-for-c-and-c/</link><pubDate>Thu, 03 Jan 2019 09:00:50 +0000</pubDate><guid>https://allthingsembedded.com/post/2019-01-03-arm-cortex-m-startup-code-for-c-and-c/</guid><description>&lt;p>When developing bare metal applications it is required to supply some functions that we normally take for granted when developing code for mainstream OS&amp;rsquo;s. Setting the startup code is not inherently difficult but beware: some of the nastiest bugs you will ever see on bare metal can come from the startup code.&lt;/p>
&lt;p>What is actually needed to start the execution of the main function? Well, there are a few things that the C and C++ language specifications assume when starting a new program. Some of them are:&lt;/p></description></item></channel></rss>