Розробка програми керування пристроєм зчитування даних

Опис та часові діаграми команд мікросхеми 24LC08В, особливості створення блок-схеми програми та підпрограм для обслуговування пристрою. Читання та записування енергонезалежної пам'яті через LTP-порт, можливості демонстрації виконання програмних команд.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык украинский
Дата добавления 09.06.2011
Размер файла 140,9 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Зміст

Вступ

1. Мета проекту

2. Опис запропонованого технічного рішення

3. Опис та часові діаграми команд мікросхеми 24LC08В

4. Опис та блок-схеми програми та підпрограм, що обслуговує пристрій

5. Вибір середовища програмування та розробка програми

6. Тестування підпрограм та програми

Висновок

Список джерел інформації

Вступ

У даному курсовому проекті виконана розробка програми керування пристроєм для читання/записування енергонезалежної пам'яті 24LC08В через LPT-порт ПК з навчальної дисципліни “Периферійні пристрої ЕОМ”. У пояснювальній записці приведені структурна схема системи та таблиця приєднання мікросхеми 24LC08В до порту LPT порту. Розроблені алгоритми та підпрограми читання, записування даних забезпечена можливість демонстрації виконання цих команд пристрою.

1. Мета проекту

Ознайомитися з принципами роботи наступних команд мікросхеми 24LC08В : читання, запису даних. Розробити програму, яка забезпечить можливість демонстрації цих команд.

2. Опис запропонованого технічного рішення

Структурна схема системи наведена у Додатку А. Для роботи з мікросхемою 24LC08В ми використовуємо LPT порт ( за базовою адресою 378Н). Вихід мікросхеми SСL ми подаємо на регістр даних (DR за адресою 378H) до розряду DR0. Інші розряди регістру даних ми використовуємо для подачі живлення на мікросхему. Вихід мікросхеми SDA ми подаємо на регістр керування (CR за адресою 37АH) до розряду СR0 та подаємо на регістр статусу(SR за адресою 379H) до розряду SR3. Таблиця приєднання мікросхеми 24LC08В до порту LPT порту наведена у Додатку Б.

3. Опис та часові діаграми команд мікросхеми 24LC08В

Команда читання (RANDOM_READ) - це команда читання даних, що дозволяє читати дані випадковим способом з будь-якої ділянки пам'яті. Для організації цієї команди необхідно за допомогою надіслання певної комбінації кодів( так, як показано на рисунку 3.1 ) задати адресу та блок пам'яті звідки ми збираємося читати дані.

Рисунок 3.1 Часова діаграма команди читання

Команда читання (CURRENT_ADDRESS_READ) - це команда читання даних, що дозволяє читати дані з адреси останнього слова доступу збільшеного на 1. Для організації цієї команди необхідно за допомогою надіслання певної комбінації кодів( так, як показано на рисунку 3.1 ) задати адресу та блок пам'яті звідки ми збираємося читати дані.

Рисунок 3.1 Часова діаграма команди читання

Команда запису (BYTE_WRITE) - це команда запису байту. Вона виконується за допомогою надіслання такої комбінації кодів яка показана на рисунку 3.2. Для ії організації треба задати адрес та блок пам'яті, куди буде записуватись байт. Після того, як байт запишеться необхідно подати сигнал стоп, а потім подавати сигнал старт та керуючий байт до того, доки байт не запишется.

Рисунок 3.2 Часова діаграма команди запису

4. Опис та блок-схеми програми та підпрограм, що обслуговує пристрій

Основою для розробки підпрограм для виконання команд, являються наступні процедури: SDA1(), SDA0(), SCL1(), SCL0() - процедури встановлення сигналів 1 та 0 на лінію даних та лінію синхронізації ; BOOL GET_ACK() - процедура, яка повертає логічне значення сигналу на виході SDA. Send_Start() - процедура яка надсилає сигнал Старту. Send_ControlByte() - процедура, яка надсилає керуючий байт до лінії данних SDA. Send_Adress() - процедура, яка посилає адресу. Read_Byte() -процедура, яка читає сторінку.

Інтегральний паралельний порт відрізняється від стандартного паралельного порта тим, що за допомогою регістра СR ми можемо тільки передавати дані до лінії SDA, а читати не можемо. Тому в даному проекті ми читаємо дані за допомогою регістра SR, а саме через розряд SR3.

На основі цих процедур ми розробили підпрограми, які виконують команди читання, запису даних.

В підпрограмі для виконання команди читання ми надсилаємо Start, запитуємо у користувача блок пам`яті, подаємо ControlByte, а потім за допомогою процедури GET_ACK() дізнаємося, чи дорівнює АСК=0. Далі задається адреса, за якою необхідно прочитати дані. Потім передаємо знову Start, ControlByte, і тільки потім починаємо читати дані за допомогою процедури GET_ACK(). Після завершення читання подаємо сигнал Stop. (Рисунок 4.1.)

В підпрограмі для виконання команди запису ми запитуємо у користувача значення сторінки та адресу. Для того, щоб записати сторінку необхідно до лінії даних SDA подавати сигнал Stop, ConrolByte, а потім за допомогою процедури GET_ACK(), дізнатися, чи дорівнює АСК=0, потім передати код адреси, знов, дізнатися, чи дорівнює АСК=0, і тільки потім треба писати сторінку.(Рисунок 4.2.)

Рисунок 4.1 Блок-схема підпрограми виконання команди читання

мікросхема зчитування програма пам'ять

Yes

Рисунок 4.2 Блок-схема підпрограми виконання команди запису

В головній програмі, запитуємо у користувача адресу та значення сторінки, яку необхідно записати. Записуємо сторінку викликаючи підпрограму запису даних. Запитуємо у користувача адресу, за якою необхідно прочитати сторінку, читаємо цю сторінку, викликаючи підпрограму читання даних. Блок-схема головної програми наведена на Рисунку 4.3.

Рисунок 4.3 Блок-схема головної програми

5. Вибір середовища програмування та розробка програми

Для реалізації підпрограм та програми ми вибрали Borland C++, оскільки на мові C++ найпростіше напряму працювати з портами LPT порту. За алгоритмами, які наведені у попередньому пункту ми розробили діалогову програму, яка забезпечила можливість демонстрації команд читання, запису, стирання та дозволу на стирання/запис даних.

6. Тестування підпрограм та програми

Для тестування підпрограм виконання команд мікросхеми 24LC08B ми розробили програму TEST, яка почергово встановлює та скидає сигнали SDA, SCL. В ході перевірки рівнів сигналів на мікросхемі за допомогою випромінюючих діодів ми встановили, що всі команди працюють вірно. Протестував усі підпрограми ми протестували головну програму, яка забезпечила можливість демонстрації команд читання, запису даних.

Результати роботи головної програми:

--------------------------------------------------

EWEN

Please enter a byte: asdfgasdggfdsasdf

Please enter a addr: 0

//----WRITE--END----//

--------------------------------------------------

Read:

Please enter a addr: 0

asdfgasdggfdsasdf

--------------------------------------------------

Press any key...

Висновок

В результаті виконання даного курсового проекту ми знайомилися з принципами роботи наступних команд мікросхеми 24LC08В : читання, запису даних. Розробили програму, яка забезпечила можливість демонстрації цих команд.

Список джерел інформації

1. Шилдт Г. Теория и практика С++. - СПб.: БХВ-Петербург, 1999. - 416с.

2. Шилдт Г. Самоучитель С++ . - СПб.: БХВ-Петербург, 2001. - 688с.

3. Microchip 24LC08В/56/66. - USA: Microchip Technology Incorporated, 2002. - 20c.

Размещено на Allbest.ru


Подобные документы

  • Принципи роботи команд мікросхеми 24LC08: читання, запису даних. Опис і блок-схеми програми і підпрограм, що обслуговує пристрій. Вибір середовища програмування і розробка програми, яка забезпечує можливість демонстрації команд. Проведення тестування.

    курсовая работа [114,2 K], добавлен 08.12.2011

  • Організація часових характеристик мікросхеми AT24C32 з висновком щодо придатності LPT-порту. Порядок розробки алгоритмів та текстів підпрограм виконання команд читання та запису даних. Опис та блок-схеми програми та підпрограм, що обслуговує пристрій.

    курсовая работа [233,5 K], добавлен 16.06.2009

  • Розробка структури програмного забезпечення, загальної схеми функціонування програми. Реалізація виведення графічних зображень, роботи з шлагбаумом, загальних елементів керування та музики. Інструкція з технічного обслуговування, системного програміста.

    курсовая работа [3,1 M], добавлен 10.03.2009

  • Опис інтерфейсу паралельного порту Centronics, який має 25-контактний 2-рядний роз'єм DB-25-female. Швидкість передачі даних, фірмові розширення. Розгляд BIOS для LPT-порту. Опис програмного середовища. Приклад виконання програми, блок-схема алгоритму.

    курсовая работа [1,2 M], добавлен 23.04.2014

  • Створення програми з нетривіальною логікою на мові Асемблер, реалізуючи запропонований алгоритм за допомогою команд розгалуження та циклу. Механізми передачі керування та зміна послідовності виконання команд. Типи адресації. Команди умовного переходу.

    лабораторная работа [390,3 K], добавлен 27.02.2013

  • Проектування програми керування мікропроцесорним пристроєм світлової індикації на мові С та Assembler. Розробка алгоритму роботи програми, структурної та електричної принципових схем. Здійснення комп’ютерного моделювання для перевірки розроблених програм.

    курсовая работа [710,7 K], добавлен 04.12.2014

  • Математичне моделювання та створення програмних комплексів типу Nastran або Ansys. Рівняння методу незалежних струмів у матрично-векторній формі. Побудова блок-схеми алгоритму. Характеристика і умовні позначення даних. Текст та результати роботи програми.

    контрольная работа [1006,6 K], добавлен 10.07.2012

  • Аналіз предметної галузі задачі моделювання пострілу балісти через стіну по мішені. Структури даних та діаграми класів для розв'язання задачі. Схеми взаємодії об’єктів та алгоритми виконання їх методів. Опис розробленої програми, інструкція користувача.

    курсовая работа [1,0 M], добавлен 18.05.2014

  • Загальний опис алгоритмів головної програми та процедур запису і зчитування повідомлень на рівні блок-схем, детальний опис розробленої програми на рівні програмного коду. Характеристика процедури відображення стану регістрів. Опис екранних форм програми.

    курсовая работа [552,5 K], добавлен 09.06.2010

  • Розробка та налагодження програми "Заробітна плата" на мові високого рівня С++ для комп'ютерів з операційною системою Windows 7. Текстуальний опис алгоритму. Створення UML-діаграми та обробка інформації з бази даних. Інструкція по роботі з програмою.

    курсовая работа [698,4 K], добавлен 14.10.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.