Получение Epson подтверждает получение принтера для печати из Ардуино

Вы упомянули в комментарии, что поле gender в вашем объекте Student на самом деле является Enum, а не String.

Ваша ошибка состояла в том, что вы определили ComboBox с типом String вместо вашего полового перечисления.

Предполагая, что ваш половой enum класс называется Gender, это будет работать:

ComboBox gender = new ComboBox("Gender");
Binder binder = new Binder(Student.class);
binder.bind(gender, Student::getGender, Student::setGender);

Вы можете добавить ItemLabelGenerator в ComboBox, чтобы определить, как должно отображаться ваше гендерное перечисление. По умолчанию он будет использовать toString() класса. Но вы можете использовать его, например, для сборки Vaadin Components, если хотите. посмотрите, как это делается в документации ).

12
задан Peter Mortensen 7 October 2012 в 03:39
поделиться

3 ответа

Вы могли проверить, можно ли связаться с ПК, и из Ардуино и к принтеру.

Я использовал бы осциллограф, чтобы видеть, выходят ли последовательные сигналы из Ардуино и МАКС, как они должны, но затем у Вас, вероятно, нет того.

Вы уверены, что коммуникационные настройки корректны? Вы устанавливаете скорость в бодах на 9 600, но что относительно битов данных, четности, стоповых битов? Что относительно строк управления?

1
ответ дан 2 December 2019 в 23:20
поделиться

Я сцепил бы другой ПК вместо принтера к другому концу последовательного кабеля и выполнил бы telnet или PuTTY в той системе, чтобы удостовериться, что Вы связываетесь и на самом деле говорите через последовательный порт. Если так, Вы могли использовать то же решение отправить данные на принтер для подтверждения всех настроек, таких как количество битов данных, четности, и т.д.

1
ответ дан 2 December 2019 в 23:20
поделиться

Вы используете приемопередатчик RS-232? Выводы Ардуино 0 и 5 В для сериала, в то время как принтер использует-12 и 12 В для сериала. Необходимо использовать MAX232 или аналогичное устройство для получения корректного физического интерфейса. (Вы смогли обманывать, если Вы инвертируете последовательный порт на Ардуино, но это не могло бы работать, и это - больше проблемы, просто начиная.)

После того как это заботилось о, РТС и DTR могут быть Вашей проблемой. Необходимо смочь изменить настройки Dip-переключателя на принтере и выключить управление потоком в целом или переключить его на программное управление потоком.

Кроме того, Вы, возможно, должны отправить и перевод строки и возврат каретки.

Однако однажды все это сделало это, должен распечатать очень хорошо, даже без любых команд сброса. Отправьте набор символов ASCII и перевода строки / возвраты каретки, и он выложит все это.

Можно проигнорировать строку RX (на стороне Ардуино, TX на стороне принтера) на данный момент - просто отправляют ему данные, пока Вы не выясняете проводное соединение, преобразование уровня, управление потоком, и т.д.

3
ответ дан 2 December 2019 в 23:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: