Индикатор WG16080A на контроллере LC7981 и МК AVR ATMega8535

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
AG
Родился
Аватара пользователя
Сообщения: 15
Зарегистрирован: Вт июл 01, 2008 16:49:30
Откуда: Москва

Сообщение AG »

Ребят помогите пожалуйста, имеется индикатор WG16080A и ATMega8535, скачал библиотеку для контроллеров индикаторов LC7981
http://www.frozeneskimo.com/electronics ... msung-lcd/
Пробую запустить тот пример, что приведен в библиотеки, только без функции draw_peguin()
В результате получаю, что весь экран полностью закрашен (то есть все пикселы темные (горят)).
Подключение проверил (несколько раз) вроде все правильно.

Код: Выделить всё

#include "oscope.h"
#include "lc7981.h"
#include "graphics.h"

int main(void) 
{
	lcd_graphics_init();
	lcd_graphics_clear();
	
	g_draw_rectangle(6, 5, 100, 30);
	g_draw_rectangle(8, 7, 100, 30);
	g_draw_rectangle(10, 9, 100, 30);
	g_draw_rectangle(12, 11, 100, 30);
	g_draw_string(17, 15, "Graphics Demo!\nHello World!"); 
	g_draw_string(22, 44, "!\"#$%&'=\n()*+,-./\n:;<>?@\[\n]^_`|{}");

	while (1);
	return 0;
}
Да и еще добавил пару строчек, кода при инициализации в функцию lcd_graphics_init, чтобы управлять пинами CS, DISP OFF, RESET

Код: Выделить всё

	LCD_CTRL_DDR |= (1<<LCD_CTRL_CS)|(1<<LCD_CTRL_DISP)|(1<<LCD_CTRL_RST);

	lcd_cs_low();
	lcd_disp_high();
	
	lcd_rst_low();
	_delay_ms(50);
	lcd_rst_high();
	_delay_ms(50);
Макросы в lc7981.h:

Код: Выделить всё

#define lcd_cs_high() (LCD_CTRL_PORT |= (1<<LCD_CTRL_CS))
#define lcd_cs_low() (LCD_CTRL_PORT &= ~(1<<LCD_CTRL_CS))

#define lcd_disp_high() (LCD_CTRL_PORT |= (1<<LCD_CTRL_DISP))
#define lcd_disp_low() (LCD_CTRL_PORT &= ~(1<<LCD_CTRL_DISP))

#define lcd_rst_high() (LCD_CTRL_PORT |= (1<<LCD_CTRL_RST))
#define lcd_rst_low() (LCD_CTRL_PORT &= ~(1<<LCD_CTRL_RST))
И последнее: пробывл с различными реализациями lcd_wait_busy в lc7981.c
Реклама
AG
Родился
Аватара пользователя
Сообщения: 15
Зарегистрирован: Вт июл 01, 2008 16:49:30
Откуда: Москва

Сообщение AG »

Отвечаю сам на свой вопрос =) (разобрался):

оказывается в данном индикаторе максимальное сопротивление не означает максимальную контрастность, то есть надо было подобрать нужное сопротивление между Vee и V0 и GND.
Реклама
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»