реклама на сайте
подробности

 
 
> Не работает сканер кнопок., только начал осваивать
itscasus
сообщение Oct 5 2013, 14:10
Сообщение #1





Группа: Участник
Сообщений: 10
Регистрация: 5-01-13
Пользователь №: 75 071



Всем привет. Требуется определить нажатие на кнопки с помощью плис. И по spi отправить мк. С языком пока не разбирался. Попробовал реализовать с помощью мегафункций алтеровских. Кнопки подключил к параллельному входу lpm_shiftreg, по приходу clk от spi, 1 такт расходую на load в сдвигающий регистр, остальные 7 на сдвиг на MISO выход. Добавил на все кнопки AND, типа прерывания при нажатии кнопки для мк. Вывод MISO устанавливаю в третье состояние.
Ну так вот, все это не работает. Вопрос, а правильно ли я сделал схему для опроса кнопок или это не рабочий алгоритм.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
itscasus
сообщение Oct 24 2013, 11:47
Сообщение #2





Группа: Участник
Сообщений: 10
Регистрация: 5-01-13
Пользователь №: 75 071



Здравствуйте, пришлось отложить на некоторое время плисину. Выкладываю схему. В ней состояние кнопок загружается по прерыванию в регистр-защелку (LPM_FF) по переднему фронту. Для создания фронта используется XOR, когда на входе '0', XOR перекл. из 0 в 1. Прерывания (внизу картинки обрезано) реализованы по лог.И, если хоть одна кнопка нажата, уровень спадает до лог '0'. Прерывание вывел на вывод плис для мк.
Далее 14 разрядов загружаются в сдвиговый регистр PISO(LPM_SHIFTREG) при чтении по SPI. Вот здесь, скорее всего, что-то и не работает.
Для load (LPM_SHIFTREG) реализована задержка на 1 clock. Вначале на clock инверт. 1. Когда идут клоки, перекл. в 0. И только на след. импульсе в 1. Соответственно 1 импульс клока идет на загрузку в сдвиг.рег. (load=1), остальные на сдвиг.
Вроде бы ничего сложного нет. Но на осциллограмме ничего нет с MISО. Но прерывание срабатывает. НЕ знаю что делать, ЗАциклился уже.
А с дребезгом борюсь в мк. После прерывания, задержка 100 мс, а затем считываю state bottom.
Да мк мастер, SPI перекл. по заднему фронту, захват по переднему, полярность положительная. По spi идут 24 импульса клока. В середине картинки схема рабочая.

Жду любых советов.
Прикрепленное изображение

Go to the top of the page
 
+Quote Post
zombi
сообщение Oct 24 2013, 14:07
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(itscasus @ Oct 24 2013, 14:47) *
Жду любых советов.

Выход DFF number14 всегда в лог.1
И всё остальное как-то странно...
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th July 2025 - 15:56
Рейтинг@Mail.ru


Страница сгенерированна за 0.01379 секунд с 7
ELECTRONIX ©2004-2016