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

 
 
> 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   AVR + CP2200 от SiLabs   Jun 15 2006, 08:36
- - MSprut   СПАСИБО ОГРОМНОЕ! Хрен бы когда догадался что ...   Jun 15 2006, 10:26
- - MSprut   Да, совсем забыл спросить... Какие впечатления от ...   Jun 15 2006, 10:51
- - KRS   Цитата(MSprut @ Jun 15 2006, 14:26) СПАСИ...   Jun 15 2006, 11:46
- - 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 Текстовая версия Сейчас: 25th August 2025 - 03:43
Рейтинг@Mail.ru


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