Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR...

 
Опции темы

Ethernet-контроллер CP2201

Непрочитано 04.12.2013, 12:55  
Thundersonic77
Прохожий
 
Регистрация: 04.12.2013
Сообщений: 6
Сказал спасибо: 5
Сказали Спасибо 1 раз в 1 сообщении
Thundersonic77 на пути к лучшему
Лампочка Ethernet-контроллер CP2201

Доброго времени суток, уважаемые разработчики и программисты. Давно уже обзавёлся я отладочной платой AVR Crumb644-NET, но за неимением опыта я не смог разобраться, что с ней делать и как жить-то вообще. Сейчас подумал, что нужно оживить сей девайс, иначе позор мне на всю голову! Возможностей у неё дофига и очень интересные штуки можно реализовать. Вот кратко то, с чем я имею дело:
1. на плате стоит атмега 644, которая общается с 2201 по параллельному порту (8 ног данных, управляющие стробы nWR и nRD).
2. Как происходит запись во внутренние регистры - разобрался.
3. Как писать в 16-разрядные регистры - разобрался.
4. Инициализацию делать научился, даже диодик мигает, чему я безмерно рад.
5. Вроде даже понял, как писать во флэш и читать оттуда.

тут начинается беспредел. Вопросов очень много и много непонятного.

1. МАК-адрес пишется в регистры MACAD0:MACAD1:MACAD2. Они 16-разрядные. нужно вписать туда 255.255.255.0. Из даташит СР2201 мы можем прочитать, что MACAD2 содержит 1й и 2й октет, MACAD1 - 3й и 4й, MACAD0 - 5й и 6й. Вопрос - зачем 5й и 6й? Потом все эти 6 байтов перегоняются в самый верх флэш памяти (8 кб - 0x1FFF) с адреса 1FFA до конца. Там и лежат долго и счастливо. Как же его правильно прописать?
2. Нет отдельного регистра для записи IP, маски. Я так понял, что нужно записывать во флэш и потом указателями высылать при запросе. Но вот же опять вопрос: Есть ли разница, куда их писать?
3. Что с ними остается делать? Допустим, я задал IP и хочу пингануть по сети свой выдуманный IP с другого компа, к примеру. Что происходит в сети при посылке с компа команды ping ‹ip›? И что надо отвечать на запрос?

Помогите, пожалуйста. Уже 840 строк кода накалякал чтобы просто инициализировать девайс. Может кто-то имел дело с ним?
Реклама:
Thundersonic77 вне форума  
Непрочитано 04.12.2013, 13:18  
oleg110592
Гражданин KAZUS.RUN
 
Регистрация: 05.04.2009
Сообщений: 973
Сказал спасибо: 35
Сказали Спасибо 154 раз(а) в 133 сообщении(ях)
oleg110592 на пути к лучшему
По умолчанию Re: Ethernet-контроллер CP2201

а готовый драйвер почему не использовали
http://stefanfrings.de/avr_io/index-en.html
oleg110592 вне форума  
Сказали "Спасибо" oleg110592
Thundersonic77 (04.12.2013)
Непрочитано 04.12.2013, 13:33  
Thundersonic77
Прохожий
 
Регистрация: 04.12.2013
Сообщений: 6
Сказал спасибо: 5
Сказали Спасибо 1 раз в 1 сообщении
Thundersonic77 на пути к лучшему
По умолчанию Re: Ethernet-контроллер CP2201

Я пользовался. Там только скомпилированный хекс-файл и готовая веб-страница, которая может только светодиоды зажигать. А я хочу своё сделать, чтобы управлять свободным портом B на плате и USARTом тоже
Thundersonic77 вне форума  
Непрочитано 04.12.2013, 14:09  
oleg110592
Гражданин KAZUS.RUN
 
Регистрация: 05.04.2009
Сообщений: 973
Сказал спасибо: 35
Сказали Спасибо 154 раз(а) в 133 сообщении(ях)
oleg110592 на пути к лучшему
По умолчанию Re: Ethernet-контроллер CP2201

я не про hex - там в исходнике есть инициализация MAC. Она что не работает?
Код:
// Initialize hte MAC address (after link comes up)
void init_MAC(void) {
        unsigned int tmp16;
               
        //MAC INIT
        cpWriteMac(MACCF,0x40B3); // full duplex
        cpWriteMac(IPGT,0x0015);  // full duplex
        cpWriteMac(MACCF,0x40B3);
        cpWriteMac(MAXLEN,0x05EE);
        write_CP2200(FLASHADDRL,0xFA);
        write_CP2200(FLASHADDRH,0x1F);
        tmp16 = 0x0000;
        tmp16 = read_CP2200(FLASHAUTORD);
        tmp16 |=read_CP2200(FLASHAUTORD)‹‹8;
        cpWriteMac(MACAD2,tmp16);
        tmp16 = 0x0000;
        tmp16 = read_CP2200(FLASHAUTORD);
        tmp16 |= read_CP2200(FLASHAUTORD)‹‹8;
        cpWriteMac(MACAD1,tmp16);
        tmp16 = 0x0000;
        tmp16 = read_CP2200(FLASHAUTORD);
        tmp16 |= read_CP2200(FLASHAUTORD)‹‹8;
        cpWriteMac(MACAD0,tmp16);
        cpWriteMac(MACCN,0x01);

        // Enable Packet Receive and Receive FIFO full interrupts
        write_CP2200(INT0EN,0x03);
        write_CP2200(INT1EN,0x00);
        
        // clear interrupt status
        read_CP2200(CP2200_INT0);
        read_CP2200(CP2200_INT1);
        struct uip_eth_addr eaddr;

        // configure uIP with own mac address (get from CP2200 flash memory)
        // added by Stefan Frings
        write_CP2200(FLASHADDRL,0xFA);
        write_CP2200(FLASHADDRH,0x1F);
        for (int i=0;i‹6;i++)
        {
            eaddr.addr[i]=read_CP2200(FLASHAUTORD); // mac address from CP2200
        }
        // set mac address of this modules
        uip_setethaddr(eaddr);
}
oleg110592 вне форума  
Сказали "Спасибо" oleg110592
Thundersonic77 (04.12.2013)
Непрочитано 04.12.2013, 14:26  
_guardianangel
Почётный гражданин KAZUS.RUN
 
Регистрация: 01.04.2009
Адрес: Рязань
Сообщений: 1,138
Сказал спасибо: 21
Сказали Спасибо 635 раз(а) в 344 сообщении(ях)
_guardianangel на пути к лучшему
По умолчанию Re: Ethernet-контроллер CP2201

Сообщение от Thundersonic77 Посмотреть сообщение
МАК-адрес пишется в регистры MACAD0:MACAD1:MACAD2. Они 16-разрядные. нужно вписать туда 255.255.255.0. Из даташит СР2201 мы можем прочитать, что MACAD2 содержит 1й и 2й октет, MACAD1 - 3й и 4й, MACAD0 - 5й и 6й. Вопрос - зачем 5й и 6й? Потом все эти 6 байтов перегоняются в самый верх флэш памяти (8 кб - 0x1FFF) с адреса 1FFA до конца. Там и лежат долго и счастливо. Как же его правильно прописать?
Возьмите любое сетевое ус-во и посмотрите на нём MAC - он будет 6 байтным. То что Вы пишите - это маска подсети.
Сообщение от Thundersonic77 Посмотреть сообщение
Помогите, пожалуйста. Уже 840 строк кода накалякал чтобы просто инициализировать девайс. Может кто-то имел дело с ним?
Курите IP стек. Если у Вас только драйвер физики то усе плюшки в виде IP адреса, маски подсети, шлюза и серверов реализовывать самому.
_guardianangel вне форума  
Сказали "Спасибо" _guardianangel
Thundersonic77 (04.12.2013)
Непрочитано 04.12.2013, 14:27  
Thundersonic77
Прохожий
 
Регистрация: 04.12.2013
Сообщений: 6
Сказал спасибо: 5
Сказали Спасибо 1 раз в 1 сообщении
Thundersonic77 на пути к лучшему
По умолчанию Re: Ethernet-контроллер CP2201

О, я, видимо, что-то не то скачал. сейчас попробую, проверю)
Thundersonic77 вне форума  
Непрочитано 04.12.2013, 14:30  
Thundersonic77
Прохожий
 
Регистрация: 04.12.2013
Сообщений: 6
Сказал спасибо: 5
Сказали Спасибо 1 раз в 1 сообщении
Thundersonic77 на пути к лучшему
По умолчанию Re: Ethernet-контроллер CP2201

Сообщение от _guardianangel Посмотреть сообщение
Возьмите любое сетевое ус-во и посмотрите на нём MAC - он будет 6 байтным. То что Вы пишите - это маска подсети.

Курите IP стек. Если у Вас только драйвер физики то усе плюшки в виде IP адреса, маски подсети, шлюза и серверов реализовывать самому.
Похоже на то. Я уже все регистры перерыл, придётся, видимо, всё в-ручную делать...
Thundersonic77 вне форума  
 

Метки
cp2201, crumb644-net
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ethernet контроллер W5100 от Wiznet, проблемы. Zemlyanov Микроконтроллеры, АЦП, память и т.д 0 08.07.2010 17:04
Ethernet + контроллер innovator_king Микроконтроллеры, АЦП, память и т.д 5 30.06.2010 18:31
Сгорел контроллер сети на материнке profiler Ремонт оргтехники 9 28.11.2009 03:28
CP2201 Ethernet - контроллер smoke_man Микроконтроллеры, АЦП, память и т.д 1 28.04.2009 16:34


Часовой пояс GMT +4, время: 03:39.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.