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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> подключение lan91c111 для асинхронного режима
Serhiy_UA
сообщение May 27 2009, 10:51
Сообщение #16


Знающий
****

Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112



Цитата(racot-god @ May 27 2009, 13:22) *
...... и разве MAC адрес не внутри контроллера должен храниться???


После включения, базовый адрес (БА) всегда равен 0х0300.
Однако БА может быть загружен с EEPROM, то есть, при желании изменен. Менять адрес полезно, когда на шине ISA несколько чипов, а не один. Но я так не делал, у меня на шине ISA один чип LAN91C111, и все регистры доступны по адресам 0х0300. 0х0301 … 0х030E. То есть задаете адрес: получаете доступ…
Только не забывайте, что внутри чипа регистры рассредоточены по банкам. По этому, чтобы обратиться к произвольному регистру, необходимо заранее задать банк, в котором этот регистр находится. Делать это лучше всего с помощью любого программируемого микроконтроллера; я здесь об этом уже писал, что применяю NiosII. По другому - очень трудно...

Чип очень сложный для понимания, не пойму мотива, почему Вы его осваиваете. Есть другие чипы для Ethernet, попроще…. Это судя по Вашим вопросам.
Go to the top of the page
 
+Quote Post
racot-god
сообщение May 27 2009, 11:32
Сообщение #17


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 28-04-09
Пользователь №: 48 353



Спасибо))) это я уже более менее понял))) а насчёт EEPROM??? если я её не подвешу то что изменится??? куда эти регистры девать???

А насчёт почему этот контроллер - на работе сказали этот взять. вот я и взял... я человек подневольный))))
Go to the top of the page
 
+Quote Post
Serhiy_UA
сообщение May 27 2009, 11:53
Сообщение #18


Знающий
****

Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112



Цитата(racot-god @ May 27 2009, 14:32) *
... а насчёт EEPROM??? если я её не подвешу то что изменится??? куда эти регистры девать???

EEPROM можно не ставить.
А регистров внутри много их нужно инициализировать, иначе lan91c111 работать не будет.
Текст программ инициализации был выложен в предыдущем посте. Но это только часть необходимых программ, нужно еще пять раз по столько же, других. В Интернете есть примеры программ, надо поискать...
Go to the top of the page
 
+Quote Post
racot-god
сообщение May 27 2009, 11:55
Сообщение #19


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 28-04-09
Пользователь №: 48 353



Спасибо) покапаюсь))

правдад не нашёл текстов инициализации(((

Сообщение отредактировал racot-god - May 27 2009, 12:01
Go to the top of the page
 
+Quote Post
racot-god
сообщение Jun 10 2009, 09:28
Сообщение #20


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 28-04-09
Пользователь №: 48 353



не могли бы вы поподробнее рассказать как обращаться к регистрам PHY?? по каким адресам?? я из даташита не понял (LAN91C111.pdf))) и ещё эти регистры просто вначале нужно проинициализировать и потом они меняться не будут??? или они их значение изменяется и нужно писать прогу для управления ими??? (заранее спасибо...очень нужно))

пытаюсь сам разобраться но мне не понятно((( наверно не хватает каких то знаний((((
Go to the top of the page
 
+Quote Post
Serhiy_UA
сообщение Jun 10 2009, 10:42
Сообщение #21


Знающий
****

Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112



1. Какой микроконтроллер будет работать с LAN91C111?
2. Скорей всего Вы их состыкуете через шину ISA BUS и других чипов на этой шине не будет, так?
3. Если используется ISA BUS, то обращение к регистрам через адреса 0х0300. 0х0301 … 0х030E, об этом уже писалось. То есть других кодов адреса не будет, а только эти. Теперь на стр.56 перечислены все доступные регистры, но доступ к ним через задания номера банка, об этом тоже писал. Документ прилагается.
4. Теперь об регистрах PHY, их много и доступ к ним организован по особому, последовательным кодом, через регистр MGMT, см.страницу 77. Обычно эти регистры инициализируются один раз, а потом ничего там не меняют. Программу управления и инициализации ими, нужно писать обязательно. Почти все, что нужно есть в прилагаемом директории smsc91x. Правда, это относится к NiosII, который применен мною, но для других микроконтроллер все аналогично.

Сообщение отредактировал Serhiy_UA - Jun 10 2009, 10:47
Go to the top of the page
 
+Quote Post
racot-god
сообщение Jun 10 2009, 11:12
Сообщение #22


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 28-04-09
Пользователь №: 48 353



контроллер который будет работать с 91с111 - TMS320F28335. Подключение будет по асинхронному интерфейсу XINTF (встроенный в TMS для общения с внешней памятью и устройствами ввода- вывода).
Регистр MGMT на 67 стр.( вы наверно ошиблись). Я так и не особо понял на счёт адресации... Вот например к основным регистрам я обрщаюсь так - BASE ADDRESS + смещение... а там как???

.zip скачаю только вечером дома... на работе никак)) smile.gif
Go to the top of the page
 
+Quote Post
Serhiy_UA
сообщение Jun 10 2009, 11:44
Сообщение #23


Знающий
****

Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112



Цитата(racot-god @ Jun 10 2009, 14:12) *
.. а там как???


1. Смотрите таблицу 9.1 на стр.82 (пока опираемся на мой документ). Там MII Serial Frame Structure и в поле PHY Addr задается адрес нужного регистра PHY. Сформировав фрейм, последовательно выталкиваем его через MGMT в регистры PHY. Я работал и с другими Ethernet-контроллерами, и этот способ мне более всего не нравится в LAN91C111, хотя в целом это очень милое существо… smile.gif
Остальное можно понять, изучив smsc_phy.c. Здесь я долго не мудрствовал, а просто взял С-код как есть… Хотя в остальном софте была адаптация. Кстати есть С-коды и для других микроконтроллеров.
2. По поводу TMS320F28335 – приятный чип.

Сообщение отредактировал Serhiy_UA - Jun 10 2009, 11:46
Go to the top of the page
 
+Quote Post
racot-god
сообщение Jun 10 2009, 12:31
Сообщение #24


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 28-04-09
Пользователь №: 48 353



А smsc_phy.c где взять? и какие нибудь примеры хотелось бы глянуть))))) smile.gif А адрес наверно всё таки задаётся в поле REG.Addr а не PHY Addr?? Хотя тогда что подразумевается под PHY ADDR - это когда несколько трансиверов??? И главное куда REG.ADDR записпть (в какой регистр)??? и тогда будет обращение к PHY регистрам BASE_ADRESS + REG.ADDR???

похоже без примеров мне не обойтись...

А такие глупые вопросы потому что только год как универ закончил и немного не по этой специальности)) а на работе запрягают))) вот у меня и много не поняток)))
Go to the top of the page
 
+Quote Post
Serhiy_UA
сообщение Jun 10 2009, 13:07
Сообщение #25


Знающий
****

Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112



Цитата(racot-god @ Jun 10 2009, 15:31) *
А smsc_phy.c где взять? и какие нибудь примеры хотелось бы глянуть))))) smile.gif А адрес наверно всё таки задаётся в поле REG.Addr а не PHY Addr?? Хотя тогда что подразумевается под PHY ADDR - это когда несколько трансиверов??? И главное куда REG.ADDR записпть (в какой регистр)??? и тогда будет обращение к PHY регистрам BASE_ADRESS + REG.ADDR???


К регистрам PHY напрямую через MGMT, а к MGMT через BASE_ADRESS + 8. Вот такая конитель, неужели не понятно...
Примеры я уже выслал, читайте.
Вот еще пример от Ethernut_de.
Go to the top of the page
 
+Quote Post
racot-god
сообщение Jun 11 2009, 05:09
Сообщение #26


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 28-04-09
Пользователь №: 48 353



Я малый не дурак....да и дурак не малый... smile.gif

Спасибо! буду разбираться)))
Go to the top of the page
 
+Quote Post

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

 


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


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