04.08.2020 17:24
asfw7qlm2
 
У старого доброго Axiohm TH210 можно было настраивать скорость работы принтера, потом в софте\настройках ком-порта такую же выставлять.
Ох помню как ручками скорость настраивал) - у обычного TH210 на плате были 2 переключателя:


(0,22Мб)
Если их перевести оба вниз (или вверх?) при отключенном питании, потом включить питание при нажатой кнопке протяжки, отпустив ее после второго "пи-и-ик" - можно было попасть в режим программирования, принтер писал пункты меню.


(0,02Мб) А этой же кнопкой протяжки можно было по ним перемещаться. Например в меню нужен пункт 2 - делаем 2 коротких нажатия на протяжку и 1 длинным фиксируем до "пика", принтер после этого должен был напечатать внутренние пункты меню...
Так вот там и установка скорости внутри была. Если память не подводит, то нужно было сделать 3 коротких, 1 длинный, 2 коротких, 1 длинный, потом 5 или 6 коротких (для 57600 и для 115200) потом длинный... Эх... Там же вроде по менюшкам можно было кодовые страницы "по умолчанию" выбирать)

И кракозябра разная бывает из-за скорости и из-за кодировки... Хотя если латиницу и символы печатает, тут уже только кодировка
04.08.2020 20:23
student
 
Цитата:
asfw7qlm2 Там же вроде по менюшкам можно было кодовые страницы
и
Цитата:
asfw7qlm2 И кракозябра разная бывает из-за скорости и из-за кодировки
а чем это отличается от https://olegon.ru/showpost.php?p=354347&postcount=30 и аттача в котором все это прописано ?
или это просто для закрепления материала ?
05.08.2020 09:34
УКМ_эксплуатант_2
 
Косяк в преобразовании в 886.
Где то напортачил в функции S1251To866.
Ибо если пихаю строку типа:
LazSerial1.WriteData(Chr(Код1)+Chr(Код2)+Chr(Код3));
все печатается нормально: по русски и быстро....
05.08.2020 09:54
student
 
Цитата:
УКМ_эксплуатант_2 Где то напортачил в функции S1251To866
свой вариант используешь ? а смысл если в апи винды есть "CharToOemA" в user32.dll и аналоги ? просто я тоже ранее свое преобразование мутил, потом как то на тайминги проверил и ... вернулся на апи винды :)
05.08.2020 10:37
УКМ_эксплуатант_2
 
Свою. Со старого проекта взял.
Подозреваю, что Лазарус как то по иному строки в TMemo хранит (не так как Дельфи)....
Надо попробовать напрямую из файла вытягивать, а не из Мемо....
11.08.2020 17:01
УКМ_эксплуатант_2
 
Таки победил!
Сия прожка сидит и смотрит в папку (прописывается в ини) раз в ИКС секунд (ини). Если видит файл с именем ФЛАГ (ини), то берет файл с именем СОДЕРЖАНИЕ (ини) и отправляет его в com-порт (номер в ини), проматывает несколько линий (ини) и режет. После печати удаляет ФЛАГ и СОДЕРЖАНИЕ.
Требования к файлу СОДЕРЖАНИЕ:
-кодировка 866;
-в строке - 43 символа:
Требования к файлу ФЛАГ:
- никаких;

Осталось "причесать" и научиться останавливать "бесконечный" цикл опроса папки кнопкой на приложении (в голове крутятся некие потоки из DELPHI, но:
а. не помню тонкостей;
б. как это в лазарусе реализовано вообще не знаю (пока что);

Если интересно - могу исходники сюда кинуть...
11.08.2020 17:03
OlegON
 
Кидай, не спрашивай :) Мало ли, кому пригодится.
13.08.2020 09:21
УКМ_эксплуатант_2
 
Причешу малость
Часовой пояс GMT +3, время: 18:33.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.