Samou4ka » 🐞 AVR.Начинающим » Подключение библиотеки символьного ЖКИ в WinAVR

Подключение библиотеки символьного ЖКИ в WinAVR

Как-то скачал lcd библиотеку и начал подключать ЖКИ и пару часов промучался. И вот вспомнил об этом и чтобы такое больше не повторялось решил кратко написать как подключать эту библиотеку, начиная с создания проекта и создания makefile файла. Итак, давайте по порядку после открытия AVRStudio:

  1. Project ->New Project, в появившемся окне выбираем AVR GCC, ставим галочку Create Initial File и Create File, в Proje Name пишем название проекта, например LCD.
  2. Копируем в папку с проектом lcd_lib.h, lcd_lib.c (скачать можно ниже), Makefile (ниже о нем).
  3. Project -> Configuration Options, в появившемся окне Use External Makefile выбираем Makefile в папке с проектом, жмем Ok.
  4. Слева в колонке с файлами проекта правой кнопкой на Header Files, выбираем Add Existing Header File и выбираем файл lcd_lib.h в папке с проектом.
  5. Тоже самое для Source Files и добавляем lcd_lib.c
  6. В компилируемом файле (в нашем случае LCD.c) добавляем #include “lcd_lib.h”
  7. Project->Save Project
  8. Используем функции библиотеки в программе.
  9. Build Project (F7)

MAKEFILE

Не буду вдаваться в подробности, а просто напишу что для компиляции программы нужен так называемый Makefile. Идем в папку с установленной программой (какой-нибудь WinAVR\sample) и находим там Makefile. Копируем его в папку со своим проектом (этот файл должен находиться в одной папке с компилируемым файлом). Открываем скопированный Makefile каким-нибудь блокнотом и редактируем.

1. Указываем используемый микроконтроллер

# MCU name

MCU = atmega8

2. Частота тактирования микроконтроллера в герцах

# Processor frequency.

F_CPU = 8000000

3. Указываем имя проекта и соответственно имя компилируемого файла

# Target file name (without extension).

TARGET = LCD

4. Находим строки

# List C source files here. (C dependencies are automatically generated.)

SRC =

и исправляем таким образом

# List C source files here. (C dependencies are automatically generated.)

SRC = $(TARGET).c

И дописываем через пробел файл lcd_lib.c, должно получиться так

# List C source files here. (C dependencies are automatically generated.)
SRC = $(TARGET).c lcd_lib.c

5. Находим CPPSRC=main.cpp и стираем значение после равно, получится так

#List C++ source files here. (C dependencies are automatically generated.)
CPPSRC =

6. Ниже ищем

#—————-Programming Options (avrdude) —————-
AVRDUDE_PROGRAMMER = stk500

И записываем после равно тип вашего программатора (например, stk200)

Еще ниже можно изменить порт к которому он подключен

AVRDUDE_PORT = com1 # programmer connected to serial device

Вот и все, теперь все сохраняем и оставляем Makefile в покое.


В lcd_lib.h вы можете выбрать порт к какому вы хотите подключить индикатор.

#define LDP PORTB //define MCU port connected to LCD data pins

#define LCP PORTB //define MCU port connected to LCD control pins

#define LDDR DDRB //define MCU direction register for port connected to LCD data pins

#define LCDR DDRB //define MCU direction register for port connected to LCD control pins

Здесь порт B, вы же можете указать нужный вам. Эта библиотека написана для подключения индикатора к МК используя 4х проводную шину данных (т.е. по битно для любого порта, 0 – RS, 1 – RW, 2 – E, 4 – D4, 5 – D5, 6 – D6, 7 – D7). Вот так, например:

Вроде бы все.

Как вам статья? Ваша реакция:
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0
Расскажите друзьям:
Оцените статью:

Один комметарий

  • «Как хорошо, что есть такие люди как выgrin. У меня

    avrstudio 6 и usb программатор stk500. Хотел немного поработать с lcd,но не знаю куда и как добавить библиотеку.

    Если можно подробнее пожалуйста.»

Оставить комментарий