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

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

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

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

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

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

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

 
Опции темы
Непрочитано 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.RU
 
Регистрация: 05.04.2009
Сообщений: 976
Сказал спасибо: 35
Сказали Спасибо 155 раз(а) в 134 сообщении(ях)
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.RU
 
Регистрация: 05.04.2009
Сообщений: 976
Сказал спасибо: 35
Сказали Спасибо 155 раз(а) в 134 сообщении(ях)
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.RU
 
Регистрация: 01.04.2009
Адрес: Рязань
Сообщений: 1,140
Сказал спасибо: 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, время: 11:31.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot