Avr урок 40

Сьогодні ми спробуємо підключити наш контролер до локальної мережі за допомогою модуля на мікросхемі ENC28J60.

Даний модуль виглядає ось так

Avr урок 40

Внутрішня структура мікросхеми є такий вигляд (натисніть на картинку для збільшення зображення)

Avr урок 40

Ми бачимо тут, що у нас існують керуючі регістри, в які ми будемо відправляти певні команди для управління тими чи іншими діями і настройками, Також ми бачимо буфер розміром 8 кілобайт для отримання і відправки даних по мережі.

Поставляється мікросхема в різних корпусах. На нашому модулі вона в корпусі, призначеному для поверхневого монтажу.

В якості контролера, який ми будемо приєднувати до даної мікросхемі, ми візьмемо МК Atmega328P, який знаходиться на готової отладочной платі, яку ми з вами вже використовуємо активно останнім часом.

Для підключення модуля є наступний роз'єм

Avr урок 40

Всі позначення контактів ми бачимо праворуч.

До отладочной платі ми підключимо модуль наступним чином

ENC28J60 - ATMEGA328
VCC - VCC
GND - GND
CS - 10
RESET - VCC
SI - 11
SCK - 13
SO - 12

Крім усього іншого ми до плати підключимо перехідник USART таким же чином як і на попередньому занятті.

Регістри в мікросхемі організовані таким чином

Avr урок 40

Основне призначення регістрів можна дізнатися по їх початковими літерами в абревіатурі

E - Ethernet,

Саме з деякими регістрами ми будемо знайомитися вже при написанні вихідного коду, так як його буде дуже багато і до того моменту, коли нам буде потрібно той чи інший регістр, ми вже забудемо його призначення.

Взагалі мережева модель ділиться на кілька рівнів. Основні з них такі:

1. Прикладний рівень

2. Рівень представлення

3. Сеансовий рівень

4. Транспортний рівень

5. Мережевий рівень

6. Канальний рівень

7. Фізичний рівень

Вообщем коротко якось ось так. Поконкретней з протоколами будемо знайомитися в міру їх використання.

Ну давайте, щоб від цієї всієї теорії трохи відволіктися, створимо наш проект, назвемо його по імені нашої використовуваної мікросхеми невигадливо - ENC28J60.

І проекту попереднього заняття візьмемо свою бібліотеку для USART і підключимо, щоб не складати її заново, а також можна взяти і підключити звідти файл main.h.

Також створимо ще чотири файли: net.c, net.h, enc28j60.c і enc28j60.h.

Після всіх первинних налаштувань файлів вони у нас будуть такого змісту.

USART_Init (16); // Задамо швидкість роботи USART 115200

Схожі статті