Получил сегодня задание сделать клавиатуру на 16 кнопок на ПЛИСине от XILINX.
На входе должно быть 16 кнопок, на выходах, которых два ,должно быть-
на одном- меандр, на втором два байта от 1 до 16 в зависимости от нажатой кнопки в течении активной части меандра.
На рисунке для ясности приведён пример , когда одновременно нажаты клавишы: 2,5,12,16.
Оба выхода должны будут опрашиваться ПИК процессором, в котором они описаны следующим образом
коды кнопок
Код
#define Key1 0b0000000000000001//0x0001//1
#define Key2 0b0000000000000010//0x0002//2
#define Key3 0b0000000000000100//0x0004//4
#define Key4 0b0000000000001000//0x0008//8
#define Key5 0b0000000000010000//0x0010//16
#define Key6 0b0000000000100000//0x0020//32
#define Key7 0b0000000001000000//0x0040//64
#define Key8 0b0000000010000000//0x0080//128
#define Key9 0b0000000100000000//0x0100//256
#define Key10 0b0000001000000000//0x0200//512
#define Key11 0b0000010000000000//0x0400//1024
#define Key12 0b0000100000000000//0x0800//2048
#define Key13 0b0001000000000000//0x1000//4096
#define Key14 0b0010000000000000//0x2000//8192
#define Key15 0b0100000000000000//0x4000//16384
#define Key16 0b1000000000000000//0x8000//32768
#define Key2 0b0000000000000010//0x0002//2
#define Key3 0b0000000000000100//0x0004//4
#define Key4 0b0000000000001000//0x0008//8
#define Key5 0b0000000000010000//0x0010//16
#define Key6 0b0000000000100000//0x0020//32
#define Key7 0b0000000001000000//0x0040//64
#define Key8 0b0000000010000000//0x0080//128
#define Key9 0b0000000100000000//0x0100//256
#define Key10 0b0000001000000000//0x0200//512
#define Key11 0b0000010000000000//0x0400//1024
#define Key12 0b0000100000000000//0x0800//2048
#define Key13 0b0001000000000000//0x1000//4096
#define Key14 0b0010000000000000//0x2000//8192
#define Key15 0b0100000000000000//0x4000//16384
#define Key16 0b1000000000000000//0x8000//32768
и
#ifndef TASTE_EN
#define TASTE_EN PIN_A5//Признак опроса кнопок
#endif
ПЛИСку умею програмировать пока только в графическом режиме.Подскажите,плиз, с какого боку подходить к решению данной задачи.Заранее спасибо
