Write protection jest ustawiany przez tzw. Option Bytes - najłatwiej chyba będzie go (jednorazowo) usunąć poprzez bootloader i programi Flash Loader Demonstrator albo przez JTAGa i OpenOCD - są specjalne komendy do tego celu. W nocie od ST - PM0042 Reading/programming the STM32F10xxx embedded Flash memory - jest opis sposobów odblokowania, u mnie strona...
https://obrazki.elektroda.pl/2553827400_... Cześć, pod tą niecodzienną nazwą tematu prezentuję projekt małego, automatycznego odtwarzacza muzyki do umilania posiedzeń na toalecie. Oczywiście to jedno zastosowanie, w innych sytuacjach pewnie też może się przydać ;) Głównym założeniem była niewielka złożoność, banalny interfejs, bezobsługowość...
Sprawdzę jeszcze reset_config none; i dam znać czy pomogło. Jak podasz prawidłową konfigurację resetu - a w Twoim przypadku to właśnie "none" - to wszystko zadziała normalnie, bez takich cudów. 4\/3!!
rozwiazanie jest proste, ale niezbyt dobrze udokumentowane chodzi o to, ze openocd po przetworzeniu wszystkich plikow ktore mial podane w wywolaniu automatycznie przechodzi do ich wykonania. dopiero wtedy mozna wydawac mu komendy takie jak przez telnet. aby go zmusic do inicjalizacji wczesniej, nalezy wywolac komende init mozna to zrobic tak: openocd...
Witam. Od paru dni męczę się z tandemem Eclipse + Sourcery G++ Lite + OpenOCD pod Ubuntu. Te dwa pierwsze udało mi się jakoś skonfigurować ale z OpenOCD mam problem. Wydając polecenie: sudo openocd -f interface/parport.cfg -f target/lpc2478.cfg -c "init" otrzymuję: Open On-Chip Debugger 0.5.0 (2011-08-26-10:27) Licensed under GNU GPL v2 For bug reports,...
Zasada podstawowa - N I G D Y nie rozdzielaj "reset" od "halt" bez naprawdę dobrego powodu. Ta konfiguracja była kolejną którą sprawdzałem, na początku właśnie miałem monitor reset halt Nie wiem też skąd wyczarowałeś taką wersję OpenOCD, przecież są nowsze, więc czemu ich nie użyć? wersja jest ta bo na pobranej i skompilowanej 0.6.1 otrzymuję Open...
Witam Uzywam funkcji jak ponizej do zapisu w eepromie, zapisuje 20 kolejnych bajtów i po 9 bajcie procek sie zawiesza (nie wiem gdzie laduje bo nie ma jak sprawdzić,ale program dalej nie idzie), jak mam go odpalonego z debuggera to działa ok,problem pojawia się jak odepne zasilanie i podlacze ponownie to zatrzymuje sie po zapisie 9 bajtu, o co mu chodzi...
OpenOCD chodzi ładnie w tle. Zrobiłem według tutka. Jak konfiguruję według tutorialu: Init: [code] monitor reset monitor soft_reset_halt monitor mww 0xE01FC040 0x0002 load [\code] i zaznaczenie main i resume to wypluwa takie coś: [code] target remote localhost:3333 putpkt: write failed: Przerwany potok. monitor reset "monitor" command not supported...
Błędy te same więc nie można powiedzieć, że działają lepiej. Jeżeli chodzi o zegar to zmniejszenie dopiero do częstotliwości 120kHz pozwala na zaprogramowanie w trybie "fast memory access" - wtedy mija się z to z celem. Z tym, że pojawiają się błędy typu: Error: DCC write failed, expected end address 0x0030060c got 0x300014.
Skonfigurowalem Eclips tak aby wspolpracowal z openocd oraz gdb. Nie udalo mi sie jednak jak do tej pory zaprogramowac lpc2368. Poczytalem troche manula do openocd aby zrozumiec opcje konfiguracyjne ale mimo moich licznych prob dalej nie udalo mi sie wpisac programu do Flasha. Skompilowalem program demonstracyjny RTOSDemo dla lpc2368 i w efekcie dostalem...
Próbuję za pomocą OpenOCD zaprogramować zewnętrzny flash SST39VF1601. Po trudach i bojach z kompilacją najnowszego snapshota OpenOCD (problem drivera niekompatybilnego z ARMv7M w 'oficjalnych' wersjach) w zasadzie wszystko już działa, z tym że pamięci zaprogramować nie mogę. Próbuję na dwa sposoby : flash protect 0 0 1 off flash erase_sector 0 0 1 load_image...
Dzięki, nie wiedziałem o tych zasobach :D Postawiłem wersję 0.5.0 i żeby nie było za łatwo to znowu problem :P OpenOCD łączy się z prockiem ładuje program i niby wszystko ok ale problem jest przy debugowaniu. Odpalam OpenOCD : Open On-Chip Debugger 0.5.0-dev (2010-08-29-17:07) Licensed under GNU GPL v2 For bug reports, read http://openocd.berlios.de/doc/doxyge...
Witam, zrobiłem wszystko wg Twojego opisu(poza tym że zamiast .jed miałem .bit ) i z putty dostaje cos takiego po próbie wgrania: Open On-Chip Debugger > scan_chain TapName Enabled IdCode Expected IrLen IrCap IrMask -- ------------------- -------- ---------- ---------- ----- ----- ------ 0 xc2s200.tap Y 0xd5044093 0x01414093 6 0x01 0x03 1 xcf02.tap...
Od jakiegoś czasu próbuje wgrać program przez JTAG'a używając OpenOCD i GDB. Niestety program albo nie trafia gdzie powinien albo w ogóle się nie wgrywa. Przy zaprogramowaniu uC przez FlashMagic debugowanie kodu działa bezproblemowo. GDB jest z wersji CodeSourcery 2010q1 (najnowsza w ogóle nie działa). Dane z OpenOCD Open On-Chip Debugger 0.4.0 (2010-12-28-14:49)...
Dziwna sprawa... Zrobiłem jak kazałeś - niestety nie pomogło na problem z resetem. W między czasie spod eclipse odpaliłem gdb (wg opisu z Twojej strony, z tą różnicą, że napisałem: monitor halt monitor mww 0xE01FC040 0x0002 load ) i teraz to w ogóle się nie mogę połapać... Zasadniczo pokazało jakiś błąd (a później zawiesił się eclipse). Później odpaliłem...
Nie do końca kumam po co zmieniasz w przerwaniu VPBDIV (APBDIV) i wylaczasz samo to przerwanie - w ARM7 w trybie IRQ dalsze przerwania IRQ sa zablokowane, wiec nie ma potrzeby takich operacji. odpowiedz: As a restriction, software should only change the interrupt polarity when the corresponding interrupt is disabled. Problem: A write to either the...
Witam Mam problem z debugowaniem i programowaniem mikrokontrolera STM32F103VE. Używam plików udostępnionych na stronie FreddieChopina. Problemów jest kilka: 1. Nie da się zaprogramować mikrokontrolera. Wcześniej przy openocd 0.4.0 cały czas po resecie występował Hard Fault. Teraz zainstalowałem 0.5.0 i już tego nie ma, za to próba wgrania pliku ELF...
Witam, Programuje ten mikrokontroler w środowisku Eclipse. Program wgrywam za pomocą OpenOCD 0.5.0 bezpośrednio wpisując parametry w wierszu poleceń. Już na samym początku zauważyłem że po kompilacji pliki hex mają dużą wartość. Identyczny program skompilowany przy pomocy Keila zajmuje 9kB natomiast skompilowany w Eclipsie 18kB. Po wgraniu tegoż programu...
czesc, Nie moge zmusic JTAGa do pracy. Uzywam a) Yagarto Toolchain do kompilacji b) OpenOCD do programowanie Probuje zaprogramowac AT91SAM7S256 (text on chip AU without number). Uzywam plyty ewaluacyjnej ZL11ARM modulu ZL12ARM. Posiadam KrisTech USB JTAG (UsbScarab2). Moge zaprogramowac flash programem SAM-BA v1.1 (ale juz nie wersja pozniejsza) po...
Witam, Udało mi się uruchomić STM32 z OpenOCD przez Wigglera. Problem mi jedynie sprawia debugowanie programu w Eclipse. Program ładuję przez Makefile , wszystko wygląda ok: D:\Projekty\ARM\project>cs-make program "Programming with OPENOCD" openocd -d0 -f interface/parport.cfg -f target/stm32.cfg -c init -c "fast enable "...
Do Freddiego: Pobrałem Twoją wersję blink do LPC1114. Teoretycznie pasuje mi bez zmian do LPC11C24. Jednak debug (Linaro4.8, openOCD 0.9.0 od ciebie) nie jest wstanie przejść przez startup - dochodzi do polecenia 'isb' (zaraz na początku) i ląduje gdzieś w sekcji bootloadera (0x1fff0e4a). Sprawdziłem też inne kombinacje (CMSIS + startup pobrany z innych...
Znalazłem w sieci gotowca, działa: [syntax=cpp] # NXP LPC812 Cortex-M0plus with 16kB Flash and 4kB Local On-Chip SRAM, # Nemuisan's Special # set LPC812 Information set CHIPNAME lpc812 set CPUDAPID 0x0BC11477 set CPURAMSIZE 4096 set CPUROMSIZE 16384 set CPUVARIANT lpc800 #Include the main configuration file. source [find target/lpc11xxx_8xx.cfg]; $_TARGETNAME...
Witam, Korzystajac z .text .global _start _start: (at) Label, not really required mov r0, #5 (at) Load register r0 with the value 5 mov r1, #4 (at) Load register r1 with the value 4 add r2, r1, r0 (at) Add r0 and r1 and store in r2 stop: b stop (at) Infinite loop to stop execution 2. Kompilacja: $ arm-none-eabi-gcc -o program pierwszy.S $ file...
NAME = demo_at91sam7_blink_flash # variables CC = arm-elf-gcc LD = arm-elf-ld -v AR = arm-elf-ar AS = arm-elf-as CP = arm-elf-objcopy OD = arm-elf-objdump CFLAGS = -I./ -c -fno-common -O0 -g AFLAGS = -ahls -mapcs-32 -o crt.o LFLAGS = -Map main.map -Tdemo_at91sam7_blink_flash.cmd CPFLAGS = --output-target=binary ODFLAGS= -x --syms OBJECTS = crt.omain.o...
Faktycznie sypie błędami: Error: AHBAP Cached values: dp_select 0x0, ap_csw 0xa2000012, ap_tar 0xffffffff Error: SWJ-DP STICKY ERROR Error: Read MEM_AP_CSW 0x23000052, MEM_AP_TAR 0x8000004 Error: AHBAP Cached values: dp_select 0x0, ap_csw 0xa2000012, ap_tar 0xffffffff Error: SWJ-DP STICKY ERROR Error: Read MEM_AP_CSW...
Witam, Uzywam ARMa firmy ST str711. Mam napisany bootloader pochodzacy z pewnego zrodla i dzialajacy na 100%, ktory po zaladowaniu przez JTAGa (Open OCD), umozliwia programowanie uC przez UART0 do 5 sekund po resecie. Bootloader laduje pliki bin bez zadnych problemow, tyle ze uC nie wykonuje zawartego w nich programu. W celu weryfikacji zainstalowalem...
Trochę mnie nie było bo świętowałem, ale o temacie pamiętam mimo wszystko:D Oto co mam teraz Open On-Chip Debugger 0.2.0 (2009-07-18-09:50) Release $URL: http://svn.berlios.de/svnroot/repos/... $ For bug reports, read http://svn.berlios.de/svnroot/repos/... parport port = 888...
I have a same problem. I use olimex board with procesor LPC2919. I am not able to write to the flash. 2000 kHz trst_and_srst srst_pulls_trst srst_gates_jtag trst_push_pull srst_open_drain jtag_nsrst_delay: 200 jtag_ntrst_delay: 200 use of EmbeddedICE dbgrq instead of breakpoint for target halt enabled dcc downloads are enabled Info : max...
Działa. Wystarczyło zmienić szukany znak z backslasha na '\n'. Ostatecznie modyfikacja wygląda nastepująco: if (character == '\n') { __fputc_('\n', stream); __fputc_('\r', stream); continue; } Dopracowałem rownież funkcje usart_put_char, zamiast wprowadzać delaya sprawdzam flage czy UART zakończył poprzednią transmisję....
Witam, od kilku dni nie moge skonfigurować opneocd 0.2.0 aby mozna bylo zaprogramować procka z Eclipsa. W H-Jtag wszystko dziala ok (wykrywa i programuje flash). plyta i programator(wiggler lpt) tak jak w tytule proc at91sam7s256 Moja konfiguracja jest następująca: wiggler.cfg: # daemon configuration telnet_port 4444 gdb_port 3333 tcl_port 6666 # tell...
Przydałoby się jeszcze 2 rzeczy: 1. zmniejszyć FLASH o odpowiednią wartość, tak aby na siebie nie najeżdżały - możesz od LENGTH odjąć ile tam potrzeba ... LENGTH = 128k - XXX 2. Dodać profilaktycznie } > VAR AT > VAR Tym sposobem skrypt linkera będzie w 100% poprawny. Jeśli nadal będą jakieś błędy, to już nie po stronie linkera. Jeśli dalej coś nie...
Inne mam okienko zupełnie. Zylina nie używam. Napewno. Dziwne się rzeczy dzieją. Czuję, że problem mam raczej hardwareowy. Polutowałem i posprawdzałem pinheader, bufory i drabinki, ale nic to nie zmieniło. Zgniotłem kabel dokładniej, wymieniłem dżumper od zasilania bufora. Czasem działa (głównie "na początku" - jeszcze nie wiem co dokładnie to znaczy)....
Na wstępie zaznaczę że mam świadomość że temat o który pytam jest dosyć archaiczny ale muszę po kimś poprawić kod a najlepszym sposobem na to jest chyba debug. Procesor z którym mam do czynienia to lpc2129 już nie wspierany przez oficjalne oprogramowanie producenta. Mój problem jest związany z programowaniem i debugowaniem. Na początek programowanie,...
Witam arus85lbn naspisał: Nie wiem o co dokladnie chodzi, moze musze najpeirw jakos wgrac program do pamięci procka aby rozpocząć debugowanie? To zależy czy debugujesz w ramie czy we flash. Jeśli we flashu to program musi tam być żeby go debagować. Spróbuj najpierw wgrać program do flasha i napisz jakie masz błędy. Twój cytat: JTAG tap: sam7s256.cpu...
Mam problem z zaprogramowaniem. jtag_khz dałem na 5 > str9x flash_config 0 4 2 0 0x80000 > poll background polling: on TAP: str912.cpu (enabled) target state: halted target halted in ARM state due to debug-request, current mode: Undefined cpsr: 0x000000db pc: 0x0000017c target state: halted target halted in...
Hej Freddie, tym razem to już mam poważny problem i proszę Cię o pomoc. Problem mam cały czas z przerwaniami. Nigdy mi w sumie tak naprawde nie zadziałaly na tym projekcie od stm. Przerobiłem Twoją tablice wektorów przerwań: /** \file vectors.c * \brief STM32 (STM32F101 - STM32F103) vector table and __Default_Handler() * \details STM32...
flash write_image erase c:\lab1.hex 0x08000000 bin 1. Programujesz plik hex, a OpenOCD zmuszasz do traktowania tego jako bin... od razu porażka 2. W ogólnym przypadku plików NIE WOLNO przesuwać o offset. flash write_image erase c:\lab1.hex - TYLKO Pozatym prędkość 5kHz? Bez przesady - daj 1000kHz (1MHz). 4\/3!!
Takie coś musisz umieścić oprócz oczywiście konfiguracji i innych komend -c "dump_image backup.bin 0x8000000 0x80000" a przywrócenie, żebyś drugi raz nie pytał -c "flash write_image erase backup.bin 0x8000000 bin" Poprawiłem wielkość flasha 0x80000 = 512kB
Ja mam tylko target remote localhost:3333 monitor reset halt lub target remote localhost:3333 monitor reset halt #load monitor flash write_image erase main.bin 0x08000000 bin load działa ale mam przypadek gdzie muszę użyć tego drugiego
Na szybko obstawiam, że problemem może być zupełnie gdzie indziej. Otóż REALNY adres pamięci flash w mikrokontrolerze AT91SAM7S64 to nie 0, a 0x00100000 (http://www.keil.com/dd/docs/datashts/at... - strona 14). OpenOCD zapewne właśnie dlatego zgłasza następującą uwagę: Warn : no flash bank found for address 0 Warn : no flash bank...
Masz źle skonfigurowany debugger. Ściągnij sobie dowolny przykład (choćby ten dla STM32F4) i zobacz jak tam jest skonfigurowane. Jeśli chcesz TYLKO programować to można to zrobić samym OpenOCD - info w manualu - szukaj komendy "flash write_image ..." 4\/3!!
A jak to zrobić z Wigglerem niestety nie. A ja jestem zbyt ciemny żeby samemu do tego dojść. Zmień wszędzie "-f interface/jtagkey.cfg" na "-f interface/parport.cfg" i z grubsza tyle. Widzę że w pliku parport.cfg jest też inny port dla gdb, więc zamiast 3333 trzeba wszędzie wpisywac 2001 (albo zmienić w cfg). Cała filozofia. Już samo wpisywanie komend...
To powinno zadziałać: openocd.exe -f board/stm32f4discovery.cfg -c init -c targets -c "reset halt" -c "flash write_image erase ${project_name}.elf" -c "verify_image ${project_name}.elf" -c "reset run" -c shutdown
Do flasha nigdy się nie pisze do pojedyńczej "komórki" OpenOCD i inne programatory muszą wrzucić "write algoritm" do ramu a potem poprzez niego zapisują stronę flasha.
Witam, używam JTAG-lock-pick od Freddiego. odpalam openocd -f jtagkey.cfg -f sam7x256.cfg -f flash.script gdzie jtagkey i sam7x256 są konfigami z openocd. flash.script wygląda następująco: init reset halt wait halt flash write_image erase RTOSDemo/RTOSDemo.elf 0x0 # program the onchip flash reset run # reset processor shutdown # stop OpenOCD log po...
Spróbuj z linii komend się połączyć z openocd. Powinienes mieć cos takiego: (at)Piotrus_999 Nie pisałem ze nie uzywaja - tylko ze nie potrzebuja miec takiej kontroli nad toolchainem jaka daje 100% DIY. Dalej sie pytam. Skąd masz takie info? Bo z doświadczenia wiem, ze ludzie używający toolchaina + make akurat lubią mieć kontrolę nad procesem kompilacji...
Pomimo tego, że program debugowałem, po resecie nie zostawał on w pamięci flash. Mam teraz takie pytanie pod jaki adres należy wgrywać program do flasha?, piszę teraz skrypt do programowania i zatrzymałem się na wywołaniu komendy flash write_bank. Pozdrawiam Krzysiek
OpenOCD odpowiada tak: [syntax=actionscript] Open On-Chip Debugger 0.5.0 (2011-08-09-23:26) Licensed under GNU GPL v2 For bug reports, read http://openocd.berlios.de/doc/doxygen/bu... Info : only one transport option; autoselect 'jtag' trst_and_srst separate srst_gates_jtag trst_push_pull srst_open_drain Runtime Error: cfg/flash.gdb:4: invalid command...
Przy uruchamianiu debugowania GDB sam może ładować program (opcja "load image" w zakładce startup konfiguracji debugowania). Wsad "produkcyjny" też możesz wgrać uruchamiając debug, tylko z konfiguracją release. No albo skonfigurować uruchamianie OpenOCD (zobacz polecenie flash write_image ).
Witam. Próbuję nieudolnie połączyć się z mikrokontrolerem. Przy próbie programowania otrzymuję następujące komunikaty i błąd: Licensed under GNU GPL v2 For bug reports, read http://openocd.sourceforge.net/doc/d... Info : This adapter doesn't support configurable speed Info : STLINK v2 JTAG v20 API v2 SWIM v0 VID 0x0483 PID 0x3748...
openocd flash write victoria write write control
podliczniki energia zmiana rozmiar zdjąć programowanie liczników
webasto sterownik citroen xsara picasso
Fiat Panda II 1.1 2004 – zasilanie gniazda zapalniczki, brak bezpiecznika F44, bypass z F31/F42 Wymiana akumulatora w golarce NG-888B - instrukcja krok po kroku