Страница 8 из 15

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Сб янв 29, 2011 01:05:21
БАТАРЕЙКУС
Sounds. я вот все сваи дисплеии и остольные модули давно соединяю с помощью разьёмов тогда и ошибок будет меньше.
если нужно могу тестовую програмку скинуть для пик шоб проверить работу модуля.

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Сб янв 29, 2011 11:25:13
Jack_A
Ethereal писал(а):Значит у тебя проблемы с переводом в уме двоичных чисел в шестнадцатеричные.
Да нет у меня таких проблемав. Просто когда оцифровываешь несколько сотен изо-байтиков, чисто по вероятности несколько штук накосячишь. А прога это делает на раз и без ошибок. Только у нее должны быть как минимум 2 режима, потому что бывают графические ЖКИ, у которых байтик разворачивается построчно, у других - поколонно. Со вторыми работать проще.

БАТАРЕЙКУС

Не люблю разделывать эти плоские кабели. Если протыкать их, еще куда ни шло, а если разделывать под пайку - заморишься, да и отламываются они легко. Пару раз вставил-вынул -- заполучи бодягу.

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Вс янв 30, 2011 03:33:45
БАТАРЕЙКУС
[/quote]Не люблю разделывать эти плоские кабели.[/quote]
а какж тогда быть, что вы можите предложить? я вот пака лутшей альтернативы невстречал.

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Вс янв 30, 2011 14:53:46
Jack_A
БАТАРЕЙКУС писал(а):
Не люблю разделывать эти плоские кабели.
а какж тогда быть, что вы можите предложить? я вот пака лутшей альтернативы невстречал.
Если протыкать на обоих концах разъемами - таки да, а для пайки предпочитаю скрутить из МГТФок несколько пар. Не очень эстетично, зато нервы экономит.
Но это мое мнение.

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Ср фев 02, 2011 13:51:18
Rinon Ninqueon
не могу запустить дисплей
WG12864A (как у автора), мега16, 8МГц
менял только выводы: данные на портД, управление - портБ.
соединял шлейфом

залил для отладки "китайского" кота. Вроде, все сигналы идут, но ни одного пикселя не увидел

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Ср фев 02, 2011 14:09:04
Rinon Ninqueon
отбой
надо было контрастность питать с Vee
всё работает!

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Чт фев 03, 2011 22:17:43
vovik15
А кто нибудь собирал это чудо - деталей на три копейки?
http://labkit.ru/html/toys?id=435

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Пн мар 14, 2011 23:05:03
shemopay
Помогите народ. Пробую компилировать прогу в ICC for AVR, подключил файлы, которые даны сдесь для работы с графикой. При компиляции пишет:


!ERROR file 'ks_1.o': undefined symbol '_Delay_ms'
!ERROR file 'ks_1.o': undefined symbol '_Delay_mks'
C:\iccv7avr\bin\imakew.exe: Error code 1

В чем дело?

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Вт мар 15, 2011 13:49:09
mdscorp
уважаемые помогите добавить логику выбора кристала

вот процедура инициализации
точнее просто установка всех пинов в 0а данных в 1

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

void OpenXLCD_1(void)
{
        DATA_PORT = 0;
        TRIS_DATA_PORT = 0xff;
        TRIS_RW = 0;                    // All control signals made outputs
        TRIS_RS = 0;
        TRIS_E = 0;
        RW_PIN = 0;                     // R/W pin made low
        RS_PIN = 0;                     // Register select pin made low
        E_PIN = 0;                      // Clock pin made low
}
а вот настоящая процедура инициализации

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

void OpenXLCD_2(unsigned char lcdtype)
{
        // Delay for 15ms to allow for LCD Power on reset
        DelayPORXLCD();
       
        TRIS_DATA_PORT = 0;             // Data port output
        DATA_PORT = 0b00110000;         // Function set cmd(8-bit interface)
        E_PIN = 1;                      // Clock the cmd in
        DelayFor18TCY();
        E_PIN = 0;
        
        // Delay for at least 4.1ms
        DelayXLCD5ms();

        DATA_PORT = 0b00110000;         // Function set cmd(8-bit interface)
        E_PIN = 1;                      // Clock the cmd in
        DelayFor18TCY();
        E_PIN = 0;

        // Delay for at least 100us
        DelayXLCD100();

        DATA_PORT = 0b00110000;         // Function set cmd(8-bit interface)
        E_PIN = 1;                      // Clock cmd in
        DelayFor18TCY();
        E_PIN = 0;
        TRIS_DATA_PORT = 0xff;          // Make data port input
        return;
}
вот процедура записи

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

        TRIS_DATA_PORT = 0;             // Make port output
        DATA_PORT = data;               // Write data to port
        RS_PIN = 1;                     // Set control bits
        RW_PIN = 0;
        DelayFor18TCY();
        E_PIN = 1;                      // Clock data into LCD
        DelayFor18TCY();
        E_PIN = 0;
        RS_PIN = 0;                     // Reset control bits
        TRIS_DATA_PORT = 0xff;          // Make port input
        RS_PIN = 1;                     // Set control bits
        RW_PIN = 0;
        DelayFor18TCY();
        E_PIN = 1;                      // Clock nibble into LCD
        DelayFor18TCY();
        E_PIN = 0;
        DelayFor18TCY();
        E_PIN = 1;                      // Clock nibble into LCD
        DelayFor18TCY();
        E_PIN = 0;
и соответственно

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

#define RW_PIN   PORTAbits.RA2   /* PORT for RW */ 
#define TRIS_RW  TRISAbits.TRISA2    /* TRIS for RW */ 
#define RS_PIN   PORTAbits.RA1   /* PORT for RS */ 
#define TRIS_RS  TRISAbits.TRISA1    /* TRIS for RS */ 
#define E_PIN    PORTAbits.RA3   /* PORT for D  */ 
#define TRIS_E   TRISAbits.TRISA3    /* TRIS for E  */

#define CS1_PIN  PORTAbits.RA4
#define TRIS_CS1 PORTAbits.TRISA4
#define CS2_PIN  PORTAbits.RA5
#define TRIS_CS2 PORTAbits.TRASA5    /выбор кристалов
а то я уже окончательно запутался

если поможете выложу схему и исходники управления WG12864A через юсб на 18f2550-18f2455

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Вт мар 15, 2011 19:42:38
mdscorp
спрошу по другому
просто обьясните для тупого на пальцах какие сигналы подавать для инициализации и с какими временными задержками
сам ни как не могу понять

есть:

D7-D0
E
RW
RS
CS1
CS2

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Пт мар 18, 2011 17:11:58
БАТАРЕЙКУС
mdscorp писал(а):для тупого

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

1) выставляеш на RW, RS нулевые уровни.
2) подаёш единичный уровень(в дальнейшем "1") на Reset
3)ждёш 2мкс.
4)подаёш 1 на CS1, CS2.
5ждёш 2мкс.
6)подаёш 0 на Reset
7)ждёш 2мкс.
8)подаёш 1на Reset
9)ждёш 2мкс.
10)подаёш B'00111111' на D7-D0 
11)ждёш 2мкс.
12)подаёш 1 на E
13) ждёш 12мкс
14)подаёш 0 на E
15) очищяеш D7-D0 
всё после этого дисплей готов к работе.
ктото инициализацию может проводить немножко иначе но я делаю именно так и работает и менять нечё несобираюсь. мой дисплей чернеет (тоесть все пиксели экрана принимают единичные значения) после инициализации.

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Пн мар 21, 2011 16:46:15
mdscorp
БАТАРЕЙКУС писал(а):для тупого
спасибо, очень доходчиво

оставлю может кому поможет

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

void OpenXLCD_2(unsigned char lcdtype)
{
        // Delay for 15ms to allow for LCD Power on reset
		DelayPORXLCD();
        
		TRIS_CTRL_PORT = 0;
		RW_PIN = 0;
        RS_PIN = 0;
 		RST_PIN = 1;
		DelayXLCD5ms();                 //ждёш 2мкс.
		CS1_PIN = 1;
		CS2_PIN = 1;                    //4)подаёш 1 на CS1, CS2.
		DelayXLCD5ms();                 //5ждёш 2мкс.
 		RST_PIN = 0;                    //6)подаёш 0 на Reset все ресет отпущен
		DelayXLCD5ms();                 //7)ждёш 2мкс.
 		RST_PIN = 1;                    // 8)подаёш 1на Reset
		DelayXLCD5ms();                 // 9)ждёш 2мкс.
        TRIS_DATA_PORT = 0;             // 
        DATA_PORT = 0b00111111;         // 10)подаёш B'00111111' на D7-D0
		DelayXLCD5ms();                 //11)ждёш 2мкс.
        E_PIN = 1;                      // Clock the cmd in
        DelayFor18TCY();
        E_PIN = 0;                      //12)подаёш 1 на E 13) ждёш 12мкс 14)подаёш 0 на E
        TRIS_DATA_PORT = 0;             // 
        DATA_PORT = 0;   
 return;
}

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Пн мар 21, 2011 17:05:04
БАТАРЕЙКУС
помогло?

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Пн мар 21, 2011 17:06:38
mdscorp
да спасибо
осталось теперь со страницами разобратся

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Ср мар 23, 2011 00:00:07
БАТАРЕЙКУС
а что в них то непонятно там всё также элементарно выбираеш кристал и посылаеш команду и всё страница активна потом передаёш туда изображение. если на pic пишите могу пример скинуть.

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Ср мар 23, 2011 15:13:56
mdscorp
было бы просто если бы весь код мой был, а так не очень при условии изучения языка по ходу дела

и в идеале я хочу сделать в пике только "типо развёртку" и посылать на него пакеты для вывода изображения с программы на ПК
я думаю отсылать по строке 64 байт за раз и выводить её потому что в главном цикле у меня только 2 инструкции,читать юарт и писать в жк

да на PIC если что у меня 18f2550 и да пример было бы не плохо заранее спасибо.

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Ср мар 23, 2011 22:06:21
БАТАРЕЙКУС
;-----------------------------------------------------------------------------
; назначение порты
;-----------------------------------------------------------------------------
;RC0 -шина данных
;RC1 -шина данных
;RC2 -шина данных
;RC3 -шина данных
;RC4 -шина данных
;RC5 -шина данных
;RC6 -шина данных
;RC7 -шина данных
;RB0 - Е1 ; 1 кристалл
;RB1 - Е2 ; 2 кристалл
;RB2 - RES ; сброс
;RA3 – RS (AO) выбор регистра данных / команд
;RA5 - E строб разрешение чтения / записи

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


                   movlw       B'10111000'         ; запить в экран номер 
                   call        Stron_StolB         ;;  нулевой страницы

                   movlw       B'01000000'         ; запить в экран номер 
                   call        Stron_StolB         ;  нулевой строки

                   movlw       B'10111111'         ; запить в экран номер 
                   call        Stron_StolB         ; седьмой страницы

                   movlw       B'01111111'         ; запить в экран номер 
                   call        Stron_StolB         ;  63-его столбца
;-----------------------------------------------------------------

Stron_StolB        bcf         PortA,3             ;
                   movwf       PortC               ;
                   call        Pause_10            ;
                   bsf         PortA,5             ;
                   call        Pause_10            ;
                   bcf         PortA,5             ;
                   clrf        PortC               ;
                   return                          ; 
;-----------------------------------------------------------------
call Pause_10 ; задержка 2 мкс

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Вт апр 05, 2011 03:08:18
Paguo-86PK
Sounds писал(а):Подскажите а в чём можно символы рисовать?
Пробный он-лайн редактор символов.

Насчёт инкладов, иногда путанница из-за этого:

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

#include "somefile.h" // <- Инкладим файл с папки проекте
#include <somefile.h> // <- Инкладим файл с папки компилятора
Кстати. Попался мне дисплей от калькулятора Citizen: Платка - 14 выводов, микрухи HD44100H HD44780A00, сбоку надпись C1620H.
Можно где-нибудь найти схему назначения выводов? Питание подавал - линии выходили. Гуглил - куча хлама...

P.S.: Тут выбрал несколько дисплеев: Ну, на счёт первого сомнений никаких. Всякий моддинг с ним везде и всюду найти можно. А вот два других? Не напрасная ли трата денег будет?
Все их планирую использовать в опытах с ПЛИС.

Или взять один 2.4" TFT LCD Display + Touch Panel + PCB adapter Module?

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Чт апр 21, 2011 17:00:07
shemmer
Ребят, помогите.
Есть необходимость подключить дисплей 12864 к микроконтроллеру с питанием 3,3 Вольт.
Как я понимаю есть несколько путей решения задачи:
1. Применить специальные микросхемы-согласователи уровней 5 - 3.3 В
2. Питать индикатор от 3.3 Вольта но подавать на него отрицательное напряжение -1,5 В на контраст ( Vo)

Вопрос - будет ли второй вариант нормально работать ?

Re: Работа с графическими ЖКИ на контроллере KS0108 и аналог

Добавлено: Пт апр 22, 2011 16:58:49
BigallS
Уважаемые, помогите разобраться с дисплеем WO12864A-TFH#, в нашем городе только такой и нашел.
Скачал даташит на него но не могу понять для чего у него выводы
2 - C86 -This is the MPU interface switch terminal.
с 9 по 14 - CAP2N, CAP2P, CAP1N, CAP1P, CAP3P, VOUT
27 - A0 - This is connect to the least significant bit of the Norman MPU address bus, and it determines whether the data bits are data or a command.

Это интерфейс UART или что вообще то?
И ещё:
вывод 3 - VR - это вывод отрицательно напряжения для регулировки контраста?
вывод 29 - /CS1 - выбор кристалла, если 1 - первый, 0 - второй?

Для питания у этого дисплея есть выводы (отдельно от шлейфа) A и K, как понимаю для подсветки, на них нужно 9 В?