мання даних при передачі. p align="justify"> При підключенні схеми до USB шині МК USB отримує від комп'ютера свою нову адресу, ідентифікаційний номер і чекає подальших вказівок від PC. Як тільки отримує команду для читання то починає приймати дані з порту. Потім відправляє з на МК. МК обробляє код операції над пам'яттю, якщо це читання, то зчитує з пам'яті за певною адресою дані і відправляє їх у МК USB. Якщо це запис то здійснює стирання даних за певною адресою і записує туди нові дані. МК USB при отриманні даних відправляє підтвердження про успішно виконану операцію. br/>
Складання принципової схеми
Принципова схема пристрою представлена ​​у додатку. Вона складалася виходячи з технічного завдання та технічних можливостей мікроконтролера. p align="justify"> В якості USB контролера був обраний мікроконтролер PIC16C765, вибір був заснований на підтримці цим контролерів універсальної послідовної шини.
В якості контролера пам'яті був обраний контролер ADuC812.
А в якості носія даних була обрана мікросхема пам'яті AT29C256. Короткі технічні характеристики мікросхеми пам'яті:
В· Час доступу до даних - 70 нс
В· Сторінкова організація пам'яті
В· Розмір сторінок - 64б
В· Розмір пам'яті 256К
В· Розрядність адреси - 15біт
Розробка програмного забезпечення
Так як в курсовому проекті використовуються два мікро контролера то необхідно розробити програмне забезпечення для кожного мікроконтролера.
Алгоритм роботи програми для контролера ADuC812, і PIC16C765 указані в додатку.
Змінні використані в програмі для контролера ADuC812:
Usb_command - змінна в якій міститься код команди операції над пам'яттю. (00000001b читання, 00000010b запис)
Addr_l - молодша частина адреси.
Add_h - старша частина адреси.
Page (64) - буфер для даних отриманих від контролера usb шини і від пам'яті.
I, j - змінні беруть участь при формуванні циклів.
Port0 - змінна в якій міститься інформація про стан нульового порту.
Port2 - змінна в якій міститься інформація про стан другого порту.