Problém s Atmega2560

Zdravím,
Mám na Vás otázku. je možné u mega2560 nějak uzamknout veškeré vstupy/výstupy? Pořídil jsem si jako na hraní a různý pokusy klon Arduino Mega2560 s výše zmiňovaným čipem. Nechci ho používat přes origo arduino ide, ale programovat ho klasicky pomocí usbasp přes isp. Pomocí usbasp se do něj připojím a načtu i zapíšu flash, eeprom, bity, prostě po téhle stránce ok. Ale z výstupu se mi už nějak nepodařilo nic vymámit, ani blbý blikání ledky. Je možný, že někde v registrech se dají funkce výstupů uzamknout (neberu DDRx a PORTx), nebo je možnost všech odpálených portů?

Iba a len DDRx, PORTx
O odpálení portov dosť pochybujem.
Používal som onehdá ATmega1280 a tam fungovalo všetko na čo som porteboval šiahnuť. Akurát som pre spoľahlivú funkčnosť musel dorobiť externý wdg, jeden kus mcu sa za nevysvetliteľných okolností zasekával. Ale nechcem tu rozbiehať tému že prečo.
Už sú to roky a ja sa snažím vytesniť :slight_smile:

Zkontroluj si napájení na pinu AVCC - u těch čínských klonů je možné prakticky cokoliv. Je možné, že nízké napětí na tomto pinu při zapnutém BOD drží IO v resetu. Naprogramovat tím pádem jde, ale program se nespustí. Proto se pak může zdát, že piny vypadají jako mrtvé.

Ja by som zmeral pre sitotu napatie na reset pine. Ale odhadujem to na problem s programom.
A dufam ze po naprogramovani si odpojil programator od uP. Ked si skusal blikanie ledkou.

No a ešte typický problém je, že môže byť nastavený BOD na reset procesora v závislosti od Un na príliš vysoké napätie, ktoré na doske nie je, alebo sa spustením programu tak zvýši záťaž, že sa mcu hned resetne. Na začiatok ho odporúčam vypnúť. Inak aj s tým Vacc vie byť slušný vopruz aj keď AD nepoužívaš :slight_smile:

AVCC musí být připojené na VCC vždy, protože :
a) bere se z něj napájení pro port F
b) bere se z něj napětí pro BOD

Pokud nepoužíváš AD převodník, stačí jej připojit přímo na VCC.
Pokud AD převodník používáš, je potřeba použít low-pass filtr => LC článek složený z 10uH cívky a 100n kondenzátoru. Tolik informace z datasheetu…

Děkuji za rady a vyzkoušel jsem všechny. Nakonec to nebylo BOD. Byl aktivován BOOTRST a při zapsaní flash nechtěl naběhnout program. Nikdy jsem zatím s boot sektorem nepracoval, tak jsem to nějak přehlédl. Jen mi je divný, že Arduino Uno mi fungovalo hned na poprvé, bez změny fuse. Nicméně děkuji za ochotu pomáhat a cením si toho.

Skvelé, že si sa posunul ďalej.
Poznám tie stavy :slight_smile:

Samotné zapnutí BOOTRST nezabrání tomu aby program běžel.

Ak mal v hornej oblasti nieco, napriklad slucku ktorú tam mohol naprogramovať tvorca dosky ktorý využíval nejaký proprietalny bootloader, potom sice program bude bezat, ale úplne iný ako sa očakáva :slight_smile:

Gratuluju. Důležité je, že jsi se nenechal odradit. Občas člověk přehlédne nějakou ptákovinu a chvíli to trvá, než na to přijde.