<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Sticky Bits</title>
	<atom:link href="http://blog.feabhas.com/feed/rss2/" rel="self" type="application/rss+xml" />
	<link>http://blog.feabhas.com</link>
	<description>A blog looking at developing software for real-time and embedded systems</description>
	<lastBuildDate>Fri, 24 May 2013 08:00:39 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Test Driven Development (TDD) with the mbed</title>
		<link>http://blog.feabhas.com/2013/05/test-driven-development-tdd-with-the-mbed/</link>
		<comments>http://blog.feabhas.com/2013/05/test-driven-development-tdd-with-the-mbed/#comments</comments>
		<pubDate>Fri, 24 May 2013 08:00:39 +0000</pubDate>
		<dc:creator>Niall</dc:creator>
				<category><![CDATA[ARM]]></category>
		<category><![CDATA[C/C++ Programming]]></category>
		<category><![CDATA[CMSIS]]></category>
		<category><![CDATA[Cortex]]></category>
		<category><![CDATA[Testing]]></category>

		<guid isPermaLink="false">http://blog.feabhas.com/?p=1276</guid>
		<description><![CDATA[One of the most useful fallout&#8217;s from the acceptance of Agile techniques is the use of Test-Driven-Development (TDD) and the growth of associated test frameworks, such as GoogleTest and CppUTest, etc. I won&#8217;t get into the details of TDD here as they are well covered elsewhere (I recommend James Grenning&#8217;s book “Test Driven Development for Embedded C” for a [...]]]></description>
		<wfw:commentRss>http://blog.feabhas.com/2013/05/test-driven-development-tdd-with-the-mbed/feed/rss2/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Python &#8211; The everyman’s language</title>
		<link>http://blog.feabhas.com/2013/05/python-the-everymans-language/</link>
		<comments>http://blog.feabhas.com/2013/05/python-the-everymans-language/#comments</comments>
		<pubDate>Fri, 17 May 2013 12:57:20 +0000</pubDate>
		<dc:creator>Nick Glynn</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[training]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://blog.feabhas.com/?p=1260</guid>
		<description><![CDATA[Python is a very nice language in many respects: enforced white-spacing promotes readability, extensibility and Python’s inbuilt Read-Eval-Print-Loop interpreter combined with its introspection capabilities provides a very easy way to learn and get to grips with the language. But that can’t be all, can it? Why Python? One of the reasons behind the success of our [...]]]></description>
		<wfw:commentRss>http://blog.feabhas.com/2013/05/python-the-everymans-language/feed/rss2/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Rehosting ARMCC for the mbed with CMSIS-DAP</title>
		<link>http://blog.feabhas.com/2013/04/rehosting-armcc-for-the-mbed-with-cmsis-dap/</link>
		<comments>http://blog.feabhas.com/2013/04/rehosting-armcc-for-the-mbed-with-cmsis-dap/#comments</comments>
		<pubDate>Fri, 26 Apr 2013 08:00:23 +0000</pubDate>
		<dc:creator>Niall</dc:creator>
				<category><![CDATA[ARM]]></category>
		<category><![CDATA[C/C++ Programming]]></category>
		<category><![CDATA[CMSIS]]></category>
		<category><![CDATA[Cortex]]></category>

		<guid isPermaLink="false">http://blog.feabhas.com/?p=1247</guid>
		<description><![CDATA[In this posting I will look at porting the C standard library output (e.g. puts / printf ) to use a UART rather than the default ARM/Keil semihosting. In my last post, I looked at getting basic user I/O out from a native-mbed via UART0 to a terminal emulator (e.g. Tera Term). This was driven by [...]]]></description>
		<wfw:commentRss>http://blog.feabhas.com/2013/04/rehosting-armcc-for-the-mbed-with-cmsis-dap/feed/rss2/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>User I/O from mbed with CMSIS-DAP</title>
		<link>http://blog.feabhas.com/2013/04/user-io-from-mbed-with-cmsis-dap/</link>
		<comments>http://blog.feabhas.com/2013/04/user-io-from-mbed-with-cmsis-dap/#comments</comments>
		<pubDate>Fri, 19 Apr 2013 13:59:17 +0000</pubDate>
		<dc:creator>Niall</dc:creator>
				<category><![CDATA[ARM]]></category>
		<category><![CDATA[C/C++ Programming]]></category>
		<category><![CDATA[CMSIS]]></category>
		<category><![CDATA[Cortex]]></category>

		<guid isPermaLink="false">http://blog.feabhas.com/?p=1234</guid>
		<description><![CDATA[Following on from my last posting regarding using native C/C++ on the mbed I have found that I currently cannot get output via the standard CMSIS ITM_SendChar function as used in the Cortex-M hard fault handler (I am currently in dialog with the guys at ARM trying to resolve this). In the standard mbed environment, the [...]]]></description>
		<wfw:commentRss>http://blog.feabhas.com/2013/04/user-io-from-mbed-with-cmsis-dap/feed/rss2/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Native C/C++ Application development for the mbed using CMSIS-DAP</title>
		<link>http://blog.feabhas.com/2013/04/native-cc-application-development-for-the-mbed-using-cmsis-dap/</link>
		<comments>http://blog.feabhas.com/2013/04/native-cc-application-development-for-the-mbed-using-cmsis-dap/#comments</comments>
		<pubDate>Fri, 12 Apr 2013 12:20:48 +0000</pubDate>
		<dc:creator>Niall</dc:creator>
				<category><![CDATA[ARM]]></category>
		<category><![CDATA[C/C++ Programming]]></category>
		<category><![CDATA[CMSIS]]></category>
		<category><![CDATA[Cortex]]></category>
		<category><![CDATA[C Declarations]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Cortex-M3]]></category>
		<category><![CDATA[Keil]]></category>
		<category><![CDATA[LPC1768]]></category>
		<category><![CDATA[mbed]]></category>

		<guid isPermaLink="false">http://blog.feabhas.com/?p=1214</guid>
		<description><![CDATA[If you have been following the Feabhas blog for some time, you may remember that in April of last year I posted about my experiences of using the MQTT protocol. The demonstration code was ran the ARM Cortex-M3 based mbed platform. For those that are not familiar with the mbed, it is an &#8220;Arduino-like&#8221; development [...]]]></description>
		<wfw:commentRss>http://blog.feabhas.com/2013/04/native-cc-application-development-for-the-mbed-using-cmsis-dap/feed/rss2/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Setting up the Cortex-M3/4 (ARMv7-M) Memory Protection Unit (MPU)</title>
		<link>http://blog.feabhas.com/2013/02/setting-up-the-cortex-m34-armv7-m-memory-protection-unit-mpu/</link>
		<comments>http://blog.feabhas.com/2013/02/setting-up-the-cortex-m34-armv7-m-memory-protection-unit-mpu/#comments</comments>
		<pubDate>Mon, 25 Feb 2013 08:00:53 +0000</pubDate>
		<dc:creator>Niall</dc:creator>
				<category><![CDATA[ARM]]></category>
		<category><![CDATA[C/C++ Programming]]></category>
		<category><![CDATA[CMSIS]]></category>
		<category><![CDATA[Cortex]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[C Declarations]]></category>
		<category><![CDATA[LPC1768]]></category>
		<category><![CDATA[MPU]]></category>

		<guid isPermaLink="false">http://blog.feabhas.com/?p=1142</guid>
		<description><![CDATA[An optional part of the ARMv7-M architecture is the support of a Memory Protection Unit (MPU). This is a fairly simplistic device (compared to a fully blow Memory Management Unit (MMU) as found on the Cortex-A family), but if available can be programmed to help capture illegal or dangerous memory accesses. When first looking at [...]]]></description>
		<wfw:commentRss>http://blog.feabhas.com/2013/02/setting-up-the-cortex-m34-armv7-m-memory-protection-unit-mpu/feed/rss2/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>L-values, r-values, expressions and types</title>
		<link>http://blog.feabhas.com/2013/02/l-values-r-values-expressions-and-types/</link>
		<comments>http://blog.feabhas.com/2013/02/l-values-r-values-expressions-and-types/#comments</comments>
		<pubDate>Mon, 18 Feb 2013 09:43:40 +0000</pubDate>
		<dc:creator>glennan</dc:creator>
				<category><![CDATA[C/C++ Programming]]></category>
		<category><![CDATA[C Expressions]]></category>
		<category><![CDATA[expressions]]></category>
		<category><![CDATA[l-value]]></category>
		<category><![CDATA[r-value]]></category>
		<category><![CDATA[types]]></category>

		<guid isPermaLink="false">http://blog.feabhas.com/?p=1139</guid>
		<description><![CDATA[Simple question: Why does this code compile? &#8230;and this code doesn’t? The compiler gives the following: L-values What is this ‘l-value’ thing? When (most of us) were taught C we were told an l-value is a value that can be placed on the left-hand-side of an assignment expression. However, that doesn’t give much of a [...]]]></description>
		<wfw:commentRss>http://blog.feabhas.com/2013/02/l-values-r-values-expressions-and-types/feed/rss2/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Developing a Generic Hard Fault handler for ARM Cortex-M3/Cortex-M4</title>
		<link>http://blog.feabhas.com/2013/02/developing-a-generic-hard-fault-handler-for-arm-cortex-m3cortex-m4/</link>
		<comments>http://blog.feabhas.com/2013/02/developing-a-generic-hard-fault-handler-for-arm-cortex-m3cortex-m4/#comments</comments>
		<pubDate>Fri, 01 Feb 2013 08:30:53 +0000</pubDate>
		<dc:creator>Niall</dc:creator>
				<category><![CDATA[ARM]]></category>
		<category><![CDATA[C/C++ Programming]]></category>
		<category><![CDATA[CMSIS]]></category>
		<category><![CDATA[Cortex]]></category>
		<category><![CDATA[C Programming]]></category>
		<category><![CDATA[Cortex-M]]></category>

		<guid isPermaLink="false">http://blog.feabhas.com/?p=1059</guid>
		<description><![CDATA[This posting assumes you that you have a working ARM Cortex-M3 base project in Keil uVision. If not, please see the “howto” video: Creating ARM Cortex-M3 CMSIS Base Project in uVision Divide by zero error Given the following C function int div(int lho, int rho) { return lho/rho; } called from main with these arguments [...]]]></description>
		<wfw:commentRss>http://blog.feabhas.com/2013/02/developing-a-generic-hard-fault-handler-for-arm-cortex-m3cortex-m4/feed/rss2/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Weak linkage in C programming</title>
		<link>http://blog.feabhas.com/2013/01/weak-linkage-in-c-programming/</link>
		<comments>http://blog.feabhas.com/2013/01/weak-linkage-in-c-programming/#comments</comments>
		<pubDate>Fri, 25 Jan 2013 17:02:02 +0000</pubDate>
		<dc:creator>Niall</dc:creator>
				<category><![CDATA[C/C++ Programming]]></category>
		<category><![CDATA[CMSIS]]></category>
		<category><![CDATA[C Declarations]]></category>
		<category><![CDATA[C Definitions]]></category>

		<guid isPermaLink="false">http://blog.feabhas.com/?p=1012</guid>
		<description><![CDATA[When linking C programs there are (in general) only a couple of errors you&#8217;re likely to see. If, for example, you have two functions in different files, both with external linkage, then the files will compile okay, but when you link you&#8217;ll likely see an error along these lines: linking&#8230; weak_linkage.axf: Error: L6200E: Symbol foo multiply defined [...]]]></description>
		<wfw:commentRss>http://blog.feabhas.com/2013/01/weak-linkage-in-c-programming/feed/rss2/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Sailing the Seven C&#8217;s of design*</title>
		<link>http://blog.feabhas.com/2013/01/sailing-the-seven-cs-of-design/</link>
		<comments>http://blog.feabhas.com/2013/01/sailing-the-seven-cs-of-design/#comments</comments>
		<pubDate>Fri, 18 Jan 2013 09:43:23 +0000</pubDate>
		<dc:creator>glennan</dc:creator>
				<category><![CDATA[Design Issues]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[MDA]]></category>
		<category><![CDATA[MDD]]></category>
		<category><![CDATA[methodologies]]></category>
		<category><![CDATA[modelling]]></category>
		<category><![CDATA[techniques]]></category>
		<category><![CDATA[UML]]></category>

		<guid isPermaLink="false">http://blog.feabhas.com/?p=1009</guid>
		<description><![CDATA[I’m always looking for nice little mnemonics to help out remember the important concepts in design.&#160; Here’s one for model-driven development I call the “Seven C’s”.&#160; It basically enumerates the seven stages a design goes through, from initial idea to code. CONCEPT The Concept phase is about understanding the problem.&#160; In other words: requirements analysis.&#160; [...]]]></description>
		<wfw:commentRss>http://blog.feabhas.com/2013/01/sailing-the-seven-cs-of-design/feed/rss2/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
