Доброго времени суток, уважаемые разработчики и программисты. Давно уже обзавёлся я отладочной платой 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 строк кода накалякал чтобы просто инициализировать девайс. Может кто-то имел дело с ним?