<?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=30&amp;t=2113&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2013-01-13T19:57:55+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=30&amp;t=2113&amp;mode</id>
<entry>
<author><name><![CDATA[kyp]]></name></author>
<updated>2013-01-13T19:57:55+01:00</updated>
<published>2013-01-13T19:57:55+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24689#p24689</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24689#p24689"/>
<title type="html"><![CDATA[Re: STM32F0Discovery - zliczanie narastających zboczy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24689#p24689"><![CDATA[
Kolego:<br /><!-- m --><a class="postlink" href="http://stm32.eu/node/48" >http://stm32.eu/node/48</a><!-- m --><br />Też się tym bawię, na początku bardzo męczyłem SunRivera, teraz jakoś sobie radzę. Generalnie strona którą Ci podałem ma dużo fajnych artykułów o stm32, tylko nie wolno przepisywać &quot;na pałę&quot;, pamiętaj : dokumentacja twoim przyjacielem. A przeczytana dokumentacja, najlepszym.  <br />Ale faktycznie lepiej zacząć od &quot;ośmiu bitów&quot;. <br />uC 8bit, są jak analogowe przyrządy pomiarowe. Mają duże walory edukacyjne, mam nadzieję ze seria AVR będzie jeszcze długo produkowana, bo w przyszłości będę chciał kształcić na tym swojego syna:P<br /><br />Kiedyś coś naskrobałem i chyba nawet działało:P<br />Jak znajdę chwilę jutro to poskrobię bardziej:<br />To jest taka funkcyja konfiguracyjna włączasz ją sobie na początku main (najlepiej po inicjacji GPIO i RCC)<br /><br />[syntax=c]<div class="codetitle"><b>Code:</b></div><div class="codecontent">void EXI(void)<br />{<br /><br />NVIC_InitTypeDef NVIC_INIT;<br />NVIC_INIT.NVIC_IRQChannel = EXTI0_IRQn;<br />NVIC_INIT.NVIC_IRQChannelPreemptionPriority = 0;<br />NVIC_INIT.NVIC_IRQChannelSubPriority = 0;<br />NVIC_INIT.NVIC_IRQChannelCmd = ENABLE ;<br />NVIC_Init(&amp;NVIC_INIT);<br /><br />GPIO_EXTILineConfig(GPIO_PortSourceGPIOA, GPIO_PinSource0);<br /><br />EXTI_InitTypeDef EXTI_InitStructure;<br />EXTI_InitStructure.EXTI_Line = EXTI_Line0;<br />EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;<br />EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;<br />EXTI_InitStructure.EXTI_LineCmd = ENABLE;<br />EXTI_Init(&amp;EXTI_InitStructure);<br /><br />NVIC_InitTypeDef NVIC_INIT1;<br />NVIC_INIT1.NVIC_IRQChannel = EXTI1_IRQn;<br />NVIC_INIT1.NVIC_IRQChannelPreemptionPriority = 0;<br />NVIC_INIT1.NVIC_IRQChannelSubPriority = 0;<br />NVIC_INIT1.NVIC_IRQChannelCmd = ENABLE ;<br />NVIC_Init(&amp;NVIC_INIT1);<br /><br />GPIO_EXTILineConfig(GPIO_PortSourceGPIOA, GPIO_PinSource1);<br /><br />EXTI_InitTypeDef EXTI_InitStructure1;<br />EXTI_InitStructure1.EXTI_Line = EXTI_Line1;<br />EXTI_InitStructure1.EXTI_Mode = EXTI_Mode_Interrupt;<br />EXTI_InitStructure1.EXTI_Trigger = EXTI_Trigger_Falling;<br />EXTI_InitStructure1.EXTI_LineCmd = ENABLE;<br />EXTI_Init(&amp;EXTI_InitStructure1);<br /><br /><br />}<br /></div>[/syntax]<br /><br />Zrób sobie zmienną globalną, chyba starczy coś takiego:<br />[syntax=c]<div class="codetitle"><b>Code:</b></div><div class="codecontent">volatile unsigned int a</div>[/syntax]<br /><br />A potem w pliku stm32f10x_it.c tworzysz sobie funkcję :<br /><br />[syntax=c]<div class="codetitle"><b>Code:</b></div><div class="codecontent">void EXTI0_IRQHandler(void)<br />{<br />   EXTI_ClearITPendingBit(EXTI_Line0);<br />   zmienna();<br />}</div>[/syntax]<br /><br />Gdzie funkcja &quot;zmienna()&quot; znajduje się w pliku main.c i robisz tam takie coś ++a.<br />AAA...<br />I nie zapomnij żeby było też odwołanie tego: void EXTI0_IRQHandle w pliku stm32f10x_it.h<br /><br />Zakładam że C coś wiesz, jak coś to pytaj. A reszta towarzystwa, jak napisałem głupotę to wskażcie mi:P<br />W funkcji konfiguracji przerwań zewnętrznych masz skonfigurowane dwa źródła, akurat takimi się bawiłem kiedyś i jest. Po zatym Falling musisz zmienić na rising i powinno być gites:)<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 1 minucie ]</span></strong><br /><br />Ktoś by mi mógł powiedzieć jak się wkleja te kody żeby były czytelne... <br />A kod jest dla STM32F103 ale powinno trybić F0.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=164">kyp</a> — 13 sty 2013, o 19:57</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2013-01-13T15:03:42+01:00</updated>
<published>2013-01-13T15:03:42+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24662#p24662</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24662#p24662"/>
<title type="html"><![CDATA[Re: STM32F0Discovery - zliczanie narastających zboczy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24662#p24662"><![CDATA[
kolega MDR niestety użytkuje F0 , a ja jakoś nie bardzo mogę znaleźć czas na grzebanie się w nim ....<br />większość rzeczy jest podobna , niestety rdzeń M0 jest bardzo okrojony w stosunku do M3  wieksze szanse na działanie kodów <br />z M3 ma poprawiony rdzeń M0 czyli M0+ niestety obecnie jedyne procesory na rynku, które mają ten rdzeń na pokładzie to Kinetis <br />z firmy Freescale. <br /><br />Rdzeń Cortex-M0  został zaprojektowany jako maksymalnie uproszczony oraz maksymalnie tani 32bitowy rdzeń dla niszowych i tanich rozwiązań niewymagających rozbudowanych list instrukcji.  Rdzeń miał być z założenia zgodny z „większymi” braćmi , choć wyszło, że jest „raczej” zgodny  sam ze sobą .  Nowy i tani Cortex-M0 okazał się trochę niewypałem , w założeniu Firmy ARM  miał zdeklasować mikrokontrolery 8 i 16 bitowe zapewniając  wysoką wydajność oraz niski koszt implementacji  i to wszystko przy relatywnie niskim  poborze energii . Dużo hałasu, a testy udowodniły, że jednak nie do końca był tak dobry jak zapowiadano.Wszystkie cięcia w rdzeniu M0 względem rdzenia M3 jak widać głównie polegały na :<br /><br />- redukcji rozkazów asemblera, których pozostało 56<br />- pominięto moduł MPU<br />- zredukowano do minimum moduł sprzętowego debugowania<br />- okrojono interfejs połączeń pamięci <br />- oskubano nawet kontroler NVIC <br /><br />Podobnie okrojone i uproszczone zostało jeszcze wiele bloków rdzenia.  Jednak mimo to wielu producentów mikrokontrolerów uznało, że taki „oskubany” z czego się tylko dało rdzeń ma sens.<br />Zresztą daje się to zaobserwować poprzez pojawiające się tanie i oszczędne wersje mikrokontrolerów <br />Różnych producentów w których zastosowano rdzeń M0.  Poniekąd cel nie zawsze uświęca środki i choć firma ARM osiągnęła cel , bowiem wszystkie cięcia pozwoliły na 2-krotne zmniejszenie poboru mocy, a przestrzeń zajmowana przez rdzeń została zredukowana niemal 3-krotnie to jednak odbiło się to wszystko na wydajności, która drastycznie spadła.  I rdzeń wiele stracił na atrakcyjności. W każdym razie na szczęście firma ARM wyczuła pismo nosem i postanowiła wprowadzić zmodyfikowaną wersję rdzenia M0 oznaczonego znakiem + (plus).<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 1 minucie ]</span></strong><br /><br />Dlatego radzę sie zainteresować na tym etapie początkowym mikrokontrolerami AVR , żeby się obyc  z językiem lub zainwestować w STM32VL, który ma pełny rdzeń M3 lub FRDM-KL25Z z M0+<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 13 sty 2013, o 15:03</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[MrDarkenRahl]]></name></author>
<updated>2013-01-13T14:53:54+01:00</updated>
<published>2013-01-13T14:53:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24659#p24659</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24659#p24659"/>
<title type="html"><![CDATA[Re: STM32F0Discovery - zliczanie narastających zboczy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24659#p24659"><![CDATA[
Nie za wiele mi to pomoże, bo jestem zieloniutki jeżeli chodzi o wszelakie uC. Chcę gotowy przykład aby go zanalizować i mniej więcej ogarnąć o co chodzi <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" />.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=636">MrDarkenRahl</a> — 13 sty 2013, o 14:53</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[tomwisnia]]></name></author>
<updated>2013-01-13T14:19:37+01:00</updated>
<published>2013-01-13T14:19:37+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24652#p24652</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24652#p24652"/>
<title type="html"><![CDATA[Re: STM32F0Discovery - zliczanie narastających zboczy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24652#p24652"><![CDATA[
jachu nie wie jaki to dział:&gt;<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=183">tomwisnia</a> — 13 sty 2013, o 14:19</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[filipo96]]></name></author>
<updated>2013-01-13T14:14:47+01:00</updated>
<published>2013-01-13T14:14:47+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24649#p24649</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24649#p24649"/>
<title type="html"><![CDATA[Re: STM32F0Discovery - zliczanie narastających zboczy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24649#p24649"><![CDATA[
Jak nie:<br /><div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />W tym dziale podajemy rozwiązania nie na zasadzie wędki a gotowej ryby. Jeśli masz problem i nie potrafisz go rozwiązać, opisz go. Jeśli znajdą się chętni, którzy w ramach nauki zechcą wymyślać rozwiązania to skorzystają na tym obie strony.<br /></div><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=99">filipo96</a> — 13 sty 2013, o 14:14</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jachu]]></name></author>
<updated>2013-01-13T14:12:28+01:00</updated>
<published>2013-01-13T14:12:28+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24648#p24648</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24648#p24648"/>
<title type="html"><![CDATA[Re: STM32F0Discovery - zliczanie narastających zboczy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24648#p24648"><![CDATA[
A moze tak najpierw sam pomyslisz napiszesz i jak cos nie tak wkleisz kod i koledzy pomoga. Tu nie dajemy gotowych rozwiazan. Staramy sie pomagac ale nie licz na gotowce.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=110">jachu</a> — 13 sty 2013, o 14:12</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[MrDarkenRahl]]></name></author>
<updated>2013-01-13T14:07:54+01:00</updated>
<published>2013-01-13T14:07:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24646#p24646</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24646#p24646"/>
<title type="html"><![CDATA[STM32F0Discovery - zliczanie narastających zboczy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2113&amp;p=24646#p24646"><![CDATA[
Witam<br />Bardzo proszę o gotowy kawałek kodu, w którym ilość narastających zboczy na wejściu PA0 będzie zapisywana do zmiennej &quot;a&quot;.<br />Pozdrawiam<br />MDR<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=636">MrDarkenRahl</a> — 13 sty 2013, o 14:07</p><hr />
]]></content>
</entry>
</feed>