Лаб1_ПЗА
.docx
Міністерство освіти і науки України
Харківський національний університет радіоелектроніки
Кафедра СТ
ЗВІТ
з лабораторної роботи № 1
з дисципліни: «Периферійні засоби автоматики»
Виконали: Ст. гр.. АКТСІу-17-1 Черкашин В.А. Юрченко В.Р. |
|
Прийняв: Доц. каф СТ Ребезюк Л.Н. з оцінкою «____________» «____»_______________20___р.
|
2019
1 ВИВЧЕННЯ ПРИНЦИПІВ ПРОГРАМНОГО УПРАВЛІННЯ
ВИВЕДЕННЯ ІНФОРМАЦІЇ НА ЦИФРОВИЙ ЖК-ІНДИКАТОР LCD 2 × 20,
ПІДКЛЮЧЕНОГО ДО МІКРОКОНТРОЛЕРА AVR ATMEGA 128
1.1 Мета роботи
Вивчити принципи функціонування і можливості програмного керування виведенням інформації на цифровий РК-індикатор LCD 2×20, підключеного до мікроконтролера AVR ATMEGA 128; розробити алгоритм і програму виведення рядком, що біжить, на екран LCD модуля 2×20 прізвища студента (в одному рядку) і імені (в іншому рядку).
1.2 Теоретичні відомості
РК-індикатор на основі мікроконтролера HD44780 є найбільш часто використовуваних в електроніки. Ви можете його зустріти в кавових автоматах, годинниках, копірах, принтерах, роутерах і т.п. Також даний дисплей використовується в LCD шілдах для Arduino.
РК-індикатор являє собою модуль, що складається з мікроконтролера HD44780 розроблений фірмою Hitachi і рідко-кристалічної матриці (РК-дисплея). Мікроконтролер приймає команди та обрисовує відповідні символи на РК-дисплеї.
Основою РК-індикатора є рідко-кристалічна матриця, подаючи напругу на елемент якої, ми можемо спостерігати засвічену точку на екрані. У символьних РКІ ця матриця складається з певної кількості знакомісць, які групуються по рядках і стовпцях. Розмір знакомісця в пікселях часто становить 8×8 точок.
Контролер HD44780 фірми Hitachi фактично є промисловим стандартом і широко застосовується при виробництві алфавітно-цифрових РКІ-модулів. Аналоги цього контролера або сумісні з ним по інтерфейсу і командній мові мікросхеми, випускають безліч фірм, серед яких: Epson, Toshiba, Sanyo, Samsung, Philips. Ще більша кількість фірм виробляють РКІ-модулі на базі даних контролерів.
Контролер HD44780 потенційно може керувати 2-мя рядками по 40 символів в кожній (для модулів з 4-ма рядками по 40 символів використовуються два однотипних контролера), при матриці символу 5×7 точок. Контролера також підтримує символи з матрицею 5×10 точок, але в останні роки РКІ-модулі з такою матрицею практично не зустрічаються.
Існує кілька різних більш-менш стандартних форматів РКІ-модулів (символів×рядків): 8×2, 16×1, 16×2, 16×4, 20×1, 20×2, 20×4, 24×2, 40×2, 40×4. Зустрічаються і менш поширені формати: 8 1, 12×2, 32×2 і ін., – принципових обмежень на комбінації і кількість відображуваних символів контролера не накладаються – модуль може мати будь-яку кількість символів від 1 до 80, хоча в деяких комбінаціях програмна адресація символів може виявитися не дуже зручною.
РК-індикатор LCD 2×20 в лабораторному макеті може відображати 2 рядки по 20 символів в кожній.
РК-індикатор на основі мікроконтролера HD44780 дозволяє:
– працювати як по 8-ми, так і по 4-х бітної шині даних;
– приймати команди з шини даних;
– записувати дані в ОЗУ з шини даних;
– читати дані з ОЗУ на шину даних;
– читати статус стану на шину даних;
– запам'ятовувати до 8-ми зображень символів, що задаються користувачем;
– виводити курсор двох типів: миготливий (або не миготливий);
– управляти контрастністю і підсвічуванням.
1.3 Код програми
#include <avr/io.h>
#define F_CPU 11059200
#include <util/delay.h>
#include "lcd_hd44780_avr.h"
int main(void)
{
LCDInit(LS_NONE);
LCDClear();
while(1){
for(int i = 0; i < 20; i++){
LCDGotoXY(i,0);
LCDData(89); // за допомогою символу
LCDData(117);
LCDData(114);
LCDData(99);
LCDData(104);
LCDData(101);
LCDData(110);
LCDData(107);
LCDData(111);
// method 2
LCDWriteStringXY(i+10, 0, "Vladislav");
LCDGotoXY(i,1);
LCDByte(0,1); // бітове зображення
LCDWriteStringXY( i+1, 1, "herkashyn"); // за допомогою строки
LCDWriteStringXY( i+11, 1, "Vladimir");
_delay_ms(350);
LCDClear();
}
}
#ifndef __CUSTOMCHAR_H
#define __CUSTOMCHAR_H
unsigned char __cgram[]=
{
0b01110,
0b10001,
0b10000,
0b10000,
0b10000,
0b10001,
0b01110,
0b00000
};
#endif
Рисунок 1.1 - Схема алгоритму виведення інформації на LCD модуль
ВИСНОВКИ
В ході виконання лабораторної роботи була розроблена програма для виводу прізвища та ім’я на екран LCD модуля 2×20. Було використано три способу виведення: символами, з використанням строки та шляхом бітового зображення. Для зсуву прізвища та ім’я у часі був використаний цикл який перемалює зображення у часі.