15317

Подключение ЖК(LCD) дисплея к AVR микроконтроллеру

Доклад

Информатика, кибернетика и программирование

Лабораторная работа №3 Подключение ЖКLCD дисплея к AVR микроконтроллеру Цель работы: написать для микроконтроллера программу вывода информации на LCD дисплей на языке программирования С согласно варианта. На первых двух лабораторных работах научились: управлять мик

Русский

2013-06-11

95 KB

40 чел.

Лабораторная работа №3

Подключение ЖК(LCD) дисплея к AVR микроконтроллеру

 Цель работы: написать для микроконтроллера программу вывода информации на LCD дисплей на языке программирования С согласно варианта.

На первых двух лабораторных работах научились: управлять микроконтроллером и управлять чем-то, при помощи микроконтроллера. Теперь, чтобы сделать наше устройство более дружелюбным, будем к нему подключать дисплей. Сразу нужно отметить дисплей — символьный. Это значит что внутри у него, в памяти, уже есть алфавит. Все что нам нужно — дать команду вывести строку.

Дисплеи бывают разные: разный цвет подсветки экрана, разное количество строк, разное количество символов в строке. Поэтому, здесь рассматривается дисплей WH0802A-YGK-CT, 2 строки по 8 символов, подсветка желтая светодиодная.

Создадим проект в CodeVision. На вкладке LCD укажем порт, к которому будет подключен наш дисплей (PORTD). В строке Char/Line указываем количество символов нашего ЖК дисплея (8).

Генерируем, сохраняем проект. Приводим код к следующему виду:

#include <mega8.h>

#asm

.equ

__lcd_port=0x12 ;PORTD

#endasm

#include <lcd.h>

 void main(void)

 {

 PORTD=0x00;

 DDRD=0x00;

 lcd_init(8);

while (1)

{

};

}

Добавились новые строчки

#asm
.equ__lcd_port=0×12
#endasm

Дисплей подключен к PORTD

#include <lcd.h>

Библиотека для работы с LCD дисплеями

 

Немного изменим код нашей программы:

#include <mega8.h>

 #asm

.equ __lcd_port=0x12

#endasm

#include <lcd.h>

 void main(void)

{

  PORTD=0x00;

 DDRD=0x00;

  lcd_init(8);

  lcd_gotoxy(0,0);

lcd_putsf("lesson3");

 

#pragma rl+

 lcd_gotoxy(0,1);

 lcd_putsf("Урок3");

#pragma rl-

 

while (1)

{

 

};

}

lcd_gotoxy(0,0);

Переставить курсор в координату ХУ, х – позиция по горизонтали, у – по вертикали

lcd_putsf(«lesson3″);

Вывести слово lesson3 на LCD дисплей

#pragma rl+
lcd_putsf(«
Урок3″);
#pragma rl-

Данная директива позволяет вывести на экран русский алфавит, при условии что дисплей его поддерживает

Запустим получившийся код на симуляцию в ISIS Proteus. Как видно первая строчка отображается правильно, а вот вторая кракозябами. Дело в том, что протеус не распознает русский алфавит и если ваш дисплей не будет поддерживать его, то на реальном дисплее тоже будут непонятные символы.

Вывести на дисплей надпись “Hello, world

Варианты заданий

№ Варианта

Порт подключения дисплея

Кол-во знаков дисплея

Начальное положение курсора на дисплее, x, y

Микроконтроллер

1

Порт А

24

0,1

ATmega16

2

Порт D

16

1,2

ATmega32

3

Порт B

24

1,3

ATmega64

4

Порт E

16

1,4

ATmega128

5

Порт B

12

0,2

ATmega16

6

Порт C

12

1,2

ATmega32

7

Порт C

20

0,2

ATmega64

8

Порт D

12

0,1

ATmega128

9

Порт C

16

0,3

ATmega16

10

Порт B

20

1,5

ATmega32

11

Порт D

16

1,6

ATmega64

12

Порт C

12

0,0

ATmega128

13

Порт D

20

1,7

ATmega16

14

Порт А

24

1,9

ATmega32

15

Порт E

16

1,1

ATmega64

Отчет должен содержать:

  1.  Схему устройства;
  2.  Код программы с пояснениями.


 

А также другие работы, которые могут Вас заинтересовать

2836. Трудові ресурси сільського господарства, склад і класифікація трудових ресурсів 102.5 KB
  Трудові ресурси сільського господарства, склад і класифікація трудових ресурсів Трудові ресурси як фактор економічного розвитку держави Трудові ресурси – специфічний і найважливіший із усіх видів економічних ресурсів. Як фактор економічного роз...
2837. Разработка и внедрение системы экологического менеджмента на АЭС 2.13 MB
  Становление и концепция экологического менеджмента при осуществлении деятельности, связанной с использованием атомной энергии и природных ресурсов. Руководство концерна Росэнергоатом и его филиалов - атомных станций, их деловые партнеры понимают преимущества, получаемые на международном и российском рынках предприятиями, которые внедрили систему экологического менеджмента.
2838. Проектирование и исследование рычажного механизма 395.5 KB
  Задание Задание №8 вариант №8 Спроектировать плоский рычажный механизм (см рисунок 1). Рисунок 1. Схема механизма Вариант K H, мм n, об/мин Pпс ...
2839. Общие принципы технической эксплуатации элементов конструкций и инженерного оборудования зданий 106 KB
  Общие принципы технической эксплуатации элементов конструкций и инженерного оборудования зданий. Прочностные и деформационные характеристики несущих конструкций, их нормирование, оценка и обеспечение в заданных пределах при эксплуатации. Эксплуатаци...
2840. Генетика как наука и ее теоретические аспекты 256.5 KB
  ЭТАПЫ РАЗВИТИЯ ГЕНЕТИКИ КАК НАУКИ. Генетика – наука о наследственности и изменчивости организмов, о закономерностях наследственной изменчивости и о материальных основах наследственности. а) Развитие классической генетики (создание самой наук...
2841. Генетика пола 116 KB
  Генетика пола Цель: Выявить основные закономерности наследования признаков, сцепленных с полом Задачи: 1. Изучить закономерности наследования признаков, сцепленных с полом, у дрозофилы 2. Изучить закономерности наследования признаков, сцепленных с п...
2842. Функции как совокупность объявлений и операторов 79 KB
  Функции Функция – это совокупность объявлений и операторов, предназначенных для выполнения отдельной задачи и заключённых в специальный блок. Необходимость в использовании функций возникает при решении сложных задач, когда нужно выполнять набор...
2843. Время жизни и область видимости в программировании 54 KB
  Время жизни и область видимости В языке C блоком считается последовательность объявлений, определений и операторов, заключенная в фигурные скобки. Объект языка C может быть объявлен на внешнем уровне (вне любого блока), на внутреннем уровне (внутри ...
2844. Препроцессор языка C 75.5 KB
  Препроцессор языка C Препроцессор языка C – это программа, выполняющая обработку исходного кода для передачи его компилятору, в процессе которой происходит подстановка директив и выполнение операций препроцессора. Все директивы препроцессора на...