<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://mars.merhot.dk/w/index.php?action=history&amp;feed=atom&amp;title=MCBSTM32C%2FBlinky_simple_with_clock_control</id>
		<title>MCBSTM32C/Blinky simple with clock control - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://mars.merhot.dk/w/index.php?action=history&amp;feed=atom&amp;title=MCBSTM32C%2FBlinky_simple_with_clock_control"/>
		<link rel="alternate" type="text/html" href="http://mars.merhot.dk/w/index.php?title=MCBSTM32C/Blinky_simple_with_clock_control&amp;action=history"/>
		<updated>2026-05-24T15:38:12Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.29.0</generator>

	<entry>
		<id>http://mars.merhot.dk/w/index.php?title=MCBSTM32C/Blinky_simple_with_clock_control&amp;diff=27421&amp;oldid=prev</id>
		<title>Heth: /* Add rcc.c */</title>
		<link rel="alternate" type="text/html" href="http://mars.merhot.dk/w/index.php?title=MCBSTM32C/Blinky_simple_with_clock_control&amp;diff=27421&amp;oldid=prev"/>
				<updated>2014-03-05T07:53:34Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Add rcc.c&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='en'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 07:53, 5 March 2014&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l589&quot; &gt;Line 589:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 589:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/source&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/source&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Add rcc.h&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Add rcc.h&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;=&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;source lang=c&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;source lang=c&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;extern void rcc_clockmode1( void );&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;extern void rcc_clockmode1( void );&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Heth</name></author>	</entry>

	<entry>
		<id>http://mars.merhot.dk/w/index.php?title=MCBSTM32C/Blinky_simple_with_clock_control&amp;diff=27420&amp;oldid=prev</id>
		<title>Heth: /* Add rcc.c */</title>
		<link rel="alternate" type="text/html" href="http://mars.merhot.dk/w/index.php?title=MCBSTM32C/Blinky_simple_with_clock_control&amp;diff=27420&amp;oldid=prev"/>
				<updated>2014-03-05T07:46:54Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Add rcc.c&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='en'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 07:46, 5 March 2014&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l34&quot; &gt;Line 34:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 34:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/source&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/source&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Add rcc.c=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Add rcc.c=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;source lang=&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;cli&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;source lang=&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;c&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;quot;minimum gpio.h&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;quot;minimum gpio.h&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;//HeTh@mercantec 2011&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;//HeTh@mercantec 2011&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l596&quot; &gt;Line 596:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 596:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;extern void rcc_clockmode5( void );&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;extern void rcc_clockmode5( void );&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/source&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/source&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Use clockmode 5 in main.c=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Use clockmode 5 in main.c=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Add rcc_'''clockmode5();''' before main loop&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Add rcc_'''clockmode5();''' before main loop&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Souce cli}}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Souce cli}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Heth</name></author>	</entry>

	<entry>
		<id>http://mars.merhot.dk/w/index.php?title=MCBSTM32C/Blinky_simple_with_clock_control&amp;diff=27419&amp;oldid=prev</id>
		<title>Heth at 07:15, 5 March 2014</title>
		<link rel="alternate" type="text/html" href="http://mars.merhot.dk/w/index.php?title=MCBSTM32C/Blinky_simple_with_clock_control&amp;diff=27419&amp;oldid=prev"/>
				<updated>2014-03-05T07:15:08Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='en'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 07:15, 5 March 2014&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This article is an expansion of [[MCBSTM32C/Blinky_simple|Blinky_simple]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This article is an expansion of [[MCBSTM32C/Blinky_simple|Blinky_simple]] &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;See [[STM32F107VC/RCC||RCC]] for further information.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Additional references in &amp;quot;minimum gpio.h&amp;quot;=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Additional references in &amp;quot;minimum gpio.h&amp;quot;=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Add the following to &amp;quot;minumum gpio.h&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Add the following to &amp;quot;minumum gpio.h&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Heth</name></author>	</entry>

	<entry>
		<id>http://mars.merhot.dk/w/index.php?title=MCBSTM32C/Blinky_simple_with_clock_control&amp;diff=27417&amp;oldid=prev</id>
		<title>Heth: Created page with &quot;This article is an expansion of Blinky_simple =Additional references in &quot;minimum gpio.h&quot;= Add the following to &quot;minumum gpio.h&quot; &lt;source lang=c&gt; //AFIO...&quot;</title>
		<link rel="alternate" type="text/html" href="http://mars.merhot.dk/w/index.php?title=MCBSTM32C/Blinky_simple_with_clock_control&amp;diff=27417&amp;oldid=prev"/>
				<updated>2014-03-05T06:58:22Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;This article is an expansion of &lt;a href=&quot;/w/index.php/MCBSTM32C/Blinky_simple&quot; title=&quot;MCBSTM32C/Blinky simple&quot;&gt;Blinky_simple&lt;/a&gt; =Additional references in &amp;quot;minimum gpio.h&amp;quot;= Add the following to &amp;quot;minumum gpio.h&amp;quot; &amp;lt;source lang=c&amp;gt; //AFIO...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;This article is an expansion of [[MCBSTM32C/Blinky_simple|Blinky_simple]]&lt;br /&gt;
=Additional references in &amp;quot;minimum gpio.h&amp;quot;=&lt;br /&gt;
Add the following to &amp;quot;minumum gpio.h&amp;quot;&lt;br /&gt;
&amp;lt;source lang=c&amp;gt;&lt;br /&gt;
//AFIO&lt;br /&gt;
#define AFIO_BASE             (APB2PERIPH_BASE + 0x0000)&lt;br /&gt;
#define AFIO                  ((AFIO_TypeDef   *) AFIO_BASE    )&lt;br /&gt;
typedef struct&lt;br /&gt;
{&lt;br /&gt;
  __IO uint32_t EVCR;&lt;br /&gt;
  __IO uint32_t MAPR;&lt;br /&gt;
  __IO uint32_t EXTICR[4];&lt;br /&gt;
} AFIO_TypeDef;&lt;br /&gt;
&lt;br /&gt;
#define AFIO                  ((AFIO_TypeDef   *) AFIO_BASE    )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//FLASH&lt;br /&gt;
#define FLASH                 ((FLASH_TypeDef  *) FLASH_BASE   )&lt;br /&gt;
#define FLASH_BASE            (AHBPERIPH_BASE  + 0x2000)&lt;br /&gt;
typedef struct&lt;br /&gt;
{&lt;br /&gt;
  __IO uint32_t ACR;&lt;br /&gt;
  __IO uint32_t KEYR;&lt;br /&gt;
  __IO uint32_t OPTKEYR;&lt;br /&gt;
  __IO uint32_t SR;&lt;br /&gt;
  __IO uint32_t CR;&lt;br /&gt;
  __IO uint32_t AR;&lt;br /&gt;
  __IO uint32_t RESERVED;&lt;br /&gt;
  __IO uint32_t OBR;&lt;br /&gt;
  __IO uint32_t WRPR;&lt;br /&gt;
} FLASH_TypeDef;&lt;br /&gt;
#define FLASH                 ((FLASH_TypeDef  *) FLASH_BASE   )&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
=Add rcc.c=&lt;br /&gt;
&amp;lt;source lang=cli&amp;gt;&lt;br /&gt;
#include &amp;quot;minimum gpio.h&amp;quot;&lt;br /&gt;
//HeTh@mercantec 2011&lt;br /&gt;
/***************** useful RCC_CR bits ****************************/&lt;br /&gt;
#define RCC_CR_HSION       (0x00000001)              /* Internal High Speed clock enable     */&lt;br /&gt;
#define RCC_CR_HSIRDY      (0x00000002)              /* Internal High Speed clock ready flag */&lt;br /&gt;
#define RCC_CR_HSEON       (0x00010000)              /* External High Speed clock enable     */&lt;br /&gt;
#define RCC_CR_HSERDY      (0x00020000)              /* External High Speed clock ready flag */&lt;br /&gt;
#define RCC_CR_PLL1ON      (0x01000000)              /* PLL1 enable                          */&lt;br /&gt;
#define RCC_CR_PLL1RDY     (0x02000000)              /* PLL1 clock ready flag                */&lt;br /&gt;
#define RCC_CR_PLL2ON      (0x04000000)              /* PLL2 enable                          */&lt;br /&gt;
#define RCC_CR_PLL2RDY     (0x08000000)              /* PLL2 clock ready flag                */&lt;br /&gt;
#define RCC_CR_PLL3ON      (0x10000000)              /* PLL3 enable                          */&lt;br /&gt;
#define RCC_CR_PLL3RDY     (0x20000000)              /* PLL3 clock ready flag                */&lt;br /&gt;
&lt;br /&gt;
/***************** useful RCC_CFGR bits **************************/&lt;br /&gt;
#define RCC_CFGR_HSION       (0x00000000)           /* Internal High Speed clock selected   */&lt;br /&gt;
#define RCC_CFGR_HSEON       (0x00000001)           /* External High Speed clock selected   */&lt;br /&gt;
#define RCC_CFGR_PLLON       (0x00000002)           /* PLL Speed clock selected             */&lt;br /&gt;
#define RCC_CFGR_PLLSRC      (0x00010000)			 /* PLLSRC PREDIV selected				 */&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* sub rcc_apb2enr()&lt;br /&gt;
   abstract: ¨Select preconfigured System Clock Rates using the PLL&lt;br /&gt;
&lt;br /&gt;
   input...:  mask     : Setting/resetting bitmask to RCC_APB2ENR (Section 8.3.7)&lt;br /&gt;
&lt;br /&gt;
   			 enable=0 : Disable clocks in bitmask&lt;br /&gt;
   			 enable=1 : Enable clocks in bitmask&lt;br /&gt;
			 &lt;br /&gt;
   output..: 0&lt;br /&gt;
   limits..: No errorcheck performed&lt;br /&gt;
*/&lt;br /&gt;
void rcc_apb2enr(  int mask,int enable) {&lt;br /&gt;
	if ( enable ) {&lt;br /&gt;
		RCC-&amp;gt;APB2ENR |= mask;&lt;br /&gt;
	} else {&lt;br /&gt;
		RCC-&amp;gt;APB2ENR &amp;amp;= ~mask;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void rcc_apb1enr(  int mask,int enable) {&lt;br /&gt;
	if ( enable ) {&lt;br /&gt;
		RCC-&amp;gt;APB1ENR |= mask;&lt;br /&gt;
	} else {&lt;br /&gt;
		RCC-&amp;gt;APB1ENR &amp;amp;= ~mask;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void rcc_cfgr(  int mask,int enable) {&lt;br /&gt;
	if ( enable ) {&lt;br /&gt;
		RCC-&amp;gt;CFGR |= mask;&lt;br /&gt;
	} else {&lt;br /&gt;
		RCC-&amp;gt;CFGR &amp;amp;= ~mask;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
/** AFIO **/&lt;br /&gt;
void rcc_afio_mapr(  int mask,int enable) {&lt;br /&gt;
	if ( enable ) {&lt;br /&gt;
		AFIO-&amp;gt;MAPR |= mask;&lt;br /&gt;
	} else {&lt;br /&gt;
		AFIO-&amp;gt;MAPR &amp;amp;= ~mask;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
/********************** S Y S C L K    M O D E S - PREDIV1 PLLMUL ******************&lt;br /&gt;
 MODE.........: The mode to select in the call to rss_set_sysclk&lt;br /&gt;
 SYSCLK.......: The System Clock Clocks the fx. AHB Prescaler&lt;br /&gt;
 FCLK/HCLK....: HCLK = Processor Clock (Clocks the Cortex M3) FCLK = Free Running Processor Clock&lt;br /&gt;
 SOURCE.......: clock Source. Selected with the SW[1:0]  bits&lt;br /&gt;
 SW[1:0]......: RCC_CFGR section 8.3.2 - System Clock Switch (HSI,HSE,PLL)&lt;br /&gt;
 PREDIV1SRC...: RCC_CFGR2 section 8.3.12 - PREDIV1 entry Clock Source (HSE or PLL2)&lt;br /&gt;
 PREDIV1[3:0].: RCC_CFGR2 section 8.3.12 - PREDIV1 division factor (Divide by 1 to 16)&lt;br /&gt;
 PLLSRC.......: RCC_CFGR section 8.3.2 - PLLMUL source HSI or HSE&lt;br /&gt;
 PLLMUL[3:0]..: RCC_CFGR section 8.3.2 - PLLMUL multiplication factor (4 to 9 and 6.5)&lt;br /&gt;
 HPRE[3:0]....: RCC_CFGR section 8.3.2 - AHB prescaler (Division factor 2,4,8...512)&lt;br /&gt;
 CSS..........:	RCC_CR section 8.3.1 - Clock Security System On/Off&lt;br /&gt;
 HSION........:	RCC_CR section 8.3.1 - High Speed Internal oscilator On/Off (Check HSIRDY)&lt;br /&gt;
 HSEON........:	RCC_CR section 8.3.1 - High Speed External oscilator On/Off (Check HSERDY)&lt;br /&gt;
 HSEBYP.......: RCC_CR section 8.3.1 - HSE oscilator or oscilator bypass.&lt;br /&gt;
 LATENCY[2:0].: FLASH_ACR section 3.3 - Flash Wait States (0 to 2)&lt;br /&gt;
 PRFTBE.......: FLASH_ACR section 3.3 - Flash Prefetch Buffer enable&lt;br /&gt;
 OTGFSPRE.....: RCC_CFGR section 8.3.2 - USB OTG FS Prescaler (divide by 2 or 3) SYSCLK (72 or 48 Mhz)&lt;br /&gt;
 &lt;br /&gt;
********************** S Y S C L K    M O D E S - PREDIV2 PLLMUL2 PREDIV1 PLLMUL******************&lt;br /&gt;
 MODE.........: The mode to select in the call to rss_set_sysclk&lt;br /&gt;
 SYSCLK.......: The System Clock Clocks the fx. AHB Prescaler&lt;br /&gt;
 FCLK/HCLK....: HCLK = Processor Clock (Clocks the Cortex M3) FCLK = Free Running Processor Clock&lt;br /&gt;
 SOURCE.......: clock Source. Selected with the SW[1:0]  bits&lt;br /&gt;
 SW[1:0]......: RCC_CFGR section 8.3.2 - System Clock Switch (HSI,HSE,PLL)&lt;br /&gt;
 PREDIV1SRC...: RCC_CFGR2 section 8.3.12 - PREDIV1 entry Clock Source (HSE or PLL2)&lt;br /&gt;
 PREDIV1[3:0].: RCC_CFGR2 section 8.3.12 - PREDIV1 division factor (Divide by 1 to 16)&lt;br /&gt;
 PLLSRC.......: RCC_CFGR section 8.3.2 - PLLMUL source HSI or HSE&lt;br /&gt;
 PLLMUL[3:0]..: RCC_CFGR section 8.3.2 - PLLMUL multiplication factor (4 to 9 and 6.5)&lt;br /&gt;
 HPRE[3:0]....: RCC_CFGR section 8.3.2 - AHB prescaler (Division factor 2,4,8...512)&lt;br /&gt;
 CSS..........:	RCC_CR section 8.3.1 - Clock Security System On/Off&lt;br /&gt;
 HSION........:	RCC_CR section 8.3.1 - High Speed Internal oscilator On/Off (Check HSIRDY)&lt;br /&gt;
 HSEON........:	RCC_CR section 8.3.1 - High Speed External oscilator On/Off (Check HSERDY)&lt;br /&gt;
 HSEBYP.......: RCC_CR section 8.3.1 - HSE oscilator or oscilator bypass.&lt;br /&gt;
 LATENCY[2:0].: FLASH_ACR section 3.3 - Flash Wait States (0 to 2)&lt;br /&gt;
 PRFTBE.......: FLASH_ACR section 3.3 - Flash Prefetch Buffer enable&lt;br /&gt;
 OTGFSPRE.....: RCC_CFGR section 8.3.2 - USB OTG FS Prescaler (divide by 2 or 3) SYSCLK (72 or 48 Mhz)&lt;br /&gt;
&lt;br /&gt;
  MODE  SYSCLK  FCLK/HCLK SOURCE  SW[1:0] PREDIV1SRC PREDIV1[3:0] PLLSRC PLLMUL[3:0] HPRE[3:0] CSS HSI HSE LATENCY[2:0] PRFTBE        &lt;br /&gt;
    1	36 MHz	  36 Mhz    HSI     00&lt;br /&gt;
&lt;br /&gt;
   SYSCLK er Sytem Clk : FCLK Cortex Free Running Clock&lt;br /&gt;
   1   36 MHz    HSI     00&lt;br /&gt;
   2   24 MHz    HSI     00&lt;br /&gt;
   3   16 MHz    HSI     00&lt;br /&gt;
   4    8 MHz    HSI     00&lt;br /&gt;
   5	4 MHz    HSI     00&lt;br /&gt;
   6	2 MHz    HSI     00&lt;br /&gt;
   7	1 MHz    HSI     00&lt;br /&gt;
   8  500 KHz    HSI     00&lt;br /&gt;
   9  125 KHz    HSI     00&lt;br /&gt;
*******************************************************************&lt;br /&gt;
See http://mars.tekkom.dk/mediawiki/index.php/STM32F107VC/RSS/Clock_Paths&lt;br /&gt;
for clock_modes.&lt;br /&gt;
*********************&lt;br /&gt;
clock_mode 1:&lt;br /&gt;
=============&lt;br /&gt;
Oscilator: HSI = 8 Mhz &lt;br /&gt;
USB......: Not possible. No path.&lt;br /&gt;
SYSCLK...: 8 Mhz&lt;br /&gt;
HCLK/FCLK: 8 Mhz / [1,2,4,8...512] = 8 Mhz, 4 Mhz, 2 Mhz ...	15,625 Khz&lt;br /&gt;
&lt;br /&gt;
clock_mode 2:&lt;br /&gt;
=============&lt;br /&gt;
Oscilator: HSI = 8 Mhz&lt;br /&gt;
USB......: Not possible. 48 Mhz required (Higest possible = 18 Mhz)&lt;br /&gt;
SYSCLK...: Through PLLMUL from 4 Mhz to 36 Mhz&lt;br /&gt;
HCLK/FCLK: SYSCLK / [1,2,4,8...512] (Highest 36 Mhz)&lt;br /&gt;
&lt;br /&gt;
clock_mode 3:&lt;br /&gt;
=============&lt;br /&gt;
Oscilator: HSE (25 MHz crystal onboard)&lt;br /&gt;
USB......: Not possible. No path.&lt;br /&gt;
SYSCLK...: 25 Mhz&lt;br /&gt;
HCLK/FCLK: SYSCLK / [1,2,4,8...512] (Highest 25 Mhz)&lt;br /&gt;
&lt;br /&gt;
clock_mode 4:&lt;br /&gt;
=============&lt;br /&gt;
Oscilator: HSE (25 MHz crystal onboard)&lt;br /&gt;
USB......: Not possible. 48 Mhz required &lt;br /&gt;
SYSCLK...: SYSCLK &amp;lt;= 72 Mhz highest possible (/2*5=62,5Mhz)&lt;br /&gt;
HCLK/FCLK: SYSCLK / [1,2,4,8...512] (Highest 62,5 Mhz)&lt;br /&gt;
&lt;br /&gt;
clock_mode 5:&lt;br /&gt;
=============&lt;br /&gt;
Oscilator: HSE (25 MHz crystal onboard)&lt;br /&gt;
USB......: Possible (25/5*8/5*9 and /3)&lt;br /&gt;
SYSCLK...: SYSCLK = 72 MHz&lt;br /&gt;
HCLK/FCLK: SYSCLK / [1,2,4,8...512] (Highest 72 MHz)&lt;br /&gt;
&lt;br /&gt;
*******************************************************************&lt;br /&gt;
                 C L O C K    S T A R T U P&lt;br /&gt;
*******************************************************************&lt;br /&gt;
&lt;br /&gt;
After Reset the controller uses the HSI - High Speed Internal Clock&lt;br /&gt;
The HSI runs at appor. 8 Mhz - See RCC_RC register (Section 8.3.1)&lt;br /&gt;
&lt;br /&gt;
The HSI is at Reset selected as System Clock &lt;br /&gt;
    - RCC_CFGR bits SW[1:0] = 00&lt;br /&gt;
&lt;br /&gt;
******** Setting the Clock to HSE  - High Speed External **********&lt;br /&gt;
&lt;br /&gt;
The External Clock Signal og Crystal can be selected as base for&lt;br /&gt;
System clock throgh RCC_CFGR bits SW[1:0]&lt;br /&gt;
                SW[1:0] = 00 - HSI  (Speed: ~8 Mhz)&lt;br /&gt;
				SW[1:0]	= 01 - HSE  (Speed: Depend on Crystal)&lt;br /&gt;
				SW[1:0] = 10 - PLL  (Speed dependent on HSI or HSE&lt;br /&gt;
				                     and setting of prescaler and&lt;br /&gt;
									 PLL multiplication factor)&lt;br /&gt;
******************************************************************/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/******************** HSE as System Clock *************************&lt;br /&gt;
To use she HSE as System Clock the following sequence is necessary&lt;br /&gt;
  1: Selecting External Oscillator or External Clock (Section 8.2.1)&lt;br /&gt;
     Setting RCC_CR bit HSEBYP = 0 selects oscillator using Crystal&lt;br /&gt;
	                    HSEBYP = 1 selects external clock&lt;br /&gt;
     The HSEBYP can only be written when RCC_CR bit HSEON = 0&lt;br /&gt;
 &lt;br /&gt;
  2: Enabling the HSE clock - RCC_CR bit&lt;br /&gt;
  		HSEON = 0 HSE : oscillator off&lt;br /&gt;
        HSEON = 1 HSE : oscillator on&lt;br /&gt;
&lt;br /&gt;
  3: Waiting until HSE clock is ready an can be used as Clock Source &lt;br /&gt;
        RCC_CR bit HSERDY = 0 : Oscillator Not Ready&lt;br /&gt;
		RCC_CR bit HSERDY = 1 : Oscillator Ready&lt;br /&gt;
&lt;br /&gt;
  4: When HSERDY = 1 select HSE as Clock Source&lt;br /&gt;
        RCC_CFGR bits SW[1:0] = 01 : HSE selected&lt;br /&gt;
******************************************************************/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//HUSK SLÅ UBRUGT PLL FRA&lt;br /&gt;
void rcc_clockmode3(void) {&lt;br /&gt;
	int i;&lt;br /&gt;
	&lt;br /&gt;
	//Step 1 - HSEBYP default = 0&lt;br /&gt;
&lt;br /&gt;
	//Step 2&lt;br /&gt;
	RCC-&amp;gt;CR |= RCC_CR_HSEON;  // HSEON=1&lt;br /&gt;
	&lt;br /&gt;
	//Step 3&lt;br /&gt;
	while ((RCC-&amp;gt;CR &amp;amp; RCC_CR_HSERDY) == 0) {}; // Wait HSERDY = 1&lt;br /&gt;
	for (i=0; i &amp;lt;100; i++); //Wait for Clock to stabilize before changing&lt;br /&gt;
&lt;br /&gt;
	//Step 4&lt;br /&gt;
	RCC-&amp;gt;CFGR |= RCC_CFGR_HSEON;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/******************** PLL as System Clock *************************&lt;br /&gt;
To use she PLL as System Clock the following sequence is necessary&lt;br /&gt;
 NOTE: The HSI Clock can be used as source for PLL Clocking, but&lt;br /&gt;
       it's not possible in this program to select. This program will&lt;br /&gt;
	   default to using the HSE with a crystal.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  1: Selecting External Oscillator or External Clock (Section 8.2.1)&lt;br /&gt;
     Setting RCC_CR bit HSEBYP = 0 selects oscillator using Crystal&lt;br /&gt;
	                    HSEBYP = 1 selects external clock&lt;br /&gt;
     The HSEBYP can only be written when RCC_CR bit HSEON = 0&lt;br /&gt;
 &lt;br /&gt;
  2: Enabling the HSE clock - RCC_CR bit&lt;br /&gt;
  		HSEON = 0 HSE : oscillator off&lt;br /&gt;
        HSEON = 1 HSE : oscillator on&lt;br /&gt;
&lt;br /&gt;
  3: Waiting until HSE clock is ready an can be used as Clock Source &lt;br /&gt;
        RCC_CR bit HSERDY = 0 : Oscillator Not Ready&lt;br /&gt;
		RCC_CR bit HSERDY = 1 : Oscillator Ready&lt;br /&gt;
&lt;br /&gt;
  4: Select Prescaler clock Source RCC_CFGR2 bit PREDIV1SRC&lt;br /&gt;
  		PREDIV1SRC = 0 : HSE Clock selected (Ddefault)&lt;br /&gt;
		PREDIV1SRC = 1 : PLL3 VCO clock selected&lt;br /&gt;
&lt;br /&gt;
  5: Select the Prescaler division factor. (Section 8.3.12)&lt;br /&gt;
     RCC_CFGR2 bits PREDIV1[3:0]&lt;br /&gt;
	    PREDIV1[3:0] = 0000: input clock not divided&lt;br /&gt;
		PREDIV1[3:0] = 0001: input clock divided by 2&lt;br /&gt;
		PREDIV1[3:0] = 0010: input clock divided by 3&lt;br /&gt;
		PREDIV1[3:0] = 0011: input clock divided by 4&lt;br /&gt;
		PREDIV1[3:0] = 0100: input clock divided by 5&lt;br /&gt;
		PREDIV1[3:0] = 0101: input clock divided by 6&lt;br /&gt;
		PREDIV1[3:0] = 0110: input clock divided by 7&lt;br /&gt;
		PREDIV1[3:0] = 0111: input clock divided by 8&lt;br /&gt;
		PREDIV1[3:0] = 1000: input clock divided by 9&lt;br /&gt;
		PREDIV1[3:0] = 1001: input clock divided by 10&lt;br /&gt;
		PREDIV1[3:0] = 1010: input clock divided by 11&lt;br /&gt;
		PREDIV1[3:0] = 1011: input clock divided by 12&lt;br /&gt;
		PREDIV1[3:0] = 1100: input clock divided by 13&lt;br /&gt;
		PREDIV1[3:0] = 1101: input clock divided by 14&lt;br /&gt;
		PREDIV1[3:0] = 1110: input clock divided by 15&lt;br /&gt;
		PREDIV1[3:0] = 1111: input clock divided by 16&lt;br /&gt;
&lt;br /&gt;
  6: Select the PLL Source HSI or PREDIV (Section 8.3.2)&lt;br /&gt;
  		PLLSRC = 0 HSI oscillator clock / 2 selected&lt;br /&gt;
		PLLSRC = 1 Clock from PREDIV selected&lt;br /&gt;
&lt;br /&gt;
  7: Select the PLL multiplication factor RCC_CFGR bits PLLMUL[3:0]&lt;br /&gt;
     (Section 8.3.2)&lt;br /&gt;
     NOTE: These bits can only be written when PLL is disabled&lt;br /&gt;
	    PLLMUL[3:0] = 0010 PLL input Clock X 4&lt;br /&gt;
		PLLMUL[3:0] = 0011 PLL input Clock X 5&lt;br /&gt;
		PLLMUL[3:0] = 0100 PLL input Clock X 6&lt;br /&gt;
		PLLMUL[3:0] = 0101 PLL input Clock X 7&lt;br /&gt;
		PLLMUL[3:0] = 0110 PLL input Clock X 8&lt;br /&gt;
		PLLMUL[3:0] = 0111 PLL input Clock X 9&lt;br /&gt;
		PLLMUL[3:0] = 1101 PLL input Clock X 6.5&lt;br /&gt;
	 CAUTION: The PLL output frequency must not exceed 72 MHz&lt;br /&gt;
&lt;br /&gt;
  8: Setting FLASH wait states FLASH_ACR bits LATENCY[2:0] (section 3.3) &lt;br /&gt;
  		LATECY[2:0] = 000 - Zero wait state. ( 0 Hz  &amp;lt; SYSCLK &amp;lt;= 24 Mhz)&lt;br /&gt;
  		LATECY[2:0] = 001 - One wait state.  (24 MHz &amp;lt; SYSCLK &amp;lt;= 48 Mhz)&lt;br /&gt;
  		LATECY[2:0] = 010 - Two wait state.  (48 MHz &amp;lt; SYSCLK &amp;lt;= 72 Mhz)&lt;br /&gt;
  &lt;br /&gt;
  9: Enable PLL - RCC_CR bit PLLON 1=Enable&lt;br /&gt;
&lt;br /&gt;
  10: Wait for PLL to stabilize - RCC_CR bit PLLRDY  1=Ready&lt;br /&gt;
&lt;br /&gt;
  11: Select PLL as Clock Source	(Section 8.3.2)&lt;br /&gt;
        RCC_CFGR bits SW[1:0] = 10 : PLL selected&lt;br /&gt;
&lt;br /&gt;
  12: Turn of HSI to reduce power consumption&lt;br /&gt;
******************************************************************&lt;br /&gt;
EXAMPLE:&lt;br /&gt;
        Crystal = 25 Mhz&lt;br /&gt;
		PREDIV[3:0] = 0100 : Division factor 5&lt;br /&gt;
		PLLMUL[3:0] = 0111 : Multiply by 9&lt;br /&gt;
&lt;br /&gt;
		System Clock = 25 Mhz / 5 * 9 = 45 Mhz&lt;br /&gt;
*****************************************************************/&lt;br /&gt;
&lt;br /&gt;
/* sub rss_clockmode4()&lt;br /&gt;
   abstract: Select preconfigured System Clock Rates using the PLL&lt;br /&gt;
&lt;br /&gt;
   input...: rate = Preconfigured rate&lt;br /&gt;
         		Crystal: 25 Mhz&lt;br /&gt;
		 		rate = 0 gives clock rate 66,667 Mhz&lt;br /&gt;
		      		Clock Rate = 25 Mhz / 3 * 8 = 66,667 Mhz&lt;br /&gt;
		 		rate = 1 gives clock rate 45,000 Mhz&lt;br /&gt;
		 	  		Clock Rate = 25 Mhz / 5 * 9 = 45,000 Mhz&lt;br /&gt;
   output..: 0 = New System Clock started&lt;br /&gt;
             &amp;gt;0 = Error - Old system clock still used&lt;br /&gt;
			  1 = Invalid Clock Rate&lt;br /&gt;
   limits..: No check performed if HSE already System Clock&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
Clk control with 6 modes and shift between them&lt;br /&gt;
&lt;br /&gt;
*/&lt;br /&gt;
int rcc_clockmode4( int rate ) {&lt;br /&gt;
	#define RATES 3&lt;br /&gt;
	// Array of clockmodes 45,66.667 Mhz&lt;br /&gt;
	int prediv[RATES] = {0x4,0x5,0xf}; // PREDIV 3 and PREDIV 5 values&lt;br /&gt;
	int pllmul[RATES] = {0x6 &amp;lt;&amp;lt; 18,0x7 &amp;lt;&amp;lt; 18,0x2 &amp;lt;&amp;lt; 18}; // PLLMUL 8 and PLLMUL 9 values&lt;br /&gt;
	int flshws[RATES] = {0x1,0x2,0x0}; // Flash Latency 1 wait state and 2 wait states&lt;br /&gt;
	int i;&lt;br /&gt;
	 &lt;br /&gt;
	if ( rate &amp;gt;= RATES ) { // Check if valid Clock Rate&lt;br /&gt;
		return(1);&lt;br /&gt;
	}&lt;br /&gt;
	// Step 1 - HSEBYP default = 0&lt;br /&gt;
	 &lt;br /&gt;
	// Step 2 - Enabling the HSE clock&lt;br /&gt;
 	RCC-&amp;gt;CR |= RCC_CR_HSEON;  // HSEON=1&lt;br /&gt;
	&lt;br /&gt;
	//Step 3 - Waiting until HSE clock is ready&lt;br /&gt;
	while ((RCC-&amp;gt;CR &amp;amp; RCC_CR_HSERDY) == 0) {}; // Wait HSERDY = 1&lt;br /&gt;
&lt;br /&gt;
   //Step 4 - Select Prescaler clock Source (Default OK)&lt;br /&gt;
&lt;br /&gt;
   //Step 5	- Select the Prescaler division factor.&lt;br /&gt;
   RCC-&amp;gt;CFGR2 |= prediv[rate];&lt;br /&gt;
&lt;br /&gt;
   //Step 6	- Select PREDIV as source for PLL&lt;br /&gt;
   RCC-&amp;gt;CFGR |= RCC_CFGR_PLLSRC;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   //Step 7	- Select the PLL multiplication factor&lt;br /&gt;
   RCC-&amp;gt;CFGR |= pllmul[rate];&lt;br /&gt;
&lt;br /&gt;
   //Step 8	- Select Flash wait states&lt;br /&gt;
   FLASH-&amp;gt;ACR |= flshws[rate];&lt;br /&gt;
&lt;br /&gt;
   //Step 9	- Enable PLL&lt;br /&gt;
   RCC-&amp;gt;CR |= RCC_CR_PLL1ON;&lt;br /&gt;
&lt;br /&gt;
   //Step 10 - Waiting until PLL clock is ready&lt;br /&gt;
	while ((RCC-&amp;gt;CR &amp;amp; RCC_CR_PLL1RDY) == 0) {}; // Wait HSERDY = 1&lt;br /&gt;
	for (i=0; i &amp;lt;100; i++); //Wait for Clock to stabilize before changing&lt;br /&gt;
&lt;br /&gt;
   //Step 11 - select PLL as Clock Source&lt;br /&gt;
	RCC-&amp;gt;CFGR |= RCC_CFGR_PLLON;&lt;br /&gt;
&lt;br /&gt;
   //Step 12 - Disable HSI&lt;br /&gt;
	RCC-&amp;gt;CR &amp;amp;= !RCC_CR_HSION;&lt;br /&gt;
	return(0);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* sub rcc_clockmode1()&lt;br /&gt;
   abstract: Select default as System Clock (HSI 8 Mhz)&lt;br /&gt;
&lt;br /&gt;
   input...:  -&lt;br /&gt;
&lt;br /&gt;
   output..: -&lt;br /&gt;
   limits..: No errorcheck performed&lt;br /&gt;
   *********************************************&lt;br /&gt;
   See: http://mars.tekkom.dk/mediawiki/index.php/STM32F107VC/RSS/Clock_Paths&lt;br /&gt;
        http://mars.tekkom.dk/mediawiki/index.php/STM32F107VC/RSS&lt;br /&gt;
   *********************************************&lt;br /&gt;
   Step 1: Enabling the HSI clock - RCC_CR bit (If not enabled)&lt;br /&gt;
  		   HSION = 1 HSI : oscillator on&lt;br /&gt;
   Step 2: Waiting until HSI clock is ready an can be used as Clock Source &lt;br /&gt;
           RCC_CR bit HSIRDY = 0 : Oscillator Not Ready&lt;br /&gt;
		   RCC_CR bit HSIRDY = 1 : Oscillator Ready&lt;br /&gt;
   Step 3: Select HSI in SW[1:0] as Clock Source&lt;br /&gt;
           RCC_CFGR bits SW[1:0] = 00 : HSI selected&lt;br /&gt;
   Step 4: Select AHB prescaler=1 &lt;br /&gt;
           RCC_CFGR bits HPRE[3:0] = 0000 &lt;br /&gt;
   Step 5: Setting FLASH wait states FLASH_ACR bits LATENCY[2:0] to 0 Wáit States(section 3.3) &lt;br /&gt;
  		   LATECY[2:0] = 000 - Zero wait state. ( 0 Hz  &amp;lt; SYSCLK &amp;lt;= 24 Mhz)&lt;br /&gt;
  		   LATECY[2:0] = 001 - One wait state.  (24 MHz &amp;lt; SYSCLK &amp;lt;= 48 Mhz)&lt;br /&gt;
  		   LATECY[2:0] = 010 - Two wait state.  (48 MHz &amp;lt; SYSCLK &amp;lt;= 72 Mhz)&lt;br /&gt;
   Step 6: Disabling HSE Clock- RCC_CR bit&lt;br /&gt;
  		   HSEON = 0 : oscillator off&lt;br /&gt;
*/&lt;br /&gt;
void rcc_clockmode1( void ) {&lt;br /&gt;
  	// Step 1 - Enabling the HSI clock - If not enabled and ready&lt;br /&gt;
	if ( (RCC-&amp;gt;CR &amp;amp; RCC_CR_HSIRDY) == 0) {&lt;br /&gt;
 	  RCC-&amp;gt;CR |= RCC_CR_HSION;  // HSION=1&lt;br /&gt;
	&lt;br /&gt;
	  //Step 2 - Waiting until HSI clock is ready&lt;br /&gt;
	  while ((RCC-&amp;gt;CR &amp;amp; RCC_CR_HSIRDY) == 0) {}; // Wait HSIRDY = 1&lt;br /&gt;
	}&lt;br /&gt;
	//Step 3: Select HSI in SW[1:0] as Clock Source&lt;br /&gt;
	//         Take care. SW[1:0] Select the clock source&lt;br /&gt;
	RCC-&amp;gt;CFGR &amp;amp;= 0xfffffffc;&lt;br /&gt;
&lt;br /&gt;
	//Step 4: Select AHB prescaler=1 &lt;br /&gt;
	RCC-&amp;gt;CFGR &amp;amp;= 0xffffff0f; // HPRE[3:0] = 0000&lt;br /&gt;
&lt;br /&gt;
    //Step 5: Setting FLASH wait states FLASH_ACR bits LATENCY[2:0] to 0 Wáit&lt;br /&gt;
	FLASH-&amp;gt;ACR &amp;amp;= 0xfffffff8; //LATENCY[2:0] = 000&lt;br /&gt;
	&lt;br /&gt;
	//Step 6: Disabling HSE Clock- RCC_CR bit&lt;br /&gt;
	RCC-&amp;gt;CR &amp;amp;= ~RCC_CR_HSEON;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
/* sub rcc_clockmode5()&lt;br /&gt;
   abstract: Select HSE as System Clock with,&lt;br /&gt;
     Crystal  = 25 MHz&lt;br /&gt;
	 SYSCLK   = 72 MHz&lt;br /&gt;
	 FCLK     = 72 MHz&lt;br /&gt;
	 OTGFSCLK = 48 MHz (USB)&lt;br /&gt;
	 ADC clock= 12 MHz &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   input...:  -&lt;br /&gt;
&lt;br /&gt;
   output..: -&lt;br /&gt;
   limits..: No errorcheck performed&lt;br /&gt;
   *********************************************&lt;br /&gt;
   See: http://mars.tekkom.dk/mediawiki/index.php/STM32F107VC/RSS/Clock_Paths&lt;br /&gt;
        http://mars.tekkom.dk/mediawiki/index.php/STM32F107VC/RSS&lt;br /&gt;
   *********************************************&lt;br /&gt;
   &lt;br /&gt;
   To select the frequencies 72 MHz as SYSCLK from 25 MHz Crystal the&lt;br /&gt;
   following calculation is necesary 25 MHz / 5 * 16 / 10 * 9 = 72 MHz&lt;br /&gt;
   &lt;br /&gt;
   PREDIV2 - Divide by 5&lt;br /&gt;
   PLL2MUL - Multiply by 16&lt;br /&gt;
   PREDIV1 - Divide by 10&lt;br /&gt;
   PLLMUL  - Multiply by 9  &lt;br /&gt;
   &lt;br /&gt;
   Step  0: HSEBYP default = 0 (Using Crystral = default)&lt;br /&gt;
   Step  1: Shift to Clockmode=1 (Freeing the Clock Path for programming)&lt;br /&gt;
   Step  2: Enabling the HSE clock - RCC_CR bit&lt;br /&gt;
  		   HSION = 1 HSE : oscillator on&lt;br /&gt;
   Step  3: Waiting until HSE clock is ready an can be used as Clock Source &lt;br /&gt;
           RCC_CR bit HSERDY = 0 : Oscillator Not Ready&lt;br /&gt;
		   RCC_CR bit HSERDY = 1 : Oscillator Ready&lt;br /&gt;
   Step  4: Select RCC_CFGR2 PREDIV2[3:0] divide by 5 =  0100&lt;br /&gt;
   Step  5: Disable RCC_CR PLL2ON = Disable (Shut down PLL2MUL)&lt;br /&gt;
   Step  6: Select RCC_CFGR2 PLL2MUL[3:0] multiply by 16 = 1110&lt;br /&gt;
   Step  7: Enable RCC_CR PLL2ON = Enable (Start pll2MUL after programmed)&lt;br /&gt;
   Step  8: Wait for PLL2MUL to lock RCC_CR bit PLL2RDY = 1&lt;br /&gt;
   Step  9: Select PLL2MUL as PREDIV1SRC - RCC_CFGR2 bit PREDIV1SRC = 1&lt;br /&gt;
   Step 10: Select RCC_CFGR2 PREDIV1[3:0] divide by 10 = 1001&lt;br /&gt;
   Step 11: Select PREDIV1 as PLLSRC - RCC_CFGR bit PLLSRC = 1&lt;br /&gt;
   Step 12: Disable RCC_CR bit PLLON = 0&lt;br /&gt;
   Step 13: Select RCC_CFGR PLLMUL[3:0] multiply by 9 = 0111&lt;br /&gt;
   Step 14: Enable RCC_CR bit PLLON = 1&lt;br /&gt;
   Step 15: Wait for PLLMUL to lock RCC_CR bit PLLRDY = 1&lt;br /&gt;
   Step 16: USB Prescaler divide by 3 ( 72 Mhz * 2 / 3 )  = 48 MHz&lt;br /&gt;
            RCC_CFGR bit OTGFSPRE = 0&lt;br /&gt;
   Step 17: Select AHB prescaler=1 - RCC_CFGR bits HPRE[3:0] = 0000&lt;br /&gt;
   Step 18: Enable prefetch FLASH_ACR bit PRFTBE = 1&lt;br /&gt;
   Step 19: Setting FLASH wait states FLASH_ACR bits LATENCY[2:0] to 2 Wáit States(section 3.3) &lt;br /&gt;
  		    LATECY[2:0] = 000 - Zero wait state. ( 0 Hz  &amp;lt; SYSCLK &amp;lt;= 24 Mhz)&lt;br /&gt;
  		    LATECY[2:0] = 001 - One wait state.  (24 MHz &amp;lt; SYSCLK &amp;lt;= 48 Mhz)&lt;br /&gt;
  		    LATECY[2:0] = 010 - Two wait state.  (48 MHz &amp;lt; SYSCLK &amp;lt;= 72 Mhz) &lt;br /&gt;
   Step 20: RCC_CFGR bits PPRE1[2:0] = 100 -APB1 Prescaler divide by 2 = 36 MHz&lt;br /&gt;
   Step 21: RCC_CFGR bits ADCPRE[1:0] = 10 ADC-prescaler divide by 6 72 MHz / 6 = 12 MHz&lt;br /&gt;
   Step 22: Select PLLCLK in SW[1:0] as Clock Source&lt;br /&gt;
            RCC_CR SW[1:0] = 10&lt;br /&gt;
   Step 23: Disabling HSI Clock- RCC_CR bit&lt;br /&gt;
  		   HSION = 0 : oscillator off&lt;br /&gt;
           RCC_CFGR bits SW[1:0] = 00 : HSI selected&lt;br /&gt;
*/&lt;br /&gt;
void rcc_clockmode5( void ) {&lt;br /&gt;
int i;&lt;br /&gt;
	//Step  1: Shift to Clockmode=1&lt;br /&gt;
	rcc_clockmode1();&lt;br /&gt;
&lt;br /&gt;
	// Step 2 - Enabling the HSE clock&lt;br /&gt;
 	RCC-&amp;gt;CR |= RCC_CR_HSEON;  // HSEON=1&lt;br /&gt;
	&lt;br /&gt;
	//Step 3 - Waiting until HSE clock is ready&lt;br /&gt;
	while ((RCC-&amp;gt;CR &amp;amp; RCC_CR_HSERDY) == 0) {}; // Wait HSERDY = 1&lt;br /&gt;
&lt;br /&gt;
	//Step  4: Select RCC_CFGR2 PREDIV2[3:0] divide by 5 =  0100 (bits[7:4])&lt;br /&gt;
	RCC-&amp;gt;CFGR2 |= 0x00000040; // Setting bit x1xx&lt;br /&gt;
	RCC-&amp;gt;CFGR2 &amp;amp;= 0xffffff4f; // Resetting bit 0x00&lt;br /&gt;
&lt;br /&gt;
    //Step  5: Disable RCC_CR PLL2ON = Disable (Shut down PLL2MUL)&lt;br /&gt;
	RCC-&amp;gt;CR &amp;amp;= ~( 1 &amp;lt;&amp;lt; 26 ); // Resetting bit 26 disabling PPL2MUL&lt;br /&gt;
&lt;br /&gt;
	//Step  6: Select RCC_CFGR2 PLL2MUL[3:0] multiply by 16 = 1110 (bits[11:8])&lt;br /&gt;
	RCC-&amp;gt;CFGR2 |= 0x00000e00; // Setting bits 111x&lt;br /&gt;
	RCC-&amp;gt;CFGR2 &amp;amp;= 0xfffffeff; // Resetting bit xxx0&lt;br /&gt;
&lt;br /&gt;
	//Step  7: Enable RCC_CR PLL2ON = Enable (Start pll2MUL after programmed)&lt;br /&gt;
	RCC-&amp;gt;CR |=  1 &amp;lt;&amp;lt; 26 ; // Setting bit 26 enabling PPL2MUL&lt;br /&gt;
&lt;br /&gt;
	//Step  8: Wait for PLL2MUL to lock RCC_CR bit PLL2RDY = 1&lt;br /&gt;
	while ((RCC-&amp;gt;CR &amp;amp; RCC_CR_PLL2RDY) == 0) {}; // Wait PLL2RDY = 1&lt;br /&gt;
&lt;br /&gt;
	//Step  9: Select PLL2MUL as PREDIV1SRC - RCC_CFGR2 bit PREDIV1SRC = 1&lt;br /&gt;
	RCC-&amp;gt;CFGR2 |= 1 &amp;lt;&amp;lt; 16; // Setting bit 16 selecting PLL2MUL&lt;br /&gt;
&lt;br /&gt;
	//Step 10: Select RCC_CFGR2 PREDIV1[3:0] divide by 10 = 1001 (bits[3:0])&lt;br /&gt;
	RCC-&amp;gt;CFGR2 |= 0x00000009; // Setting bits 1xx1&lt;br /&gt;
	RCC-&amp;gt;CFGR2 &amp;amp;= 0xfffffff9; // Resetting bit x00x&lt;br /&gt;
&lt;br /&gt;
	//Step 11: Select PREDIV1 as PLLSRC - RCC_CFGR bit PLLSRC = 1&lt;br /&gt;
	RCC-&amp;gt;CFGR |= RCC_CFGR_PLLSRC;&lt;br /&gt;
&lt;br /&gt;
	//Step 12: Disable RCC_CR bit PLLON = 0&lt;br /&gt;
	RCC-&amp;gt;CR &amp;amp;= ~( 1 &amp;lt;&amp;lt; 24 ); // Resetting bit 24 disabling PPLMUL&lt;br /&gt;
&lt;br /&gt;
	//Step 13: Select RCC_CFGR PLLMUL[3:0] multiply by 9 = 0111	(bits[21:18])&lt;br /&gt;
	RCC-&amp;gt;CFGR &amp;amp;= ~( 1 &amp;lt;&amp;lt; 21 ); // Bit 21 = 0&lt;br /&gt;
	RCC-&amp;gt;CFGR |= 1 &amp;lt;&amp;lt; 20; 		// bit 20 = 1&lt;br /&gt;
	RCC-&amp;gt;CFGR |= 1 &amp;lt;&amp;lt; 19; 		// bit 19 = 1&lt;br /&gt;
	RCC-&amp;gt;CFGR |= 1 &amp;lt;&amp;lt; 18; 		// bit 18 = 1&lt;br /&gt;
&lt;br /&gt;
	//Step 14: Enable RCC_CR bit PLLON = 1&lt;br /&gt;
	RCC-&amp;gt;CR |=  1 &amp;lt;&amp;lt; 24 ; // Setting bit 24 enabling PPLMUL&lt;br /&gt;
&lt;br /&gt;
	//Step 15: Wait for PLLMUL to lock RCC_CR bit PLLRDY = 1&lt;br /&gt;
	while ((RCC-&amp;gt;CR &amp;amp; RCC_CR_PLL1RDY) == 0) {}; // Wait PLL1RDY = 1&lt;br /&gt;
&lt;br /&gt;
	//Step 16: USB Prescaler divide by 3 ( 72 Mhz * 2 / 3 )  = 48 MHz&lt;br /&gt;
	RCC-&amp;gt;CFGR &amp;amp;= ~(1 &amp;lt;&amp;lt; 22); //Resetting OTGFSPRE selects divide by 3&lt;br /&gt;
&lt;br /&gt;
	//Step 17: Select AHB prescaler=1 - RCC_CFGR bits HPRE[3:0] = 0000 (bits[7:4])&lt;br /&gt;
	RCC-&amp;gt;CFGR2 &amp;amp;= 0xffffff0f; // Resetting bit 0000&lt;br /&gt;
&lt;br /&gt;
	//Step 18: Enable prefetch FLASH_ACR bit PRFTBE = 1&lt;br /&gt;
	FLASH-&amp;gt;ACR |= 1 &amp;lt;&amp;lt; 4;&lt;br /&gt;
&lt;br /&gt;
	//Step 19: Setting FLASH wait states FLASH_ACR bits LATENCY[2:0] to 2 Wáit States(section 3.3)&lt;br /&gt;
	FLASH-&amp;gt;ACR |= 0x00000002;&lt;br /&gt;
	FLASH-&amp;gt;ACR &amp;amp;= 0xfffffffa;&lt;br /&gt;
	&lt;br /&gt;
	for(i=0;i &amp;lt; 100000;i++);&lt;br /&gt;
&lt;br /&gt;
	//Step 20: RCC_CFGR bits PPRE1[2:0] = 100 -APB1 Prescaler divide by 2 = 36 MHz&lt;br /&gt;
	rcc_cfgr( 0x00000300, 0 ); //Set PPRE1[1:0] = 0&lt;br /&gt;
	rcc_cfgr( 0x00000400, 1 ); //Set PPRE1[2] = 1&lt;br /&gt;
&lt;br /&gt;
	//Step 21: RCC_CFGR bits PPRE1[2:0] = 100 -APB1 Prescaler divide by 2 = 36 MHz&lt;br /&gt;
	rcc_cfgr( 1 &amp;lt;&amp;lt; 14, 0 ); //Set ADCPRE[0] = 0&lt;br /&gt;
	rcc_cfgr( 1 &amp;lt;&amp;lt; 15, 1 ); //Set ADCPRE[1] = 1&lt;br /&gt;
	&lt;br /&gt;
	//Step 22: Select PLLCLK in SW[1:0] as Clock Source&lt;br /&gt;
	RCC-&amp;gt;CFGR |= RCC_CFGR_PLLON;&lt;br /&gt;
&lt;br /&gt;
   //Step 23 - Disable HSI&lt;br /&gt;
	RCC-&amp;gt;CR &amp;amp;= ~RCC_CR_HSION;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
=Add rcc.h&amp;gt;&lt;br /&gt;
&amp;lt;source lang=c&amp;gt;&lt;br /&gt;
extern void rcc_clockmode1( void );&lt;br /&gt;
extern void rcc_clockmode3( void );&lt;br /&gt;
extern void rcc_clockmode4( void );&lt;br /&gt;
extern void rcc_clockmode5( void );&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
=Use clockmode 5 in main.c=&lt;br /&gt;
Add rcc_'''clockmode5();''' before main loop&lt;br /&gt;
{{Souce cli}}&lt;/div&gt;</summary>
		<author><name>Heth</name></author>	</entry>

	</feed>