Bạn có thể sử dụng sttylệnh để đặt các tham số như vậy.
Điều này sẽ hiển thị tất cả các cài đặt trên cổng nối tiếp đầu tiên (thay thế ttyS0bằng ttyUSB0nếu sử dụng cổng nối tiếp USB):
stty -F /dev/ttyS0 -a
Điều này sẽ đặt tốc độ baud thành 9600, 8 bit, 1 bit stop, không có tính chẵn lẻ:
stty -F /dev/ttyS0 9600 cs8 -cstopb -parenb
Một điều thường khiến mọi người nhầm lẫn là hầu hết các trình điều khiển nối tiếp sẽ đặt lại cài đặt về mặc định sau khi thiết bị được đóng lại (tức là không có quá trình nào mở thiết bị nữa). Vì vậy, sttylệnh trên sẽ thiết lập các cài đặt, sau đó khi hoàn thành trình điều khiển đặt lại chúng. Nếu trước tiên bạn có phần mềm POS của bạn mở thiết bị và sau đó thực hiện sttycài đặt, chúng sẽ được giữ xung quanh cho đến khi phần mềm POS của bạn đóng lại thiết bị (ví dụ: khi thoát).
Tôi đã nghĩ rằng phần mềm POS nên có một số cách để tự cấu hình các cài đặt này. Nếu bạn đang viết phần mềm của riêng mình để lái máy in, trước tiên hãy đảm bảo bạn mở thiết bị và sau đó thực hiện sttylệnh.
Bạn cũng có thể cần phải chơi xung quanh với các cài đặt khác, ví dụ: opostcó nghĩa là quá trình hậu xử lý đầu ra sẽ được thực hiện. Nếu opostvà onlcrcả hai được đặt, onlcrsẽ làm cho một lợi nhuận vận chuyển thêm (0xd) được thêm vào khi một byte dòng mới (0xa) được xuất ra, thường là để ngăn in cầu thang như
This is a line
This is the next line
Điều này có thể hoặc không thể là những gì bạn muốn. Nếu bạn muốn một đầu ra một-một thô cho máy in oposttắt (thêm -opostvào các sttytham số).
Bắt tay (điều khiển luồng) cũng được điều khiển stty, mà không biết thêm về máy in Tôi không thể biết bạn có cần đặt gì không.
Kiểm tra sttytrang web để biết thêm thông tin.
screen /dev/ttyS0 <baud-rate>(mặc định sẽ là 9600 cho dù cài đặt toàn hệ thống là gì, thậm chí không chắc chắn tồn tại như vậy)