Bo to jest właśnie little-endian (; https://en.wikipedia.org/wiki/Endianness...
Włączyłeś zegar dla CRC? Jesteś pewny, że wersja linuksowa używa wielomianu 0x04C11DB7? Może problem wynika z zamiany big/little endian?
Problem na 99% jest z podaniem adresu do zapisu w 23K256, a dokładnie z rozbiciem liczby 16 bit na dwie 8 bitowe LSB, i MSB. Jak dokładnie wyznaczyć LSB i MSB ? Czy tryb pracy procesora Big Endian i Litte Endian może mieć wpływ na wartość ?
(at)miszcz310 jednak widzę, że lubisz się katować. Jakoś przywykłem do pisania w atomie lub vimie i tylko zmapowanymi klawiszami myk. Zainstaluj sobie np. https://marketplace.eclipse.org/content/... i masz vim-a w eclipse. Ale jeżeli już naprawdę chcesz to debugować to wydrukuj sobie informacje dwarf (dwarfdump-em np), zobacz czy te symbole...
Witam, próbuję uruchomić program napisany przez Freddie'go Chopin'a, na procku STM32F103R wlutowanym w moduł MMstm32F103R http://www.propox.com/products/t_174.htm... na płycie ewaluacyjnej EVBmm http://www.propox.com/products/t_183.htm... Zainstalowałem oprogramowanie, sterowniki, Eclipse, openocd itp. według instrukcji umieszczonej na stronie Freddiego....
Tutaj udokumentuję moją podróż z tanią płytką deweloperską / hobbystyczną STM32F103C8T6 "blue pill" zakupioną w Ali Express. Pomimo układu scalonego oznaczonego jako "STM32F103C8T6", wewnętrzna pamięć flash wydaje się mieć 128k zamiast 64k, co czyni go bardziej podobnym do STM32F103CBT6. Wydaje się, że nie jest to nieoczekiwane w przypadku podróbek/klonów...
D:\>arm-none-eabi-gcc -print-multi-lib .; thumb;(at)mthumb armv6-m;(at)mthumb(at)march=armv6-m thumb2;(at)mthumb(at)march=armv7(at)mfix... D:\> oraz D:\Robert\TrueSTUDIO for STMicroelectronics STM32 Lite 2.3.0\ARMTools\bin>arm-at ollic-eabi-gcc -print-multi-lib .; thumb;(at)mthumb armv4t;(at)march=armv4t arm926ej-s;(at)mcpu=arm926ej-s...
Proszę bardzo: Program jest taki prosty testowy: #include "stm32f1xx_hal.h" int main(void) { HAL_Init(); while (1) { }; } A oto Build Log: Komunikaty występują przy kompilacji plików: - stm32f1xx_hal.c - stm32f1xx_hal_cortex.c - stm32f1xx_hal_flash.c - stm32f1xx_hal_gpio.c - stm32f1xx_hal_rcc.c ----------------Make...
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...
sorrki, zrypałem coś. wygląda to tak, tylko nie wiem czy on teraz pokazuje low endian czy big endia czy jak to inczej interpretować.... http://obrazki.elektroda.pl/1830930500_1...
Witam. Podpinam się pod temat, bo mam problem z tej samej kategorii. Dopiero zaczynam zabawę z ARMami i zaciąłem się na samym początku. Wygląda to tak jakby OpenOCD nie mógł skomunikować się z mikrokontrolerem. Mój sprzęt: płytka Olimex stm32-p103 + jtag lock-pick od Freddiego. OpenOCD wyrzuca takie komunikaty: G:\>openocd -f interface/jtagkey.cfg...
No bo przecież chyba, jeśli np. float wynosi 0x12345678 to w zależnosci od tego czy mamy little czy big endian to możemy mieć wartości w tablicy uint8_t Jeśli wysyłane by to było do innego systemu (z innym endianess) to oczywiście należało by zadbać, o właściwe poukładanie bajtów. Ale tutaj kolega zapisuje do EEPROM-u więc chyba nie ma tego problemu.
Witam Posiadam oryginalnego JLinka firmy Segger + sterowniki libusb-win32 1.2.2. Mam problem z połączeniem z targetem w OpenOCD. Używam mikrokontrolera STM32. Takie błędy mi wyskakują: C:\>openocd -f interface/jlink.cfg -f target/stm32.cfg Open On-Chip Debugger 0.4.0 (2010-02-22-19:05) Licensed under GNU GPL v2 For bug reports, read...
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 "...
albertb: Idąc tym tropem, każdy kompilator powinien z instrukcji a = 5 generować dwa takie same podstawienia, bo jakiś procesor może się pomylić i zignorować instrukcję. Jeśli specyfikacja architekury i ABI mówi, że stos ma być wyrównany, to ma być. Po to jest specyfikacja. Architektura ARM dopuszcza np. knwencję little-endian i big-endian, ale kompilatory...
To jak już znajdziesz tam jakieś DOBRE porady to daj znać (; Chyba znalazłem. :) Pomocny okazał się STLINK/V2 z kupionej okazyjnie przeze mnie płytki STM32F4DISCOVERY (niejako dla samego STLINK-a). Po paru próbach z konfiguracjami udało mi się ustalić pierwszą rzecz - czyli programowanie i kasowanie pamięci Flash. Najpierw plik konfiguracyjny : [syntax=c]#...
dziękuje za pomoc teraz prawie wszystko jasne :D zrobiłem tak: telnet localhost 4444 reset halt stm32x unlock 0 flash protect 0 0 3 off flash banks flash erase_check 0 flash erase_address 0x08000000 0x00040000 pamięć odblokowana i chroniona no i mam wyczyszczoną całą pamięć teraz posostaje sprawa wgrania programu w postaci hex Dla flash write_image...
Nie generuje pliku *.hex, tylko *.elf, ale do pełnego debugowania wystarczy. Można wybrać tylko zapis Little-endian. Widać, że jest zakładka SFR do podglądu rejestrów (ODR z GPIOx itp.), bez konieczności szukania po adresie, ale cwaniacy zablokowali. Ogólnie jest to skonfigurowany Eclipse i tyle w temacie. Działa tylko z JTAG ST-Link i im pochodnych...
Witam, Od 2 dni walczę z tym błędem: Invalid ACK 0x4 in JTAG-DP transaction Problem powstaje w chwili gdy jest wysyłana CTRL_STAT, który zwraca ACK = 4, taki błąd niestety nie jest nigdzie opisany jedyne wartości jakie może przyjąć ACK to ACK_OK_FAULT, JTAG_ACK_WAIT. Dlatego kieruję do Was pytanie czy ktoś, kto bardziej się orientuje w protokole JTAG-DP,...
próbuje uruchomić openocd i rlinka na targecie stm32 primer (circle). Komunikacja z Ride7 działa, ale chciałem skonfigurować eklipsa tak jak radzi Freedie. Skompilowałem openocd 0.4.0 odpalam: G:\arm\openocd\tcl>openocd openocd -d 3 -l openocd.log -f interface/rlink.cfg -f board/stm3210e_eval.cfg lub G:\arm\openocd\tcl>openocd openocd -d 3 -l openocd.log...
Przypuszczam, że Twój problem może wynikać z "-specs=nosys.specs" - osobiście nigdy nie używałem tej opcji. Przy okazji dwie uwagi: - opcja "-mlittle-endian" jest bezsensu, bo i tak nie jesteś w stanie ustawić innego; - masz układ w którym jest FPU, a nie podałeś nigdzie opcji, która by to FPU włączyła/użyła;
Czy to co pokazałeś w 1. poście to jest to co dostałeś na wyświetlacz po uruchomieniu programu? Program powinien napisać kilka linii tekstu i wygenerować kilka losowych prostokątów. Czy modyfikowałeś coś w funkcjach sterowania samym wyświetlaczem? Czy wiesz jakie powinny być kolory wyświetlanych obiektów i czy są prawidłowe? To co widać na ekranie wygląda...
Czyżby zadziałało :?: :D :?: Plik konfiguracyjny: [syntax=text]# # Joern Kaipf's OOCDLink # # http://www.joernonline.de/contrexx2/cms/... # interface ftdi ftdi_device_desc "OOCDLink" ftdi_vid_pid 0x0403 0x6010 ftdi_layout_init 0x0508 0x0f1b ftdi_layout_signal nTRST -data 0x0200 -noe 0x0100 ftdi_layout_signal nSRST -data 0x0800 -noe 0x0400...
Providera? Nie rozumiem. Zawsze używałem Zylin, odkąd przeczytałem o tym w tutorialu Freddiego. ;) Program na pewno wgrywa się prawidłowo. Sprawdziłem ST-LINK Utility na Windows. Chyba masz rację z tymi symbolami debugowania. Ale to jest dziwne bo mam -g przy kompilacji: /home/(...)/arm/gcc-arm-none-eab... -mcpu=cortex-m3...
komendy do OpenOCD mam takie: # connect to the J-Link gdb server target remote localhost:2331 # Set gdb server to little endian monitor endian little # Set JTAG speed to 5 kHz monitor speed 5 # Reset the target monitor reset monitor sleep 100 # Set JTAG speed in khz monitor speed auto # Vector table placed in RAM monitor writeu32 0xE000ED08 = 0x20000000...
Tak, to wiem, ale funkcja będzie pobierać dane wg swojej deklaracji czy wg deklaracji tablicy? Według swojej deklaracji. Jeżeli przekażesz do funkcji tablice: [syntax=c] uint8_t tab[] = {0x14, 0x2A, 0x56, 0xDF}; [/syntax] to w funkcji odczytasz przez wskaźnik na zmienna 16 bitowa (zakładając ze procek jest little endian): [syntax=c] font[0] - 0x2A14;...
Nie będę ukrywał że wgryzłem się w kod, bo tego nie zrobiłem alee.. Dlaczego musisz to umieszczać w poszczególnych miejscach pamięci? Poczytaj o czymś takim jaki little endiam i big endian może ci coś to pomoże :/ ? nwm Może w tym jest problem :/ Odwiedź ten link Google -> Peczarski M. Mikrokontrolery STM 32 w sieci Ethernet chomikuj -> Na początku...
Wspominam teraz, że czytałem o używaniu jakiegoś pliku elf CK-Link wgranego do STM32, dzięki czemu można zrobić tani debugger CK-Link. Nie wiem jednak, czy tryb debugowania = dostęp do pamięci flash. Jest kilka artykułów na ten temat. np. https://en.eeworld.com.cn/bbs/thread-119... https://hackaday.io/page/12671-how-to-de...
Witam ponownie, problem rozwiązany, a rozwiązanie jest proste (J-link SEGGER), tylko trzeba trochę poszukać, aby debugować arma przez sw-dp (JTMS,JTCK,GND,VCC), należy po pierwsze przestawić gdb server do pracy w sw-dp, podejrzewam, że w większości gdb jest podobnie, wiersz poleceń: C:\jlinkgdbserverCL -if swd Uruchomi się gdb server w tym trybie,...
Witam, Zakupiłem zestaw z prockiem STM32F103ZET6 + TFT + jtag j-link segger i mam pewien problem: Skonfigurowałem środowisko Keil uVision 4 do pracy z j-link'em według manuala ze strony Keil'a i podczas aktywacji opcji FLASH DOWNLOAD w build window wyświetla mi sie: Load "..\\Obj\\test.AXF" Set JLink Project File to "C:\projekty\arm\JLinkSettings....
Witam! Ja jeszcze chciałbym wrócić do kwestii konfiguracji OpenOCD. Posiadam programator Wiggler i moduł z lpc2368 oraz OpenOCD 0.2.0+Eclipse+CodeSourcery. Przerobiłem plik parport.cfg na #Daemon telnet_port 4444 gdb_port 2001 #JTAG interface parport jtag_speed 4 jtag_device 4 0x01 0x0f 0x0e parport_port 0x378 parport_cable wiggler oraz plik lpc2368.cfg...
Tak, to DIY. Ustawianie czegokolwiek w debuggerze nic nie da skoro openocd nie łączy się i kończy działanie. W plikach nic nie zmieniałem, oto one: stlink-v2.cfg stm32f4.cfg Only debugging on evaluation boards is allowed. Debugging on custom hardware is not supported and not allowed
Nie jest tak źle. Działa. Więc jest tak: Pod windowsem flashujemy ST-Linka i robimy z niego J-Linka. Ta strona jest pomocna. http://mikrokontroler.pl/2016/05/06/stli... Uwaga. W Windows trzeba mieć zainstalowane sterowniki pod ST-Linka. UWAGA: Jakby ktoś chciał na powrót zrobić ST-Linka z...
Przy tej samej prędkosci zegara PIC-e maję wolniejszy FLASH - przy 48MHZ PIC-e 2WS a F0 1WS. Tak że będą czytać stałe z FLASH wolniej. oba procki chodzą na 24MHz, ze względu na pobór prądu Na prośbę moderatora: PIC32MX150, STM32F030K6T6 Tu prosta maszyna stanów - funkcja, która wykonuje się wolniej o jakieś 30...40% niż na PIC. Uprzedzam, sprawdziłem,...
Witam serdecznie. Proszę o poradę. Programuje STM32L051 w Atolicu. Wstępna konfiguracja została wykonana poprzez Cube. Kod to tylko i wyłącznie ustawianie w pętli: naprzemiennie stanu wysokiego i niskiego na dwóch pinach z opóźnieniem i wygląda tak: SEGGER J-Link GDB Server V6.44i Command Line Version JLinkARM.dll V6.44i (DLL compiled May 17 2019 17:34:22)...
Czy komuś kiedyś zmalała ilość flash'a w STM32F103C6 ? Na początku było 32kB lecz po kilkudziesięciu zaprogramowaniach zrobiło się 16kB ;). Mikrokontroler pracuje poprawnie, próba załadowania programu większego jak 16kB powoduje błędy. Nie pomagało czyszczenie przez wbudowany boot loader który melduje że jest 32kB flash'a. Rejestr WRPR wskazuje że nie...
Dzięki. W ramach dalszego kombinowania patrzę sobie na pliki wypluwane przez kompilator (elf, hex, bin). Okazuje się, że tam adres jest poprawny. Dopiero we Flashu najstarszy bajt zmienia się z 08 na 88, a cały adres z 0x0800ec89 na 0x8800ec89 (obrazki różnią się endianem, jest też lekkie przesunięcie względem adresów z oryginalnego posta). http://obrazki.elektroda.pl/8514149500_1...
Witam, właśnie dostałem płytki stm32fdiscovery i chciałem zacząć z nim pracować w oparciu o gcc. Sciągnąłem sobie taki szablonowy program z tej strony /usr/lib64/gcc/arm-none-eabi/4.8.1/../..... error: Libraries/libstm32f3.a(stm32f30x_ext... uses VFP register arguments, main.elf does not /usr/lib64/gcc/arm-none-eabi/4.8.1/../.....
Hej Mam podłączony wyświetlacz na sterowniku Ili9341 do Stm32f429. Komunikuję się z tym sterownikiem po SPI. (wyświetlacz mam ustawiony w trybie RGB666) Wszystko działa jak należy. Postanowiłem się pobawić z DMA2D wraz pixel format conversion. Ustawiłem DMA2D https://obrazki.elektroda.pl/6103285500_... Oraz napisałem taki kod: Niestety...
Witam, potrzebowałem podłączyć się z prostą płytką opartą na STM32F100C4T6 i użyłem dość starego programatora opartego na OOCDLINK A, udało mi podłączyć bez większych problemów, ale prędkość podłączenia pozostaje niezwykle wolna, co przekłada się na długi czas programowania i straszne lagi na telnecie i gdb. Testowałem już sam setup na dwóch różnych...
Hmm, tylko że ja korzystam z OpenOCD i eclipse więc tam nie ma za dużo opcji (nie mogę wybrać ani JTAG ani SWD ani pozostałych parametrów o których piszesz. Myślałem, że to coś jest źle skonfigurowane w eclipse. Wszystko o czym napisał BlueDraco można skonfigurować w OpenOCD. Wielkie dzięki za naprowadzenie. Zacząłem przeglądać configi i faktycznie...
Przejrzyj w manualu rozdział "13.3.4 Programmable data width, data alignment and endians", ze szczególnym uwzględnieniem akapitu "Addressing an AHB peripheral that does not support byte or halfword write operations". Potem patrzysz na początek opisu rejestrów timera i wyczytujesz tam: "The peripheral registers can be accessed by half-words (16-bit)...
Z kombinowaniem chodziło mi dokładnie o coś takiego, żeby wynik pokazywany był jako Signed Integer od -32768 do 32767, ale domyślnie do integera brane są 4, a nie 2 bajty pamięci dlatego widoczny wynik był zupełnie inny niż wartości w tablicy. http://obrazki.elektroda.pl/3317665300_1... Co do pamięci napisałem program, który to konwertuje...
dzięki za poradę. Aktualnie nie mam czasu ale sprawdzę tym sposobem. [Edit] Niestety nie mogę wypatrzyć żadnych adresów zaczynających się od 0800xxxx na stosie. A robiłem to tak: sprawdziłem wskaźnik sp i od wskazanej pozycji jechałem w górę - patrzyłem jako little i big endian bo nie pamiętałem jak ma być - nie ma takich adresów o które by mi chodziło....
Cześć, używam czegoś takiego jako bibliotek. Mógłbyś sprawdzić co tu może nie grać? Na moje oko to coś z funkcją wysyłającą tekst lub liczbę jest źle. Zależy mi abym nauczył się wyświetlać na nim jakieś napisy. Dotyku narazie nie chcę. Plik c [syntax=c] #include "ft800.h" #include "main.h" #include "notify.h" #include "spi.h" #include <stdlib.h>...
Witam, Mam żyroskop L3GD20 podłączony pod SPI5 w STM32F429. Problem jaki napotkałem to przesunięcie odpowiedzi o jeden rozkaz. Pierwszy raz z czymś takim się spotykam, polega to na tym, że jeśli odczytuję rejestr np. 0x20, potem 0x21 i 0x22 to w miejscu 0x21 dostaje wartość z 0x20, w miejscu 0x22 dostaje 0x21 zaś jeśli jeszcze raz odczytam 0x22 to już...
Witam, Zakupiłem sobie stm32butterfly, do tego programator z Allegro, przeczuwam, że był to błąd, o nazwie Triton. No i mam problem. Plik do open ocd dostarczony z programatorem jest skonfigurowany do pracy z atsam7 i w sumie nie bardzo wiem jak go zmienić, szczególnie że napisany jest dla starszej wersji openOCD. Probowałem zrobić swój własny plik...
Witam Bardzo proszę o pomoc w konfiguracji programu OpenOCD. Męcze się już drugi dzień, czytam fora i manuale, już ściągnąłem kilka wersji oprogramowania i nic:/ Problem jest następujący. Wykonałem układ turtelizera2 i mam do niego podłączony swój układ z AT91SAM7S64 na pokładzie (dodam że pod CrossStudio wszystko chodzi bezbłędnie i układ był już testowany...
Uruchomiłem bibliotekę FatFS na STM32L i karcie microSD o pojemności 512MB. Na tej karcie wszystko działa. Jednak próby uruchomienia innych kart (2GB, 16GB) zakończyły się niepowodzeniem. Funkcja f_mount po wywołaniu zwraca wartość: FR_OK = 0, /* (0) Succeeded */ Następnie próbuję utworzyć plik i tu pojawia się błąd: FR_DISK_ERR,/* (1) A hard error...
Hmm też standardowy plik bez żadnych modyfikacji ma taki sam problem (stm32f2xx.cfg). Skrypt [syntax=actionscript] # Modified stm32f2xxx script to work with the st32f4 if { [info exists CHIPNAME] } { set _CHIPNAME $CHIPNAME } else { set _CHIPNAME stm32f4xxx } if { [info exists ENDIAN] } { set _ENDIAN $ENDIAN } else { set _ENDIAN little } # Work-area...
Witam! Próbuje rozpocząć debugowanie STM32L476-discovery z wykorzystaniem OpenOCD 0.9.0 pod Eclipse Luna, WIN7 x64. Plik konfiguracyjny zapożyczony z pluginu STM32Cube pod Eclipse gdyż nie znalazłem w oficjalnej wersji OpenOCD. [syntax=stm32l4_cfg] # script for stm32l4x family # # stm32l4 devices support both JTAG and SWD transports. # source [find...
Witam! Wrzucilem FreeRTOS v6.0.2 z ST Firmware v3.1.2 na te plytke. Uzywam IDE CrossWorks z ich standardowymi bibliotekami na ARMv7M w trybie THUMB little-endian. Kompilator pochodzi z IDE i jest to GCC v4.4.2. Nie dziala mi poprawnie komunikacja z karta inteligentnej. Karta pracuje w trybie T0, wiec Half-Duplex. Skonfigurowalem przerwania do USART3...
chodzi o wywołanie? [syntax=bash] arm-none-eabi-gcc -c -mcpu=cortex-m0 -Os -gdwarf-2 -trigraphs -mthumb -g -gg db3 -fpack-struct -Wextra -Wshadow -ffunction-sections -fdata-sections -fno-exc eptions -fomit-frame-pointer -Wall -Wstrict-prototypes -fverbose-asm -Wa,-ahlm s=src/io/io/io_pin.lst -DUSE_STDPERIPH_DRIVER -DSTM32F072RBT6 -DARCHITECTURE_C ORTEX_M0...
Masz rację. Zauważ, że takie użycie HFault ( dokładnie to eskalowane MemUsage ) może być przydatne, zwłaszcza jak kodu przybywa - łatwiej tworzyć oprogramowanie. Podsumowując i tak niezawodność opiera się o testy&redesign&testy. Komendy różniaste: //######################################... //# GDB crib //######################################...
Kolejna odmiana kamery FTY A9. Został kupiony w lutym 2024 roku i nie mam już informacji, skąd dokładnie pochodzi - na pewno Ali Express. Nie widziałem tego nigdzie opublikowanego, więc oto kilka informacji: https://obrazki.elektroda.pl/4039828700_... https://obrazki.elektroda.pl/6202979900_... https://obrazki.elektroda.pl/9552459400_...
little endian format endian stm32 f103rb
kabel skrzyżowany pilarek husqvarna wyciek oleju pompy wspomagania
solar zamontowany pionowo renault clio3 klimatizacyja
Audi A6 C6 2.0 TDI CAHA - Lokalizacja czujnika G83 Zakres częstotliwości Soundbar Majority Bowfell 2.1