Trình giả lập thiết bị đầu cuối cho CygWin?


11

Tôi có:

  • Windows 7
  • CygWin
  • Một bảng phát triển kết nối với cổng COM1.

Tôi cần:

  • Kết nối với cổng nối tiếp của nó từ CygWin.

Nếu tôi sử dụng Linux, tôi sẽ chạy một chương trình như picocom hoặc minicom . Ngoài ra trong Windows 7 tôi có thể cài đặt HyperTerminal và mở cổng COM1 hoặc sử dụng Putty cho điều đó. Nhưng tôi muốn làm điều đó từ mintty của CygWin vì tôi thích phông chữ của nó và một số niềm vui nhỏ khác. Có vẻ như bản thân mintty không thể hoạt động với các cổng nối tiếp, vì vậy tôi tự hỏi liệu có một chương trình như picocom hoặc minicom trong kho lưu trữ của CygWin không.


Đây là một blog gần đây về việc xây dựng minicom cho cygwin.
X Tian

Câu trả lời:


7

Đã thực hiện một số nghiên cứu về trình giả lập thiết bị đầu cuối ngày hôm nay, tôi cảm thấy cần phải ca ngợi những đức tính của xterm. Câu hỏi thường gặp này ghi lại rất nhiều lỗi trong các trình giả lập thiết bị đầu cuối khác nhằm xtermtương thích hoặc tương thích VT-100. Bạn cũng có thể sử dụng vttestđể tiết lộ rất nhiều những vấn đề này cho chính mình. Điều khiến nhiều người bỏ qua xtermlà việc thiếu cấu hình menu. Điều này dẫn đến nhiều người nghĩ rằng xtermkhông thể cấu hình được, tuy nhiên trên thực tế nó có cấu hình cao, nó chỉ phải được thực hiện thông qua các tệp như .Xresourceshoặc tùy chọn dòng lệnh.

Nhiều sự kìm kẹp hơn bao gồm thiếu hỗ trợ clipboard và do đó thiếu sao chép / dán với Ctrl-Shift-C/ Ctrl-Shift-Vtheo mặc định, tuy nhiên điều này có thể được khắc phục . Một điều nữa là thiếu các tab, tuy nhiên nhiều người dùng Linux tiên tiến thích sử dụng tmuxhoặc GNU screencung cấp các tính năng tương đương.

Điều này dẫn tôi đến câu trả lời thực sự cho câu hỏi của bạn - screencó thể được sử dụng để kết nối với cổng nối tiếp và sẽ hoạt động trên Cygwin mặc dù /dev/ttySXkhông hiển thị vớils . Với điều này, bạn sẽ có thể sử dụng bất kỳ trình giả lập thiết bị đầu cuối nào bạn thích, có thể xtermhoặc mintty. xtermthiếu nhiều tính năng hiện đại và vì vậy có thể không dành cho tất cả mọi người, nhưng điều đáng lưu ý là rất khó để phù hợp với những gì xảy ra dưới mui xe.

Trong trường hợp liên kết chết, đây là cú pháp sử dụng màn hình làm thiết bị đầu cuối nối tiếp:

screen /dev/ttySX baud_rate,cs8|cs7,ixon|-ixon,ixoff|-ixoff,istrip|-istrip

7

Thật ngạc nhiên, picocom đã làm việc hết mình vì những gì tôi cần làm - nói chuyện với các thiết bị nhúng. Không có gói cygwin vì một số lý do, nhưng việc xây dựng nó dễ dàng như

git clone https://github.com/npat-efault/picocom; cd picocom && make

Giả sử thiết bị của bạn hiển thị dưới dạng COM3 dưới cửa sổ, hãy chạy với

./picocom -b 115200 /dev/ttyS2

3

Tôi tin rằng screensẽ làm điều này, cygwin ánh xạ các cổng COM tới / dev / stty * và màn hình sẽ lấy một thiết bị để kết nối.

Từ man screen

Nếu tên tty (ký tự thiết bị đặc biệt) (ví dụ "/ dev / ttya") được xác định là tham số đầu tiên, thì cửa sổ được kết nối trực tiếp với thiết bị này. Loại cửa sổ này tương tự như "màn hình cu -l / dev / ttya". Yêu cầu truy cập đọc và ghi trên nút thiết bị, một lần mở độc quyền được thử trên nút để đánh dấu đường kết nối là bận. Một tham số tùy chọn được phép bao gồm một danh sách các cờ được phân tách bằng dấu phẩy trong ký hiệu được sử dụng bởi stty (1):

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.