Arduino 포트가 감지되지 않아 루트로 실행할 수 없습니다.

Arduino 포트가 감지되지 않아 루트로 실행할 수 없습니다.

나는 두 개의 Ubuntu를 가지고 있습니다. 하나는 18.04이고 다른 하나는 20.04입니다. 또한 Arduino 보드에 문제가 있습니다. 시도해 보았습니다.이것지침(핀 연결 및 ...): 여기에 이미지 설명을 입력하세요

하지만 Arduino IDE는 Arduino가 있는 STM32f013c8t6 보드를 감지할 수 없으므로 다음을 사용하여 포트의 USB 연결을 찾으려고 했습니다.이것아래에서 볼 수 있듯이 답변에 대한 명령을 게시하세요.

sudo usermod -a -G dialout $USER
 ls -al /dev/USB*
ls: cannot access '/dev/USB*': No such file or directory

그리고 다른 사람들의 게시물 지침을 시도하여:


lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 0bda:0821 Realtek Semiconductor Corp. 
Bus 001 Device 004: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
Bus 001 Device 003: ID 174f:2408 Syntek 
Bus 001 Device 006: ID 0483:3748 STMicroelectronics ST-LINK/V2
Bus 001 Device 002: ID 046d:c077 Logitech, Inc. M105 Optical Mouse
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

그리고 명령을 tring하면 lsb -v -d아래 결과를 얻습니다.

 lsusb -v -d  0483:3748

Bus 001 Device 006: ID 0483:3748 STMicroelectronics ST-LINK/V2
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x0483 STMicroelectronics
  idProduct          0x3748 ST-LINK/V2
  bcdDevice            1.00
  iManufacturer           1 STMicroelectronics
  iProduct                2 STM32 STLink
  iSerial                 3 &/26MCKN
  bNumConfigsudo journalctl -furations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           39
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              4 ST Link
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
Device Status:     0x0000
  (Bus Powered)

따라서 아래에서 볼 수 있듯이 스냅으로 설치된 Arduino의 포트 연결을 볼 수 없습니다.

여기에 이미지 설명을 입력하세요

또한 루트 사용자로 Arduino를 실행하려고 시도했지만 아래 오류가 발생했습니다.

sudo arduino
mkdir: cannot create directory '/run/user/0': Permission denied

(process:22688): dconf-CRITICAL **: 19:29:51.179: unable to create directory '/run/user/0/snap.arduino/dconf': Permission denied.  dconf will not work properly.

(process:22688): dconf-CRITICAL **: 19:29:51.179: unable to create directory '/run/user/0/snap.arduino/dconf': Permission denied.  dconf will not work properly.
No protocol specified

(process:22688): dconf-CRITICAL **: 19:29:51.180: unable to create directorit is not worling!.y '/run/user/0/snap.arduino/dconf': Permission denied.  dconf will not work properly.
Picked up JAVA_TOOL_OPTIONS: 
Set log4j store directory /root/snap/arduino/56/.arduino15
No protocol specified
java.awt.AWTError: Can't connect to X11 window server using ':0' as the value of the DISPLAY variable.
    at java.desktop/sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)
    at java.desktop/sun.awt.X11GraphicsEnvironment$1.run(X11GraphicsEnvironment.java:102)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at java.desktop/sun.awt.X11GraphicsEnvironment.<clinit>(X11GraphicsEnvironment.java:61)
    at java.base/java.lang.Class.forName0(Native Method)
    at java.base/java.lang.Class.forName(Class.java:315)
    at java.desktop/java.awt.GraphicsEnvironment$LocalGE.createGE(GraphicsEnvironment.java:101)
    at java.desktop/java.awt.GraphicsEnvironment$LocalGE.<clinit>(GraphicsEnvironment.java:83)
    at java.desktop/java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:129)
    at java.desktop/sun.awt.X11.XToolkit.<clinit>(XToolkit.java:231)
    at java.base/java.lang.Class.forName0(Native Method)
    at java.base/java.lang.Class.forName(Class.java:315)
    at java.desktop/java.awt.Toolkit$2.run(Toolkit.java:588)
    at java.desktop/java.awt.Toolkit$2.run(Toolkit.java:583)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at java.desktop/java.awt.Toolkit.getDefaultToolkit(Toolkit.java:582)
    at java.desktop/java.awt.SystemColor.updateSystemColors(SystemColor.java:473)
    at java.desktop/java.awt.SystemColor.<clinit>(SystemColor.java:465)
    at processing.app.Theme.init(Theme.java:343)
    at processing.app.Base.<init>(Base.java:250)
    at processing.app.Base.main(Base.java:150)


그래서 스냅으로 Arduino를 설치하고 명령으로 수정하기 때문에 이것이 작동하지 않는 것 같지만 오류가 다시 sudo snap connect arduino:removable-media발생하므로 mkdir: cannot create directory '/run/user/0': Permission denied여기에 질문했습니다.

업데이트 1:

기반첫 번째 댓글나는 그것을 시도 sudo journalctl -f하고 얻었다아래 결과:

sudo journalctl -f
-- Logs begin at Thu 2020-11-19 13:24:37 +0330. --
ژوئن 13 20:24:57 so-Lenovo-ideapad-310-15IKB tunnel.service[4851]: add bridge failed: Operation not permitted
ژوئن 13 20:24:57 so-Lenovo-ideapad-310-15IKB nautilus-deskto[17909]: connect() failed
ژوئن 13 20:24:58 so-Lenovo-ideapad-310-15IKB nautilus-deskto[17909]: connect() failed
ژوئن 13 20:24:59 so-Lenovo-ideapad-310-15IKB nautilus-deskto[17909]: connect() failed
ژوئن 13 20:25:00 so-Lenovo-ideapad-310-15IKB nautilus-deskto[17909]: connect() failed
ژوئن 13 20:25:01 so-Lenovo-ideapad-310-15IKB nautilus-deskto[17909]: connect() failed
ژوئن 13 20:25:02 so-Lenovo-ideapad-310-15IKB nautilus-deskto[17909]: connect() failed
ژوئن 13 20:25:03 so-Lenovo-ideapad-310-15IKB nautilus-deskto[17909]: connect() failed
ژوئن 13 20:25:03 so-Lenovo-ideapad-310-15IKB sudo[30096]:       so : TTY=pts/0 ; PWD=/home/so ; USER=root ; COMMAND=/bin/journalctl -f
ژوئن 13 20:25:03 so-Lenovo-ideapad-310-15IKB sudo[30096]: pam_unix(sudo:session): session opened for user root by (uid=0)
ژوئن 13 20:25:04 so-Lenovo-ideapad-310-15IKB nautilus-deskto[17909]: connect() failed
ژوئن 13 20:25:05 so-Lenovo-ideapad-310-15IKB nautilus-deskto[17909]: connect() failed
ژوئن 13 20:25:06 so-Lenovo-ideapad-310-15IKB nautilus-deskto[17909]: connect() failed
ژوئن 13 20:25:07 so-Lenovo-ideapad-310-15IKB tunnel.service[4851]: add bridge failed: Operation not permitted


또한 나는 마지막 Arduino 버전을 설치했습니다.이 링크명령 으로 실행 중이지만 sudo arduino이 문제가 발생할 때까지입니다!.

업데이트2:

내가 본 게 이상하다아래 게시물그것은 말하고있다ST-link V2 프로그래머될 수 있다가짜그리고 가지고잘못된 핀 연결, 가능하다면 내가 변경하면 어떻게 되는지 묻고 싶습니다.2,4,6해당 게시물을 기반으로 핀 구성이요? 아래에서 볼 수 있듯이:

여기에 이미지 설명을 입력하세요

업데이트 3:

나는ST-링크 V2핀에 올바르게 라벨이 붙어 있습니다. 그러니까 문제는 틀린 게 아니지세인트 링크핀 시스템!. 감사해요.

답변1

기반노르베르코멘트,아두이노의 스냅 버전에는 문제가 존재한다고 합니다.여기:

여기에 이미지 설명을 입력하세요

그래서 나는 아래 단계를 수행했습니다.

1- 마지막 Arduino 버전을 설치했습니다.이 링크.

2 기반이 문서, 나는 다음을 설치했습니다.STM32CubePrg

3-테스트를 ​​위해 아래 설정 및 코드 선택:

여기에 이미지 설명을 입력하세요

#define LED_BUILTIN PC13
void setup() {
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(LED_BUILTIN, OUTPUT);
}
 
// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(2000);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);                       // wait for a second
}

4- 위에서 설명한 대로 부트로더를 플래싱하기 위해 FTDI 보드를 컴퓨터에 연결하기 전에 BOOT 0 헤더를 '0' 위치에서 '1' 위치로 전환합니다.이 비디오이 게시물에서 :

여기에 이미지 설명을 입력하세요감사하다.

관련 정보