eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronika › Płytka NUCLEO-L031K6 - zasilanie, USB i UART
Ilość wypowiedzi w tym wątku: 5

  • 1. Data: 2018-09-07 08:39:44
    Temat: Płytka NUCLEO-L031K6 - zasilanie, USB i UART
    Od: Atlantis <m...@w...pl>

    Postanowiłem ostatnio w końcu zapoznać się z najpopularniejszą od
    jakiegoś czasu rodziną mikrokontrolerów. Kupiłem kilka płytek Discovery
    i Nucleo. Eksperymenty postanowiłem zacząć od prostej płytki w formacie
    Arduino Nano, z uwagi na łatwość wpięcia tego w płytkę prototypową.

    Wziąłem kod, który akurat miałem na warsztacie (biblioteka DCF77
    przeportowana na PIC32). Bez większego problemu udało mi się go
    skompilować i uruchomić na nowej platformie. Wyglądało na to, że
    wszystko działa - program prawidłowo odczytywał w przerwaniu impulsy z
    wyjścia modułu DCF77, interpretował je i synchronizował wewnętrzny RTC,
    wysyłając na bieżąco informacje przez UART podpięty do funkcji printf().

    Niestety dość szybko zauważyłem pewien problem, którego jak na razie nie
    byłem w stanie zdiagnozować. Podejrzewam, że może to być związane z
    jakimiś różnicami hardware'owymi.
    Mianowicie w przypadku PIC32 kod działa stabilnie, nie ważne jak długo
    zostawiłem go podłączonego. Gdy tylko pojawiały się warunki
    propagacyjne, urządzenie odczytywało prawidłowe ramki i synchronizowało
    czas.

    Natomiast jeśli zostawię Nucleo włączone na dłużej, po jakimś czasie
    widzę, że synchronizacje ustały (a przynajmniej nie widać nowych
    komunikatów na porcie szeregowym, przy czym funkcja migania diodą w
    pętli głównej ciągle działa). Program do obsługi portu szeregowego nie
    melduje zerwania połączenia. Po prostu panuje cisza.
    Na PIC32 miałem standardowy układ FTDI, w dodatku z galwaniczną
    izolacją, tak więc odpinanie i podpinanie USB nie miało żadnego wpływu
    na działanie układu, a zasilanie pochodziło z zupełnie innego źródła.

    Tutaj jest inaczej. Jeden port USB pełni zarówno funkcję
    programatora/debuggera, przejściówki USB-UART, jak również źródła
    zasilania. Dodatkowo zauważyłem, że zastosowano tam jakiś dziwny model
    włączania zasilania. Płytka wymaga najwyraźniej podłączenia do hosta,
    żeby w ogóle napięcie zostało podane do mikrokontrolera - nie da się jej
    zasilić z ładowarki albo power banku. W grę wchodzi tylko komputer.

    Ktoś wie może o co chodzi? Jest tam więcej takich "pułapek"? Czy
    zaobserwowane przeze mnie objawy można wyjaśnić jakimś "usypianiem"
    przejściówki USB-UART wbudowanej w ten układ?


  • 2. Data: 2018-09-07 10:24:34
    Temat: Re: Płytka NUCLEO-L031K6 - zasilanie, USB i UART
    Od: Marek <f...@f...com>

    On Fri, 7 Sep 2018 08:39:44 +0200, Atlantis <m...@w...pl>
    wrote:
    > Po prostu panuje cisza.

    Czy mimo braku odbioru przez uart na pinie RX mcu jest aktywność z
    układu wysyłającego?

    --
    Marek


  • 3. Data: 2018-09-07 10:34:49
    Temat: Re: Płytka NUCLEO-L031K6 - zasilanie, USB i UART
    Od: "Grzegorz Niemirowski" <g...@p...onet.pl>

    Atlantis <m...@w...pl> napisał(a):
    [CIACH]
    > Ktoś wie może o co chodzi? Jest tam więcej takich "pułapek"? Czy
    > zaobserwowane przeze mnie objawy można wyjaśnić jakimś "usypianiem"
    > przejściówki USB-UART wbudowanej w ten układ?

    Podstawowe pytanie, to czy nadal jest transmisja na UARTcie? Trzeba
    zweryfikować działanie mikrokontrolera przed szukaniem problemu w
    przejściówce, którą jest tak naprawdę programtor ST-LINK. Sprawdź
    oscyloskopem lub inną przejściówką czy mikrokontroler na pewno nadaje. Jeśli
    nadaje, to wtedy szukamy problemu z ST-LINKiem. Może trzeba mu zaktualizować
    firmware albo sterownik?

    --
    Grzegorz Niemirowski
    https://www.grzegorz.net/


  • 4. Data: 2018-09-08 10:18:48
    Temat: Re: Płytka NUCLEO-L031K6 - zasilanie, USB i UART
    Od: Sebastian Biały <h...@p...onet.pl>

    On 9/7/2018 8:39 AM, Atlantis wrote:
    > Natomiast jeśli zostawię Nucleo włączone na dłużej, po jakimś czasie
    > widzę, że synchronizacje ustały (a przynajmniej nie widać nowych
    > komunikatów na porcie szeregowym, przy czym funkcja migania diodą w
    > pętli głównej ciągle działa). Program do obsługi portu szeregowego nie
    > melduje zerwania połączenia. Po prostu panuje cisza.

    Migaj ledem przy wysyłaniu znaków. Dowiesz się czy to wina cpu czy
    usb<->uart.


  • 5. Data: 2018-09-11 10:16:55
    Temat: Re: Płytka NUCLEO-L031K6 - zasilanie, USB i UART
    Od: Atlantis <m...@w...pl>

    Dziwna sprawa - okazuje się, że problem nie występuje po zastosowaniu
    zewnętrznego konwertera UART-USB (FTDI z izolacją galwaniczną), co
    oczywiście wiąże się z przemapowaniem UART-a na inne piny.
    Wtedy wszystko zaczyna działać. To znaczy prawie wszystko - bo mam
    jakiegoś dziwnego buga związanego z wyświetlaniem czasu na LCD, ale to
    pewnie kwestia jakiejś drobnej pomyłki w kodzie.

strony : [ 1 ]


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: