Термінова допомога студентам
Дипломи, курсові, реферати, контрольні...

Разработка контролера матричної клавіатури на микроконтроллере К1816ВЕ48

РефератДопомога в написанніДізнатися вартістьмоєї роботи

Перша процедура виробляє однократне звернення до матриці клавіш для визначення, Натиснута чи хоча тільки з клавіш. Друга здійснює циклічний опитування клавіатури до того часу, поки що не натиснута (а вони часто й звільнена) клавіша. Будучи її вмонтовано в основну програму, друга процедура блокує процес управління об'єктом тимчасово очікування натискання клавіші, тому звернення до неї відбувається… Читати ще >

Разработка контролера матричної клавіатури на микроконтроллере К1816ВЕ48 (реферат, курсова, диплом, контрольна)

Відомо, що стають доступними нову мову програмування високого рівня, які у істотною ступеня уникнути залежність від ЕОМ і полегшити сам процес програмування. Широке поширення персональних комп’ютерів привертає до використанню ЕОМ непрофесійних программистов.

Проте, інтерес до архітектури ЕОМ і програмування лише на рівні машинних кодів не вгасає, а й зростає з двох причин. Перша причина у тому, що доступність використання ЕОМ для непрофесійних програмістів досягається ціною чималих зусиль професійних програмістів, створюють системне програмне забезпечення, котрим знання архітектури ЕОМ просто необхідні. Що Відбувається нині процес комп’ютеризації неминуче збільшує кількість фахівців дуже високою кваліфікації - системних програмістів. Друга причина обумовлена зростанням мікропроцесорної техніки. Сучасні мікропроцесори мають таких можливостей, які порівнянні, а часом перевершують можливості обчислювальних систем, причому мають меншими габаритами, споживанням енергії та вартістю. Програмування мікропроцесорів і однокристальных ЕОМ, які вбудовуються у якесь устаткування, виконується, зазвичай, мовою ассемблера, а застосування їх вимагає детального знання архітектури ЭВМ.

Темою моєї курсової роботи є підставою розробка котроллер матричної клавіатури на микроконтроллере. Як нього вибрав микроконтроллер К1816ВЕ48 (МК48) оскільки серія К1816, мал.1, варта побудови широкого спектра микроЭВМ і микроконтроллеров з метою їхнього спрямування збирання та опрацювання інформації, в системах регулювання технологічних процесів, цифровий обробці сигналів в апаратурі зв’язку й т. д.

Сукупності споживчих параметрів, як-от вартість, ефективність, енергоспоживання, робочий діапазон температур — видаються достоїнствами серії К1816 у її використанні в різної аппаратуре.

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

Найпростіший у серії К1816 микроконтроллер К1816ВЕ48 (МК48) тримає в кристалі такі апаратні кошти: процесор розрядністю 1 байт, стираемое програмована ПЗУ програм ємністю 1 Кбайт, ОЗУ даних ємністю 64 байта, лагідний 8-битный таймер/счетчик, программируемые схеми ввода/вывода (27 ліній), блок векторного переривання від двох джерел, генератор, схему синхронізації і управления.

Структура МК48 та її система команд така, у разі необхідності функционально-логические можливості контролера можуть бути розширені. З використанням зовнішніх додаткових БІС постійної і оперативної пам’яті адресне простір МК може бути розширена до запланованих 4 Кбайт і 320 байт відповідно, а шляхом підключення різних интерфейсных БІС число ліній зв’язку МК з об'єктом управління може бути збільшене практично без ограничений.

МК48 вимагає одного джерела харчування +5 В (10%, розсіює потужність близько 1,5 Вт і у діапазоні температур від 0 до 700 З. По входам і виходам МК48 електрично сумісні з мікросхемами ТТЛ. МК48 може працювати у діапазоні частот синхронізації від 1 до 6 МГц, а мінімальне час виконання команди становить 2,5 мкс.

З такої характеристики видно, що МК48 має значними функционально-логическими можливостями і що представляють ефективний засіб комп’ютеризації (автоматизації з урахуванням застосування засобів і методів обробки даних, і цифрового управління) різноманітних об'єктів і процессов.

Аналіз основних ознак МК48 показує, що й доцільно використати в етапі дослідно-конструкторській розробки та налагодження систем.

Структурна схема МК48.

[pic].

Рис. 1.

Структурна схема і аналіз задачи.

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

[pic]Рис. 2.

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

2.Разработка принципової схемы.

[pic] Рис. 3.

На рис. 3 зображено принципова схема контролера матричної клавіатури. Задля більшої синхронізації роботи мікропроцесора на висновках CR1, CR2 підключений кварцовий резонатор.

Десять кнопок зорганізовані у матрицю, і за натисканні будь-який кнопки замикається рядок і стовпець. Визначивши замкнуті рядок і стовпець, можна визначити код натиснутої клавіші. Таке сканування клавіатури реалізується программно.

Три лінії порту 1 Р1.0, Р1.1, Р1.2 утворюють три лінії кнопок, а до висновків Р2.0, Р2.1, Р2.2, Р2.3 підключені чотири шпальти. Кожна клавіша в такий матриці має власний номер, відповідний її местоположению. На цифрові клавіші можна завдати позначення, що відповідатимуть їхнім кодам (від 0 по F) Резисторы R1-R4 обмежують струм через контакти, а діоди забезпечують захисту від замикання між собою скануючих ліній у разі одночасного натискання більш як однієї клавиши.

Харчування контролера здійснюється від мережі змінного струму з напругою 220 У і частотою 50 гц. Оскільки напруга харчування контролера здійснюється постійним струмом з напругою +5 У, то ставиться схема харчування, що складається з понижувального трансформатора, випрямляча, виконаного за схемою диодного мосту і стабілізатора напряжения.

3. Розробка блок-схемы і алгоритму программы.

Принцип роботи клавіатури следующий:

На жодну з ліній порту видається логічний «0», але в інші лінії «1». Потім відбувається зчитування з ліній шпальт. Якщо фіксується «0», його відповідає номера шпальти натиснутою клавіші й разом із номером поточної рядки його використовують визначення коду натиснутій клавіші. Якщо усім входах «1», процедура сканування триває для наступній строки.

Для обслуговування клавіатур в МКсистемах використовуються дві процедури: опитування стану клавіатури і введення коду натиснутій клавиши.

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

Лінії порту 1 йдуть на сканування, а лінії порту 2 — для опитування матриці клавіш. Кожна клавіша у такому матриці має власний номер, відповідний її местоположению. На цифрові клавіші завдані позначення, що відповідатимуть їхнім кодам (від 0 по B).

Для програмного введення інформації з клавіатур характерний один недолік, саме — спрацьовування по отпусканию клавіші, а чи не по натискання. Проте за короткочасних нажатиях клавіш цей ефект немає особливого значения.

Приватна процедура сканування служить щоб виявити натиснутою клавіші й наступної її ідентифікації. Процедура зводиться до почерговому обнулению кожної з ліній сканування і опитування ліній повернення. У порт 1 видається байт сканування (БС), у якому 0 тільки одного бите. Коли перетині лінії сканування і лінії повернення перебуває натиснута клавіша, то відповідному бите байта повернення (БС), прийнятого до порту 2, буде перебувати 0.

Послідовність байтів сканування є код «який біжить нуль »; формування чергового байта сканування здійснюється шляхом зсуву його попереднього значення. Напрям зсуву визначає послідовність опитування клавіш. Якщо за повному циклі сканування не було знайдено натиснутій клавіші, то процедура сканування повторюється сначала.

Оператор «Є натиснута клавіша? «реалізується тим, що клавіші, підключені кожну лінію сканування, аналізуються послідовно. Якщо після аналізу кожної клавіші здійснювати поповнення одиниці до лічильника SCANCODE, то процедуру сканування можна поєднати з процедурою ідентифікації натиснутій клавіші (рис. 4).

[pic].

4. Розробка тексту вихідної программы.

R4 — лічильник коду сканирования.

ORG 300H; перехід на 300 сторінку РПП.

DB 7EH, 30H, 6DH, 79H; коди семисегментного.

DB 33H, 5BH, 5FH, 70H; индикатора.

DB 7FH, 7BH, 76H, 1EH;

ORG 0; перехід у початок программы.

START: MOV R4,#0; скидання SCANCODE.

MOV R7,#3; завантаження лічильника сканирования.

MOV R6,#1 111 1110B; завантаження вихідного байта сканирования.

LOOP: MOV A, R6.

OUTL P1, A; висновок поточного байта сканирования.

RL A; зрушення байта сканирования.

MOV R6, A; збереження поточного байта сканирования.

IN A, P2; введення байта возврата.

MOV R5,#4; завантаження лічильника опросов.

LOOK: RRC A; зрушення байта возврата.

JNC NEXT; вихід із процедури для виявлення першої натиснутої клавиши.

INC R4; прибуток SCANCODE.

DJNZ R5, LOOK; зменшення лічильника опитувань та циклу, а то й нуль.

DJNZ R7, LOOP; зменшення лічильника сканування і цикл, а то й 0.

JMP START; розпочати сканування сначала.

next: mov a, r4; завантаження в акумулятор коду символу movp3 a,@a; зчитування байта індикації з таблицы.

outl bus, a; видача байта індикації на індикатор через порт BUS end вихід із программы.

Завдання роботу… …3.

Запровадження… …4.

1. Аналіз поставленого завдання. Структурна схема МК системы…6.

2. Розробка принципової схеми МК системы…7.

3.Выбор і опис алгоритму программы…8.

3.1 .Розробка загальної блок-схемы алгоритму (БСА) роботи контроллера…9.

4. розробка тексту вихідної программы…10.

4.1. Налагодження програми з допомогою індивідуального задания…11.

5. Таблиця «прошивки» РПЗУ…12.

Укладання… …12.

Список літератури… …13.

Налагодження программы:

|Номер натиснутої |Порт 1 |Порт 2 |Порт ССИ BUS | |клавіші | | | | |"6″ |11 111 101 |11 111 011 |1 011 111 | |"А" |11 111 011 |11 111 011 |1 110 110 |.

Таблиця «прошивки» РПЗУ:

7E |30 |6D |79 |33 |5B |5 °F |70 |7 °F |7B |76 |1E |72 | |1a |00 |00 |00 |bc |00 |bf |03 |be |fe |fe |39 |e7 | |AE |0A |BD |04 |67 |E6 |17 |1C |ED |0D |EF |06 |04 | |00 |FC |E3 |02 |C1 |00 |00 |00 |01 |FF | | | | |.

Заключение

.

Для візуального контролю натиснутою кнопки, можливо підключення семисегментного індикатора до жодного з портів, у разі на порт BUS. Висновок коду на ССИ здійснено програмно, цим досягається відображення коду натиснутій клавіші на ССИ. Для зручності індикації на цифрові клавіші завдані позначення, що відповідатимуть їхнім кодам (від 0 по B).

Отже застосування мікропроцесорних систем в пристроях різних типів, дозволяє скоротити у елементів у схемі, зробити пристрій якіснішим, і дає підстави здійснити найбільш «дружелюбний» інтерфейс з пользователем.

Лін. У. PDP-11 і VAX-11. Архітектура ЕОМ і програмування мовою ассемблера. М. Радіо і зв’язок, 1989.-315 з. Варламов І.В., Касаткін И.Л. Мікропроцесори в побутової техніки. М. Радіо і зв’язок, 1990.-102 з. Калабеков Б. А. Цифрові пристрої і мікропроцесорні системи. М. Радіо і зв’язок, 1997.-336 с.

Міністерство Російської Федерації по транспорту і связи.

Новосибірський коледж телекомунікацій, і информатики.

Сибірського державного університету телекомунікацій, і информатики.

КУРСОВОЙ ПРОЕКТ.

По дисципліни «Обчислювальна техника».

На тему: «Розробка контролера матричної клавіатури на микроконтроллере.

К1816ВЕ48 «.

Виконав: Баталов Д. Ю.

Грн. М-31.

Перевірив: Іванов У. С.

———————————;

Пользователь.

Клавиатура.

Микропроцессор

Реценз.

КТІ грн. М-31.

Листов.

Контролер матричної клавіатури на микроконтроллере.

Утверд.

М. Контр.

Т. Контр.

Иванов В.С.

Провер.

Баталов Д.Ю.

Разраб.

Лис.

Дата.

Подпись.

№ докум.

Лист.

Изм.

Лист.

Дата.

Подпись.

№ докум.

Лист.

Изм.

Лист.

Дата.

Подпись.

№ докум.

Лист.

Изм.

Лист.

Дата.

Подпись.

№ докум.

Лист.

Изм.

Лист.

Дата.

Подпись.

№ докум.

Лист.

Изм.

КТИ.000.000.001.ПЗ.

Лист.

Дата.

Подпись.

№ докум.

Лист.

Изм.

Лист.

Дата.

Подпись.

№ докум.

Лист.

Изм.

Лист.

Дата.

Подпись.

№ докум.

Лист.

Изм.

Изм.

Лист.

№ докум.

Подпись.

Дата.

Лист.

Лист.

Дата.

Подпись.

№ докум.

Лист.

Изм.

Лист.

Дата.

Подпись.

№ докум.

Лист.

Изм.

Показати весь текст
Заповнити форму поточною роботою