Thiết lập Arduino Uno IDE trên Ubuntu


12

Tôi mới sử dụng Ubuntu (Và tôi thích nó). Tôi muốn ghi mã vào Arduino Uno của tôi. Khi tải lên mã, có một thông báo lỗi cho biết Serial Port COM1 not fount found. Did you select the correct one from tools -> serial port menu?. Bây giờ, truy cập các công cụ, tôi không thể chọn cổng nối tiếp vì nó bị vô hiệu hóa. Tôi đang đính kèm một ảnh chụp màn hình như thế nào. Tôi đã làm một cái gì đó tương tự trong các cửa sổ. Làm thế nào để tìm cổng nối tiếp trên Ubuntu?

nhập mô tả hình ảnh ở đây

Câu trả lời:


4

COM1 là một chỉ định của Windows (TM) - nó sẽ trông giống như / dev / ttyACM0, / dev / ttyUSB0 hoặc tương tự trong Linux.

Cổng bị lỗi có xu hướng có nghĩa là bạn chưa đặt loại bảng trước - đi qua các cài đặt trong arduinomenu Công cụ & đặt bảng thành 'Uno', rất có thể bạn cũng sẽ thấy 'cổng' bật và tự động điền.


4

Theo tôi thấy bạn đang sử dụng phiên bản 1.0.5arduino IDE, tôi giả sử rằng bạn đã cài đặt một trong kho apt.

Bạn có thể thử cài đặt một từ snapcraft hoặc một từ trang web của arduino .

Cá nhân tôi đã sử dụng cái thứ hai và bất cứ thứ gì hoạt động như một lá bùa.

Ngoài ra, trường hợp bạn có thể cố gắng loon Tools-> Portnếu tồn tại một cổng không phải là /dev/ttyS0một. Hãy thử chơi với các tùy chọn này. Cuối cùng, bằng cách tìm kiếm trên, dmesgbạn có thể tìm ra cổng nào đã được đặt cho arduno.

Cuối cùng, một cách tiếp cận khác là rút phích cắm arduino của bạn lại và gõ lệnh sau:

dmesg | tail

Để ghi lại sự kiện cuối cùng là sự kiện xảy ra khi arduino được cắm vào cổng usb. Lệnh trên sẽ cho bạn thấy cổng chính xác.

Để có kết quả tốt hơn, bạn có thể sử dụng như sau:

  dmesg | tail -f

Và cắm liên tục và rút phích cắm arduino khỏi cổng usp cho đến khi bạn thấy bất kỳ thông báo nào liên quan đến arduino. Các -ftham số cho phép để hiển thị thời gian thực các bản ghi mới.


Điều đó thực sự có ích, vì đối với tôi nó thực sự là cáp usb không hoạt động. Chỉ chú ý bằng cách xem dmesg. Sau khi thay đổi, tôi chỉ cần thêm người dùng của mình vào nhóm quay số.
Wipster

2

Tài khoản người dùng của bạn có thể không được phép sử dụng cổng nối tiếp.

Hai cách để giải quyết vấn đề này:

  • Dễ nhất, nhưng không nên: Chạy Arduino IDE với quyền root (ví dụ: khởi chạy từ dòng lệnh bằng cách sử dụng sudo).
  • Cách thứ hai, nên làm hơn là thêm người dùng của bạn vào dialoutnhóm, có quyền sử dụng cổng nối tiếp. Sử dụng lệnh sudo adduser $USER dialout. Bạn sẽ cần phải đăng xuất sau đó đăng nhập lại để nó có hiệu lực mặc dù (hoặc thử điều này ). Để liệt kê các nhóm sử dụng hiện tại groupshoặc id -Gn.

Một khi điều này được thực hiện, khi bạn chọn đúng cổng nối tiếp (như những người khác đã đề cập /dev/ttyUSB0), bạn sẽ có thể viết, cho phép bạn lập trình Arduino.


1

Đối với các công cụ nối tiếp, tôi thực sự khuyên bạn nên sử dụng một cái gì đó như minicom thật dễ sử dụng và bạn thực sự thấy / dev / tty mà nó bị ràng buộc. Nó thường là một cái gì đó như / dev / ttyS0

Chỉnh sửa: Vì vậy, đây không chỉ là câu trả lời liên kết dmesg | grep ttymà là cách bạn xem TTY của mình ở cổng nào - xem liên kết ở trên để tham khảo.


Tôi đã đi đến thiết lập cổng nối tiếp và tìm thấy dev / tty8. Bây giờ tôi phải làm sao?
Redwanul Sourav

Và các công cụ Arduino IDE của tôi -> các cổng nối tiếp bị vô hiệu hóa.
Redwanul Sourav

Bạn đã gõ vào thiết bị đầu cuối dmesg | grep tty? Bạn có thể gửi đầu ra của nó?
Ziazis

1

Tôi đã có vấn đề tương tự và đấu tranh để khắc phục nó trong một thời gian. Tôi đã thử các đề xuất thông thường về việc thêm bản thân vào nhóm quay số và cảm thấy thất vọng vì không có lời khuyên nào trong số đó giúp được. Cuối cùng, tôi nhận ra rằng tôi đang sử dụng phiên bản backrev của phần mềm Arduino IDE và một khi tôi nâng cấp, vấn đề đã biến mất.


0

dùng cái này

sudo chmod a+rw /dev/ttyACM0  

hoặc là

sudo chmod a+rw /dev/ttyUSB0

OP chỉ yêu cầu Linux tương đương với COM1, nit mà anh ta không thể nhìn thấy / dev / ttyxyz ...
Fabby
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.