тогда другие были заботы вроде… а телефон был жэлезный, с рогами под трубку, а труба здоровенная, с расчетом под конскую морду. Знать бы прикуп - сохранил бы для музея. ГДРовский телефон был, наверное.
А я снимал номеронабиратель со старого телефона и подключал к ардуино сообразно:
uint8_t pinDIAL = 5; // Определяем вывод подключённый к синему проводу номеронабирателя (шунтирующий контакт).
uint8_t pinPULSE = 6; // Определяем вывод подключённый к жёлтому проводу номеронабирателя (импульсный контакт).
uint8_t cntPULSE; // Объявляем переменную для подсчёта импульсов от номеронабирателя.
// Красный провод подключён к GND.
void setup(){ //
pinMode(pinDIAL, INPUT); // Переводим вывод pinDIAL в режим входа.
pinMode(pinPULSE, INPUT); // Переводим вывод pinPULSE в режим входа.
digitalWrite(pinDIAL, HIGH); // Подтягиваем вывод pinDIAL к Vcc.
digitalWrite(pinPULSE, HIGH); // Подтягиваем вывод pinPULSE к Vcc.
Serial.begin(9600); // Инициируем связь с монитором последовательного порта на скорости 9600 бит/сек.
} //
//
void loop (){ //
if(!digitalRead(pinDIAL)){ // Если разрешено чтение импульсов (на синем проводе логический «0»), то ...
delay(20); // Подавляем дребезг шунтирующей контактной группы.
cntPULSE=0; // Сбрасываем счётчик.
while(!digitalRead(pinDIAL)){ // Входим в цикл, пока на синем проводе не появится логическая «1» ...
if(digitalRead(pinPULSE)){ // Если поступил импульс (на жёлтом проводе логическая «1»), то ...
// Фронт импульса: //
delay(5); // Подавляем дребезг импульсной контактной группы.
while(digitalRead(pinPULSE)){delay(5);} // Ждём завершения импульса.
// Спад импульса: //
delay(5); // Подавляем дребезг импульсной контактной группы.
cntPULSE++; // Увеличиваем счётчик полученных импульсов.
} //
} // Выход из цикла while сигнализирует о появлении логической «1» на синем проводе.
delay(20); // Подавляем дребезг шунтирующей контактной группы.
if(cntPULSE){ // Если был зафиксирован хотя бы 1 импульс, то ...
if(cntPULSE>=10){cntPULSE=0;} // Если поступило 10 импульсов, значит набрана цифра 0.
Serial.println(cntPULSE); // Выводим набранную цифру (количество поступивших импульсов).
} //
} //
}
СлабО? ![]()
Да, это так.
А что мешает?
При точном повторении нужна постоянная отрисовка всей площади изображения номеронабирателя по каждому касанию стилуса или через короткие промежутки времени при его постоянном скольжении. Отрисовка будет запаздывать. А так технология известна, это фоновый слой - цифры и спрайт-слой диск. Последний надо вращать вокруг центра. Комбинация, что я уже делал по отдельности.

Зачем?
Даже если мы будем рисовать на экране тень от стилуса, вряд ли это коснется всей площади экрана.
PS. Вам бы бюджет распиливать и под этот распил обоснование писать!
Так что именно мешает?
Кстати, это не совсем правдиво: появился какой-то странный красный ободок, появился дефект сверху изображения и исчез упор.
Какой ободок? Это просто иллюстрация из паинта по существу проблемы ![]()
Никто и никогда это не сделает штатными средствами библиотек. Мой способ заведомо проиграет в скорости отрисовки.
Как второе утверждение следует из первого?
Или “способ” заранее выбирается именно по второму утверждению?
Никак не следует. Одно с другим не связано. Будет желание, сделаю по мотивам - лёгкое напоминание образа номеронабирателя на сенсорном ili9341 ![]()
Кстати, автор на сайте СС пригласил всех желающих поделиться предложениями по улучшении его библиотеки
Кстати его библиотекой не пользовался ни разу.
что так, не взлетело?
Да нет, просто покупатели на али не советовали ею пользоваться - сложна в понимании якобы. Да и тут изначально рекомендовали “вафешаре по”.
Дисплей дико моргает при выводе, и я не помню, было ли так в прошлый раз - может думал так и надо, для теста сделано?..
Вопрос: у вас как выводится изображение, “за один раз” или тоже дико моркает черный-белый где-то 4гц на глаз? в течении 5сек где-то?
Хрень какая-то. Толи дисплей дохлый, толи я его подключил неправильно… В программке там идет ожидание чего-то, когда его убираю - вообще не выводит ничего:
do
{
display.fillScreen(GxEPD_WHITE);
display.setCursor(hwx, hwy);
display.print(HelloWorld);
display.setCursor(utx, uty);
display.print(fullscreen);
display.setCursor(umx, umy);
display.print(updatemode);
}
while (display.nextPage()); // если убираю, не выводит, видимо тут это "моргание"
Моргает при обновлении экрана, может не так часто как вы пишите, но это норма для них…шарики перетряхивает.
… с поста 130 котиков не перетряхивал, так и стоят- картинкой на столе ![]()
… календарь перетряхиваю каждый день. он быстрее меняет картинку.
У меня моргает много раз, быстро и долго… Юзать как дисплей в таком режиме невозможно. У меня были несколько Эл.бумажных книжек, там моргает совсем недолго. А тут весь экран черный - белеет и так много раз.
Думаю толи софт, толи сам дисплей. Черт, тот я увез и не помню, как он там моргал. Куда рыть, непонятно. Если он такой по жизни, то на спидометр он не пойдет конечно. Если картинку менять раз в день то и ОК.
Куда-то бы видео выложить, посмотрю куда.
О! на Яндекс:
вроде доступ открыл.
Я посмотрел. Да, мельтишит часто, у меня реже, но суть та же
Попробуйте ПО как я пробовал.




