Forum Linux Mint Polska

Pełna wersja: Programator St Link V2 - nie jest widoczny w STM32 CubeProgrammer
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Stron: 1 2
Witam.

Mam następujący problem, a mianowicie w wine zainstalowałem program STM32 St-link utility. Program zainstalował się poprawnie ale niestety nie wykrywa programatora St Link V2 podłączonego pod USB. Poniżej kopia listingu z konsoli:


Kod:
[email protected]:~$ lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 0bda:c024 Realtek Semiconductor Corp. Bluetooth Radio
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 0483:3748 STMicroelectronics ST-LINK/V2
Bus 001 Device 003: ID 046d:c534 Logitech, Inc. Unifying Receiver
Bus 001 Device 002: ID 13d3:5a08 IMC Networks Integrated Camera
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Kod:
[email protected]:~$ dmesg | grep tty
[    0.074178] printk: console [tty0] enabled
[email protected]:~$

Sporo szukałem w internecie ale wdrażając porady nic z tego nie działało. Proszę o pomoc jak zrobić aby ten program wykrywał ten programator. Mam także zainstalowany program STM32 CubeProgrammer bezpośrednio w Mint i on także nie widzi programatora. W Windowsie wszystko działa. Porty USB w Mint działają bo bez problemów  korzystam z drukarki poprzez port USB oraz z bezprzewodowej myszki.

Emil4

Wyniki poleceń w terminalu wklejamy na forum w znacznikach CODE./YB3
Z Wine to może być problem, bo jeśli nie jest to jakaś przejściówka USB-COM (z poszukiwań wynika, że nie jest) to raczej nie zadziała.

Można próbować w najnowszym Wine w wersji rozwojowej.


Poniżej masz instrukcje dla pracy natywnej w Linux,
źródło: https://freeelectron.ro/installing-st-li...-on-linux/
Cytat:Installing ST-Link v2 to flash STM32 targets on Linux
Posted in Embedded By Grig On October 23, 2020
This guide is targeting Linux users and ST-Link v2 hardware.
[Obrazek: stlink-v2-1024x680.png]
First, we are going to install the necessary libraries and build tools:
sudo apt-get install git make cmake libusb-1.0-0-dev
sudo apt-get install gcc build-essential
Now, we will download and build the ST-Link utilities:
cd ~myusername
mkdir stm32
cd stm32
git clone https://github.com/stlink-org/stlink
cd stlink
cmake .
make
[/url]
Now we copy the built binaries to their place:
cd bin
sudo cp st-* /usr/local/bin
cd ../lib
sudo cp *.so* /lib32
then udev rules:
sudo cp stlink/config/udev/rules.d/49-stlinkv* /etc/udev/rules.d/
Now, plug the ST-Link device into the USB port, but DON’T CONNECT the target board, then type:
lsusb
If everything went OK, you should see something like this:
[Obrazek: test-ok.png]
then:
[Obrazek: Screenshot_2019-12-09_22-41-37.png]
Now, disconnect the ST-LINK from USB, connect the four wires to the target board as in the picture
[Obrazek: connections.png]
then plug back the ST-Link to the USB and type:
st-flash read dummy.bin 0 0xFFFF
You should see something like:
[Obrazek: st-flash-capture-1.png]
If the target board is not connected, the ST-Link device will be identified, but you (obviously) will get an error during memory read.
We can decide it is correctly installed.
Please add comments if you encounter any issue using this guide. I hope it will help you.
Thanks for the effort to all contributors to this repository [url=https://github.com/stlink-org/stlink]https://github.com/stlink-org/stlink
.
Check these articles related to STM32.
The older version of this post is here.
Doszedłem do polecenia cmake . i wyrzuciło mi:

Kod:
[email protected]:~/stm32/stlink$ cmake .
-- The C compiler identification is GNU 9.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- broken
CMake Error at /usr/share/cmake-3.16/Modules/CMakeTestCCompiler.cmake:60 (message):
  The C compiler

    "/usr/bin/cc"

  is not able to compile a simple test program.

  It fails with the following output:

    Change Dir: /home/linux/stm32/stlink/CMakeFiles/CMakeTmp
   
    Run Build Command(s):/usr/bin/make cmTC_ff1c9/fast && /usr/bin/make -f CMakeFiles/cmTC_ff1c9.dir/build.make CMakeFiles/cmTC_ff1c9.dir/build
    make[1]: Wejście do katalogu '/home/linux/stm32/stlink/CMakeFiles/CMakeTmp'
    Building C object CMakeFiles/cmTC_ff1c9.dir/testCCompiler.c.o
    /usr/bin/cc    -o CMakeFiles/cmTC_ff1c9.dir/testCCompiler.c.o  -c /home/linux/stm32/stlink/CMakeFiles/CMakeTmp/testCCompiler.c
    Linking C executable cmTC_ff1c9
    /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_ff1c9.dir/link.txt --verbose=1
    /usr/bin/cc      CMakeFiles/cmTC_ff1c9.dir/testCCompiler.c.o  -o cmTC_ff1c9
    /usr/bin/ld: cannot find Scrt1.o: Nie ma takiego pliku ani katalogu
    /usr/bin/ld: cannot find crti.o: Nie ma takiego pliku ani katalogu
    collect2: error: ld returned 1 exit status
    make[1]: *** [CMakeFiles/cmTC_ff1c9.dir/build.make:87: cmTC_ff1c9] Błąd 1
    make[1]: Opuszczenie katalogu '/home/linux/stm32/stlink/CMakeFiles/CMakeTmp'
    make: *** [Makefile:121: cmTC_ff1c9/fast] Błąd 2
   
  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
  CMakeLists.txt:17 (project)


-- Configuring incomplete, errors occurred!
See also "/home/linux/stm32/stlink/CMakeFiles/CMakeOutput.log".
See also "/home/linux/stm32/stlink/CMakeFiles/CMakeError.log".
[email protected]:~/stm32/stlink$


a po wpisaniu polecenia "make":

Kod:
[email protected]:~/stm32/stlink$ make
[RELEASE]
make[1]: *** Nie podano obiektów i nie znaleziono makefile. Stop.
make: *** [Makefile:34: release] Błąd 2
[email protected]:~/stm32/stlink$


Co jest nie "teges"?
Używaj znaczników kodu.
Stosuj zasady forum (podaj specyfikację komputera)
(25-04-2021, 12:29)dedito napisał(a): [ -> ]Używaj znaczników kodu.
Stosuj zasady forum (podaj specyfikację komputera)

Należę do tzw. seniorów i jeszcze nie bardzo wiem jak stosować np. znaczniki. Co do specyfikacji komputera to jest podana w pierwszym wierszu listingu konsoli czyli Lenovo - IdeaPad-L340-15API z 8GB RAM. Dodam, że kiedy używam Arduino to wszystko działa i w zakładce port jest: /dev/ttyACM0 (Maple Mini).
Link do zasad jest w mojej stopce.

Specyfikacja komputera obejmuje też jego system, a nie wiadomo o jaki system chodzi w tym przypadku.
Wiadomo, że to Linux Mint, ale nie wiadomo jaka wersja.
Od tego zależy porada. Ewentualnie poszukaj samodzielnie w której paczce znajdują się pliki, których nie umie znaleźć kompilator i sobie ją doinstaluj.
Chodzi o ten kawałek:
Cytat: /usr/bin/ld: cannot find Scrt1.o: Nie ma takiego pliku ani katalogu
/usr/bin/ld: cannot find crti.o: Nie ma takiego pliku ani katalogu
Czyli szukasz plików Scrt1.o oraz crti.o w bazie paczek ubuntu https://packages.ubuntu.com/ z uwzględnieniem wersji.



"kiedy używam arduino" nie wiem jak mam to rozumieć.
(25-04-2021, 13:02)dedito napisał(a): [ -> ]Link do zasad jest w mojej stopce.

Specyfikacja komputera obejmuje też jego system, a nie wiadomo o jaki system chodzi w tym przypadku.
Wiadomo, że to Linux Mint, ale nie wiadomo jaka wersja.

"kiedy używam arduino" nie wiem jak mam to rozumieć.

System to Linux Mint Cinammon 20. Mam zainstalowany program Arduino 1.8.14 do programowania modułów Arduino Nano i Uno i programuję poprzez port USB zamontowany w modułach Arduino z wykorzystaniem wgranego Bootloadera.
Do programowania Arduino, jak rozumiem, nie jest używany przedmiotowy programator St Link V2 więc nie widzę tu związku z opisywanym problemem.
Spójrz na mój poprzedni post dopisałem parę istotnych rzeczy.
(25-04-2021, 13:18)dedito napisał(a): [ -> ]Do programowania Arduino, jak rozumiem, nie jest używany przedmiotowy programator St Link V2 więc nie widzę tu związku z opisywanym problemem.
Spójrz na mój poprzedni post dopisałem parę istotnych rzeczy.

Myślałem, że wiadomość o tym pod jaką nazwą portu jest możliwość połączenia się z płytką Arduino coś pomoże.
Przenoszę do odpowiedniego działu i zmieniam tytuł wątku na zgodny z zasadami forum.
Stron: 1 2