abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 14:44 | IT novinky

    Apple bez varování odstranil ze svého obchodu sociální síť VKontaktě i další aplikace skupiny VK, jako je VK Music nebo VK Video [Novinky.cz].

    Ladislav Hagara | Komentářů: 3
    dnes 14:22 | IT novinky

    V dubnu loňského roku představený poštovní klient Notion Mail bude 22. září ukončen.

    Ladislav Hagara | Komentářů: 2
    dnes 04:33 | Komunita

    Konference OpenAlt 2026 hledá přednášející. Proběhne o víkendu 7. a 8. listopadu na půdě Fakulty informačních technologií VUT v Brně. Témata konference jsou: Otevřený a svobodný software, IoT a Hnutí tvůrců, Vzdělávání, Bezpečnost a soukromí, Otevřená společnost, komunity a data, OpenMobility a další.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | IT novinky

    Společnosti OpenAI a Broadcom oznámily čip optimalizovaný pro AI pojmenovaný Jalapeño.

    Ladislav Hagara | Komentářů: 0
    včera 20:22 | Nová verze

    Deno (Wikipedie), běhové prostředí (runtime) pro JavaScript, TypeScript a WebAssembly, bylo vydáno v nové verzi 2.9. Hlavní novinkou je deno desktop pro převod Deno projektu na desktopovou aplikaci. Jedná se o alternativu k frameworkům Electron nebo Tauri.

    Ladislav Hagara | Komentářů: 2
    včera 15:44 | IT novinky

    Od zítra jsou Datové schránky oficiálně na nové adrese datovka.gov.cz. Adresa mojedatovaschranka.cz zůstává funkční do 27. srpna 2026, následně budou uživatelé automaticky přesměrováni na datovka.gov.cz.

    Ladislav Hagara | Komentářů: 3
    včera 13:44 | Nová verze

    Dolphin (Wikipedie), tj. open source multiplatformní emulátor herních konzolí GameCube a Wii od Nintenda, byl vydán ve verzi 2606. S podporou Game Boy Playeru.

    Ladislav Hagara | Komentářů: 0
    včera 11:11 | Zajímavý software

    Vasudeva Kamath představil utilitu debvulns, alternativu k nativní utilitě debsecan, pro výpis zranitelností v Debianu. Navíc má především možnost výstupu ve strukturovaných formátech JSON a CSV. V plánu je exportér pro Prometheus.

    Ladislav Hagara | Komentářů: 0
    24.6. 21:44 | IT novinky

    Oficiální český státní eshop s elektronickými dálničními známkami nově najdete na edalnice.gov.cz. Doména gov.cz jasně potvrzuje, že jste na oficiálním státním webu [𝕏].

    Ladislav Hagara | Komentářů: 27
    24.6. 14:22 | Nová verze

    Byla vydána nová verze 4.8.0 interaktivního shellu fish (friendly interactive shell, Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 7
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (17%)
     (31%)
     (3%)
     (6%)
     (2%)
     (15%)
     (26%)
    Celkem 1994 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: XMEGA bootloader bez preruseni behu hlavni aplikace

    27.3.2020 21:44 RadekXxX | skóre: 10
    XMEGA bootloader bez preruseni behu hlavni aplikace
    Přečteno: 553×
    Ahoj, snazim se napsat bootloader, tak aby 1/2 aplikacni pameti obsahovala hlavni aplikaci a 2/2 aplikacni pameti byla jako "buffer" pro nove nahravanou aplikace pres bootloader, jakmile se nova aplikace nahraje, tak se pouze presune 2/2 do 1/2 a provevde skok na zacatek pameti, takze uzivatel ani nepozna, ze se provedla aktualizace, resil jsem to tak, ze jsem v hlavni aplikaci zapisoval data do flash, na konci skocil na bootloader, ktery jenom preklopil 2/2 do te 1/2, bohuzel jsem zjistil, ze v pameti zustane jenom ta boot sekce, jinak je vse smazane, pak jsem zjistil, ze SPM prikazy lze volat pouze z BOOT sekce. Take me napadlo to udelat takto:

    - Vytvorit funkce FlashRead, FlashWrite, FlashErase, FlashDone(to presune 2/2 do 1/2 flash a skoci na adresu 0) a funkcim dat atribut boot sekce - Potom bych mel tyto funkce normalne funkcni a pristupne z aplikacni casti, takze bootloader bych resil primo z aplikace - Kdyz bych provadel update FW, tak bych HEX orezal po BOOT sekci a tuto cast bych posilal jako update

    ale tet nevim, kdyz to jednoduse orezu, tak pravdepodobe jina kompilace programu, novejsi prekladac, optimalizace,.. tyto funkce bude hledat v pameti na jine adrese.

    Je mozne to resit tak, ze pro kazdou funkci vyhradim atributem zvlastni sekci v boot prostoru a pak bude jasne, ze na te adrese je vzdy ta spravna funkce ? Nebo nad tim premyslim uplne nesmylsne a resi se to jinak ?

    Dekuji za rady

    Odpovědi

    Jendа avatar 27.3.2020 21:55 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: XMEGA bootloader bez preruseni behu hlavni aplikace
    Ano, takhle přesně to doporučovali v nějaké appnote.

    Bootloader a hlavní appku kompiluju jako úplně nezávislé věci. Funkce v boot sekci můžeš buď linker skriptem přilepit na předem určenou adresu (což je trochu nepružné kdyby třeba nová verze té funkce byla větší a bylo by to potřeba posunout), nebo si na známou adresu dát jejich adresy a volat je přes ně. Určitě je nechceš volat z hlavní appky jménem a doufat že se to nějak pořeší při linkování, to se ti časem rozbije. Normálně si vymysli adresu, přetypuj ji na funkci a zavolej ji.

    (disclaimer: xmega jsem nikdy nepoužíval, ale s atmegama jsem se vyblbnul dost)
    27.3.2020 22:07 RadekXxX | skóre: 10
    Rozbalit Rozbalit vše Re: XMEGA bootloader bez preruseni behu hlavni aplikace
    No ja prave bootloader budu mit primo v hlavni aplikaci, takze ho nepotrebuji sestavovat v jinem projektu, jedna se me jenom o ty 4 SPM funkce. Takze pokud kazde funkci nastavim atributem jinou section v boot oblasti, tak je muzu z aplikace pod jejim jmenem volat libovolne i kdyz bude jina verze kompilatoru, linker, optimalizace, ...

    Chapu to spravne ?
    28.3.2020 10:32 RadekXxX | skóre: 10
    Rozbalit Rozbalit vše Re: XMEGA bootloader bez preruseni behu hlavni aplikace
    Takze funkcni reseni vypada takto:
    void FlashErasePage (dword addr) __attribute__ ((section (".BootErasePage")));
    void FlashWritePage (dword addr, byte * buf) __attribute__ ((section (".BootWritePage")));
    ...
    
    Kazda funkce je na jine adrese v oblasti bootloaderu.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.