FAQ | Points | Add... | Recent posts | Search | Register | Log in


Przykładowe projekty dla ARMów


Post new topic  Reply to topic      Main Page -> Forum Index -> Microcontrollers Generally -> ARM Microcontrollers -> Przykładowe projekty dla ARMów
Author
Message
Freddie Chopin
Poziom 25
Poziom 25


Joined: 12 Dec 2005
Posts: 7288
Location: Zawiercie

Post#91 Post from the author of the topic 14 Nov 2009 22:45   

Re: Przykładowe projekty dla ARMów


Dane wpisane do tego skryptu zakładają, że nie korzystasz z ŻADNYCH wyjątków. Musisz sobie je ustawić w zależności od swoich potrzeb.

Petros wrote:
__irq_stack_size = 0; Czyli po wejściu w przerwania mam dostępne 0 pamięci ram na zminne?

W skrócie: Funkcji ustawiającej stosy przekazane jest 0 dla trybu XXX, a więc (w zależności od kolejności) dany stos będzie pokrywał się z końcem lub początkiem innego stosu. W tym konkretnym przypadku (wszystko poza user_system równe 0) pozostałe stosy pokrywają się z początkiem (najwyższym adresem) stosu user_system.

Quote:
Mimo to uC nie zawiesza się jeśli podczas obsługi przerwania deklaruje zmienne.

Przypadek, nie zawiesza się teraz, to pewnie kiedyś to zrobi. W przerwaniu (jeśli nie ustawisz sobie jakiegoś rozmiaru) zajeżdżasz pierwsze dane które zostały odłożone na stos, czyli to co zachowane zostało po wejściu do main() (jeśli cokolwiek) i przypuszczalnie w pierwszych zagłębieniach.

Quote:
__user_stack_size = 512; oznacza 512 bajty? Mimo to moża zadeklarować większe tablice działające. Chyba że coś źle roumie.

Jest to deklaracja ze strony programisty, że nie zużyje więcej pamięci na stos. Możesz sobie zadeklarować tablicę nawet 1M, tyle że (w przypadku tego skryptu linkera) zajedziesz sobie sekcję .bss i .data, albo nawet wykroczysz poza dostępną pamięć (DataAbort).

Quote:
Widziałem gdzięś post na temat tego jak sprawdzić czy stos sie nie przepełnia ale nie mogę go znaleść.

Nie można prosto sprawdzić czy się nie przepełnia, można za to ocenić doświadczalnie zapotrzebowanie na stos i sobie go wtedy ustawić tak aby marnować mniej RAMu.

Post którego szukasz: http://www.elektroda.pl/rtvforum/viewtopic.php?p=7094362#7094362

4\/3!!
Back to top
   
Google

Google Adsense


Post# Post from the author of the topic 14 Nov 2009 22:45   





Back to top
   
Petros
Poziom 18
Poziom 18


Joined: 03 Feb 2007
Posts: 473

Post#92 14 Nov 2009 22:55   

Re: Przykładowe projekty dla ARMów


Dziękuje Freddie Chopin. Już mi sie rozjaśniło. Zapomiałem że ten post o sprawdzaniu stosu dotyczył STM32 i nie znalazłem go.
Back to top
   
Petros
Poziom 18
Poziom 18


Joined: 03 Feb 2007
Posts: 473

Post#93 14 Dec 2009 21:20   

Re: Przykładowe projekty dla ARMów


Witam

Co powinienem zmienić w plikach aby działały przerwania FIQ ?
Mam wersje plików "2009-09-19"

zadeklarowałem funkcję
void p_Tim0(void)__attribute((interrupt("FIQ")));

i ustawiłem przerwania dla TIMER0:
T0PR = 60 -1;
T0MCR |= (1<<0);
T0MR0 = 500000-1;

T0TCR = 1;

VICIntSelect |=(1<<K_TIM0);
VICIntEnable = (1<<K_TIM0);

enable_fiq();
Back to top
   
Freddie Chopin
Poziom 25
Poziom 25


Joined: 12 Dec 2005
Posts: 7288
Location: Zawiercie

Post#94 Post from the author of the topic 14 Dec 2009 21:51   

Re: Przykładowe projekty dla ARMów


Funkcja musi nazywać się tak jak jest nazwana w tablicy wektorów, czyli FIQ_Handler (chyba).

Atrybut oczywiście też musi być.
_________________________

Tak BTW to wskrzesiłeś temat dokładnie w momencie gdy chciałem w nim coś dopisać [; Kilka linijek i (chyba) największa bolączka mojego Makefile'a znikła - można będzie kompilować pliki źródłowe rozmieszczone w różnych katalogach - jedynie trzeba je podać - tego już nie da się (chyba [; ) przeskoczyć, bo nie ma funkcji w make, która wyszukiwałaby katalogi - myślę że to nie jest wielki problem [; Nowa wersja przykładów nadchodzi... Stay tuned!

Planowane inne zmiany:
1. Zmiana nazw na "bardziej standardowe" - zgodne z lista ze stronki o make - http://www.chemie.fu-berlin.de/chemnet/use/info/make/make_10.html#SEC89
2. Możliwość zmiany rozszerzeń plików (możliwe też listy), czyli pliki C++ będą mogły mieć rozszerzenia np cxx, cc i cpp jednocześnie, a skrypt "znajdzie" je wszystkie
3. W startupie wywoływane będą dwie funkcje low_level_init - jedna przed inicjalizacją pamięci (extremalny low level), druga przed wejściem do main()
4. Dla ARM7 tablica wektorów znów w assemblerze [;
5. Drobne poprawki tu i tam...

4\/3!!
Back to top
   
atom1477
Poziom 25
Poziom 25


Joined: 14 Jul 2005
Posts: 6595

Post#95 14 Dec 2009 21:55   

Re: Przykładowe projekty dla ARMów


Na 100%.

Code:
void FIQ_Handler(void) __attribute__ ((interrupt("FIQ")));


I w przerwaniu nie zapisuj rejestru VICVectAddr.
Back to top
   
lukstass
Poziom 8
Poziom 8


Joined: 05 Sep 2009
Posts: 27
Location: Puńsk

Post#96 21 Dec 2009 11:58   

Re: Przykładowe projekty dla ARMów


Code:
Open On-Chip Debugger 0.3.1 (2009-11-13-16:13)
$URL$
For bug reports, read
   http://openocd.berlios.de/doc/doxygen/bugs.html
200 kHz
jtag_nsrst_delay: 100
jtag_ntrst_delay: 100
trst_and_srst srst_pulls_trst srst_gates_jtag trst_push_pull srst_open_drain
Warn : use 'lpc2148.cpu' as target identifier, not '0'
Info : clock speed 200 kHz
Info : JTAG tap: lpc2148.cpu tap/device found: 0x4f1f0f0f (mfg: 0x787, part: 0xf1f0, ver: 0x4)
Info : Embedded ICE version 15
Error: unknown EmbeddedICE version (comms ctrl: 0xfffffffe)
Info : accepting 'gdb' connection from 0
Warn : acknowledgment received, but no packet pending
undefined debug reason 6 - target needs reset
Warn : target not halted
Info : JTAG tap: lpc2148.cpu tap/device found: 0x4f1f0f0f (mfg: 0x787, part: 0xf1f0, ver: 0x4)
requesting target halt and executing a soft reset
Error: Failed to halt CPU after 1 sec
Info : Halt timed out, wake up GDB.
Warn : target not halted
Runtime error, file "command.c", line 473:
    Warn : target not halted
Runtime error, file "command.c", line 473:
    Warn : target not halted
Warn : target not halted
Runtime error, file "command.c", line 473:
    Warn : target not halted
Runtime error, file "command.c", line 473:
    Warn : target not halted
Runtime error, file "command.c", line 473:
    Warn : The target is already running. Halt target before stepi/continue.
Error: timed out while waiting for target halted
Warn : target not halted
Warn : target not halted
Info : Halt timed out, wake up GDB.


Mam takie errory w eclipsie. Używam standarde pliki konfiguracyjne turetelizer2.cfg ir lpc2148.cfg. Initialization commands:

Code:

monitor reset
monitor soft_reset_halt
monitor mwb 0xE01FC040 0x01
monitor mwb 0xE01FC000 0
monitor mwb 0xE01FC080 0
monitor mwb 0xE01FC08C 0xAA
monitor mwb 0xE01FC08C 0x55


Projekt Freddiego LPC2103. Mój kontroller to LPC2148, programator na podstawie projektu Freddiego. Borykam się z tym od tygodnia i nie mogę znaleźć w czym jest problem?
Back to top
   
atom1477
Poziom 25
Poziom 25


Joined: 14 Jul 2005
Posts: 6595

Post#97 21 Dec 2009 12:21   

Re: Przykładowe projekty dla ARMów


W kodzie który blokuje JTAG?
Ja na takie coś mam taki patent, że zakładam zworkę włączającą BootLoader (oczywiście aby stan zworki został sprawdzony przez procesor należy wyłączyć i włączyć zasilanie).
Nadal programuję przez JTAGa, tyle że z włożoną zworką Bootloadera.
Po zaprogramowaniu oczywiście zworkę wyciągam.
Lepiej było by zmodyfikować pliki cfg, ale ja jak na razie wolę wersję ze zworką.
Back to top
   
lukstass
Poziom 8
Poziom 8


Joined: 05 Sep 2009
Posts: 27
Location: Puńsk

Post#98 21 Dec 2009 12:48   

Re: Przykładowe projekty dla ARMów


Które piny odpowiadają za włączenie bootloadera?
Back to top
   
atom1477
Poziom 25
Poziom 25


Joined: 14 Jul 2005
Posts: 6595

Post#99 21 Dec 2009 13:18   

Re: Przykładowe projekty dla ARMów


W LPC2148 P0.14.
Back to top
   
lukstass
Poziom 8
Poziom 8


Joined: 05 Sep 2009
Posts: 27
Location: Puńsk

Post#100 21 Dec 2009 13:40   

Re: Przykładowe projekty dla ARMów


Podam +3,3 V nie będzie za dużo ?
Back to top
   
atom1477
Poziom 25
Poziom 25


Joined: 14 Jul 2005
Posts: 6595

Post#101 21 Dec 2009 13:47   

Re: Przykładowe projekty dla ARMów


<sciana>

Ten pin trzeba zewrzeć do masy.
Back to top
   
lukstass
Poziom 8
Poziom 8


Joined: 05 Sep 2009
Posts: 27
Location: Puńsk

Post#102 21 Dec 2009 15:08   

Re: Przykładowe projekty dla ARMów


To nie rozwiązało mojego problemu. Jestem na skraju desperacji. Opiszę cały mój projekt i czego używam do jego uruchomienia:
1. Programator wykonany na podstawie projektu Freddiego, nic nie zmieniałem.
2. Target wykonany na podstawie tego schematu:

Przykładowe projekty dla ARMów

Po wykonaniu targeta sprawdziłem go na w univerku z profesorem. Użyte narzędzia to programator Keila. Program załadowano pomyślnie.

Po konfiguracji eclipsa z OpenOCD i CodeSoursery podłączyłem programator i targeta, puściłem OpenOCD, dostałem takie komunikaty:

Przykładowe projekty dla ARMów

Po paru dniach prób zgrania targeta z programatorem próbuje puścić OpenOCD w eclipse i dostaje takie komunikaty:


Code:
Open On-Chip Debugger 0.3.1 (2009-11-13-16:13)
$URL$
For bug reports, read
   http://openocd.berlios.de/doc/doxygen/bugs.html
RCLK - adaptive
jtag_nsrst_delay: 200
jtag_ntrst_delay: 200
trst_and_srst srst_pulls_trst srst_gates_jtag trst_push_pull srst_open_drain
Info : RCLK (adaptive clock speed) not supported - fallback to 500 kHz
Error: JTAG scan chain interrogation failed: all ones
Error: Check JTAG interface, timings, target power, etc.
Info : JTAG tap: lpc2148.cpu tap/device found: 0x4f1f0f0f (mfg: 0x787, part: 0xf1f0, ver: 0x4)
Info : Embedded ICE version 15
Error: unknown EmbeddedICE version (comms ctrl: 0xfffffffe)


Używam standardowych plików konfiguracyjnych w OpenOCD turetelizer2.cfg i lpc2148.cfg. W lpc2148.cfg zmieniłem tylko
Code:
lpc2000_v2 14xxx calc_checksum
na
Code:
lpc2000_v2 12000 calc_checksum
.
Proszę o pomoc!
Back to top
   
Freddie Chopin
Poziom 25
Poziom 25


Joined: 12 Dec 2005
Posts: 7288
Location: Zawiercie

Post#103 Post from the author of the topic 21 Dec 2009 15:16   

Re: Przykładowe projekty dla ARMów


lukstass wrote:
Po konfiguracji eclipsa z OpenOCD i CodeSoursery podłączyłem programator i targeta, puściłem OpenOCD, dostałem takie komunikaty:

Przykładowe projekty dla ARMów

No i to były prawidłowe komunikaty, więc w czym problem?

Skoro teraz masz "all ones" to pewnie masz walniętego JTAGa.

4\/3!!
Back to top
   
lukstass
Poziom 8
Poziom 8


Joined: 05 Sep 2009
Posts: 27
Location: Puńsk

Post#104 21 Dec 2009 15:30   

Re: Przykładowe projekty dla ARMów


Quote:
No i to były prawidłowe komunikaty, więc w czym problem?

Skoro teraz masz "all ones" to pewnie masz walniętego JTAGa.


No właśnie i nie wiem jak to mogło się stać. W piątek wszystko działało, podłączam w niedzielę i nie działa, mogłem coś uszkodzić programowo lub mechanicznie, bo nie wiem teraz jak to naprawić?
Back to top
   
Google

Google Adsense


Post# 21 Dec 2009 15:30   





Back to top
   
Freddie Chopin
Poziom 25
Poziom 25


Joined: 12 Dec 2005
Posts: 7288
Location: Zawiercie

Post#105 Post from the author of the topic 21 Dec 2009 16:14   

Re: Przykładowe projekty dla ARMów


Programowo - nie. Mechanicznie - tak. Niedolutowany pin w piątek łączył, a w niedzielę już niezbyt.

4\/3!!
Back to top
   
Google

Google Adsense


Post# Post from the author of the topic 21 Dec 2009 16:14   





Back to top
   
atom1477
Poziom 25
Poziom 25


Joined: 14 Jul 2005
Posts: 6595

Post#106 21 Dec 2009 17:25   

Re: Przykładowe projekty dla ARMów


W takim razie dociśniej palcem procesor do płytki i wtedy zapuść JTAGa.
Back to top
   
lukstass
Poziom 8
Poziom 8


Joined: 05 Sep 2009
Posts: 27
Location: Puńsk

Post#107 21 Dec 2009 21:29   

Re: Przykładowe projekty dla ARMów


Porady profesionalistów są bezcenne!!!. Dzięki Frieddie i Atom11. Jedna ścierzka nie łączyła się z JTAGiem. Teraz mam przykładowy projekt od Freddiego LPC2103. Wykonuje takie kroki:
1. Buduje pliki w eclipsie.
2. Konfiguruje Debuga:

Initialization commands:
Code:
monitor reset halt
monitor mwb 0xE01FC040 0x01
monitor mwb 0xE01FC000 0
monitor mwb 0xE01FC080 0
monitor mwb 0xE01FC08C 0xAA
monitor mwb 0xE01FC08C 0x55
load


Przykładowe projekty dla ARMów Przykładowe projekty dla ARMów Przykładowe projekty dla ARMów

3. Puszam OpenOCD w eclipsie, dostaje takie komunikaty:

Code:
Open On-Chip Debugger 0.3.1 (2009-11-13-16:13)
$URL$
For bug reports, read
   http://openocd.berlios.de/doc/doxygen/bugs.html
RCLK - adaptive
jtag_nsrst_delay: 200
jtag_ntrst_delay: 200
trst_and_srst srst_pulls_trst srst_gates_jtag trst_push_pull srst_open_drain
Info : RCLK (adaptive clock speed) not supported - fallback to 500 kHz
Info : JTAG tap: lpc2148.cpu tap/device found: 0x4f1f0f0f (mfg: 0x787, part: 0xf1f0, ver: 0x4)
Info : Embedded ICE version 4


4. Puszczm debuga
Wyskakuje takie okno:
Przykładowe projekty dla ARMów

Wciskam TAK, okno Debug wygląda tak:
Przykładowe projekty dla ARMów
Okno Console jest puste
Naciskam resume w oknie Debug, wtedy ono wygląda tak:
Przykładowe projekty dla ARMów
Okno Console jest puste.
Robie Terminate, dostaje takie komunikaty w oknie Console:

Code:
Info : accepting 'gdb' connection from 0
Warn : acknowledgment received, but no packet pending
undefined debug reason 6 - target needs reset
Warn : target not halted
Info : JTAG tap: lpc2148.cpu tap/device found: 0x4f1f0f0f (mfg: 0x787, part: 0xf1f0, ver: 0x4)
Warn : srst pulls trst - can not reset into halted mode. Issuing halt after reset.
target state: halted
target halted in Thumb state due to debug-request, current mode: Supervisor
cpsr: 0x000000f3 pc: 0x7fffe032
Warn : Verification will fail since checksum in image (0x00000000) to be written to flash is different from calculated vector checksum (0xb9205f88).
Warn : To remove this warning modify build tools on developer PC to inject correct LPC vector checksum.
Info : dropped 'gdb' connection - error -400


W czym problem?
Back to top
   
Freddie Chopin
Poziom 25
Poziom 25


Joined: 12 Dec 2005
Posts: 7288
Location: Zawiercie

Post#108 Post from the author of the topic 21 Dec 2009 21:52   

Re: Przykładowe projekty dla ARMów


Debuggowania możesz nawet nie puszczać skoro się nie chce skompilować...

Nie wiem skąd ty wytrzasnąłeś ten projekt - błąd z "istniejącym katalogiem" wyskakiwał w wersji "pierwszej z pierwszych" - obecnie jeśli zainstalowałeś wszystko (wszystko! czyli Coreutils też!) to nie ma prawa tak być.

4\/3!!
Back to top
   
lukstass
Poziom 8
Poziom 8


Joined: 05 Sep 2009
Posts: 27
Location: Puńsk

Post#109 21 Dec 2009 22:14   

Re: Przykładowe projekty dla ARMów


Projekt wziąłem z Twojej strony. Coreutils zainstalowałem w Program Files/Coreutils (default directory). ???
Back to top
   
Freddie Chopin
Poziom 25
Poziom 25


Joined: 12 Dec 2005
Posts: 7288
Location: Zawiercie

Post#110 Post from the author of the topic 21 Dec 2009 22:26   

Re: Przykładowe projekty dla ARMów


No to coś jednak Ci po drodze poważnie nie wyszło...

Jaki masz system operacyjny?

4\/3!!
Back to top
   
lukstass
Poziom 8
Poziom 8


Joined: 05 Sep 2009
Posts: 27
Location: Puńsk

Post#111 21 Dec 2009 22:47   

Re: Przykładowe projekty dla ARMów


System operacyjny: Windows XP home edition. Nie wiem od czego zacząć sprawdzać.
Back to top
   
Freddie Chopin
Poziom 25
Poziom 25


Joined: 12 Dec 2005
Posts: 7288
Location: Zawiercie

Post#112 Post from the author of the topic 21 Dec 2009 23:05   

Re: Przykładowe projekty dla ARMów


Czy to Coreutils dodało Ci się do zmiennej systemowej PATH? Informacja o tworzeniu katalogu w ogóle nie powinna się wyświetlać - wciaż stawiam na źle zainstalowane Coreutils, a dokładnie na problem z uruchomieniem pliku sh.exe.

W sumie jak się nad tym zastanowić, to projekt Ci się kompiluje, ale tylko raz, bo potem musiałbyś kasować katalog "out".

W skrótach do debuggowania które są w projekcie, a które jednak powinieneś jakoś zaimportować (*), jest też ustawione kilka innych opcji poza initialization commands, a kilka jeszcze innych jest wyłączone - poczytaj o tym w artykule. Dla ułatwienia sprawy dodam że chodzi o dokładnie 4 opcje w zakładce startup.

(*) Zamiast tworzyć projekt o nazwie test wybierz po prostu opcję Import i tam wybierz "existing projects into workspace", a następnie nakieruj Eclipse'a na rozpakowany projekt pobrany z mojej strony. To oczywiście nie zwalnia Cię niestety z ustawienia kilku opcji we "wnętrzu" właściwości projektu -> jak zwykle patrz artykuł.

4\/3!!
Back to top
   
lukstass
Poziom 8
Poziom 8


Joined: 05 Sep 2009
Posts: 27
Location: Puńsk

Post#113 21 Dec 2009 23:29   

Re: Przykładowe projekty dla ARMów


Co miałeś na myśli "poczytaj w artykule"?
Quote:
Czy to Coreutils dodało Ci się do zmiennej systemowej PATH?

Jak to sprawdzić?
Quote:
Zamiast tworzyć projekt o nazwie test wybierz po prostu opcję Import i tam wybierz "existing projects into workspace", a następnie nakieruj Eclipse'a na rozpakowany projekt pobrany z mojej strony. To oczywiście nie zwalnia Cię niestety z ustawienia kilku opcji we "wnętrzu" właściwości projektu -> jak zwykle patrz artykuł.


Udało się zainportować projekt. Są ustawienia debugera, o których wcześniej mówiłeś (gdb+load, gdb).
Back to top
   
Freddie Chopin
Poziom 25
Poziom 25


Joined: 12 Dec 2005
Posts: 7288
Location: Zawiercie

Post#114 Post from the author of the topic 22 Dec 2009 00:06   

Re: Przykładowe projekty dla ARMów


"patrz artykuł" oznacza -> http://www.elektroda.pl/rtvforum/topic1313509.html

Zmienne systemowe dostępne są we Właściwościach systemu, zakładka Zaawansowane, potem Zmienne środowiskowe i przejrzyj obydwie zmienne PATH - powinna tam być ścieżka do zainstalowanego Coreutils, jak go nie będzie, to nie będzie działać i tyle. Aby sprawdzić to na szybko, to otwórz konsolę i gdziekolwiek (byle nie w katalogu gdzie faktycznie te pliki są) wpisz "sh --version" - jak się uruchomi to działa, jak wywali że "nie może znaleźć polecenia" (or sth) to nie działa.

4\/3!!
Back to top
   
lukstass
Poziom 8
Poziom 8


Joined: 05 Sep 2009
Posts: 27
Location: Puńsk

Post#115 22 Dec 2009 00:41   

Re: Przykładowe projekty dla ARMów


Polecenie sh --version w cmd działa.
Quote:
Stan niski na DBGSEL spowoduje, że piny JTAGa będą po prostu zwykłymi pinami GPIO, więc nie będzie możliwa żadna czynność z użyciem JTAGa, chyba że w programie zostanie to przestawione przy użyciu odpowiednich rejestrów (PINSELx)

Nie mogłem znaleść DBGSEL w lpc2148 datasheet, jest jakiś odpowiednik ?

Quote:
Anyway - pin P0.14 jest od Bootloadera i też musi być jakoś podciągnięty. W każdym LPC są conajmniej dwa takie piny - od Bootloadera i od JTAGa, każdy trzeba sciągnąć do odpowiedniego poziomu po resecie, aby działało tak jak chcemy. Czasem jest jeszcze pin od TRACE (ETM), który mnie również wyprowadził z równowagi kiedyś - to była śmieszna historia, ale nie mam teraz czasu opisywać <:


U mnie też ten pin nie jest podpięty pod VCC. Lecz, atom1477 mówił, że :
Quote:
Ten pin trzeba zewrzeć do masy.
. Jak mam zrobić ?
Back to top
   
Google

Google Adsense


Post# 22 Dec 2009 00:41   





Back to top
   
atom1477
Poziom 25
Poziom 25


Joined: 14 Jul 2005
Posts: 6595

Post#116 22 Dec 2009 01:05   

Re: Przykładowe projekty dla ARMów


Ten pin trzeba zewrzeć do masy żeby Bootloadera włączyć.
Freddie Chopin mówi przypadku gdy Bootloadera chce się wyłączyć.
Jak już Ci JTAG działa to ten pin zostaw tak jak jest czyli podciągnięty do VCC.
Back to top
   
lukstass
Poziom 8
Poziom 8


Joined: 05 Sep 2009
Posts: 27
Location: Puńsk

Post#117 22 Dec 2009 01:25   

Re: Przykładowe projekty dla ARMów


Code:
target remote localhost:3333
main () at main.c:90
90         for (count = 0; count < count_max; count++);   // delay
monitor mwb 0xE01FC040 0x01
monitor mwb 0xE01FC080 0
monitor mwb 0xE01FC08C 0xAA
monitor mwb 0xE01FC08C 0x55
load
Loading section .text, size 0x4cc lma 0x0
Start address 0x38, load size 1228
Transfer rate: 1 KB/sec, 1228 bytes/write.
tbreak main
Temporary breakpoint 1 at 0xe4: file main.c, line 79.
Note: automatically using hardware breakpoints for read-only addresses.
continue

Program received signal SIGINT, Interrupt.
0x7ffffc12 in ?? ()


Takie komunikaty dostaje gdy zrobie pause w Debug oknie.

Code:
Open On-Chip Debugger 0.3.1 (2009-11-13-16:13)
$URL$
For bug reports, read
   http://openocd.berlios.de/doc/doxygen/bugs.html
RCLK - adaptive
jtag_nsrst_delay: 200
jtag_ntrst_delay: 200
trst_and_srst srst_pulls_trst srst_gates_jtag trst_push_pull srst_open_drain
Info : RCLK (adaptive clock speed) not supported - fallback to 500 kHz
Info : JTAG tap: lpc2148.cpu tap/device found: 0x4f1f0f0f (mfg: 0x787, part: 0xf1f0, ver: 0x4)
Info : Embedded ICE version 4
target state: halted
target halted in ARM state due to breakpoint, current mode: Supervisor
cpsr: 0x000000d3 pc: 0x00000150
Info : accepting 'gdb' connection from 0
Warn : acknowledgment received, but no packet pending
Info : JTAG tap: lpc2148.cpu tap/device found: 0x4f1f0f0f (mfg: 0x787, part: 0xf1f0, ver: 0x4)
Warn : srst pulls trst - can not reset into halted mode. Issuing halt after reset.
target state: halted
target halted in Thumb state due to debug-request, current mode: Supervisor
cpsr: 0x400000f3 pc: 0x7fffe032
Warn : Verification will fail since checksum in image (0x00000000) to be written to flash is different from calculated vector checksum (0xb9205f88).
Warn : To remove this warning modify build tools on developer PC to inject correct LPC vector checksum.
Info : dropped 'gdb' connection - error -400


Takie komunikaty, gdy zrobię terminate.
Pin P0.14 podpiąłem do masy. Coreutils działa. Co jeszcze źle ?
Back to top
   
atom1477
Poziom 25
Poziom 25


Joined: 14 Jul 2005
Posts: 6595

Post#118 22 Dec 2009 01:50   

Re: Przykładowe projekty dla ARMów


No ale przy debugowaniu to P0.14 odłącz od masy.
Do masy to ja go podłączam tylko gdy chcę zaprogramować procesor.
Przy debugowaniu musi się uruchomić program główny czyli BootLoader musi być wyłączony.
Reszta to nie mam pojęcia. Freddie Chopin albo ktoś inny obeznany będzie musiał skomentować.
Back to top
   
lukstass
Poziom 8
Poziom 8


Joined: 05 Sep 2009
Posts: 27
Location: Puńsk

Post#119 22 Dec 2009 02:30   

Re: Przykładowe projekty dla ARMów


Będe czekał na komentarz Freddiego, lecz pod podłączeniu pinu P0.14 do Vcc, podczas debugowania i naciśnięciu pause w Debug menu mam:
Przykładowe projekty dla ARMów
Okno disassembly wygląda tak:
Przykładowe projekty dla ARMów
Okno Console jest puste.
Po naciśnięciu terminate i remove launch w oknie console pojawiają się takie komunikaty:

Code:
Open On-Chip Debugger 0.3.1 (2009-11-13-16:13)
$URL$
For bug reports, read
   http://openocd.berlios.de/doc/doxygen/bugs.html
RCLK - adaptive
jtag_nsrst_delay: 200
jtag_ntrst_delay: 200
trst_and_srst srst_pulls_trst srst_gates_jtag trst_push_pull srst_open_drain
Info : RCLK (adaptive clock speed) not supported - fallback to 500 kHz
Info : JTAG tap: lpc2148.cpu tap/device found: 0x4f1f0f0f (mfg: 0x787, part: 0xf1f0, ver: 0x4)
Info : Embedded ICE version 4
Info : accepting 'gdb' connection from 0
Warn : acknowledgment received, but no packet pending
undefined debug reason 6 - target needs reset
Warn : target not halted
Info : JTAG tap: lpc2148.cpu tap/device found: 0x4f1f0f0f (mfg: 0x787, part: 0xf1f0, ver: 0x4)
Warn : srst pulls trst - can not reset into halted mode. Issuing halt after reset.
target state: halted
target halted in ARM state due to debug-request, current mode: User
cpsr: 0x80000010 pc: 0x00000170
Warn : Verification will fail since checksum in image (0x00000000) to be written to flash is different from calculated vector checksum (0xb9205f88).
Warn : To remove this warning modify build tools on developer PC to inject correct LPC vector checksum.
Info : dropped 'gdb' connection - error -400


Czekam na komentarze.
Back to top
   
Freddie Chopin
Poziom 25
Poziom 25


Joined: 12 Dec 2005
Posts: 7288
Location: Zawiercie

Post#120 Post from the author of the topic 22 Dec 2009 08:18   

Re: Przykładowe projekty dla ARMów


Komentarze są takie, że poza brakiem zawartości konsoli wszystko raczej (*) działa, więc czego więcej chcieć? <;

(*) Jeśli możesz kod puścić (Resume), zatrzymać (Pause) i po-step-ować (Step Over / Into / Return) i operacje te robią to czego byś się spodziewał, to jest dobrze.

Tak BTW to dla LPC2148 jest odpowiednik DBGSEL i jest nim bodajże linia RTCK.

4\/3!!
Back to top
   
Post new topic  Reply to topic      Main Page -> Forum Index -> Microcontrollers Generally -> ARM Microcontrollers -> Przykładowe projekty dla ARMów
Page 4 of 11 Go to page Previous  1, 2, 3, 4, 5 ... 9, 10, 11  Next
Jump to page:
Similar topics
środowisko do programowania ARMów (at91sam7s) (1)
Programowanie ARMów w ADA (18)
Czym uruchamiacie projekty w C dla ATMega32 i wiekszych? (13)
Przykładowe programy dla TMS320F2812 (2)
Przykładowe kody dla CodeVisionAVR (2)
atmel qtouch przykładowe projekty (6)
Programowanie ARMów Philipsa przez RS232 (2)
Czy można używać debuggera do ARMów z CodeBlocks ?? (1)
ARM czy PIC? Dobre książki do ARMów? Asembler? (14)

Page generation time: 0.124 seconds


FAQ || Administrator || Moderators || Widgets and banners || Contact
elektroda.pl topic RSS feed