Важная информация

User Tag List

Страница 1 из 6 12345 ... ПоследняяПоследняя
Показано с 1 по 10 из 51

Тема: ПК8000 - Клавиатура

  1. #1
    Guru Аватар для Mick
    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    7,805
    Благодарностей: 2833
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию ПК8000 - Клавиатура

    Вот выкладываю схему клавиатуры в хорошем качестве. Както баловался - перерисовал клаву в PCAD-2002. Выкладываю в виде pdf файла. Кстати если ее заменить на PS/2 то по моим прикидкам в AVR tiny2313 вполне влезет.

    Вообщем обсуждаем вопросы связанные с работой клавиатуры данного семейства, а именно вопросы по штатной клавиатуре, различные виды эмулирования, подключение других типов клавиатур и т.д.
    Вложения Вложения
    Последний раз редактировалось Mick; 12.11.2008 в 15:08.
    Сайт поддержки моих изделий - http://micklab.ru/
    Форум поддержки - http://forum.tslabs.info/viewforum.php?f=51

  2. Этот пользователь поблагодарил Mick за это полезное сообщение:
    perestoronin (11.07.2015)

  3. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  4. #2
    Guru Аватар для caro
    Регистрация
    14.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,481
    Благодарностей: 776
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Mick Посмотреть сообщение
    Вот выкладываю схему клавиатуры в хорошем качестве.
    В точности раскладка клавиатуры MSX:
    Код:
    International key matrix
    	bit 7	bit 6	bit 5	bit 4	bit 3	bit 2	bit 1	bit 0
    row 0	7 &	6 ^	5 %	4 $	3 #	2 @	1 !	0 )
    row 1	; :	] }	[ {	\ ¦	= +	- _	9 (	8 *
    row 2	B	A	DEAD	/ ?	. >	, <	` ~	' "
    row 3	J	I	H	G	F	E	D	C
    row 4	R	Q	P	O	N	M	L	K
    row 5	Z	Y	X	W	V	U	T	S
    row 6	F3	F2	F1	CODE	CAPS	GRAPH	CTRL	SHIFT
    row 7	RET	SELECT	BS	STOP	TAB	ESC	F5	F4
    row 8	→	↓	↑	←	DEL	INS	HOME	SPACE
    row 9	NUM4	NUM3	NUM2	NUM1	NUM0	NUM/	NUM+	NUM*
    row 10	NUM.	NUM,	NUM-	NUM9	NUM8	NUM7	NUM6	NUM5
    В ATTiny2313 код конечно влезет, и линий ввода/вывода хватит,
    но лучше взять ATTiny48 в которой есть такая штука как Pin Change Interrupt.
    Будет чуть дороже, и несколько избыточно по вводу/выводу, зато
    никаких проблем с реакцией на опрос клавиатуры со стороны компьютера.
    Последний раз редактировалось caro; 09.11.2008 в 21:02.

  5. #3
    Guru Аватар для Mick
    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    7,805
    Благодарностей: 2833
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от caro Посмотреть сообщение
    В ATTiny2313 код конечно влезет, и линий ввода/вывода хватит,
    но лучше взять ATTiny48 в которой есть такая штука как Pin Change Interrupt.
    Будет чуть дороже, и несколько избыточно по вводу/выводу, зато
    никаких проблем с реакцией на опрос клавиатуры со стороны компьютера.
    Если я понял, то ты ведешь речь о прерывании возникающем при изменении входов. А как быть если злобный юзер сканирует только одну линейку клавиш, а другие ему как бы и не нужны. Тогда прерывание возникнет только один раз и все. Ну насколько я это понимаю.
    Сайт поддержки моих изделий - http://micklab.ru/
    Форум поддержки - http://forum.tslabs.info/viewforum.php?f=51

  6. #4
    Guru Аватар для caro
    Регистрация
    14.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,481
    Благодарностей: 776
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Mick Посмотреть сообщение
    Если я понял, то ты ведешь речь о прерывании возникающем при изменении входов. А как быть если злобный юзер сканирует только одну линейку клавиш, а другие ему как бы и не нужны. Тогда прерывание возникнет только один раз и все. Ну насколько я это понимаю.
    Правильно понимаешь.
    Дело в том, что код на шине чтения порта клавиатуры зависит от двух событий:
    1) От кода сканирования матрицы клавиатуры;
    2) От состояния клавиш клавиатуры, подключенной к контроллеру.
    Пока код сканирования неизменен, микропроцессору надо только, в соответствии с этим
    кодом, изменять данные в порту чтения, отслеживая состояние клавиш клавиатуры.
    Причем делать это можно не торопясь.
    Но когда код сканирования изменился, реагировать надо незамедлительно,
    поскольку сразу после смены линии сканирования идет чтение данных, и
    если запоздать, то прочитается ложный код, от предыдущего состояния данных.
    Для этого и надо использовать прерывание по смене состояния линий сканирования.
    Последний раз редактировалось caro; 11.11.2008 в 20:10.

  7. #5
    Moderator Аватар для Error404
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    3,750
    Благодарностей: 1014
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от caro Посмотреть сообщение
    Правильно понимаешь.
    Дело в том, что код на шине чтения порта клавиатуры зависит от двух событий:
    1) От кода сканирования матрицы клавиатуры;
    2) От состояния клавиш клавиатуры, подключенной к контроллеру.
    Камиль, как смотрите на то чтобы доделать контроллер клавиатуры для Ориона?
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  8. #6
    Guru Аватар для caro
    Регистрация
    14.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,481
    Благодарностей: 776
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Камиль, как смотрите на то чтобы доделать контроллер клавиатуры для Ориона?
    Хочу доделать. Только как я понял у Ориона два варианта подключения: исходный 11*8 и под MC7007 - 8*11.
    Для какого из них надо делать?
    Схему можно сделать универсальную, а вот прошивку хотелось бы под один вариант.

  9. #7
    Moderator Аватар для Error404
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    3,750
    Благодарностей: 1014
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от caro Посмотреть сообщение
    Хочу доделать. Только как я понял у Ориона два варианта подключения: исходный 11*8 и под MC7007 - 8*11.
    Для какого из них надо делать?
    Схему можно сделать универсальную, а вот прошивку хотелось бы под один вариант.
    Думаю, нужно делать вариант клавиатуры от РК-86. Там матрица попроще - 8х8 плюс 3 линии для выделенных кнопок (ctrl, shift, rus/lat) - итого 8х11 (или 11х8 - смотря как считать). Соответственно, эту клавиатуру можно будет и к РК-86 подключать, не только к Ориону.
    Клавиатура МC7007 сложнее - там все 11 линий включены в общую матрицу, и существует 2 схемы включения (в одной схеме 11 линий порта ВВ55 работают на ввод - это считается ленинградским вариантом "совместимым по порту с РК-86", а в другой [авторской] - на вывод).
    Последний раз редактировалось Error404; 12.11.2008 в 09:28.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  10. #8
    Guru Аватар для caro
    Регистрация
    14.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,481
    Благодарностей: 776
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вариант универсального контроллера клавиатуры для Ориона, РК86, Вектора, ПК8000 и т.д. с матрицей до 8*11.
    В ZIPe схема в высоком разрешении.
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	kbd_or12.jpg 
Просмотров:	4840 
Размер:	87.3 Кб 
ID:	9550  
    Вложения Вложения
    Последний раз редактировалось caro; 12.11.2008 в 10:38.

  11. Этот пользователь поблагодарил caro за это полезное сообщение:
    perestoronin (11.07.2015)

  12. #9
    Guru Аватар для Mick
    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    7,805
    Благодарностей: 2833
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от caro Посмотреть сообщение
    Вариант универсального контроллера клавиатуры для Ориона, РК86, Вектора, ПК8000 и т.д. с матрицей до 8*11.
    В ZIPe схема в высоком разрешении.
    Ну у ПК8000 матрица 4*8. На плате стоит дешифратор линий адреса ИД10.
    Но идеология ясна с использованием прерываний по изменениям на входах.
    Сайт поддержки моих изделий - http://micklab.ru/
    Форум поддержки - http://forum.tslabs.info/viewforum.php?f=51

  13. #10
    Guru Аватар для caro
    Регистрация
    14.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,481
    Благодарностей: 776
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Mick Посмотреть сообщение
    Ну у ПК8000 матрица 4*8.
    А я специально в схеме GND сместил в середину разьема,
    поскольку для подключения к ПК8000 достаточно будет 16 линий.

Страница 1 из 6 12345 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. ПК8000 - Общие вопросы
    от Mick в разделе ПК8000
    Ответов: 417
    Последнее: 10.08.2017, 07:58
  2. ПК8000 - Утилиты
    от XobbiMan в разделе ПК8000
    Ответов: 94
    Последнее: 28.08.2015, 22:23
  3. ПК8000 - ROM диск
    от Mick в разделе ПК8000
    Ответов: 39
    Последнее: 06.03.2014, 13:12
  4. Ответов: 146
    Последнее: 05.08.2009, 18:13
  5. ПК8000 - Квазидиск
    от Mick в разделе ПК8000
    Ответов: 86
    Последнее: 13.10.2008, 18:17

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •