Arduino и LCD с Миника 1102Ф
- Войдите на сайт для отправки комментариев
Добрый день. Помогите советом или тыкните в место где читать надо. Есть у меня Ардуина (ну это понятно) и дисплей с кассы миника 1102ф, там он жк с двумя ЭКР1820ВГ1 (COP472-3) и инвертором К561ЛА2. Вообщем я все это дело подключил (по аппаратной части), подключил библиотеку SPI, и дело пошло. Вообщем все управляется, знаки выводятся, а вот с спец сегментами (черточки сверху) у меня не идёт. Вот скетч
#include "SPI.h" void setup() { SPI.begin(); pinMode(10, HIGH); pinMode(9, HIGH); } void loop() { digitalWrite(9, HIGH); digitalWrite(10, HIGH); SPI.beginTransaction(SPISettings(100000, LSBFIRST, SPI_MODE2)); SPI.transfer(B00000000); SPI.transfer(B00000000); SPI.transfer(B00000000); SPI.transfer(B00000000); SPI.transfer(B10011000); digitalWrite(9, LOW); digitalWrite(10, LOW); digitalWrite(10, HIGH); SPI.transfer(B00000000); SPI.transfer(B00000000); SPI.transfer(B00000000); SPI.transfer(B00000000); SPI.transfer(B11100000); SPI.endTransaction(); digitalWrite(10, LOW); delay(1000); }
Вообщем при изменении бит спец сегментов (допустим в младшем кристалле), у меня они управляются половина в младшем, а половина перескакивает на старший кристалл. И не могу понять в чем дело. Посылку формирую как по даташиту. 32 бита информации по знакам, 4 бита спец символа, и 4 бита служебных. Где я ошибся?
Если усреднить, то это последняя посылка из 8 бит (служебные и спец символы)
SPI.transfer(B11100111); - она дает черту над 4 знаком в старшем кристале (ноль через инверсию дает 1, сегмент загорается)
SPI.transfer(B11100011); - а эта дает черту над 4 знаком в старшем кристале и черту над 1 знаком в младшем кристале
http://pdf.datasheetcatalog.com/datasheet/nationalsemiconductor/DS006932.PDF
Посмотри здесь http://arduino.ru/forum/apparatnye-voprosy/displei-16kh1-ot-kkm-elves-mikro?page=1#comment-462869 , делал давно, подробности не помню.
Спасибо посмотрю. Так я и не понял где накосячил. Пришел к тому что сделал табличку символов.
Это символы цифр, ими получается управлять как надо.
Это спец символы и служебные, если читать с младшего бита, то первые 4 это черты, 4 служебных. Номера рядом, это над каким по счету знаку будет черта. И вот получается, что пишу я в младший кристал, а на дисплее выводится в старший кристал. Где допустил ошибку?
Там готовый скетч под этот дисплей. И в нем-же немного теории.
Да да. 89 сообщение. Видел спасибо. Пока нет под рукой его. Чуть позднее проверю, и напишу что получилось.
Все нормально братцы. Все управляется как надо. Дело было в том, что это просто такая распайка у дисплея, там все спец знаки смещены на 1 символ. Короче через SPI все работает с скетчем представленным выше. Может чтоб темы не плодить, сразу тут напишу. Кто подскажет как работать с термопринтером из этого аппарата? Может кто знает хотя-бы просто модель этого принтера, или даташит на него есть? На нем ничего не написано (маркировок нет).
http://cloud.mail.ru/public/FdeQ%2FT8vzX4edV
http://cloud.mail.ru/public/AVGR%2FoVtm1KbPk
http://cloud.mail.ru/public/AXSS%2FfNgjTofkL