<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=46&amp;t=15131&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2016-04-17T20:40:27+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=46&amp;t=15131&amp;mode</id>
<entry>
<author><name><![CDATA[matti0010]]></name></author>
<updated>2016-04-17T20:40:27+01:00</updated>
<published>2016-04-17T20:40:27+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158759#p158759</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158759#p158759"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158759#p158759"><![CDATA[
Takie jeszcze jedno pytanie, jak mogę sprawdzić, jaką prędkość taktowania ADC mam? Jeszcze nie zdążyłem przerobić materiału z zegarów więc wybaczcie moją niewiedzę<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=5344">matti0010</a> — 17 kwi 2016, o 20:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2016-04-15T22:51:18+01:00</updated>
<published>2016-04-15T22:51:18+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158647#p158647</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158647#p158647"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158647#p158647"><![CDATA[
wiesz nie jest tak źle , <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" />  dawno nie meczyłem STmów ... siedze w kinetisach ostatnio i Xmosie <br />jako rozrywkę bawię się Xmegą ... ech<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 15 kwi 2016, o 22:51</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matti0010]]></name></author>
<updated>2016-04-15T22:47:31+01:00</updated>
<published>2016-04-15T22:47:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158646#p158646</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158646#p158646"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158646#p158646"><![CDATA[
Jeszcze wiele muszę się nauczyć <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> więc pewnie te forum mnie znienawidzi za liczny spam w postaci skomlenia o pomoc <img src="https://forum.atnel.pl/images/smilies/icon_razz.gif" alt=":P" title="Pokazuje język" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=5344">matti0010</a> — 15 kwi 2016, o 22:47</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2016-04-15T22:44:01+01:00</updated>
<published>2016-04-15T22:44:01+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158645#p158645</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158645#p158645"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158645#p158645"><![CDATA[
<div class="quotetitle">sq8dsr napisał(a):</div><div class="quotecontent"><br />Generalnie mi sie podobają te klikanki w stylu CubeMX. Na ARM spodobało mi się użycie struktur do konfiguracji GPIO czy ogólnie peryferiów.<br /></div><br /><br />Nio CubeMX jeszcze rozumiem bo czesto korzystam by sobie podglądnąc zależności  obwodów czasowych , ale CW i KDS mnie mierzi strasznie <br />wolę sobie klepać koda w Keilu, TrupeStudio czy moim ulubionym VS z VGDB <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> No i oczywiście CMSIS i HAL dzięki czemu mogę sobie z kodem kicac po LPC, Kinetisach , renesasach czy STmach ... po malusienkich w sumie tylko popraweczkach<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 15 kwi 2016, o 22:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[sq8dsr]]></name></author>
<updated>2016-04-15T22:34:56+01:00</updated>
<published>2016-04-15T22:34:56+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158643#p158643</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158643#p158643"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158643#p158643"><![CDATA[
<div class="quotetitle">SunRiver napisał(a):</div><div class="quotecontent"><br />właściwie to włączonych , gdyż można puścić wiele peryferii asynchronicznie <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /></div><br /><br />Jak zacząłem się wgryzać w ARMy (zaczynając zresztą od Twojej książki <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br />To wielość możliwości ustawień zegara była dla mnie lekkim szokiem, szczególnie później w M4<br />Rożne preskalery, różnie taktowane peryferia... <br />Kolejnym szokiem były rejestry GPIO i znowu np. pulldown, albo prędkość narastania zbocza... <br /><br />Generalnie mi sie podobają te klikanki w stylu CubeMX. Na ARM spodobało mi się użycie struktur do konfiguracji GPIO czy ogólnie peryferiów.<br /><br />A i polecam też biblioteki tego człowieka:<br />Tilen Majerle<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1589">sq8dsr</a> — 15 kwi 2016, o 22:34</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2016-04-15T22:20:41+01:00</updated>
<published>2016-04-15T22:20:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158641#p158641</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158641#p158641"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158641#p158641"><![CDATA[
właściwie to włączonych , gdyż można puścić wiele peryferii asynchronicznie <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br />np GPIO mozna taktować wyżej niż rdzeń <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> a czasem sie to przydaje <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 15 kwi 2016, o 22:20</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matti0010]]></name></author>
<updated>2016-04-15T21:51:57+01:00</updated>
<published>2016-04-15T21:51:57+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158640#p158640</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158640#p158640"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158640#p158640"><![CDATA[
Poszukam, wiem teraz jak wygląda DZIAŁAJĄCY kod więc na spokojnie jak trochę od tego odpocznę siądę na nowo i znajdę. Teraz mam jakiś punkt wyjścia. Tak to szukałem &quot;po omacku&quot;... <br /><br />Co do odpalania zegarów, początkowo też mnie to denerwowało, lecz teraz w sumie... to jest pierwsze co sprawdzam jak chcę coś uruchomić. Tutaj za pierwszym razem już ze zmęczenia nie spojrzałem na to <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> ale za drugim spojrzeniem znalazłem ten brakujący zegar.<br /><br />Poza obniżonym poborem mocy jakie są zalety wyłączonych zegarów? (o ile takowe są <img src="https://forum.atnel.pl/images/smilies/icon_razz.gif" alt=":P" title="Pokazuje język" /> )<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=5344">matti0010</a> — 15 kwi 2016, o 21:51</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2016-04-15T21:49:09+01:00</updated>
<published>2016-04-15T21:49:09+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158638#p158638</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158638#p158638"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158638#p158638"><![CDATA[
Tu w ARM trzeba pamiętać że dla każdego &lt;KAŻDEGO&gt; peryferia , UART, ADC ... a nawet GPIO  należy zawsze najpierw włączyć zegar <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br />a potem można się nimi bawić ... trochę na początku jest to wkurzające , ale się potem okazuje bardzo przydatne <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />--- jak tak patrze na twój kod to .. widzę dlaczego ci nie działa , ale powinieneś to szybko znaleźć <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 15 kwi 2016, o 21:49</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matti0010]]></name></author>
<updated>2016-04-15T21:42:20+01:00</updated>
<published>2016-04-15T21:42:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158637#p158637</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158637#p158637"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158637#p158637"><![CDATA[
W piekle będę się smażył za ten spam...<br /><br />Teraz działa:<br /><br />[syntax=c]#include &quot;stm32f0xx.h&quot;<br />#include &quot;stm32f0_discovery.h&quot;<br /><br />volatile int x=0;<br /><br />int analogRead(void)<br />{<br />        ADC1-&gt;CR |= ADC_CR_ADSTART;<br />        while(!((ADC1-&gt;ISR) &amp; (ADC_ISR_EOC)));<br />        return (int) ADC1-&gt;DR;<br />}<br /><br />int main(void)<br />{<br />RCC-&gt;AHBENR |= RCC_AHBENR_GPIOAEN|RCC_AHBENR_GPIOBEN;<br />RCC -&gt; APB2ENR |= RCC_APB2ENR_ADC1EN;//odblokowanie ADC<br />GPIOA-&gt;MODER |= GPIO_MODER_MODER0;<br /><br />////////////// PORT B //////////////////////<br />GPIOB -&gt; MODER |= GPIO_MODER_MODER0_0;//wyjście<br />GPIOB -&gt; OTYPER &amp;= ~(GPIO_OTYPER_OT_0);<br />GPIOB -&gt; OSPEEDR |= GPIO_OSPEEDER_OSPEEDR0;<br />GPIOB -&gt; PUPDR &amp;= ~(GPIO_PUPDR_PUPDR0_0);<br />////////////// PORT B //////////////////////<br />GPIOB -&gt; BRR |= GPIO_BRR_BR_0;//zerujê diody<br /><br /><br />ADC1-&gt;CR |= ADC_CR_ADCAL;<br /><br />while((ADC1-&gt;CR &amp; ADC_CR_ADCAL));<br /><br />ADC1-&gt;CHSELR |= ADC_CHSELR_CHSEL0;<br /><br />ADC1-&gt;CR |= ADC_CR_ADEN;<br /><br />while(!((ADC1-&gt;ISR) &amp; ADC_ISR_ADRDY));<br /><br />while(1)<br />{<br />x=analogRead();<br />if(x&gt;1000)<br />{<br />GPIOB -&gt; BSRR |= GPIO_BSRR_BS_0;<br />}<br />else<br />{<br />GPIOB -&gt; BRR |= GPIO_BRR_BR_0;//zerujê diody<br />}<br />}<br />}[/syntax]<br /><br />Brakowało odpalenia zegara dla ADC: RCC -&gt; APB2ENR |= RCC_APB2ENR_ADC1EN; Po wpisaniu tego zaczęło działać. Tyle że teraz siedzę jak ciele, patrzę na Twój kod, na mój kod i za nic nie potrafię zrozumieć czemu mój nie działał. Miałem dokładnie tak samo napisane (nawet z kalibracją w akcie desperacji, wiem bo mam 75% wersji kodów jakie testowałem przez ostatnie dni) -_- Elektronika... no nic, ważne że już ruszyło, teraz będę mógł dalej się uczyć jak to modyfikowac itd, bo już wiem że ADC działa. <br /><br />BARDZO DZIĘKUJĘ WAM OBU ZA POMOC. Naprawdę, chylę czoła <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: kilkunastu sekundach ]</span></strong><br /><br /><div class="quotetitle">Nefarious19 napisał(a):</div><div class="quotecontent"><br />A gdzie włączenie zegara dla ADC1?<br /></div><br /><br />jak to napisałeś to właśnie byłem w trakcie pisania swojej odpowiedzi <img src="https://forum.atnel.pl/images/smilies/icon_razz.gif" alt=":P" title="Pokazuje język" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=5344">matti0010</a> — 15 kwi 2016, o 21:42</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Nefarious19]]></name></author>
<updated>2016-04-15T21:38:32+01:00</updated>
<published>2016-04-15T21:38:32+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158636#p158636</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158636#p158636"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158636#p158636"><![CDATA[
A gdzie włączenie zegara dla ADC1?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2500">Nefarious19</a> — 15 kwi 2016, o 21:38</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matti0010]]></name></author>
<updated>2016-04-15T21:24:30+01:00</updated>
<published>2016-04-15T21:24:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158635#p158635</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158635#p158635"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158635#p158635"><![CDATA[
Wkleiłem już na &quot;chama&quot; ten kod dodając tylko obsługę diody (by widzieć coś):<br />[syntax=c]#include &quot;stm32f0xx.h&quot;<br />#include &quot;stm32f0_discovery.h&quot;<br /><br />volatile uint16_t x=0;<br /><br />int analogRead(void)<br />{<br />        ADC1-&gt;CR |= ADC_CR_ADSTART;<br />        while(!((ADC1-&gt;ISR) &amp; (ADC_ISR_EOC)));<br />        return (int) ADC1-&gt;DR;<br />}<br /><br />int main(void)<br />{<br />RCC-&gt;AHBENR |= RCC_AHBENR_GPIOAEN|RCC_AHBENR_GPIOBEN;<br />GPIOA-&gt;MODER |= GPIO_MODER_MODER0;<br /><br />////////////// PORT B //////////////////////<br />GPIOB -&gt; MODER |= GPIO_MODER_MODER0_0;//wyjście<br />GPIOB -&gt; OTYPER &amp;= ~(GPIO_OTYPER_OT_0);<br />GPIOB -&gt; OSPEEDR |= GPIO_OSPEEDER_OSPEEDR0;<br />GPIOB -&gt; PUPDR &amp;= ~(GPIO_PUPDR_PUPDR0_0);<br />////////////// PORT B //////////////////////<br />GPIOB -&gt; BRR |= GPIO_BRR_BR_0;//zerujê diody<br /><br /><br />ADC1-&gt;CR |= ADC_CR_ADCAL;<br />while((ADC1-&gt;CR &amp; ADC_CR_ADCAL));<br />ADC1-&gt;CHSELR |= ADC_CHSELR_CHSEL0;<br />ADC1-&gt;CR |= ADC_CR_ADEN;<br />while(!((ADC1-&gt;ISR) &amp; ADC_ISR_ADRDY));<br /><br />while(1)<br />{<br />x=analogRead();<br />if(x&gt;100)<br />{<br />GPIOB -&gt; BSRR |= GPIO_BSRR_BS_0;<br />}<br />else<br />{<br />GPIOB -&gt; BRR |= GPIO_BRR_BR_0;//zerujê diody<br />}<br />}<br />}[/syntax]<br /><br />Dalej nie działa -_- przemierzyłem potencjometr, dla pewności, sprawdziłem kable, diodę, wszystko o czym tylko pomyślałem ;/<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 9 minutach ]</span></strong><br /><br />Sprawdziłem za pomocą diody (oświecałem ją po kolei zmieniając linijki, schodziłem od góry do dołu). Program utyka w linii z: while(!((ADC1-&gt;ISR) &amp; ADC_ISR_ADRDY));<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=5344">matti0010</a> — 15 kwi 2016, o 21:24</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Nefarious19]]></name></author>
<updated>2016-04-15T21:11:57+01:00</updated>
<published>2016-04-15T21:11:57+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158631#p158631</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158631#p158631"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158631#p158631"><![CDATA[
Potencjometr włączony pomiędzy 3V czyli Vdd a GND. To mega prosty kod ale działa.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2500">Nefarious19</a> — 15 kwi 2016, o 21:11</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Nefarious19]]></name></author>
<updated>2016-04-15T21:02:07+01:00</updated>
<published>2016-04-15T21:02:07+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158630#p158630</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158630#p158630"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158630#p158630"><![CDATA[
Sam się uczę dopiero STMów.  Pół godziny czytania RM i proszę, ADC działa <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br /><strong>Ustawienie w najprostszy tryb single ADCeka i pino PA0 jako wejścia ADC.</strong><br /><br />[syntax=c]RCC-&gt;AHBENR |= RCC_AHBENR_GPIOAEN;<br />GPIOA-&gt;MODER |= GPIO_MODER_MODER0;<br /><br /><br />ADC1-&gt;CR |= ADC_CR_ADCAL;<br />while((ADC1-&gt;CR &amp; ADC_CR_ADCAL));<br />ADC1-&gt;CHSELR |= ADC_CHSELR_CHSEL0;<br />ADC1-&gt;CR |= ADC_CR_ADEN;<br />while(!((ADC1-&gt;ISR) &amp; ADC_ISR_ADRDY));[/syntax]<br /><br /><strong>funkcja zwracająca pomierzone dane (12 bitowa wartość)</strong><br /><br />[syntax=c]int analogRead()<br />{<br />ADC1-&gt;CR |= ADC_CR_ADSTART;<br />while(!((ADC1-&gt;ISR) &amp; (ADC_ISR_EOC)));<br />return (int) ADC1-&gt;DR;<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2500">Nefarious19</a> — 15 kwi 2016, o 21:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matti0010]]></name></author>
<updated>2016-04-15T20:31:20+01:00</updated>
<published>2016-04-15T20:31:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158628#p158628</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158628#p158628"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158628#p158628"><![CDATA[
Tyle że masz tutaj całkowitą rację, to już nie ta era kopania. Jednak wypada chociaż trochę to znać <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> Z tego powodu warto chociaż jeden rdzeń przekopać pobieżnie by wiedzieć co te biblioteki robią. Przynajmniej ja tak sądzę. <br />Próbuję dalej to zrealizować ;/ widzę że radzio napisał to w bardzo podobny sposób (tylko ma tam inne diody i więcej makr), lecz nadal nie chce to cholerstwo ruszyć. Szkoda, że gdy kupowałem STM32FxDISCOVERY nie znałem się na tym (teraz też się nie znam, ale wiem chociaż na co mniej więcej zwracać uwagę). Wtedy na pewno nie brałbym F0 ;/ zero przykładów w sieci, na których mógłbym się ewentualnie uczyć. Do tego RM jest często tak napisany że... zacytuję kolegę &quot;nie wiem co oni tam biorą, ale to musi być srogie&quot;<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=5344">matti0010</a> — 15 kwi 2016, o 20:31</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2016-04-15T20:07:06+01:00</updated>
<published>2016-04-15T20:07:06+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158625#p158625</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158625#p158625"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158625#p158625"><![CDATA[
nie do końca tak jest ...  ARM dostarcza rdzeń  zaś peryferia zależą od producenta krzemu <br />ale rdzeń jest zawsze ten sam ...  znaczy no wiadomo że mamy dużo cortexów ... <br /><br />F1xx mają rdzenie M3 i choć M0 jest też z ARM to jednak ... mało w nim tego ARMA  bo co się dało wyciachali <br />na szczęście jest M0+ który dosyć polubiłem ... <br /><br />Dlatego swego czasu uznałem że mam dość asm dla ARM i rycia po rejestrach , bo nie jest to już era procesora kopanego<br />SPL nie były specjalnie udane to prawda , HAL się poprawił choć w przypadku STM dalej nie jest to rewelacja <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />ARM daje standard w postaci CMSIS gdzie dostarcza oprogramowanie do RDZENIA zaś producent krzemu jak STM dostarcza HAL <br />daje to wiele , ale nie o tym przecież w tym temacie <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 15 kwi 2016, o 20:07</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matti0010]]></name></author>
<updated>2016-04-15T20:00:31+01:00</updated>
<published>2016-04-15T20:00:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158623#p158623</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158623#p158623"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158623#p158623"><![CDATA[
Najgorsze w ARMach jest to, że każdy ma całkiem inną specyfikację... w STM32F0 przykładowo linia zegarowa od portów jest w jednym rejestrze a w STM32F1 już w innym... jak by nie mogli trzymać się tego co było i tylko rozbudowywać lub lekko modyfikować ;/ ale ARM to tylko patent, różne firmy je kupują i tworzą potem układy z rdzeniem ARM więc jest jak jest. <br /><br />Do bibliotek często zaglądam i tam też szukam &quot;inspiracji&quot;, lecz... nie zawsze jestem w stanie znaleźć rozwiązanie. Google przekopałem tak, jakbym był na polu ziemniaków... No nic, dalej będę próbował. Jeszcze raz dzięki <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=5344">matti0010</a> — 15 kwi 2016, o 20:00</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2016-04-15T19:56:34+01:00</updated>
<published>2016-04-15T19:56:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158621#p158621</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158621#p158621"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158621#p158621"><![CDATA[
powiem ci że często to jedyna droga ....  a dokumentacja nie jest specjalnie przyjazna , zwłaszcza jak zaglądniesz do referencji rdzenia Cortex M <br />firmy ARM ... czyli obowiązkowej lektury.  <br /><br />zaglądnij do radzia ...   <!-- m --><a class="postlink" href="http://en.radzio.dxp.pl/stm32vldiscovery/lesson7,analog,to,digital,converter,adc.html" >http://en.radzio.dxp.pl/stm32vldiscover ... r,adc.html</a><!-- m --><br />ew tu ... <!-- m --><a class="postlink" href="http://tecsploit.com/stm32f4-discovery/pulse-width-modulation-using-stm32f4-discovery/" >http://tecsploit.com/stm32f4-discovery/ ... discovery/</a><!-- m --><br /><br />jak uznasz że stoisz w miejscu , rozważ używanie CMSIS  i bibliotek HAL<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 15 kwi 2016, o 19:56</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matti0010]]></name></author>
<updated>2016-04-15T19:51:05+01:00</updated>
<published>2016-04-15T19:51:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158619#p158619</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158619#p158619"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158619#p158619"><![CDATA[
Czyli tak naprawdę tak jak chciałem to zrobić. Nie jestem pewny tego napięcia referencyjnego. Pominąłem tylko kalibrację, ponieważ początkowo chciałem by cokolwiek się działo, może skakać pomiar jak dziecko z ADHD. Pogrzebię jeszcze w tym nieszczęsnym RM i AN. <br /><br />Wiem że takie kopanie się z dokumentacja to głupota, lecz jestem zbyt dociekliwy i nie lubię używać czegoś, czego nie rozumie lub nie wiem jak działa (gdy coś tworzę). Przejrzę te materiały, które od Was dostałem, dziękuję. Przydadzą się.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=5344">matti0010</a> — 15 kwi 2016, o 19:51</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2016-04-15T19:30:21+01:00</updated>
<published>2016-04-15T19:30:21+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158614#p158614</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158614#p158614"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158614#p158614"><![CDATA[
Obsługa ADC zawsze wygląda tak samo ... wiec niema tu żadnej tajemnicy <br />trzeba uruchomić , ustawić napiecie referencyjne , dokonac kalibracji i dokonywać pomiaru napięcia np na potencjometrze <br />następnie danymi z ADC należy się posłużyć do ustawienia PWM który steruje diodą <br /><br />efekt ??  uzyskujemy regulację natężenia świecenia diody ....<br /><img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />nie trzeba się fochać <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" />  zasada taka sama jak na avr tyko więcej zamieszania <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" />)<br />zainstaluj sobie STM32Cube .. i zobacz jak to działa ...<br /><br />zapoznaj się też z tym materiałem <!-- m --><a class="postlink" href="http://embedded-lab.com/blog/stm32-adc-2/" >http://embedded-lab.com/blog/stm32-adc-2/</a><!-- m --><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 15 kwi 2016, o 19:30</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matti0010]]></name></author>
<updated>2016-04-15T19:24:22+01:00</updated>
<published>2016-04-15T19:24:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158613#p158613</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158613#p158613"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158613#p158613"><![CDATA[
Panie Złoty, napisałem że chciałbym poznać to dogłębniej na zasadzie takiej, jak wygląda mój kod. Nie uwierzę, że w tym standardzie autorzy przewidzieli wszystkie możliwości, jakie mogą wystąpić podczas pracy. To jest fizycznie niemożliwe. Z tego powodu chcę nauczyć się, jak to działa, nie tylko jak się pisze. Niemniej jednak z tą stroną chętnie się zapoznam, lecz to nadal nie odpowiada na mój problem.<br /><br /><div class="quotetitle">SunRiver napisał(a):</div><div class="quotecontent"><br /><div class="quotetitle">matti0010 napisał(a):</div><div class="quotecontent">obszerny dokument na ten temat jest jak zawsze na stronie producenta mikrokontrolera :<br /><br /><!-- m --><a class="postlink" href="http://www2.st.com/content/ccc/resource/technical/document/application_note/c4/63/a9/f4/ae/f2/48/5d/CD00258017.pdf/files/CD00258017.pdf/jcr:content/translations/en.CD00258017.pdf" >http://www2.st.com/content/ccc/resource ... 258017.pdf</a><!-- m --><br /><br />od tego należy zacząć ...<br /></div></div><br /><br />Gdybym nie przejrzał noty i nie siedział nad tym już któryś dzień, to bym tutaj nie pisał... Przejrzałem zarówno AN jak i RM i DM. Nadal nie wiem co źle robię (tak, kod przykładowy z RM też sprawdzałem i nic to nie dało).<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=5344">matti0010</a> — 15 kwi 2016, o 19:24</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2016-04-15T19:20:20+01:00</updated>
<published>2016-04-15T19:20:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158612#p158612</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158612#p158612"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158612#p158612"><![CDATA[
<div class="quotetitle">matti0010 napisał(a):</div><div class="quotecontent"><br />Pewnie ktoś powie, że mogę używać bibliotek. Owszem, lecz chcę poznać to dokładniej. Nie ma bibliotek do wszystkiego<br /></div><br /><br />Owszem są ...  ale nie istotne<br /><br /><div class="quotetitle">matti0010 napisał(a):</div><div class="quotecontent"><br />Nie potrafię jeszcze ich zbyt dobrze używać.<br /></div><br /><br />Choć kolega jeden dobrze to ujął  ,  dlatego też nie będę pokazywał jak to zrobić na bibliotekach HAL w CMSIS. <br /><br />obszerny dokument na ten temat jest jak zawsze na stronie producenta mikrokontrolera :<br /><br /><!-- m --><a class="postlink" href="http://www2.st.com/content/ccc/resource/technical/document/application_note/c4/63/a9/f4/ae/f2/48/5d/CD00258017.pdf/files/CD00258017.pdf/jcr:content/translations/en.CD00258017.pdf" >http://www2.st.com/content/ccc/resource ... 258017.pdf</a><!-- m --><br /><br />od tego należy zacząć ...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 15 kwi 2016, o 19:20</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Nefarious19]]></name></author>
<updated>2016-04-15T19:13:48+01:00</updated>
<published>2016-04-15T19:13:48+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158611#p158611</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158611#p158611"/>
<title type="html"><![CDATA[Re: STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158611#p158611"><![CDATA[
Panie Kochany, a strony Sunrivera to się nie zna? Standard CMSIS nie gryzie i jest dobry <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br /><!-- m --><a class="postlink" href="http://www.sunduino.pl/wordpress/start-z-stm32-vl-discovery-10-adc/" >http://www.sunduino.pl/wordpress/start- ... ry-10-adc/</a><!-- m --><br /><!-- m --><a class="postlink" href="http://www.sunduino.pl/wordpress/start-z-stm32-vl-discovery-11-adc-part-2/" >http://www.sunduino.pl/wordpress/start- ... dc-part-2/</a><!-- m --><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2500">Nefarious19</a> — 15 kwi 2016, o 19:13</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matti0010]]></name></author>
<updated>2016-04-15T18:58:24+01:00</updated>
<published>2016-04-15T18:58:24+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158610#p158610</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158610#p158610"/>
<title type="html"><![CDATA[STM32F0DISCOVERY - ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=15131&amp;p=158610#p158610"><![CDATA[
Witajcie,<br /><br />próbowałem na wszelkie możliwe sposoby lecz nie mam już pomysłu... Pomoże ktoś zrozumieć jak działa ADC? To co spłodziłem:<br /><br />[syntax=c]/**<br />  ******************************************************************************<br />  * @file    main.c<br />  * @author  Ac6<br />  * @version V1.0<br />  * @date    01-December-2013<br />  * @brief   Default main function.<br />  ******************************************************************************<br />*/<br /><br /><br />#include &quot;stm32f0xx.h&quot;<br />#include &quot;stm32f0_discovery.h&quot;<br /><br /><br />int main(void)<br />{<br />volatile uint32_t delay;<br />RCC -&gt; AHBENR |= RCC_AHBENR_GPIOCEN| RCC_AHBENR_GPIOAEN;<br />RCC -&gt; APB2ENR |= RCC_APB2ENR_ADC1EN;//odblokowanie ADC<br /><br />RCC -&gt; APB2ENR = RCC_APB2ENR_TIM1EN;//timer 1 odpalony, zegar<br /><br />GPIOC -&gt; MODER |= GPIO_MODER_MODER0;//bit zerowy jako ADC, IN10, PC0<br /><br />////////////// PORT A //////////////////////<br />GPIOA -&gt; MODER |= GPIO_MODER_MODER8_1;//ustawienie funkcji alternatywnej<br />GPIOA -&gt; AFR&#91;1&#93; |= 0x00000002;//AF2 dla AFR8, AFR9, AFR10<br />////////////// PORT A //////////////////////<br /><br />TIM1 -&gt; CCMR1 |= TIM_CCMR1_OC1PE|TIM_CCMR1_OC1M_1|TIM_CCMR1_OC1M_2;//PWM 1 kanal, OC1PE - buforowanie rejestrów<br />TIM1 -&gt; CCER |= TIM_CCER_CC1E;//wlaczenie odpowiednich kanalów<br />TIM1 -&gt; BDTR |= TIM_BDTR_MOE;//ostateczne odblokowanie liczników<br /><br />TIM1 -&gt; PSC = 7;//preskaler<br />TIM1 -&gt; ARR = 99;//do ilu liczy<br />TIM1 -&gt; CCR1 = 10;//rejestry porównawcze<br /><br /><br />TIM1 -&gt; EGR = TIM_EGR_UG;//programowo generowany UEV, poniewaz rejestry sa buforowane (wlaczone)<br />TIM1 -&gt; CR1 |= TIM_CR1_ARPE|TIM_CR1_CEN;//wlaczenie licznika, ARPE - buforowanie ARR<br /><br />ADC1 -&gt; CHSELR |= ADC_CHSELR_CHSEL10;<br />ADC1 -&gt; SMPR |= ADC_SMPR1_SMPR;<br />ADC1 -&gt; IER |= ADC_IER_EOCIE;<br />//ADC-&gt;CCR |= ADC_CCR_VREFEN;<br />ADC1 -&gt; CR |= ADC_CR_ADEN;//odblokowanie ADC(?)<br />//while(!(ADC1 -&gt; ISR &amp; ADC_ISR_ADRDY));<br />for(;;)<br />{<br />//ADC1 -&gt; CHSELR |= ADC_CHSELR_CHSEL10;<br />//ADC1 -&gt; SMPR |= ADC_SMPR1_SMPR;<br />ADC1 -&gt; CR |= ADC_CR_ADSTART;//rozpoczęcie pojedynczej konwersji<br />for(delay = 1000000; delay; delay--);<br />while((ADC1 -&gt; ISR &amp; ADC_ISR_EOC)==0);<br />TIM1 -&gt; CCR1 = ((ADC1 -&gt; DR)%10);<br />//ADC1-&gt;CFGR1 ^= ADC_CFGR1_SCANDIR;<br />}<br />}[/syntax]<br /><br />Ogółem chcę osiągnąć by dioda świeciła równie mocno jak wiele jest na ADC. Mam podpięty pod PC0 potencjometr. Jak nim kręcę, to nic się nie dzieje ;/<br /><br />Pewnie ktoś powie, że mogę używać bibliotek. Owszem, lecz chcę poznać to dokładniej. Nie ma bibliotek do wszystkiego (i wtedy umiejętność tworzenia własnych w oparciu o taki masochizm jest jedną z niewielu opcji poradzenia sobie). <br /><br />Oczywiście, chętnie zobaczę rozwiązanie na przykładzie biblioteki. Nie potrafię jeszcze ich zbyt dobrze używać. Niemniej jednak najbardziej zależy mi na tym, by ktoś wyjaśnił jak tego ADC odpalić (przy okazji, chętnie się dowiem jak odpalić ADC w continous convertion, bo to będzie następna rzecz jaką chcę zrozumieć).<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=5344">matti0010</a> — 15 kwi 2016, o 18:58</p><hr />
]]></content>
</entry>
</feed>