<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>bootloader on Bald Engineer</title><link>https://www.baldengineer.com/tag/bootloader</link><description>Recent content in bootloader on Bald Engineer</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Wed, 15 Jun 2016 04:10:34 +0000</lastBuildDate><atom:link href="https://www.baldengineer.com/tag/bootloader/index.xml" rel="self" type="application/rss+xml"/><item><title>Arduino Bootloader, What is it?</title><link>https://www.baldengineer.com/arduino-bootloader.html</link><pubDate>Wed, 15 Jun 2016 13:00:14 +0000</pubDate><guid isPermaLink="false">https://www.baldengineer.com/?p=6066</guid><description>&lt;p&gt;Almost all microcontroller (and microprocessor) development systems use some form of a bootloader. Often called firmware, mistakenly, the &lt;a href="https://www.arduino.cc/en/Hacking/Bootloader?from=Tutorial.Bootloader"&gt;Arduino bootloader&lt;/a&gt; is one example. Since it is a rather popular platform, let&amp;rsquo;s use it as an example. Let&amp;rsquo;s talk about what a bootloader does and how it works.&lt;/p&gt;&#10;&lt;p&gt;When a microcontroller turns on, it only knows how to do one thing.  Typically, that one thing is to run an instruction found at a specific memory location. Often this location address 0x0000, but not always. Usually, this memory location will contain a jump instruction to another place in memory, which is the start of the user program. The bootloader, however, exists in a slightly separate memory space from the user program.&lt;/p&gt;</description></item></channel></rss>