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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-05-09T22:36:42+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=46&amp;t=7005&amp;mode</id>
<entry>
<author><name><![CDATA[Forfiter]]></name></author>
<updated>2014-05-09T22:36:42+01:00</updated>
<published>2014-05-09T22:36:42+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80690#p80690</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80690#p80690"/>
<title type="html"><![CDATA[Re: [STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80690#p80690"><![CDATA[
Nie chce zaśmiecać forum,a trochę mnie to nurtuje mianowicie załóżmy, ze chciałbym wyzwalać przetwornik A/C za pomocą timer'a. Do tego celu (z tego co zrozumiałem z not i idąc śladem intuicji) służy następująca linia:<br />[syntax=c]ADC_InitStructure.ADC_ExternalTrigConvEvent = ADC_ExternalTrigConvEvent_x;[/syntax]<br />gdzie x to numer zdarzenia. Moje pytanie jest następujące: jaki numer wybrać jeśli chce wyzwalać timerem 1,2, itd. ? W nocie katalogowej ( <!-- m --><a class="postlink" href="http://www.st.com/st-web-ui/static/active/en/resource/technical/document/user_manual/DM00068049.pdf" >http://www.st.com/st-web-ui/static/acti ... 068049.pdf</a><!-- m --> ) nie ma nic o tym, które zdarzenie jest przypisane któremu timerowi.<br />Pozdrawiam.<br /><br />P.S. <br />Znalazłem (po przeszukaniu dwóch manuali) i zostawiam w razie czego dla potomnych:<br /><a href="http://forum.atnel.pl/_obrazki/o/3691/f14a5f1c750a7fbee780f39e5fd6dcc6.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/3691/f14a5f1c750a7fbee780f39e5fd6dcc6.jpg" alt="Obrazek" /></a><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3691">Forfiter</a> — 9 maja 2014, o 22:36</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Forfiter]]></name></author>
<updated>2014-05-08T19:19:00+01:00</updated>
<published>2014-05-08T19:19:00+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80583#p80583</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80583#p80583"/>
<title type="html"><![CDATA[Re: [STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80583#p80583"><![CDATA[
Nie wiem już co jest... pewnie trzeba będzie grzebać w rejestrach.... Na chwile obecną uzyskuje &quot;zabójcze&quot; prędkości:<br />44 bajty na sekunde - przy BR=9600<br />201 bajt/sekunde - BR=128000<br /><br />P.S.<br /> rezasurmar korzystasz z bibliotek ST czy sam napisałeś procedury obsługi ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3691">Forfiter</a> — 8 maja 2014, o 19:19</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2014-05-08T13:55:50+01:00</updated>
<published>2014-05-08T13:55:50+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80551#p80551</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80551#p80551"/>
<title type="html"><![CDATA[Re: [STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80551#p80551"><![CDATA[
To ewidentnie coś źle masz skonfigurowane, nawet na mega8 po uarcie śmigało mi na 200 kb.<p>Statystyki: Napisane przez Gość — 8 maja 2014, o 13:55</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Forfiter]]></name></author>
<updated>2014-05-08T13:52:02+01:00</updated>
<published>2014-05-08T13:52:02+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80549#p80549</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80549#p80549"/>
<title type="html"><![CDATA[Re: [STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80549#p80549"><![CDATA[
Wczoraj przeprowadzałem takie proste próby o których wspomniałeś - wysyłałem np. tylko 0xFF (dec: 255) lub 0x0A (dec: 10). Zmiany w BR dawały bardzo słabą poprawę ilości odbieranych bajtów w ciągu sekundy (rzędu kilku dziesięciu bajtów - zmiana BR = 9600-256000).<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3691">Forfiter</a> — 8 maja 2014, o 13:52</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2014-05-08T12:57:23+01:00</updated>
<published>2014-05-08T12:57:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80545#p80545</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80545#p80545"/>
<title type="html"><![CDATA[Re: [STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80545#p80545"><![CDATA[
Rozumiem, że mimo zwiększania prędkości samego UARTa, dane nie przyspieszają?, spróbuj na początek wysyłać coś z bufora bez pobierania pomiarów, może gdzieś masz jakieś opóźnienie. Chwilowo nie jestem nic więcej w stanie podpowiedzieć, bo za chudy w kapeluszu jestem na to.<p>Statystyki: Napisane przez Gość — 8 maja 2014, o 12:57</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Forfiter]]></name></author>
<updated>2014-05-08T12:28:33+01:00</updated>
<published>2014-05-08T12:28:33+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80544#p80544</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80544#p80544"/>
<title type="html"><![CDATA[Re: [STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80544#p80544"><![CDATA[
Rozumiem:) <br />Wiesz może dlaczego zmiana tych prędkości nie jest widoczna w terminalu ? Jedyne co przychodzi mi do głowy to to, że gdzieś w bibliotece USARTa trzeba dokonać dodatkowej modyfikacji, ale to było by bez sensu od strony użytecznej (bo po co wtedy linia z deklaracją w której wpisuje się wartość BR - patrz: wcześniejszy mój post).<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3691">Forfiter</a> — 8 maja 2014, o 12:28</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2014-05-08T12:12:52+01:00</updated>
<published>2014-05-08T12:12:52+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80543#p80543</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80543#p80543"/>
<title type="html"><![CDATA[Re: [STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80543#p80543"><![CDATA[
Ja patrzałem w F407 <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" />.<p>Statystyki: Napisane przez Gość — 8 maja 2014, o 12:12</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Forfiter]]></name></author>
<updated>2014-05-08T12:08:50+01:00</updated>
<published>2014-05-08T12:08:50+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80542#p80542</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80542#p80542"/>
<title type="html"><![CDATA[Re: [STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80542#p80542"><![CDATA[
Sprawdzałem, sprawdzałem ale wyniki dt. prędkości trochę mnie ....zszokowały. Załóżmy że baud rate ustawiłem w programie na poziomie 9600 (w terminalu również) - &quot;próbki&quot; sobie śmigają tak, że otrzymuje kilaset bajtów na sekunde - pasuje. Ale jak zwiększałem BR (nawet do 250000) to nie widziałem żadnej różnicy w ilości przesłanych informacji. Zmieniałem wartość w tej linii:<br />[syntax=c]USART_InitStructure.USART_BaudRate = 9600;[/syntax]<br /><br />Troszkę mnie zdziwił fakt, że USART może wyciągnąć 10.5Mbit/s, ale faktycznie zgodnie z notą katalogową STM32F303 wartości są zbliżone (stosunkowo <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" />):<br /><div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />The USART interfaces are able to communicate at speeds of up to 9 Mbits/s<br /></div><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3691">Forfiter</a> — 8 maja 2014, o 12:08</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2014-05-08T10:23:46+01:00</updated>
<published>2014-05-08T10:23:46+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80529#p80529</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80529#p80529"/>
<title type="html"><![CDATA[Re: [STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80529#p80529"><![CDATA[
Buforowanie sprawdza się tylko wtedy, gdy masz paczki danych, albo dane nie lecą cały czas, bo jak sam zauważyłeś, kiedyś musi być czas na opróżnianie bufora.<br />A tak na marginesie, sprawdzałeś UARTa w STMie <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" />, w/g dokumentacji można go pędzić do 10.5Mbit/s<p>Statystyki: Napisane przez Gość — 8 maja 2014, o 10:23</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Forfiter]]></name></author>
<updated>2014-05-08T00:40:05+01:00</updated>
<published>2014-05-08T00:40:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80503#p80503</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80503#p80503"/>
<title type="html"><![CDATA[Re: [STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80503#p80503"><![CDATA[
Problem rozwiązany, wystarczyło dodać linie odpowiedzialne za konfigurację funkcji alternatywnych tzn:<br />[syntax=c]GPIO_PinAFConfig(GPIOA, GPIO_PinSource9, GPIO_AF_7);<br />GPIO_PinAFConfig(GPIOA, GPIO_PinSource10, GPIO_AF_7);[/syntax]<br /><br />P.S.<br />Mam małą zagwozdkę, a nie chce zaśmiecać forum nowymi tematami. Mianowicie, chciałbym za pomocą wspomnianego stm'a próbkować sygnał o zmiennej częstotliwości (4kHz-40kHz). No i teraz tak: teoria mówi, że minimalna fp powinna wynosić jakieś 80kHz (dla tego przypadku). Z praktyki jednak wiadomo, że lepsza by była większa wartość częstotliwości próbkowania.<br />Narazie mam w głowie następującą koncepcję: ustawiam przetwornik ADC na 12 bit (chce &quot;wycisnąć&quot; z STM'a ile natura dała <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /> ), ustawiam go w tryb pojedynczego pomiaru i wyzwalam timerem co np. 5us. Teraz: chciałbym próbki wysyłać przez usart do pc. W czasie rzeczywistym tego nie dokonam, ponieważ standard tego nie wytrzyma (tak przynajmniej mi się wydaje), więc próbki z ADC bd wysyłał do dwóch tablic (tab1 i tab2) za pomocą DMA. Na początku zapełnie tab1 próbkami - zrobie przerwanie, rozpoczne zapełnianie tab2 - próbki z tab1 chce wysyłać do pc i tak w koło macieju. No i teraz mam zgrzyt... bo przy takiej częstotliwości próbkowania to jest prawie pewne, że tablica się prędzej zapełni próbkami z adc (np. tab1), aniżeli druga (tab2) zdąży wysłać swoje wartości przez USART'A (jeszcze dodatkowo muszę każdą próke w postaci 16bitowej podzielić na pół; wiem: adc daje 12 bitową próbkę, ale będę ją musiał poszerzyć do wspomnianych 16). <br />Chciałem zatem zapytać czy jest jakieś inne rozwiązanie/metoda podejścia do tego problemu ? Wiem, że istnieją rozwiązania typu przystawka oscyloskopowa do komputera, ale zanim dogrzebie się w kodzie i domyśle &quot;co autor ma na myśli&quot; to już 100 razy zwątpie <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3691">Forfiter</a> — 8 maja 2014, o 00:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[ps19]]></name></author>
<updated>2014-05-07T18:17:32+01:00</updated>
<published>2014-05-07T18:17:32+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80451#p80451</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80451#p80451"/>
<title type="html"><![CDATA[Re: [STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80451#p80451"><![CDATA[
Nie, zamigać diodą poprzez zmianę stanu na jakimś porcie A. W ten sposób ustalimy czy procek m.in odmierza czas i zegar w nim &quot;tyka&quot;<br /><br />CooCox nie powie ci że zapomniałeś jakiejś linii odpowiedzialnej za konfigurację np. PLL. Sam używam CooCox`a <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />Wrzuć cały kod z poprawkami<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=230">ps19</a> — 7 maja 2014, o 18:17</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Forfiter]]></name></author>
<updated>2014-05-07T18:10:51+01:00</updated>
<published>2014-05-07T18:10:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80447#p80447</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80447#p80447"/>
<title type="html"><![CDATA[Re: [STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80447#p80447"><![CDATA[
Rozumiem, że zamigać diodą poprzez rozkaz z pc-&gt;stm32 ? RCC raczej jest dobrze ustawione (CooCox z którego korzystam na co dzień jest na tyle &quot;mądrym&quot; kompilatorem, że sprawdza dokładnie każdą linie którą pisze - również te związane z RCC). Jeśli chodzi o ustawienia komputera... hmm... przez chwile myślałem, że konwerter jest usiekany, jednak zwarłem TX z RX no i występuje efekt echa, czyli z nim (i prawdopodobnie z ustawienia pc) jest wszystko ok<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3691">Forfiter</a> — 7 maja 2014, o 18:10</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[ps19]]></name></author>
<updated>2014-05-07T18:04:00+01:00</updated>
<published>2014-05-07T18:04:00+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80446#p80446</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80446#p80446"/>
<title type="html"><![CDATA[Re: [STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80446#p80446"><![CDATA[
Spróbuj zamigać jakąś diodą na porcie A, może w RCC_config jest błąd. Możliwe, że masz coś na PC źle skonfigurowane. Wrzuć kod z poprawkami.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=230">ps19</a> — 7 maja 2014, o 18:04</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Forfiter]]></name></author>
<updated>2014-05-07T17:50:38+01:00</updated>
<published>2014-05-07T17:50:38+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80445#p80445</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80445#p80445"/>
<title type="html"><![CDATA[Re: [STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80445#p80445"><![CDATA[
Witam ponownie,<br />Zdeklarowałem ponownie porty GPIO zgodnie z zalecaniami ps19, ale dalej cisza w terminalu...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3691">Forfiter</a> — 7 maja 2014, o 17:50</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[karolek]]></name></author>
<updated>2014-05-07T17:16:59+01:00</updated>
<published>2014-05-07T17:16:59+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80441#p80441</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80441#p80441"/>
<title type="html"><![CDATA[Re: [STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80441#p80441"><![CDATA[
ps19:<br /><br />na arm sie nie znam ale jaka jest roznica <br />miedzy <br />[syntax=c]USART_SendData(USART1, 'A');[/syntax]<br /><br />a <br /><br />[syntax=c]int s = 10 ; <br />USART_SendData(USART1, 'A');[/syntax]<br /><br />moim zdaniem żadna<br /><br />bo w obu przypadkach dostaniesz na terminalu znak A lub kod hex liczby jezeli nie jest znakiem asci<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2535">karolek</a> — 7 maja 2014, o 17:16</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[ps19]]></name></author>
<updated>2014-05-07T17:01:37+01:00</updated>
<published>2014-05-07T17:01:37+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80440#p80440</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80440#p80440"/>
<title type="html"><![CDATA[Re: [STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80440#p80440"><![CDATA[
Konfiguracja pinu TX i RX:<br />[syntax=c]GPIO_InitStructure.GPIO_Pin = nr pinu; // USART-TX<br />GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;<br />GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;<br />GPIO_Init(GPIOA, &amp;GPIO_InitStructure);<br /><br />GPIO_InitStructure.GPIO_Pin = nr_pinu; // USART-RX<br />GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;<br />GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;<br />GPIO_Init(GPIOA, &amp;GPIO_InitStructure);[/syntax]<br /><br />USART_SendData(); wysyła tylko pojedyncze znaki np.<br />[syntax=c]USART_SendData(USART1, 'A');[/syntax]<br /><br />Jak chcesz wysłać więcej to: <div style="width: 583px; height: 471px; margin: 0 auto; padding-left: 26px; padding-top: 48px; background: url('https://www.atnel.pl/download/atnel_tv.png') no-repeat;"> <strong>iframe</strong> </div><br /><br /><br />Zwiekszyłbym tego delay`a chociaż do 100 ms<br />[syntax=c]for(i = 0; i &lt; 900000ul; i++); //okolo 0.1s przy 72MHz[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=230">ps19</a> — 7 maja 2014, o 17:01</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Forfiter]]></name></author>
<updated>2014-05-07T16:07:16+01:00</updated>
<published>2014-05-07T16:07:16+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80437#p80437</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80437#p80437"/>
<title type="html"><![CDATA[[STM32] Obsługa USART]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7005&amp;p=80437#p80437"><![CDATA[
Witam,<br />Mam problem związany z USARTem w układzie STM32F303. Staram się uruchomić naprawdę prosty program, którego zadaniem jest wysyłanie co pewien czas na terminal jakiejkolwiek wartości (w tym wypadku wartości 11). Chce po prostu sprawdzić czy PC cokolwiek odbiera. No i jest problem gdyż nie pojawia się nic... Sprawdzałem połączenia fizyczne - używam konwertera USB-RS232 (napięcia w zakresie 0-3.3V) - TX-&gt;RX; RX-&gt;TX. To wydaje się być w porządku. Czy zapomniałem o jakiejś dodatkowej linii ?<br />[syntax=c]#include &quot;stm32f30x.h&quot;<br />#include &quot;stm32f30x_flash.h&quot;<br />#include &quot;stm32f30x_rcc.h&quot;<br />#include &quot;stm32f30x_gpio.h&quot;<br />#include &quot;stm32f30x_misc.h&quot;<br />#include &quot;stm32f30x_usart.h&quot;<br /><br /><br /><br />void RCC_Config(void);<br />void GPIO_Config(void);<br />void NVIC_Config(void);<br />void USART_Config(void);<br /><br /><br />int main(void)<br />{<br /><br />RCC_Config();<br />GPIO_Config();<br />NVIC_Config();<br />USART_Config();<br /><br />int dana = 11;<br />long int i;<br /><br />    while(1)<br />    {<br />    USART_SendData(USART1, dana);<br />    for(i=0; i&lt;10000; i++);<br />    }<br />}<br /><br /><br />void RCC_Config(void)<br />{<br />ErrorStatus HSEStartUpStatus;<br />RCC_DeInit();<br />RCC_HSEConfig(RCC_HSE_ON);<br />HSEStartUpStatus = RCC_WaitForHSEStartUp();<br />if(HSEStartUpStatus == SUCCESS)<br />{<br />FLASH_PrefetchBufferCmd(FLASH_ACR_PRFTBE);<br />FLASH_SetLatency(FLASH_Latency_2);<br />RCC_HCLKConfig(RCC_SYSCLK_Div1);<br />RCC_PCLK2Config(RCC_HCLK_Div1);<br />RCC_PCLK1Config(RCC_HCLK_Div2);<br />RCC_PLLConfig(RCC_PLLSource_PREDIV1, RCC_PLLMul_9); // Czestotliwosc PLL<br />RCC_PLLCmd(ENABLE);<br />while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET);<br />RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);<br />while(RCC_GetSYSCLKSource() != 0X08);<br />RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE); // port B<br />RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE); // usart<br />}<br />else{}<br />}<br /><br /><br />void GPIO_Config(void)<br />{<br />GPIO_InitTypeDef GPIO_InitStructure;<br /><br />GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9 | GPIO_Pin_10;<br />GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;<br />GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;<br />GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;<br />GPIO_Init(GPIOA, &amp;GPIO_InitStructure);<br />}<br /><br />void NVIC_Config(void) <br />{<br />#ifdef VECT_TAB_RAM<br />NVIC_SetVectorTable(NVIC_VectTab_RAM, 0x0);<br />#else<br />NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0);<br />#endif<br />}<br /><br />void USART_Config(void) // konfiguracja USART<br />{<br />USART_InitTypeDef USART_InitStructure;<br /><br />USART_InitStructure.USART_BaudRate = 9600;<br />USART_InitStructure.USART_WordLength = USART_WordLength_8b;<br />USART_InitStructure.USART_StopBits = USART_StopBits_1;<br />USART_InitStructure.USART_Parity = USART_Parity_No;<br />USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;<br />USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;<br />USART_Init(USART1, &amp;USART_InitStructure);<br />USART_Cmd(USART1, ENABLE);<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3691">Forfiter</a> — 7 maja 2014, o 16:07</p><hr />
]]></content>
</entry>
</feed>