Ви можете використовувати sttyкоманду для встановлення таких параметрів.
Це покаже всі налаштування на першому послідовному порту (замініть ttyS0на, ttyUSB0якщо ви використовуєте послідовний порт USB):
stty -F /dev/ttyS0 -a
Це встановить швидкість передачі даних на 9600, 8 біт, 1 стоп-біт, без паритету:
stty -F /dev/ttyS0 9600 cs8 -cstopb -parenb
Одне, що зазвичай бентежить людей, - це те, що більшість послідовних драйверів скидає налаштування до значень за замовчуванням після закриття пристрою (тобто жоден процес більше не відкриває пристрій). Отже, наведена вище sttyкоманда встановить налаштування, тоді, коли це буде виконано, драйвер скидає їх знову. Якщо ви спочатку відкриєте пристрій для свого програмного забезпечення для POS, а потім виконаєте sttyналаштування, вони повинні триматися, поки ваше ПО не закриє пристрій знову (наприклад, після виходу).
Я б подумав, що програмне забезпечення POS повинно мати певний спосіб налаштування цих параметрів самостійно. Якщо ви пишете власне програмне забезпечення для приводу принтера, спочатку переконайтесь у пристрої та виконайте sttyкоманду.
Можливо, вам також доведеться пограти з іншими налаштуваннями, наприклад, opostозначає, що буде виконуватися післяобробка. Якщо opostі onlcrобидва встановлені, onlcrзаклик призведе до додавання додаткового повернення каретки (0xd), коли виводиться байт нового рядка (0xa), як правило, для запобігання друку сходових кліток, таких як
This is a line
This is the next line
Це може бути або не бути тим, що ви хочете. Якщо ви хочете сирої один-до-одного вихід на принтер включити opostвимкнути (додати -opostдо sttyпараметрами).
Рукостискання (контроль потоку) також контролюється stty, не знаючи більше про принтер, я не можу сказати, чи потрібно вам щось встановлювати.
Перегляньте сторінку сторінки, sttyщоб отримати більше інформації.
screen /dev/ttyS0 <baud-rate>(за замовчуванням було б 9600 незалежно від налаштувань на загальну систему, навіть не впевнені, що такі існують)