Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Для начинающих (http://zx-pk.ru/forumdisplay.php?f=43)
-   -   Light Pen (http://zx-pk.ru/showthread.php?t=12546)

null_device 14th April 2010 06:12

Quote:

Originally Posted by ALKO (Post 274959)
каким же образом комп будет знать положение луча на экране

А, каким образом делаются мультиколоры?!:v2_conf2:

Quote:

Originally Posted by Slesar (Post 274830)
Положение пера определяется по разности времени включения фотодиода в начале кадра и его фактического срабатывания



---------- Post added at 08:12 ---------- Previous post was at 08:11 ----------

Вероятно, перо будет работать на разных моделях поразному (даже после калибровки).

ALKO 14th April 2010 22:32

Quote:

Originally Posted by null_device (Post 275060)
А, каким образом делаются мультиколоры?!

ну про дополнителную хардвар-доработку там не указывается.
толко подключение к порту 254dec и на этом всё.

psb 14th April 2010 22:39

по ходу это то перо, по поводу которого я негодовал... там просто фотодатчик, ни к чему не привязанный. при подносе его к экрану и нажатию какой-либо кнопки происходит... ПИПЕЦ! с экрана все сохраняется и начинается поиск места, куда приложен датчик. типа, заполнили половину экрана белым, половину черным. сигнал есть? значит мы на белой половине, делим ее на 2 части и повторяем. вот такое перо.

ALKO 14th April 2010 22:54

Клёвое решение.
вопрос в том как "быстро" обрабатывается сигнал.

psb 14th April 2010 23:33

так легко.
пишешь прогу:
1. сохранить экран
2. еи:хальт
3. быстро (хоть через стек) заполняешь экран (атрибутами) - половина черная, половина белая.
4. еи:хальт
5. луч вверху, экран светится, опрашиваешь датчик (1 раза хватит). если попал на светлую половину, то делишь ее опять на светлую и темную, а темную оставляешь. опять все делаешь быстро, быстрее чем луч рисует экран. если попал на темную, ее красишь наполовину, а светлую всю делаешь черной.
6. еи:хальт
7. луч опять вверху, экран отрисован, опрашиваешь датчик, .....
8. ......

повторяешь пока не вычислишь знакоместо. для первого раза (чисто заценить) достаточно.

Х. восстанавливаешь то, что было на экране.


возможно что сразу и не прокатит, может быть будет нужен полностью черный экран перед каждым новым светлым "квадратом". творческая задача, что тут скажешь...

BYTEMAN 15th April 2010 11:02

то световое перо, что в этой книге, полное Г.... работает по такому принципу, что описал psb. Даже не знаю, были ли под спек перья, которые отлавливали развёртку... Хотя, возможно, что и были. Например, посмотрите софт для пера Dopler. Интересно найти для него схему...

Slesar 15th April 2010 12:20

Может, я туплю, но для отслеживания развертки надо сделать следующее:
1. Взять пиксельклок и кадровый синхроимпульс.
2. Взять счетчик.
3. По кадровому импульсу обнулять счетчик, по пиксельклоку - считать импульсы, пока не сработает датчик
4. Перед обнулением считывать значение счетчика, делить нацело на количество пикселей в строке.
5. Из этой же операции брать остаток от деления. - это координата Х.
6. Если остаток ноль, то (4)-координата У, иначе прибавить к ней 1, и все равно У.

---------- Post added at 11:20 ---------- Previous post was at 11:02 ----------

А можно и аппаратно:
1. Взять пиксельклок, кадровую и строчную синхронизацию.
2.Взять 2 счетчика - один будет считать строчные импульсы, другой по ним обнуляться, а считать пиксельклок.
3. при срабатывании фотоэлемента считываем оба счетчика, получаем строку и пиксель.
4. по кадровому импульсу обнуляем, повторяем.

psb 15th April 2010 12:59

Quote:

Originally Posted by Slesar (Post 275480)
А можно и аппаратно:

эээ... а то, что, программно было?:)))))

и еще придется сам датчик подшаманить, чтобы срабатывал только под лучом. аналоговую схему городить скорее всего...

Slesar 15th April 2010 14:12

С делением - таки да, программно. Может, даже и счетчик можно программно сделать. На датчик надо поставить пороговый элемент, можно компаратор, чтоб подгонять уровень, и надеть на него резинку от лишнего света.

psb 15th April 2010 16:23

Quote:

Originally Posted by Slesar (Post 275524)
С делением - таки да, программно.

вот даже если тупо сделать INIR (или кучу INI) из порта, то точность будет +- лапоть. тут только схему менять. т.е. счетчики аппаратные.


All times are GMT +4. The time now is 23:57.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.