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

 
 
 
Reply to this topicStart new topic
> HELP! SPI, I2C и EPROM, spi, i2c,LIS331DLHTR, 24LC1613
momotova
сообщение Mar 15 2017, 10:51
Сообщение #1





Группа: Новичок
Сообщений: 3
Регистрация: 15-03-17
Пользователь №: 95 820



Помогите пишу модуль на верилоге, который должен общается с термодатчиком (I2C) и акселерометром (SPI), отслеживать максимумы - минимумы температуры и ускорения.
Основные задачи модуля:
1. Считать наработку в часах сохранять её в ПЗУ и считавать из ПЗУ (I2C).
2. Сохранять в ПЗУ настройки монитора и счтывать их из ПЗУ.

Второстепенные задачи:
1. Опрашивать датчик температуры (I2C) и выдавать в ПЛИС максимльное, минимальное и текущее значение температуры.
2. Считывать и сохранять в ПЗУ макс и мин значения температуры.
3. Опрашивать датчик ускорения (SPI) и выдавать в ПЛИС максимльное, минимальное и текущее значение усорения по трем осям.

Я не до конца понимаю как согласовывать модули. Сейчас осуществила получение температуры от термодатчика. Как теперь передать значения ПЗУ (24LC1613), используя интерфейс I2C.
Как получить ускорение с микросхемы (LIS331DLHTR). Документацию читала, пыталась вникнуть, но все равно не могу понять как опрашивать устройство, конкретные регистры.

Помогите, пожалуйста. В разработке новичок, никогда дела не имела с подобными вещами.
Прикрепленные файлы
Прикрепленный файл  src.zip ( 518.21 килобайт ) Кол-во скачиваний: 19
 
Go to the top of the page
 
+Quote Post
k155la3
сообщение Mar 20 2017, 08:20
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 615
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848



Цитата(momotova @ Mar 15 2017, 14:51) *
. . . .
Как получить ускорение с микросхемы (LIS331DLHTR). Документацию читала, пыталась вникнуть, но все равно не могу понять как опрашивать устройство, конкретные регистры.

Помогите, пожалуйста. В разработке новичок, никогда дела не имела с подобными вещами.


В док-ии на устр-ва I2C приводятся не только адреса и назанчение регистров, но и форматы пакетов запрос-ответ, для каждого
устройства они специфичные. Из общего-стандартного - только первый байт, который передает мастер в сторону слейва.
Это адрес слейва и режим R/~W. Эта посылка из 8 бит, получив их слейв, если адрес "его", выставляет на 9-ом такте
бит подтверждения ACK == 0. Это говорит мастеру, что такой слейв существует и готов принять следующий байт - данные или команды.
Первое, с чего начинается рабта мастера с конкретным слейвом - определение его наличия на шине.
Далее весь алгоритм работы разрабатывается в соотв-ии с даташитом на слейв.
Для начала имело бы смысл поработать с периферий с PC или с использованием любого микроконтроллера - это на порядок-другой проще
чем через верилог.


Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 22nd October 2017 - 13:46
Рейтинг@Mail.ru


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