|
EPM240 кучка енкодеров, кнопок и новичек., подключение енкодеров |
|
|
|
Feb 16 2017, 19:03
|
Группа: Участник
Сообщений: 5
Регистрация: 16-02-17
Пользователь №: 95 481

|
Добрый день всем форумчанам.
Я, будем откровенны, совершенный новичек в ПЛИС, до этого работал только с МК ARM, поэтому прошу небольшой помощи или советов по вопросу: Нужно с помощью cpld работать с приличным количеством энкодеров, в данный момент 8, после достижения первичной цели будет в районе 30-36, далее информация должна будет передаваться на МК, по SPI-slave интерфейсу Пока только организовал саму схему работы с одним инкрементальным энкодером, получаю такты енкодера, и направление 0(по часам)/1(против), и задумался как грамотно обрабатывать все в куче. Задача состоит в том, что в SPI данные должны приходить только по требованию (в момент когда только какой либо енкодер активный), и оттуда их потом будет забирать мастер-SPI МК. Вот некоторая дополнительная информация: - энкодеры являют обычными поворотными, и важно знать не угол вращение, а инкрементальную часть, то есть повернули на 4 такта скажем (суммарных тактов), соответственно должно быть 4 пакета с данными {номер енкодера, дикремент, инкремент} - энкодеры вращаются независимо, то есть может один/два, могут с одинаковым фронтом (чисто теоретически, но все же). - помимо енкодеров, есть еще много кнопок, их тоже необходимо опрашивать независимо (матричная схема включения не подходит), то есть информация так же должна уходить в SPI - как разрешать тогда проблему приходжения данных в SPI от двух источников? буфер? FIFO на тригерах? - желательно что бы все это добро поместилось в EPM240.
Буду благодарен за любую помощь
|
|
|
|
|
 |
Ответов
|
Feb 16 2017, 19:35
|
Группа: Участник
Сообщений: 5
Регистрация: 16-02-17
Пользователь №: 95 481

|
Цитата(krux @ Feb 16 2017, 13:25)  имхо не стоит даже и пытаться запихнуть всё это в EPM240 Ну я вот прикинул в квартусе: 8 енкодеров - 48 елементов, SPI по примеру самой Altera (IP Cores) - 70, неужто не хватит 240?
Сообщение отредактировал light_junior - Feb 16 2017, 19:35
|
|
|
|
|
Feb 16 2017, 20:31
|
Гуру
     
Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369

|
Цитата(light_junior @ Feb 16 2017, 22:35)  Ну я вот прикинул в квартусе: 8 енкодеров - 48 елементов, SPI по примеру самой Altera (IP Cores) - 70, неужто не хватит 240? На самом деле, кроме самих энкодеров наверняка потребуются входные цифровые фильтры, чтобы убрать дребезг на фронтах энкодеров и кнопок. А он обязательно будет... Для CPLD проект может не лечь, если не хватит интерконнектов. далеко не всегда можно забить CPLD на 99%.. И более того. Будете делать печать и захотите перенести сигнал на другую ногу. А CPLD скажет, что так не влезет... И тоже самое может быть потом, когда захочется добавить хоть один триггерок. А у Вас - экономия в пару долларов приведет к 3-5 тыс долл потерям по деньгам и к паре месяцев по времени.. Не забудьте про внешний генератор тактовых! Его тоже куда попало не подключишь...
--------------------
www.iosifk.narod.ru
|
|
|
|
Сообщений в этой теме
light_junior EPM240 кучка енкодеров, кнопок и новичек. Feb 16 2017, 19:03  krux Цитата(light_junior @ Feb 16 2017, 22:35)... Feb 16 2017, 20:11 light_junior Цитата(krux @ Feb 16 2017, 14:11) 1. вы д... Feb 17 2017, 15:15 Koluchiy Я честно говоря не очень понимаю, какую помощь хоч... Feb 20 2017, 10:41 Timmy Если максимальная частота ниже примерно 10000 четв... Feb 21 2017, 05:36 light_junior Цитата(Koluchiy @ Feb 20 2017, 04:41) Я ч... Feb 21 2017, 09:39 Maverick Цитата(light_junior @ Feb 21 2017, 11:39)... Feb 21 2017, 10:26 iosifk Цитата(light_junior @ Feb 21 2017, 12:39)... Feb 21 2017, 11:31  x736C Цитата(iosifk @ Feb 21 2017, 14:31) Могу ... Feb 21 2017, 11:52   Maverick Цитата(x736C @ Feb 21 2017, 13:52) Здравс... Feb 21 2017, 12:00   iosifk Цитата(x736C @ Feb 21 2017, 14:52) Здравс... Feb 21 2017, 12:54 krux по вопросу кнопок.
уточняюще-наводящий вопрос.
соб... Feb 21 2017, 18:32 light_junior Maverick, Так как информация редкая достаточно, то... Feb 21 2017, 20:30
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|