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

AVR ATMega: można używać jednoczesnie ISP i SPI?(?)

al555 06 Lut 2005 12:16 2424 2
REKLAMA
  • #1 1202901
    al555
    Poziom 20  
    Posty: 485
    Pomógł: 32
    Ocena: 8
    Chce uruchomić w ATMega16 programowanym przez ISP obsługę pamięci szeregowej przez SPI. Jak wiadomo oba interfejsy uzywają wspólne wyprowadzenia. Słyszałem ( lub gdzieś czytałem ) że odblokowanie bitu SPE (SPI Enable) w rejestrze SPCR nie pozwoli programować układu w systemie przez ISP.
    Czy to prawda ??

    Pomijam problemy z zewnętrznymi układami które podłączone do tej samej magistrali mogły by zakłócać proces programowania.

    Czy ktoś używał obu interfejsów naraz. W nocie katalogowej nie udało mi się znaleźć żadnej informacji o ograniczeniach w tym temacie, ale może słabo szukałem ?

    Raczej trudno potem odblokować w programatorze równoległym wlutowany układ w obudowie TQFP.

    Będę wdzieczny za informacje ...

    Pozdrawiam
    (?) - ozdobnik? [h]
  • REKLAMA
  • Pomocny post
    #2 1202957
    McRancor
    VIP Zasłużony dla elektroda
    Posty: 5326
    Pomógł: 479
    Ocena: 124
    Co do bitu, to pomyliłeś fusebity z rejestrami Megi16

    Jest taki FuseBit (niedostępny z programu procesora) który można skasować (wpisać jedynkę) i wtedy faktycznie programowanie ISP przez SPI jest niemożliwe, ale można go programować tylko programatorem.

    Bit który opisujesz (w rejestrze SPCR) nazywa się podobnie, ale jedyne co robi to włącza i wyłącza sprzętowy SPI procka, nie ma to żadnego wpływu na programowanie ISP

    Konflikt o którym piszesz faktycznie może wystąpić, ale jest na to prosty sposób! Sciągasz wejście SS ( slave select) pamięci zewnętrznym rezystorkiem do masy, wtedy pamięć ignoruje sygnały na lini SPI, nie wiem jak Mega16 ma ustawione inne piny podczas programowania, jeżeli są wewnętrznie ściągnięte do masy, to nie ma problemu i można wogóle nic nie robić, jeżeli są trójstanowe, trzeba je troche ściągnąć, a jeżeli są w stanie wysokim, no to niestety trzeba robić inwerter, albo podłaczać zworką linie SCK pamięci.

    Używam obu interfejsów na raz i nie ma z tym problemu, tylko że używam CC1000 i itak musze go odłączać bo zwieram nim linie Miso i Mosi :)
  • #3 1223692
    Qpel
    Poziom 12  
    Posty: 44
    Pomógł: 1
    jeśli chodzi o stronę elektryczną zerknij na dokumentacje do czegoś co nazywa się Mmega02,

    pozdrawiam.
    P.S. to nie jest reklama ...
REKLAMA