Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые обзорные » Пристрій запису і читання даних з Flash-пам'яті

Реферат Пристрій запису і читання даних з Flash-пам'яті





ня поки контролер не видасть підтвердження про виконання операції. Як тільки прийшло підтвердження контролер USB в залежності від операції відправляє або підтвердження про запис або відправляє лічені дані. А далі починає програму заново з місця очікування запиту головного пристрою.

Програма контролера пам'яті.

При запуску програма переходить в режим очікування запиту від контролера USB прта, як тільки прийшов запит визначається код операції над пам'яттю і зчитуються адреси. Якщо операція читання подається запит на пам'ять для читання даннис з переданого адреси. Всі дані з пам'яті записуються в змінну page (64) і разом з підтвердженням про виконаною операцією відправляються дані контролеру USB порту. Якщо ж операція запису, то спочатку приймаються дані для запису з контролера Usb порту, потім за прийнятим адресою відбувається стирання даних, далі йде їх запис і перевірка на запис, тобто зчитування записаних даних і порівняння їх з вихідними. Після цих операцій відправляється підтвердження про запис даних. Після чого програма починає свою роботу заново.

Лістинг програми

Програма для контролера ADuC812


my_kurs: do

$ include (reg51. dcl) data_usb (4) byte, _command byte, _l byte, _h byte, (64) byte,, j byte; _time byte, _start byte, _on byte, byte, byte, byte, byte, byte;

/////////////////////////////////////////< ; timer> _int: procedure interrupt 1; (timer_start = 1) then; _start = 0; _on = 1;; (timer_on = 1) then; _time = timer_time - 1; (timer_time = 0) then; _on = 0;; ; timer_int;

////////////////////////////////////////

//////////////////////////////////////// < delay> _time: procedure (time); time byte; i = 0 to time; t1 = 0 to 4; _time = 250; _start = 1; while timer_on = 0 or timer_start = 1;;;; delay_time;

////////////////////////////////////////

//////////////////////////////////////// < usb> _command_usb: procedure; _command = 0; while (p3.2 = 0);

/////////////////while (p3.0 = 1); (p3.2 = 1) then usb_command = 10; while (p3. 0 = 1); (p3.1 = 1) then usb_command = usb + command + 1;

/////////////////(usb_command = 1) then; _flag = 1; _flag = 0;; (usb_command = 2) then; _flag = 1; _flag = 0;;

///////////////////while (p3.2 = 0);

///////////////////i = 0 to 8; while (p3.0 = 1); (p3.1 = 1) then addr_l = addr_l +1; _l = shl (addr_l, 0); while (p3.0 = 1); (p3.1 = 1) then addr_l = addr_l + 1; (i <7) then addr_l = shl (addr_l , 0);; i = 0 to 8; while (p3.0 = 1); (p3.1 = 1) then addr_h = addr_h +1; _h = shl (addr_l, 0); while (p3.0 = 1 ); (p3.1 = 1) then ad...


Назад | сторінка 6 з 8 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Програма контролера пристрою
  • Реферат на тему: Способи запису інформації на вінчестер, головки читання-запису
  • Реферат на тему: Підтвердження відповідності баз даних
  • Реферат на тему: Комп'ютерні дані: типи даних, обробка та управління
  • Реферат на тему: Програма, що реалізує роботу з текстом і збереженням даних у файл