Урок 40 Часть 10 LAN. ENC28J60 В предыдущей части нашего урока мы написали функцию расчета контрольной суммы, а также написали функцию чтения IP-пакетов. Теперь разберёмся с пакетами ICMP. В функции ip_read мы всё же добавим переменную для…
Программирование микроконтроллеров AVR и все, что с ним связано
Урок 40 Часть 10 LAN. ENC28J60 В предыдущей части нашего урока мы написали функцию расчета контрольной суммы, а также написали функцию чтения IP-пакетов. Теперь разберёмся с пакетами ICMP. В функции ip_read мы всё же добавим переменную для…
Урок 40 Часть 9 LAN. ENC28J60 В предыдущей части нашего урока мы наконец-то ответили на запрос ARP, а также изучили заголовок протокола IP. Давайте теперь разберёмся немного с расчётом контрольной суммы заголовков. Она расчитывается практически…
Урок 40 Часть 8 LAN. ENC28J60 В предыдущей части нашего урока мы написали ещё две нужные функции и код для отображения некоторых частей заголовка ARP-запроса. В функции arp_send занесём в ARP-заголовок код ответа ARP void arp_send(enc28j60_frame_ptr…
Урок 40 Часть 7 LAN. ENC28J60 В предыдущей части нашего урока мы познакомились с протоколом ARP начали писать функцию чтения пакетов ARP. Теперь в функции arp_read добавим в тело условия отображение типа запроса, адресов источника…
Урок 40 Часть 6 LAN. ENC28J60 В предыдущей части нашего урока мы написали функцию приёма кадров канального уровня и проверили её на практике в терминальной программе. Нас на данный момент интересуют два типа сетевых протокола…
Урок 40 Часть 5 LAN. ENC28J60 В предыдущей части нашего урока мы закончили инициализацию микросхемы, а также написали ещё некоторые нужные функции. Создадим также функцию чтения фрейма чуть выше функции net_poll //——————————————————— void eth_read(enc28j60_frame_ptr *frame,…
Урок 40 Часть 4 LAN. ENC28J60 В предыдущей части нашего урока мы написали ещё несколько служебных функций, настроили буферы микросхемы, а также её канальный уровень и написали функцию записи данных в регистры PHY. Теперь настроим…
Урок 40 Часть 3 LAN. ENC28J60 В предыдущей части нашего урока мы написали ещё несколько макросов и функций для работы с микросхемой. При операции чтения мы читаем регистр ESTAT на предмет установки бита CLKRDY. Напишем…
Урок 40 Часть 2 LAN. ENC28J60 В предыдущей части нашего урока мы познакомились с микросхемой ENC28J60, создали и настроили проект и добавили каркасы некоторых функций. Так как к интерфейсу SPI мы будем обращаться только в…
Урок 40 Часть 1 LAN. ENC28J60 Сегодня мы попробуем подключить наш контроллер к локальной сети с помощью модуля на микросхеме ENC28J60. Так как мы интерфейсом LAN ещё ни разу не пользовались, программируя микроконтроллеры AVR, я решил всё-таки…