logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

XMega128a3u Leon Instruments – stan wysoki na pinie C0 podczas resetu kontrolera

m72 02 Lut 2026 01:34 345 10
REKLAMA
  • #1 21826643
    m72
    Poziom 12  
    Posty: 397
    Ocena: 28
    Piszę program do generowania impulsów precyzyjnych, sam program działa wyśmienicie z małym wyjątkiem, podczas restartu konrolera (XMega128a3u) na płytce leon instruments (bez modyfikacji, oryginał) czyli wciskam przycisk reset, na cały czas gdy jest on wciśnięty pojawia się stan wysoki na pinie C0 !!! Skąd to się bierze? Ja tego pinu uzywam jako wyjście impulsu i samo zresetowanie wywołuje pierwszy niechciany impuls. Główny impuls jest wyzwalany drugim dostępnym na płytce przyciskiem "flip" i to działa wręc zaskakująco precyzyjnie co do mikrosekund po kalibracji ale mniejsza o to.
    2026-02-02...-25-23.mp4 (668.97 kB)Musisz być zalogowany, aby pobrać ten załącznik. Na filmiku widać przebieg z analizatora logicznego. ten impuls to jest właśnie w momencie wciskania przycisku reset i trwa do póki go nie puszczę. Zaznaczam że po wymazaniu procesora do zera tego problemu nie ma czyli coś jest w konfiguracji.
    Zamieszczam kod oraz schemat jakby ktoś nie był pewny że C0 wisi w powietrzu x3dil64sc..at.pdf (77.04 kB)Musisz być zalogowany, aby pobrać ten załącznik.

    Kod: C / C++
    Zaloguj się, aby zobaczyć kod
  • REKLAMA
  • #2 21826672
    kindlar
    Poziom 42  
    Posty: 7820
    Pomógł: 912
    Ocena: 1603
    Sprawdź czy układ wygląda... następująco: VCC (3.3V) ---> Rezystor ---> Dioda LED ---> Pin PC0, może to podciągać pin podczas resetu?
    Sprawdź czy zewnętrzny rezystor pull-down 4.7kΩ na to wyjście PC0 i masę pomoże?
  • REKLAMA
  • #3 21826836
    m72
    Poziom 12  
    Posty: 397
    Ocena: 28
    >>21826672 przeczytaj dokładnie co napisałem, masz schemat
  • Pomocny post
    #4 21827109
    oscil1
    Poziom 23  
    Posty: 609
    Pomógł: 48
    Ocena: 165
    1. Masz bootloader?
    2. Najpierw wyzeruj PC0 as potem dopiero ustawiaj zegar.
    3. Daj podciąganie do GND.
    4. Zobacz co robi startup code/bootloader z tym pinem,
  • #5 21827233
    m72
    Poziom 12  
    Posty: 397
    Ocena: 28
    >>21827109
    1. W sumie nie wiem czy mam bootloader bo programuję przez PDI z Atmel-ICE
    2. Tak zrobię
    3. Tak zrobię
    4. Jak się dogrzebać do stertup code ? Zgrać flasz i podglądnąć ?

    Dodano po 1 [godziny] 23 [minuty]:

    Sprawa w zasadzie rozwiązana, dzięki kolego "oscil1". Pomogło ściągnięcie pinu do GND rezystorem. Reszta działa super. Zamieszczam filmiki jak układ generuje impulsy 1/8000s (125us) 1/250s (4ms) i 1s. Dokładność jest niesamowita na krótkich czasach. Na dłuższych się trochę rozjeżdża, nie wiem czemu ale w sumie może tak zostać.
    _1.mp4 (1.26 MB)Musisz być zalogowany, aby pobrać ten załącznik.
    _8000.mp4 (1.21 MB)Musisz być zalogowany, aby pobrać ten załącznik.
    _250.mp4 (1.11 MB)Musisz być zalogowany, aby pobrać ten załącznik.
  • REKLAMA
  • #6 21828349
    jony
    Specjalista elektronik
    Posty: 7541
    Pomógł: 1821
    Ocena: 881
    A to czasami nie jest tak, że to sam analizator logiczny powoduje ten efekt?
    Bo te chińskie analizatory mają rezystory podciągające wejście do plusa za pomocą rezystora 100k.
  • #7 21828915
    oscil1
    Poziom 23  
    Posty: 609
    Pomógł: 48
    Ocena: 165
    jony napisał:
    Bo te chińskie analizatory mają rezystory podciągające wejście do plusa za pomocą rezystora 100k.
    To by one nie miały sensu.
  • #8 21829251
    jony
    Specjalista elektronik
    Posty: 7541
    Pomógł: 1821
    Ocena: 881
    oscil1 napisał:
    To by one nie miały sensu.

    Ale tak jest.
    W moim chińskim analizatorze każde wejście ma obwód RC - (rezystor 330Ω).
    Potem sygnał idzie na rezystor podciągający (100kΩ) do +3.3V i dalej do 74LVC245A.
    Zobacz sobie sam

    Zbliżenie płytki PCB z układem scalonym i rezystorami SMD; zaznaczona ścieżka niebieską linią i „+3.3V”.
  • #9 21829438
    oscil1
    Poziom 23  
    Posty: 609
    Pomógł: 48
    Ocena: 165
    jony napisał:
    Zobacz sobie sam

    Sensu to to nie ma. TZN zawsze widzisz stan widoczny na Logic-u? To jakiś absurd.
  • REKLAMA
  • #10 21830006
    jony
    Specjalista elektronik
    Posty: 7541
    Pomógł: 1821
    Ocena: 881
    oscil1 napisał:
    TZN zawsze widzisz stan widoczny na Logic-u?

    Tak, niepodłączone wejście widziane jest jako stan wysoki.

    oscil1 napisał:
    To jakiś absurd.

    Czemu? To jest bardzo słabe podciąganie i nie przeszkadza w czasie normalnego użytkowania analizatora.
  • #11 21830357
    oscil1
    Poziom 23  
    Posty: 609
    Pomógł: 48
    Ocena: 165
    jony napisał:
    Czemu? To jest bardzo słabe podciąganie i nie przeszkadza w czasie normalnego użytkowania analizatora.

    Bo chcesz wiedziec co tam jest naprawdę.

Podsumowanie tematu

✨ Podczas resetu mikrokontrolera XMega128a3u na oryginalnej płytce Leon Instruments pojawia się niechciany stan wysoki na pinie PC0, który jest używany jako wyjście impulsu. Problem ten nie występuje po wymazaniu pamięci procesora, co wskazuje na wpływ konfiguracji. Przyczyną może być brak odpowiedniego podciągnięcia pinu do masy lub wpływ zewnętrznych elementów, takich jak rezystory pull-down. Rozwiązaniem okazało się zastosowanie rezystora podciągającego pin PC0 do GND, co wyeliminowało niepożądany impuls podczas resetu. Dodatkowo zwrócono uwagę, że chińskie analizatory logiczne mogą generować fałszywe stany wysokie na niepodłączonych wejściach z powodu wbudowanych rezystorów podciągających do +3.3V, co może mylnie sugerować problem sprzętowy. Wskazano także na konieczność sprawdzenia działania bootloadera i kodu startowego, które mogą wpływać na stan pinu podczas inicjalizacji mikrokontrolera.
Wygenerowane przez model językowy.
REKLAMA