<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="bbPress/1.0.2" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>LeafLabs Garden &#187; Topic: stm32 c documentation?</title>
		<link>http://forums.leaflabs.com/topic.php?id=115</link>
		<description>A place to share, learn, and grow...</description>
		<language>en-US</language>
		<pubDate>Fri, 22 Jan 2016 00:06:25 +0000</pubDate>
		<generator>http://bbpress.org/?v=1.0.2</generator>
		<textInput>
			<title><![CDATA[Search]]></title>
			<description><![CDATA[Search all topics from these forums.]]></description>
			<name>q</name>
			<link>http://forums.leaflabs.com/search.php</link>
		</textInput>
		<atom:link href="http://forums.leaflabs.com/rss.php?topic=115" rel="self" type="application/rss+xml" />

		<item>
			<title>librae8226 on "stm32 c documentation?"</title>
			<link>http://forums.leaflabs.com/topic.php?id=115#post-702</link>
			<pubDate>Mon, 09 Aug 2010 04:03:41 +0000</pubDate>
			<dc:creator>librae8226</dc:creator>
			<guid isPermaLink="false">702@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;Thank U bnewbold~&#60;/p&#62;
&#60;p&#62;I would try development on Linux.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>bnewbold on "stm32 c documentation?"</title>
			<link>http://forums.leaflabs.com/topic.php?id=115#post-697</link>
			<pubDate>Sun, 08 Aug 2010 11:46:31 +0000</pubDate>
			<dc:creator>bnewbold</dc:creator>
			<guid isPermaLink="false">697@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;Hey librae8226!&#60;/p&#62;
&#60;p&#62;We do not have experience with the commercial IDEs like the Keil MDK, but I would imagine the process would be similar to these directions for setting up CodeBlocks: &#60;a href=&#34;http://leaflabs.com/docs/libmaple/unix-toolchain/&#34; rel=&#34;nofollow&#34;&#62;http://leaflabs.com/docs/libmaple/unix-toolchain/&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;I'm not sure the best way to get the GNU toolchain set up on Windows these days... cygwin? MinGW? You can get the compiler binaries at:&#60;br /&#62;
&#60;a href=&#34;http://static.leaflabs.com/pub/codesourcery/&#34; rel=&#34;nofollow&#34;&#62;http://static.leaflabs.com/pub/codesourcery/&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;poslathian: the link just above includes the maxosx 10.6 compiler binaries&#60;/p&#62;
&#60;p&#62;everybody: powerpants pointed out this great git repository with the full ST peripheral library:&#60;br /&#62;
&#60;a href=&#34;http://github.com/randomskk/STM32_SkeletonProject/&#34; rel=&#34;nofollow&#34;&#62;http://github.com/randomskk/STM32_SkeletonProject/&#60;/a&#62;
&#60;/p&#62;</description>
		</item>
		<item>
			<title>librae8226 on "stm32 c documentation?"</title>
			<link>http://forums.leaflabs.com/topic.php?id=115#post-693</link>
			<pubDate>Sun, 08 Aug 2010 08:54:51 +0000</pubDate>
			<dc:creator>librae8226</dc:creator>
			<guid isPermaLink="false">693@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;I am new here~&#60;br /&#62;
Thanks a lot!&#60;/p&#62;
&#60;p&#62;And I have some questions about libmaple.&#60;/p&#62;
&#60;p&#62;Hi perry, I am frustrated with st's library, and I would like to use something brief such as libmaple. I just want to use libmaple in my program, for test and familiarize libmaple, I am now using keil MDK in Windows, and would use Sourcery G++ tool in linux later. How could I do? Need I modify or add some code to suite my situation or just only copy the code to my program ?&#60;/p&#62;
&#60;p&#62;Thank!&#60;/p&#62;
&#60;p&#62;Support you ,and your team, and your nice project~&#60;/p&#62;
&#60;p&#62;^_^
&#60;/p&#62;</description>
		</item>
		<item>
			<title>perry on "stm32 c documentation?"</title>
			<link>http://forums.leaflabs.com/topic.php?id=115#post-683</link>
			<pubDate>Thu, 05 Aug 2010 12:36:40 +0000</pubDate>
			<dc:creator>perry</dc:creator>
			<guid isPermaLink="false">683@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;Hi powerpants,&#60;/p&#62;
&#60;p&#62;we don't use STs firmware libraries. You can browse the libmaple code on github at:&#60;br /&#62;
&#60;a href=&#34;http://github.com/leaflabs/libmaple&#34; rel=&#34;nofollow&#34;&#62;http://github.com/leaflabs/libmaple&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;I wouldn't work with the buildbox code, it's awful.&#60;/p&#62;
&#60;p&#62;You should be able to check out the libmaple repo and build a barebones project easily. the MAPLE_TARGET=jtag target will build a baremetal sketch instead of for the bootloader. That resulting .bin should be able to run on any stm32
&#60;/p&#62;</description>
		</item>
		<item>
			<title>poslathian on "stm32 c documentation?"</title>
			<link>http://forums.leaflabs.com/topic.php?id=115#post-681</link>
			<pubDate>Thu, 05 Aug 2010 12:00:52 +0000</pubDate>
			<dc:creator>poslathian</dc:creator>
			<guid isPermaLink="false">681@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;hmm. So mac builds are super tricky, and we did a ton of work to make everything work on the IDE in mac. I definitely did not do any of that work for build-box, and I would defer to bnewbold or iperry or bbradlyn (ill point them to this thread) to comment on if a libmaple make environment is expected to work. Does the IDE work for you? It should! We can work from there on trying to get a native make environment setup. bbradlyn used some combination of macports packages and custom-built arm-none-eabi-gcc and libc to get things working from the command line. &#60;/p&#62;
&#60;p&#62;Ostensibly, all that work should be built in to the ide. If you navigate to hardware/cores/leaflabs/maple you should find a flattened copy of libmaple which gets compiled in to your sketches. You might be able to grab linkers/sources from here and build them with the arm-gcc binary you got from the same package.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>powerpants on "stm32 c documentation?"</title>
			<link>http://forums.leaflabs.com/topic.php?id=115#post-679</link>
			<pubDate>Thu, 05 Aug 2010 00:57:33 +0000</pubDate>
			<dc:creator>powerpants</dc:creator>
			<guid isPermaLink="false">679@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;ok, I'm trying to build the makefile and default project from the build-box, and it's barfing.  my other toolchain compile died, so i copied the toolchain binaries out of the maple.app package into a new folder and added them to my $PATH.  kludge city.&#60;/p&#62;
&#60;p&#62;i've pasted the output below, if you have any insight......i'm on mac osx, if that makes a difference.&#60;/p&#62;
&#60;p&#62;aah!  i hate toolchain hacking!  i just want to build stuff!&#60;/p&#62;
&#60;p&#62;'~/Desktop/leaflabs-read-only/build_box &#38;gt; make&#60;br /&#62;
--&#60;br /&#62;
-------- begin --------&#60;br /&#62;
build/main.o build/maple_lib.o&#60;br /&#62;
arm-none-eabi-gcc (GCC) 4.4.1&#60;br /&#62;
Copyright (C) 2009 Free Software Foundation, Inc.&#60;br /&#62;
This is free software; see the source for copying conditions.  There is NO&#60;br /&#62;
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.&#60;/p&#62;
&#60;p&#62;Compiling C: main.c&#60;br /&#62;
arm-none-eabi-gcc -c -mthumb -mcpu=cortex-m3 -mthumb-interwork -I.  -O0 -ffunction-sections -fdata-sections -Wall -Wimplicit  -Wcast-align -Wpointer-arith -Wswitch -Wredundant-decls -Wreturn-type -Wshadow -Wunused -Wa,-adhlns=build/main.lst  -I./stm32_lib -I./usb_lib -MD -MP -MF .dep/main.o.d main.c -o build/main.o&#60;br /&#62;
arm-none-eabi-gcc: error trying to exec 'cc1': execvp: No such file or directory&#60;br /&#62;
make: *** [build/main.o] Error 1&#60;br /&#62;
'
&#60;/p&#62;</description>
		</item>
		<item>
			<title>poslathian on "stm32 c documentation?"</title>
			<link>http://forums.leaflabs.com/topic.php?id=115#post-677</link>
			<pubDate>Wed, 04 Aug 2010 19:30:42 +0000</pubDate>
			<dc:creator>poslathian</dc:creator>
			<guid isPermaLink="false">677@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;Because we didnt have plans to run an OS on top of maple, we didnt build off of CMSIS. As of IDE version 0.0.3? (or maybe earlier) we nixed all our dependencies on any ST related code. Similar to the skeleton project you pointed out, we built up libmaple and wirish from scratch. Please do checkout the libmaple and wirish libraries from github.com/leaflabs (wirish is part of the libmaple repository). What you see it what you get in those repos, there arnt any &#34;hidden&#34; libraries anywhere, even the linker scripts are in there. At some point I had a skeleton stm32 project in code.google.com/p/leaflabs  in a repository called build-box, which had everything you need (bare bones linker, startup assembly code, makefile, and simple blinky) which was very very thin. Check it out. It was sloppy hack code, but I wanted to see the minimal setup I could build to code for the chip. We use make + arm-none-eabi-gcc for most of our development, and the IDE is effectively a wrapper around the libmaple library in the repository. &#60;/p&#62;
&#60;p&#62;Im glad to see people getting down and dirty with the lower levels! Keep us posted!
&#60;/p&#62;</description>
		</item>
		<item>
			<title>powerpants on "stm32 c documentation?"</title>
			<link>http://forums.leaflabs.com/topic.php?id=115#post-674</link>
			<pubDate>Wed, 04 Aug 2010 17:45:04 +0000</pubDate>
			<dc:creator>powerpants</dc:creator>
			<guid isPermaLink="false">674@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;Hey, thanks for the reply!&#60;/p&#62;
&#60;p&#62;I've been delving deeper into all of this stuff for the past few days, and it sure is a mess!  The st library documentation is terrible - digging through source comments to figure out the functions for the peripheral drivers is a pain.&#60;/p&#62;
&#60;p&#62;I have found a couple of good looking resources though, for people who read this and want to get hacking....&#60;/p&#62;
&#60;p&#62;This git repository has a nice looking &#34;skeleton project&#34; for STM32F10* chips.  It includes the st library, linker script, makefile, and the serial programming python script, as well as a stubbed out main.c:&#60;br /&#62;
&#60;a href=&#34;http://github.com/randomskk/STM32_SkeletonProject&#34; rel=&#34;nofollow&#34;&#62;http://github.com/randomskk/STM32_SkeletonProject&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;I'm on mac, so I am building the toolchain as we speak using this guide:&#60;br /&#62;
&#60;a href=&#34;http://github.com/jsnyder/arm-eabi-toolchain&#34; rel=&#34;nofollow&#34;&#62;http://github.com/jsnyder/arm-eabi-toolchain&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Hopefully it all works.......I'm looking forward to having full arduino compatible API's at some point, though!&#60;/p&#62;
&#60;p&#62;Oh yeah, is the backend that you're writing compatible with CMSIS?&#60;br /&#62;
&#60;a href=&#34;http://www.onarm.com/download/download389.asp&#34; rel=&#34;nofollow&#34;&#62;http://www.onarm.com/download/download389.asp&#60;/a&#62;
&#60;/p&#62;</description>
		</item>
		<item>
			<title>bnewbold on "stm32 c documentation?"</title>
			<link>http://forums.leaflabs.com/topic.php?id=115#post-657</link>
			<pubDate>Mon, 02 Aug 2010 23:22:00 +0000</pubDate>
			<dc:creator>bnewbold</dc:creator>
			<guid isPermaLink="false">657@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;Hey powerpants!&#60;/p&#62;
&#60;p&#62;We didn't really build on top of ST's libraries... they exist and support all the peripherals, but we found them very frustrating to work with and are covered under an ambiguous license. They are a good reference though, and programs written using them will run fine on a Maple (though not following the Maple's labeled pin numbers etc).&#60;/p&#62;
&#60;p&#62;We did build upon the libc and newlib libraries used as part of the GCC toolchain. Perry is the expert on this, but I believe these libraries are completely portable across all Cortex-M3 chips, mostly portable across all ARM chips, and to some degree portable across... all GCC targets? &#60;/p&#62;
&#60;p&#62;What /doesn't/ exist in this whole ecosystem is the equivalent of the wonderful AVR-LIBC (&#60;a href=&#34;http://www.nongnu.org/avr-libc/&#34; rel=&#34;nofollow&#34;&#62;http://www.nongnu.org/avr-libc/&#60;/a&#62; ), which targets only Atmel AVR chips. This is the hole we are trying to bridge with the core part of libmaple, which is all lower-level C, though it will take a lot of work to get it that mature, portable, and efficient. The wirish section of our library is C++ and provides the (partial) Arduino library compatibility. &#60;/p&#62;
&#60;p&#62;The most useful &#34;reference&#34; material we use while writing the first implementation of libmaple is the hardware reference guide from ST: &#60;a href=&#34;http://www.st.com/stonline/products/literature/rm/13902.pdf&#34; rel=&#34;nofollow&#34;&#62;http://www.st.com/stonline/products/literature/rm/13902.pdf&#60;/a&#62; . This defines all of the hardware registers that we access from C to bring up the hardware peripherals. There is also a programmer's manual, but it is targeted at assembly-level coding, I suppose for high performance optimization, operating system development, etc. The &#34;Insider's guide to the STM32&#34; (google it) is a really good overview of the hardware features (eg, instruction set, bitbanding, clock domains, etc).&#60;/p&#62;
&#60;p&#62;I could point you to more ARM-specific documentation, ST application notes, the CodeSourcery compiler docs, etc if you are interested. The ST peripheral library itself seems to be mostly documented in READMEs and comments in the source code.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>powerpants on "stm32 c documentation?"</title>
			<link>http://forums.leaflabs.com/topic.php?id=115#post-656</link>
			<pubDate>Mon, 02 Aug 2010 15:51:33 +0000</pubDate>
			<dc:creator>powerpants</dc:creator>
			<guid isPermaLink="false">656@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;hi,&#60;/p&#62;
&#60;p&#62;can anybody recommend where i can find an api documentation for st's c libraries that libmaple is built on top of?  while waiting for the arduino functions to finish being ported, i'd like to familiarize myself with how it is working at a slightly lower level....&#60;/p&#62;
&#60;p&#62;thanks....
&#60;/p&#62;</description>
		</item>

	</channel>
</rss>
