Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры Atmega AVR
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/10: Рейтинг темы: голосов - 10, средняя оценка - 5.00
huawei
0 / 0 / 0
Регистрация: 17.02.2013
Сообщений: 20
1

Стенд на базе ATmega128. Работа с клавиатурой и индикаторами

23.10.2013, 16:15. Просмотров 1814. Ответов 5
Метки нет (Все метки)

Это снова я. След. лабораторная это устройство нажатия клавиши, и загорание соответствующего ей светодиода.
Есть учебный стенд с клавиатурой, жк дисплемм, светодиодами.
Как я понял через дешифратор осуществляется передача в порт сигнала об нажатой клавиши.

У меня вопрос, как это осуществить?

Я так понимаю, что нужно первый делом написать программу сканирования и поиска нужной клавиши, т.е. для каждой клавиши создать её код, и путем compare сравнивать с загруженными например массив значениями.
А вот дальше как передать этот сигнал на светодиод?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.10.2013, 16:15
Ответы с готовыми решениями:

Учебный лабораторный стенд SDK-2.0 на базе LPC 2000 ARM7
Добрый день. Кто-то имел счастье общения с данным контроллером? Нужна помощь в...

Плата на базе ATmega128
Только начал изучение программирование микроконтроллеров! Есть плата с...

ATMega8535. Работа с индикаторами
В исходном состоянии на индикаторах HG1 И HG2 горят цифры 0. По прерыванию INT0...

ATMega128. Работа с АЦП
Помогите, пожалуйста, найти информацию по написанию прошивки для контроллера...

Работа с USART ATMega128 (ASM)
Добрый вечер! Возникла небольшое недопонимание по программе. Программа вроде...

5
raxp
10188 / 6571 / 492
Регистрация: 28.12.2010
Сообщений: 21,166
Записей в блоге: 1
23.10.2013, 16:20 2
учебный стенд с клавиатурой, жк дисплемм, светодиодами.
Как я понял через дешифратор
схему в тему.
0
huawei
0 / 0 / 0
Регистрация: 17.02.2013
Сообщений: 20
23.10.2013, 16:50  [ТС] 3
сейчас

Вот схема
0
Вложения
Тип файла: pdf Main_page.pdf (74.6 Кб, 84 просмотров)
raxp
10188 / 6571 / 492
Регистрация: 28.12.2010
Сообщений: 21,166
Записей в блоге: 1
23.10.2013, 19:33 4
1- определение нажатой клавиши на клавиатуре: на PC0-PC2 постоянно крутим по циклу (0..7) переменную двоичном виде, двоично-десятичный позициционный дешифратор DD3 с инверсными выходами создает бегающий ноль по строкам ROW1...ROW4, столбцы COL1...COL3 подтянуты к плюсу и опрашиваются портами PC5...PC7. В зависимости от того на каком порту по столбцам появится ноль в моменты, соответствующие зажиганию определенной строки и будет пересечением столбца-строки, т.е. однозначного определения кнопки. На вашем месте лучше составить заранее массив таких значений.

Пример работы с клавиатурой RS-485. Работа с Modbus протоколом... (в архиве 'keyboard.c').

2- светодиоды сидят на сдвиговом регистре DD6, данные (слово, пакет) записываем на его 14 пин последовательно с порта PB2 МК по приходу каждого такта на пин 11 с порта PB1 МК, а разрешение загрузки по пину 12 сдвигового регистра осуществляем по приходу кода 3 с портов PB0, PB4, PB5 МК в двоично-десятичный позиционный дешифратор DD4.

Логика и принцип ясен?
0
huawei
0 / 0 / 0
Регистрация: 17.02.2013
Сообщений: 20
23.10.2013, 20:03  [ТС] 5
Т.е. подаем на А2 А1 А0 комбинации 0 0 0 , 0 0 1, 0 1 0, 0 1 1 и ждем на выходе РС 5 РС 6 РС 7 комбинации.......
К примеру если я понял клавиатура
1 2 3
4 5 6
7 8 9
0
Т.е значит в массив записывать 000100 - клавиша 1
000010 - клавиша 2
000001 - клавиша 3

правильно?
0
raxp
10188 / 6571 / 492
Регистрация: 28.12.2010
Сообщений: 21,166
Записей в блоге: 1
23.10.2013, 20:33 6
ждем на выходе РС 5 РС 6 РС 7
ждать ничего на выходе мы не можем, они должны быть сконфигурированы на вход.
0
23.10.2013, 20:33
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.10.2013, 20:33

Неустойчивая работа atmega128 и 1w RFM23BP
добрый день.. я в процессе сооружения ду пульта для РУ. Как передатчик...

ATMega128. Работа с массивом в SRAM
Немножно отступлю от темы: работа с программой AVRstudio, прмиеняется в...

Работа с ATMega128 . AVR studio
Всем привет! Я написал код на ассемблере , но не знаю как написать точно такой...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru