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

 
 
> AVR + CP2200 от SiLabs
MSprut
сообщение Jun 15 2006, 08:36
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 225
Регистрация: 25-04-06
Из: Украина, Луганск
Пользователь №: 16 476



Всем привет.
СР2200 - это Ethernet контроллер от SiLabs. Собрал девайс на АТмега16+СР2200, законнектился с чипом, пишу читаю регистры, все нормально, только вот когда включаю приемник и передатчик, то на выходе передатчика нет импульсов линка, а приемник с чего-то думает что подключен к сетке и светит светодиодом, который показывает что есть линк, хотя при этом кабель не подключен вообще. Может кто работал с этим зверем и сталкивался с подобным? Или может слышал о такой проблеме? Нужен срочно хелп, потому что служба техподдержки SiLabs ушла в отказ, сказали что они не работают с Атмелом и поэтому помочь не могут, а время идет. Всем откликнувшимся заранее спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
KRS
сообщение Jun 15 2006, 10:09
Сообщение #2


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



Я подключал CP2200 и CP2201 к ARM LPC2129 и LPC2103

у меня вроде была такая фишка с LINKом пока я не стал запускать auto-negotiation

в общем инициализация у меня выглядит примерно так:
Код
  //reset CP220x
  cpReadByte(INT0); //clear INT0
  cpWriteByte(SWRST,4);
  while (!(cpReadByte(INT0)& 0x20)); //wait for reset complete

  cpWriteByte(IOPWR,0x0C);

//PHY INIT
  cpWriteByte(PHYCF,0xFE);
  cpWriteByte(PHYCN,0x00);
  Delay(1);
  r=INT1;
  cpWriteByte(PHYCN,0x80);
  Delay(1);
  cpWriteByte(PHYCN,0xE0);
  Delay(75);

  while (!(cpReadByte(INT1)& 0x01));

  while (!(cpReadByte(PHYCN)& 0x01));


//MAC INIT
  cpWriteMac(MACCF,0xB3);
  cpWriteMac(IPGT,0x15);
  cpWriteMac(IPGR,0x0C12);

  cpWriteByte(FLASHADDRL,0xFA);
  cpWriteByte(FLASHADDRH,0x1F);
  Tmp=cpReadByte(FLASHAUTORD);
  Tmp|=cpReadByte(FLASHAUTORD)<<8;
  cpWriteMac(MACAD2,Tmp);
  Tmp=cpReadByte(FLASHAUTORD);
  Tmp|=cpReadByte(FLASHAUTORD)<<8;
  cpWriteMac(MACAD1,Tmp);
  Tmp=cpReadByte(FLASHAUTORD);
  Tmp|=cpReadByte(FLASHAUTORD)<<8;
  cpWriteMac(MACAD0,Tmp);

  cpWriteMac(MACCN,0x01);


тут соотв. cpReadByte и cpWriteByte этщ чтение и запись в регистры
cpWriteMac запись в MAC регистры:
Код
static void cpWriteMac(uint8_t Addr,uint16_t r)
{
  cpWriteByte(MACADDR,Addr);
  cpWriteByte(MACDATAH,r>>8);
  cpWriteByte(MACDATAL,r);
  cpWriteByte(MACRW,0);
}
Go to the top of the page
 
+Quote Post
MSprut
сообщение Jun 15 2006, 10:26
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 225
Регистрация: 25-04-06
Из: Украина, Луганск
Пользователь №: 16 476



СПАСИБО ОГРОМНОЕ! Хрен бы когда догадался что нужно обязательно включать автонегоциацию для того чтобы девайс хоть как-то начал жить! Я, блин уже 2 недели сижу над этой проблемой, уже чип заменил... Вот клоуны! А что делать если я нехочу автоопределние включать?
Go to the top of the page
 
+Quote Post
KRS
сообщение Jun 15 2006, 11:46
Сообщение #4


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



Цитата(MSprut @ Jun 15 2006, 14:26) *
СПАСИБО ОГРОМНОЕ! Хрен бы когда догадался что нужно обязательно включать автонегоциацию для того чтобы девайс хоть как-то начал жить! Я, блин уже 2 недели сижу над этой проблемой, уже чип заменил... Вот клоуны! А что делать если я нехочу автоопределние включать?

Я не знаю smile.gif

Вообще там есть много непонятных моментов!

Когда я получил отладочный комплект и первые чипы, их немного здесь пообсуждали
http://electronix.ru/forum/index.php?showtopic=14993


Сейчас я практически все поборол.
Из оставшихся фич - если происходит переполнение (например принят паке а все 8 TLB заняты) то он перестает принимать пакеты (можно выгрести 8 которые были уже, а больше .....) как очистить это состояние я еще не придумал (все руки не доходят)


А так чип вполне приличный!
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- MSprut   AVR + CP2200 от SiLabs   Jun 15 2006, 08:36
- - MSprut   Да, совсем забыл спросить... Какие впечатления от ...   Jun 15 2006, 10:51
- - MSprut   Чтобы преполнения не было нужно после чтения каждо...   Jun 15 2006, 13:32
- - KRS   Цитата(MSprut @ Jun 15 2006, 17:32) Чтобы...   Jun 15 2006, 13:38
- - MSprut   Повозился с чипом с этим и ужас как много непонятн...   Jun 16 2006, 09:23
- - KRS   Цитата(MSprut @ Jun 16 2006, 13:23) Сдела...   Jun 16 2006, 10:30
- - MSprut   В новой версии описания на СР2200 написано что RXA...   Jun 16 2006, 11:03
- - KRS   Цитата(MSprut @ Jun 16 2006, 15:03) В нов...   Jun 16 2006, 12:09
- - MSprut   Сорри, не так интерпретировал текст про Half Duple...   Jun 16 2006, 13:10
- - MSprut   2KRS А не могли бы поделиться примером инициализац...   Jul 8 2006, 10:44
- - KRS   Цитата(MSprut @ Jul 8 2006, 14:44) 2KRS А...   Jul 10 2006, 09:21
- - MSprut   Цитата(KRS @ Jul 10 2006, 12:21) Так врод...   Jul 10 2006, 12:50


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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 02:59
Рейтинг@Mail.ru


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