Close

michal123

Vytvořené odpovědi

Aktuálně je na stránce zobrazeno 30 příspěvků - 1. až 30. (celkem z 35)
  • Autor
    Příspěvky
  • odpověď na: aktualizování firmwaru přes uart #11464
    michal123
    Účastník

    Děkuji, zrovna jsem našel takový hex, ke kterímu mám i ino ale už to nejspíš není třeba. Děkuji teď mi to došlo, první byt by měl znamenat počet datových bytů takže to sedí. Snad se mi to podaří brzy vyzkoušet.

    odpověď na: aktualizování firmwaru přes uart #11460
    michal123
    Účastník

    je to obyčejný o něco delší kus kodu http://leteckaposta.cz/581550497 (je ten jehož číst jsem posílal pred chvílí), ale dělají to i některé jiné i úplně jednoduché,

    odpověď na: aktualizování firmwaru přes uart #11458
    michal123
    Účastník

    Už jsem se k tomu konečně dostal, nedaří se mi to pořádně vyzkoušet. Možná špatně „ořezávám“ například tento kus hex dat:
    :101320000FBECDBFED01089510E0C2E6D0E004C0CD
    :10133000FE010E944B072196C336D107C9F7F894E6
    :02134000FFCFDD
    :10134200000055028000000000001F019B00E80021
    :10135200C600DA0066010000000036029B008A0225
    nebo
    :101150000895EE0FFF1F0590F491E02D099481E0B2
    :0C11600090E0F8940C94B408F894FFCFD1
    :10116C000880000000001B019700E400C200D600BC

    co s tím když řádek začíná takto?

    odpověď na: aktualizování firmwaru přes uart #11380
    michal123
    Účastník

    Už jsem na to možná přišel, zkoušel jsem ovládat nějaký multiplexor (74hc259), což mi také nešlo a zjistil jsem, že musím mít nejaké pony přiodpálené, že se na první pohled zdají vpořádku ale někdy se na nich oběvuje nějaký frekvence (opravdu se stav mění z H na L a opačně) a někdy se úroveň L přesune o něco výš. Takže jsem si dnes půjčil jiné dvě arduina a až snad pozítří budumít víc času tak se na to znovu podívám.
    Děkuji, že jsete napsal, až to zkusím tak dám vědět.

    odpověď na: aktualizování firmwaru přes uart #11262
    michal123
    Účastník

    DObrý večer,
    nejspíš jsem nepochopil tu 1s pauzu.
    Kód funguje pro blink ale už ne pro blink na jiných pinech. Když jsem se na komunikaci kouknul osciloskopem tak jsem zjistil, že arduino když nahrává tak 20,5ms čeká, pošle řídící kód, pak 16ms čeká a pak nahraje stránku a tak to opakuje. (ještě to pak všechno zpětně ověří)
    Ale když se podívám na naše data tak, rídících kódů je tam zdáse víc (nevím co arduino neposílá nebo kde nečeká protože z toho nevyluštím konkrétní hodnoty.(případně pošlu nějaké obrázky), časem snad postavím další (arduino) pro paraelní čtení komunikace.

    odpověď na: aktualizování firmwaru přes uart #11224
    michal123
    Účastník

    Děkuji brzy ozkouším, jak jste na to přišel?

    odpověď na: aktualizování firmwaru přes uart #11217
    michal123
    Účastník

    Ještě jedna drobnost, proč mi to nejde když tak dám hex od blink z arduina?

    odpověď na: aktualizování firmwaru přes uart #11199
    michal123
    Účastník

    Mělo by to do druhého procesoru přes piny A2 A3 sw serial nahrát hex z proměné str.
    vypadá to, že procesor naváže synchronizaci, něco i do druhého naprgramuje ale druhý procesor po naprogramování a restartování nic nedělá.
    (doufám, že to takto stačí)

    odpověď na: aktualizování firmwaru přes uart #11197
    michal123
    Účastník

    Děkuji, mám další problém.
    Nejspíš jsem ze zamotal kolem 336 řádku, zdá se, že proces již proběhne celý ale někde v tatech musí bých chyba protože arduino pořád nebliká.

    odpověď na: aktualizování firmwaru přes uart #11195
    michal123
    Účastník

    Tak jsem pořád zaseknutý na tomhle
    Proč to nefunguje? a jak na to?

    odpověď na: aktualizování firmwaru přes uart #11185
    michal123
    Účastník

    Nějak mi trvalo dlouho než jsem se k tomu vůbec dostal, tady posílám nějak opravený neodzkoušený kód
    Zítra se k němu dostanu zase až pozdě, zatím kód funguje do funkce kolem řádku 311 taže už to snad brzy vyjde.

    odpověď na: aktualizování firmwaru přes uart #11176
    michal123
    Účastník

    Děkuji, už to také vidím ale porád si nedovedu vysvětlit, že to vracelo blbosti i když tam HEX nebylo.
    Az přiijdu odpoledne domů tak to znovy vyzkouším s polem UINT_8 které by k tomu mělo být nejspíš nejlepší.

    odpověď na: aktualizování firmwaru přes uart #11169
    michal123
    Účastník

    Tak jsem opravil pár chyb a dostal jsem se k chybám v zapisdata(), to nefunguje vůbec.
    Když

     for(int i=0;i<100;i++){
          Serial.print(str[0][i]);
        }

    pak to vypíše nesmysly a když do toho napíšu HEX tak to taky není lepší, Takže vůbec netuším čím to je ale snad mi to dojde zítra.

    odpověď na: aktualizování firmwaru přes uart #11167
    michal123
    Účastník

    zatím teoretická verze, k arduinu se dostanu až večer (později) a jsem si téměř jist že to fungovat nebude (dělám dost chyb a máloco ufnguje na první pokus).

    Děkuji moc za vysvětlení, doufám že se mi to brzy podaří odzkoušet.

    odpověď na: aktualizování firmwaru přes uart #11163
    michal123
    Účastník

    Konečně jsem se k tomu odstal, je tedy možné to napsat nějak takhle?
    samozřejmě pro fungování by to tímto způsobem bylo příloš dlouhé a náročné, možní nespolehlivé.

    https://pastebin.com/HxW5D4p1

    Budu rád když mi řeknete co všechno je špatně případně co by šlo lépe.

    odpověď na: aktualizování firmwaru přes uart #11155
    michal123
    Účastník

    Na co je getParams() ? co to říká? jen to testuje, že procesor reaguje? Je to zjískané číslo jedinečné (dá se na to spolehnout?)?

    odpověď na: aktualizování firmwaru přes uart #11154
    michal123
    Účastník

    Děkuji, už je mi to snad jasné, zkusím napsat kód (ale bude mi to chvíli trvat)

    odpověď na: aktualizování firmwaru přes uart #11151
    michal123
    Účastník

    jak zjistím velikost stránky?
    Předpokládám, že tahle velikost strany je velikost celého programu který se z nějakého důvodu nenahrává po stranách (kterých má být 256) ale celý najendou.
    Kde přesně jí vezmu když mám hex soubor vytvořený arduinem? Mohlo by to být třeba tak, že vyzmu hex subor, odstraním z něj dvojtečky (na začátku každého řádku mám dvojtečku), odstraním zalomení řádků a spočítám počet znaků?

    Kde vezmu počáteční adresu? je to vždy 0x3E00?

    Ano poslat data v hex tvaru by vyřešilo tenhle problém ale byl by zbytečně velký tok dat při aplikaci, takže bych se zkusil vydat první cestou programator.write(“P”);
    mohu tedy data uložit do proměné (nejspíš pole charů) a potom je posílat s tím že funkce write pošle bajt po bajtu (tedy for cyklem)?

    Ruční prepisování bytů nemá smysl http://www.branah.com/ascii-converter by mohl případně dělat co chceme ale raději bych dal přednost ušetření datové komunikace snad for cyklem s polem charů.

    Děkuji, zítra odpoledne se sem snad zase dostanu.

    K zapisování jednotlivýchy bytů by

    odpověď na: aktualizování firmwaru přes uart #11148
    michal123
    Účastník

    Vyzkoušel jsem nový kód a už je to lepší. procesor už odpovídá. nedá se říct že by se synchronizoval hned ale to si treba jeste vyladím.

    pozitivní odpoved v sériáku:
    Podpis procesoru: 1E950F
    Synchronizovan s cipem
    Parametry ziskany

    ale co dál, ještě mi nejde do hlavy jak je to s „pocatecniAdresaX“ a „velikostStrankyX“ a mohu nahravana data zapsat takto?
    programator.write(„100000000C945…0001FF“);
    samozrejmě bych to pak nahradil za nějakou nahrávací smyčku.

    Mohl by jste mi případně poslat celý funkční program pro nahrání blink?

    Abych odpověděl, dostal jsem se k osciloskopu keysight DSOX1102G, jen škoda že když jsem se s ním chtěl podávat na data v uartu tak napsal, že bych si ten doplněk musel koupit, což mě štve (má na to knoflík a stejně se to musí zvlášť platit)

    odpověď na: aktualizování firmwaru přes uart #11142
    michal123
    Účastník

    Děkuji, já zkoušel nastavit smyčku s pohyblivou mezerou a pak vypisovat neuspechy se zastaveni když by byl úspěch ale nšjak se to nepovedlo, nic nezabralo, treba to bude tím že už je pozdě. Konečně už mám osciloskop i když s ním pěkně zápasím aby ukazoval co má.

    už mám bjednaní samotné atmegy takže je plánuji pro další testování (až ohle bude fungovat) dát na desku a tím snad eliminovat tyhle různé chyby.

    Pěkný večer

    odpověď na: aktualizování firmwaru přes uart #11140
    michal123
    Účastník

    řádek 49 bude souviset s tím, že nastavujeme úroveň stejnosmšrného signále ale apsoň u mě je před nožičkou resetu sériově kondenzátor takže se tím jen (maximálně) prodlouží interval, tud´ž by bylo možné že naše sířka restartovacího pulzu není dostatečně široká pro dokonalý restart.

    obě arduina mám na stejném napájení (z usb opravdu 0,5A), a k tomu paraelně zdroj 5V (abych mohl usb odpojit)

    pořád to můj problém neřeší, tak doufám, že ráno moudřejší večera. (i když se sem pravdšpodobně dostanu až odpoledne)

    odpověď na: aktualizování firmwaru přes uart #11137
    michal123
    Účastník

    na to jsem přišel už na začátku a ani mě to nenapadlo, ale to mám upravení již dloho, taky jste napsal při resetu (nepodstatné), že pinMode ( 7 , HIGH ) ; na řádku 49

    ale to problém pořád neřeší. napadá mě uz snad jen čpatní doba čekíní ale i to jsem zkoušel

    odpověď na: aktualizování firmwaru přes uart #11134
    michal123
    Účastník

    zapojení jsem kontroloval už mockrát, dokonce měřil jestli není někde špatný kontakt, ale signál de kam jít má.

    odpověď na: aktualizování firmwaru přes uart #11133
    michal123
    Účastník

    Using Port : COM2
    Using Programmer : arduino
    Overriding Baud Rate : 115200
    AVR Part : ATmega328P
    Chip Erase delay : 9000 us
    PAGEL : PD7
    BS2 : PC2
    RESET disposition : dedicated
    RETRY pulse : SCK
    serial program mode : yes
    parallel program mode : yes
    Timeout : 200
    StabDelay : 100
    CmdexeDelay : 25
    SyncLoops : 32
    ByteDelay : 0
    PollIndex : 3
    PollValue : 0x53
    Memory Detail :

    Block Poll Page Polled
    Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
    ———– —- —– —– —- —— —— —- —— —– —– ———
    eeprom 65 20 4 0 no 1024 4 0 3600 3600 0xff 0xff
    flash 65 6 128 0 yes 32768 128 256 4500 4500 0xff 0xff
    lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
    hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
    efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
    lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
    calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
    signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00

    Programmer Type : Arduino
    Description : Arduino
    Hardware Version: 3
    Firmware Version: 4.4
    Vtarget : 0.3 V
    Varef : 0.3 V
    Oscillator : 28.800 kHz
    SCK period : 3.3 us

    ale je divné třea ty rachlost krystalu (je to chyba?)

    odpověď na: aktualizování firmwaru přes uart #11129
    michal123
    Účastník

    prevodník FT231 a procesor ATMEGA328P-AU

    odpověď na: aktualizování firmwaru přes uart #11126
    michal123
    Účastník

    Zkoušel jsem snad všechno a spojení se nepodařilo. Kód se zasekne při čekání na odpověď na řádku 55.
    Reset proběhl úspěšně, kody pro zadost o synchronizaci arduino poslalo taky ale odpověď žádná. Zkoušel jsem i jiré rychlosti, prohodit tx/rx jeslti nemám špatně ale už význě nevím co zkusit.

    Nějaká rada?

    odpověď na: aktualizování firmwaru přes uart #11102
    michal123
    Účastník

    Děkuji, tohle funguje. Obrázek je jasný, už se těším až se večer dostanu k druhému arduinu.

    odpověď na: aktualizování firmwaru přes uart #11100
    michal123
    Účastník

    Děkuji, bohůžel nemohu obrázek otevřít (pravděpodobně starý prohlížeč nebo blokovaná ip)

    odpověď na: aktualizování firmwaru přes uart #11090
    michal123
    Účastník

    Děkuji, bodůžel si musím počkat do středy na další arduino, takže pak napíšu jak mi to jde.

    odpověď na: aktualizování firmwaru přes uart #11044
    michal123
    Účastník

    Děkuji, tohle mi hodně pomohlo, už mi to začíná být jasné. Za nějaký kód budu také moc rád. Přeji pěkný víkend.

Aktuálně je na stránce zobrazeno 30 příspěvků - 1. až 30. (celkem z 35)