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

przypadkowy skok to sekcji bootloader - i po programie...

prokopcio 12 Kwi 2010 12:16 1452 7
REKLAMA
  • #1 7951369
    prokopcio
    Poziom 29  
    Witam.
    Opracowałem sobie "szyfrowany" i zabezpieczony przed zapisem/kasowaniem bootloader w Atmega'ch (8,16,32) przez usart i mam taki problem, że przy eksperymentach z programem głównym czasem gdzieś popełnię błąd i np. zamiast powrócić z jakiejś procedury bo "zapomniałem" zdjąć coś ze stosu program wskoszy np w sekcję bootloadera w miejsce kasowania strony pamięci programu - skutki sa znane :(.... moje pytanie brzmi - w jaki sposób zabezpieczyć się aby program główny nie mógł wskoczyć do sekcji bootloadera w "przypadkowe" miejsce. Powinien mieć taką możliwość tylko gdy dostanie taki rozkaz...
  • REKLAMA
  • REKLAMA
  • #3 7951403
    prokopcio
    Poziom 29  
    Freddie Chopin napisał:
    Nie pisać programów w assemblerze.

    4\/3!!


    do tego mnie kolega nie namówi :)
  • #4 7951426
    Konto nie istnieje
    Poziom 1  
  • #5 7951473
    mirekk36
    Poziom 42  
    prokopcio napisał:
    Freddie Chopin napisał:
    Nie pisać programów w assemblerze.

    4\/3!!


    do tego mnie kolega nie namówi :)


    Kolega powinien swój przypadek opowiedzieć w tych tematach-dyskusjach gdzie się ludzie spierają dlaczego lepiej pisać programy w C niż w asemblerze ;) to jest taki właśnie akurat super argument przemawiający za językiem C. Będę musiał sobie dodać ten temat do ulubionych i pokazywać później co się może dziać gdy człowiek się męczy, męczy i męczy i mozolnie pisze swoje programy w asm.
  • REKLAMA
  • #6 7951521
    prokopcio
    Poziom 29  
    Trzeba dodać - jeśli człowiek źle pisze w asm.... jeśli pisze się dobrze to jest dobrze.... a jeśli źle się pisze to i C nie pomoże.
  • REKLAMA
  • #7 7951524
    Freddie Chopin
    Specjalista - Mikrokontrolery
    Wiesz jak wyglądałby źle napisany program w C z taką wadą jak ten Twój w assemblerze? O tak:

    int main(void)
    {
        asm volatile ("...


    [;

    4\/3!!
  • #8 7951531
    prokopcio
    Poziom 29  
    Dzięki za pomoc - przesiadam się na C i na lepsze procesory.
    temat zamykam.
REKLAMA