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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> VGA контролер
andriyXA
сообщение Jun 17 2017, 16:32
Сообщение #16





Группа: Участник
Сообщений: 12
Регистрация: 12-06-17
Пользователь №: 97 637



В этом то и проблема я не полностью понимаю как выделить конкретно данные из 12С чтоб получить не всю информацию а только разширения
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Jun 17 2017, 16:50
Сообщение #17


Местный
***

Группа: Участник
Сообщений: 391
Регистрация: 11-06-13
Пользователь №: 77 140



Цитата(andriyXA @ Jun 17 2017, 19:32) *
В этом то и проблема я не полностью понимаю как выделить конкретно данные из 12С чтоб получить не всю информацию а только разширения

Ну для начала изучайте как работает I2C.Вот ссылка для примера http://easyelectronics.ru/interface-bus-iic-i2c.html
Если вкратце:
1. Старт условие
2. Адрес EEPROM
3. Бит указывающий, что вы обращаетесь с чтением.
4. Проанализировать ответила ли EEPROM. Т.е Выполнилось ли ACK условие.
5. Повторный старт
6. Адрес ячейки, где расположено разрешение.
7. Прочитали 1 байт подали ACK условие.
8. Когда прочитали все-что нужно подаете NACK.
9. Потом подаете стоп условие.
Это опять-же в первом приближении, и при условии, что данные о разрешении находятся в соседних ячейках. В противном случае надо по-другому будет читать.
Но в любом варианте необходимо разобраться с i2c протоколом.
Ключевой пункт - пункт 6. Работая с EEPROM вы имеете полное право указывать при обращении адрес ячейки с которой хотите общаться. Вот только если ячейки расположены не подряд, то после каждого прочитанного байта, необходимо будет завершать чтение, и снова обращаться с новым адресом ячейки.
Go to the top of the page
 
+Quote Post
andriyXA
сообщение Jun 17 2017, 17:33
Сообщение #18





Группа: Участник
Сообщений: 12
Регистрация: 12-06-17
Пользователь №: 97 637



А нет примера работы с 12с masters
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Jun 17 2017, 17:40
Сообщение #19


Местный
***

Группа: Участник
Сообщений: 391
Регистрация: 11-06-13
Пользователь №: 77 140



Цитата(andriyXA @ Jun 17 2017, 20:33) *
А нет примера работы с 12с masters

Есть первая же ссылка в GOOGLE.RU по запросу "i2c vhdl"
Хотя не уверен, что там есть возможность выдавать повторный старт для указания адреса, но не думаю, что будут особые сложности добавить его самостоятельно. Проще самому написать, тем более реализовать I2C MASTER куда проще чем I2C SLAVE.

Сообщение отредактировал Flip-fl0p - Jun 17 2017, 17:46
Go to the top of the page
 
+Quote Post
andriyXA
сообщение Jun 17 2017, 18:09
Сообщение #20





Группа: Участник
Сообщений: 12
Регистрация: 12-06-17
Пользователь №: 97 637



12c master проще но осталось разобраться в работе а я никогда не работал с 12с ещё
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Jun 17 2017, 21:03
Сообщение #21


Местный
***

Группа: Участник
Сообщений: 391
Регистрация: 11-06-13
Пользователь №: 77 140



Цитата(andriyXA @ Jun 17 2017, 21:09) *
12c master проще но осталось разобраться в работе а я никогда не работал с 12с ещё

Абсолютно ничего сложного. Инфомации в сети более чем достаточно, при том есть как на русском языке, так и на иностранном. Да и примеры в сети есть. Всё в Ваших руках.
Go to the top of the page
 
+Quote Post
Maverick
сообщение Jun 18 2017, 08:24
Сообщение #22


я только учусь...
******

Группа: Модераторы
Сообщений: 3 364
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



по ссылке (ссылка действует в течении 7 дней)
по ссылке xapp 333 (с исходниками)


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Jun 19 2017, 06:18
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 4 204
Регистрация: 17-02-06
Пользователь №: 14 454



Цитата
. Когда прочитали все-что нужно подаете NACK.

Может я чего то забыл, но зачем пороть обмен ошибкой перед завершением? Для штатного окончания есть стоп последовательность, НАК то зачем?
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Jun 19 2017, 07:00
Сообщение #24


Местный
***

Группа: Участник
Сообщений: 391
Регистрация: 11-06-13
Пользователь №: 77 140



Цитата(Golikov A. @ Jun 19 2017, 09:18) *
Может я чего то забыл, но зачем пороть обмен ошибкой перед завершением? Для штатного окончания есть стоп последовательность, НАК то зачем?

Это стандартный ответ мастера когда он больше не нуждается в услугах SLAVE. Во всяком случае во всех datasheet на I2C EEPROM описано именно так. Вот к примеру http://www.atmel.com/images/Atmel-8700-SEE...C-Datasheet.pdf (стр. 11). - окончанию чтения предшествует ответ мастера NACK.
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Jun 19 2017, 07:57
Сообщение #25


Гуру
******

Группа: Свой
Сообщений: 4 204
Регистрация: 17-02-06
Пользователь №: 14 454



ох и правда по окончанию чтения мастер накает, спасибо.
Go to the top of the page
 
+Quote Post
sonycman
сообщение Jun 19 2017, 10:10
Сообщение #26


Любитель
*****

Группа: Свой
Сообщений: 1 846
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695



Цитата(Golikov A. @ Jun 19 2017, 11:57) *
ох и правда по окончанию чтения мастер накает, спасибо.

Nack для того, чтобы слейв освободил шину и не мешал, когда мастер будет выставлять стоп или повторный старт.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st September 2017 - 04:56
Рейтинг@Mail.ru


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