You are heredev_wr_rd_register

dev_wr_rd_register


    Funkcja umożliwia wykonanie dwóch podstawowych operacji na rejestrach i obszarach pamięci procesora LPC2148 urządzenia In Circuit Spy. Operacje te to pojedynczy zapis i odczyt rejestru. Operacje te mogą być 8, 16 lub 32 bitowe. Dzięki tej funkcji możliwe jest m.in. skonfigurowanie procesora urządzenia do pracy w trybie innym niż przewidzianym w rozkazach dostarczonych w pakiecie oprogramowania.

    Ogólne informacje dotyczące rozkazu

  • Wywołanie rozkazu wymaga połączenia z serwerem i otwartego kanału komunikacyjnego z urządzeniem

  • Zapis danych pod niewłaściwy adres najczęściej powoduje krytyczny wyjątek co "zawiesza" procesor. Należy więc zachować ostrożność przy używaniu tego rozkazu

  • W przypadku gdy rozkaz dev_bootloader_init_routine zwraca dla swojego rozkazu get wartość '1' wówczas każdorazowo przy uruchamianiu bootloadera wykonywany jest kod programu:
        (*(volatile unsigned long *) (0x40007FE0)) = 0x76543210;
        (*(volatile unsigned long *) (0x40007FE4)) = 0x89ABCDEF;
        (*(volatile unsigned char *) (0x40007FE8)) = 0x10;
        (*(volatile unsigned char *) (0x40007FE9)) = 0x32;
        (*(volatile unsigned char *) (0x40007FEA)) = 0x54;
        (*(volatile unsigned char *) (0x40007FEB)) = 0x76;
        (*(volatile unsigned char *) (0x40007FEC)) = 0x98;
        (*(volatile unsigned char *) (0x40007FED)) = 0xBA;
        (*(volatile unsigned char *) (0x40007FEE)) = 0xDC;
        (*(volatile unsigned char *) (0x40007FEF)) = 0xFE;
    Dzięki temu użytkownik samodzielnie może sprawdzić rozkaz dev_wr_rd_register poprzez wykonanie odczytów rd1, rd2 i rd4 spod podanych adresów

  Rozkazy  
  • --wr1 Zapis wartości 8-bitowej do rejestru procesora
  • --wr2 Zapis wartości 16-bitowej do rejestru procesora
  • --wr4 Zapis wartości 32-bitowej do rejestru procesora
  • --rd1 Odczyt wartości 8-bitowej z rejestru procesora
  • --rd2 Odczyt wartości 16-bitowej z rejestru procesora
  • --rd4 Odczyt wartości 32-bitowej z rejestru procesora

Opis rozkazów

  --wr1, --wr2, --wr4  

Składnia

ics_client.exe --dev_wr_rd_register IP TCP --wrX address data
  • IP Adres IP serwera
  • TCP Numer portu TCP serwera
  • --wrX Słowo klucz. Może przyjąć wartość --wr1, --wr2 lub --wr4
  • address Adres w przestrzeni procesora pod który nastąpi zapis danej. Może być wyrażony w postaci dziesiętnej lub heksadecymalnej
  • data Wartość do zapisana do rejestru. Może być wyrażona w postaci dziesiętnej lub heksadecymalnej

Poprawna odpowiedź

O. data address
I. comment
  • "O." Identyfikator poprawnego wykonania rozkazu
  • data Wartość zapisana pod adres określony parametrem
  • address Adres pod który zapisano wartość określoną parametrem
  • "I." Identyfikator komentarza
  • comment Komentarz dla użytkownika

Wystąpił błąd

E. code
I. comment
  • "E." Identyfikator błędnego
  • code Kod błędu
  • "I." Identyfikator komentarza
  • comment Komentarz dla użytkownika

Uwagi

  • Patrz uwagi ogólne
  --rd1, --rd2, --rd4  

Składnia

ics_client.exe --dev_wr_rd_register IP TCP --rdX address
  • IP Adres IP serwera
  • TCP Numer portu TCP serwera
  • --rdX Słowo klucz. Może przyjąć wartość --rd1, --rd2 lub --rd4
  • address Adres w przestrzeni procesora spod którego nastąpi odczyt danej. Może być wyrażony w postaci dziesiętnej lub heksadecymalnej

Poprawna odpowiedź

O. data address
I. comment
  • "O." Identyfikator poprawnego wykonania rozkazu
  • data Wartość odczytana spod adresu określonego parametrem
  • address Adres spod którego odczytano wartość określoną parametrem
  • "I." Identyfikator komentarza
  • comment Komentarz dla użytkownika

Wystąpił błąd

E. code
I. comment
  • "E." Identyfikator błędnego
  • code Kod błędu
  • "I." Identyfikator komentarza
  • comment Komentarz dla użytkownika

Uwagi

  • Patrz uwagi ogólne

Szukaj