Например TDA7294

Форум РадиоКот • Просмотр темы - Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вт мар 19, 2024 07:08:10

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 220 ]    , , , , 5, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Вс ноя 23, 2014 18:47:46 
Родился

Зарегистрирован: Вс ноя 23, 2014 09:06:33
Сообщений: 3
Рейтинг сообщения: 0
Доброго дня, уважаемые котолюбы!
Не удивляйтесь, что обращаюсь именно в ваш раздел, но данная проблема требует чёткого
понимания работы подобных индикаторов и не нарушить алгоритма работы готового устройства.
исходные данные:
Имеем 2 устройства : одно 7кнопок и LCD 12864, второе 5 кнопок и LCD 1602
к коду доступа нет !! Доступ только к кнопкам и разъёмам LCD!!!
Задача!
УДАЛИТЬ ВСЕ кнопки и все LCD (во! здорово я придумал....) и подключить на их место новое
совершенно секретное устройство, ....желательно на одном контроллере (на каком?) . Этот контроллер должен тупо сохранить всю информацию поступающею от всех LCD в удобном легко доступном виде для последующего считывания + под каждыми данными сформировать изображение удалённых кнопок (7 под первым и 5 под вторым). для управления кнопками к устройству припаять энкондер или мышь .
Я пока точно не определился , но для ориентировки на новом устройстве должно быть не
менее 180 строк и 100 столбцов (если будет возможность ,то и больше).
Задача вроде бы .... но без вашего опыта работы индикаторами мне пока не осилить... posting.php?mode=reply&f=61&t=99043#
Если у кого есть предложения или готовые решения (можно в протеусе)... спасибо.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Пн ноя 24, 2014 07:12:35 
Опытный кот
Аватар пользователя

Карма: 16
Рейтинг сообщений: 166
Зарегистрирован: Вс дек 02, 2012 16:58:33
Сообщений: 821
Откуда: город Белых гор
Рейтинг сообщения: 0
На первый взгляд - бред. Но на второй взгляд вопрос - "как далеко должно быть устройство управления?"
И необязательно всё в графике рисовать, можно и кнопками.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Пн ноя 24, 2014 18:49:37 
Родился

Зарегистрирован: Вс ноя 23, 2014 09:06:33
Сообщений: 3
Рейтинг сообщения: 0
Допустим , на счёт кнопок я погорячился, пока..., а вот на счёт контролера , который подключен к
разъёмам LCD 12864 и 1602 . и сохраняющего картинки в памяти и готового выдать запомненные картинки на видео контролер построчно. Всё это находится в одной коробочке. Вообщем в конце обработав это получим видео сигнал и подадим на видео вход и на одном экранчике 6 дюймов мы увидим данные двух наших LCD


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Чт апр 23, 2015 08:43:25 
Родился

Зарегистрирован: Чт апр 23, 2015 08:31:11
Сообщений: 1
Рейтинг сообщения: 0
Добрый день всем! Я новичек в этом деле. Мне нужен совет по подключению графического дисплея RG12864A к Arduino Uno. Подключая все по схеме удается включить только подсветку дисплея. Такое ощущение, что дисплей не рабочий. Либо что-то подключаю не верно. Скажите как проверить дисплей на работоспособность, как заставить включить контрастно все пиксели. Я подавал сигнал на V0 но результата не было. Спасибо.


Вернуться наверх
 
Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650

Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Вс ноя 22, 2015 08:15:22 
Первый раз сказал Мяу!

Зарегистрирован: Вс ноя 11, 2012 13:39:25
Сообщений: 36
Рейтинг сообщения: 0
Всем привет , апну тему ... если в кратце имею дисплэй 12864B v2.0 на чипе ST7920

У емня получилось слать в него комманды и даже рисовать , на экране , но не как не выходит читать данные ... всю дорогу читается 0xFF... прокатил вариант только с чтением Busy Flag ...

Креплю исхрдник библиотеки ...
Код:
/*
   DISPLAY_st7920.cpp
   
   Библиотека для работы с дисплеями построенными на базе чипа ST7920
      
   проддерживает :
      8 бит паралельный интерфейс
   
   Протестированно с дисплеями:
   12864B v2.0
   
   Изменения:      
   
*/
//Настройки библиотеки
#define DISP_st7920_ControlPort      PORTA            //Порт в котором находятся сигналы управления RST,RS,RW,E
#define DISP_st7920_ControlPortDirect DDRA            //ССылка на порт управления контрольным портом
#define DISP_st7920_PinRST         4               //ПИН в контрольном порте отвечающий за RST
#define DISP_st7920_PinRS         5               //ПИН в контрольном порте отвечающий за RS
#define DISP_st7920_PinRW         6               //ПИН в контрольном порте отвечающий за RW
#define DISP_st7920_PinE         7               //ПИН в контрольном порте отвечающий за E
#define DISP_st7920_DataPort      PORTD            //Порт с данными
#define DISP_st7920_DataPortDirect   DDRD            //Порт на управление портом данных

//Настройки работы
#define DISP_st7920_DelayAccess   34                  //Задержка работы чипа дисплея указывается в НС (для некоторх дисплеев надо менять иначе лезут артефакты)
#define DISP_st7920_ParalelModeBits   1               //Количество битов при работе с паралельным интерфейсом 0=4/1=8

//НАстройки для графических библиотке
#define GraphicDisplayHeight         64            //Высота дисплея
#define GraphicDisplayWidth            128            //Ширина дисплея
#define GraphicDisplayByteOrientation   0            //Горизонтальная ориентация байтов
#define GraphicDisplayPixelFunction                  //Функция вывода пикселя на экран обязательный формат : function(x,y,mode) mode=0 удалить пиксель/1=установить пиксель/2- изменить на другой



//Промежуточные макросы
#define DISP_st7920_RS_H DISP_st7920_ControlPort |= 1<<DISP_st7920_PinRS;         
#define DISP_st7920_RS_L DISP_st7920_ControlPort &= ~(1<<DISP_st7920_PinRS);

#define DISP_st7920_RW_H DISP_st7920_ControlPort |= 1<<DISP_st7920_PinRW;         
#define DISP_st7920_RW_L DISP_st7920_ControlPort &= ~(1<<DISP_st7920_PinRW);

#define DISP_st7920_E_H DISP_st7920_ControlPort |= 1<<DISP_st7920_PinE;            
#define DISP_st7920_E_L DISP_st7920_ControlPort &= ~(1<<DISP_st7920_PinE);


#define DISP_st7920_PM_W DISP_st7920_DataPortDirect =255;//TODO реализовать 4 бита
#define DISP_st7920_PM_R DISP_st7920_DataPortDirect =0;

char InstructionSet=0;

//Команды Set1
#define CODE_Clear               0b00000001
#define CODDISP_st7920_E_Home      0b00000010
#define CODE_EntryMode            0b00000100
#define CODE_Display            0b00001000
#define CODE_CursorDisplayControl   0b00010000
#define CODE_FunctionSet         0b00100000
#define CODE_SetCGRAM_Addr         0b01000000
#define CODE_SetDDRAM_Addr         0b10000000
//Команды Set2

#define CODE_SetGraphicRam_Addr      0b10000000


void DISP_st7920_WriteCMD(char CMD)
{
   DISP_st7920_PM_W   //Порт в запись
   DISP_st7920_E_L      //E=0
   DISP_st7920_RS_L   //RS=0
   DISP_st7920_RW_L   //RW=0
   PORTD=CMD;
   DISP_st7920_E_H      //E=1
   DISP_st7920_E_L      //E=0
   _delay_us(DISP_st7920_DelayAccess);
}
void  DISP_st7920_WriteData(char Data)
{
   DISP_st7920_PM_W   //Порт в запись
   DISP_st7920_E_L      //E=0
   DISP_st7920_RS_H   //RS=1
   DISP_st7920_RW_L   //RW=0
   PORTD=Data;
   DISP_st7920_E_H      //E=1
   DISP_st7920_E_L      //E=0
   _delay_us(DISP_st7920_DelayAccess);
   
}
char DISP_st7920_ReadData()
{
   DISP_st7920_PM_R   //Порт в чтение
   DISP_st7920_E_L      //E=0
   DISP_st7920_RS_H   //RS=1
   DISP_st7920_RW_H   //RW=1
   DISP_st7920_E_H      //E=1
   DISP_st7920_E_L      //E=0
   _delay_us(DISP_st7920_DelayAccess);
   return PIND;   
}

char DISP_st7920_ReadBusyFlag()
{
   DISP_st7920_RS_L
   DISP_st7920_RW_H
   DISP_st7920_PM_R
   DISP_st7920_E_H
   DISP_st7920_E_L
   _delay_us(DISP_st7920_DelayAccess);
   return PIND7==1;
}
void DISP_st7920_WaitBusy()
{
   while(DISP_st7920_ReadBusyFlag());
}

void DISP_st7920_CMD_FunctionSet(char Extend)
{
   InstructionSet=(Extend&1);
   DISP_st7920_WriteCMD(CODE_FunctionSet | (DISP_st7920_ParalelModeBits<<4) | (InstructionSet<<2));//Инициализируем интерфейс TODO не предусмотрен SPI Режим только паралельный
   _delay_us(80);
   DISP_st7920_WaitBusy();
}

void DISP_st7920_CMD_Clear()
{
   if(InstructionSet)DISP_st7920_CMD_FunctionSet(0);
   DISP_st7920_WriteCMD(CODE_Clear);
   _delay_us(1600);
   DISP_st7920_WaitBusy();
}
/*
      Options:
         D0-Display Shift
            если =1 то бит I/D управляет всем экраном
            если =0 то бит I/D управляет ккурсором
         D1-I/Daddress counter(AC)
            если =1 то курсор двигается в право AC +1
            если =1 то курсор двигается в лево AC-1
*/
void DISP_st7920_CMD_EntryMode(char Options)
{
   if(InstructionSet)DISP_st7920_CMD_FunctionSet(0);
   DISP_st7920_WriteCMD(CODE_EntryMode| (Options&3));
   _delay_us(80);
   DISP_st7920_WaitBusy();
}
/*
      Options:
      D0-Cursor Blinking (0=Off/1=On)
      D1-Display Cursor (0=Off/1=On)
      D2-Display (0=Off/1=On)
      D3-D7-NU
*/
void DISP_st7920_CMD_Display(char Options)
{
   if(InstructionSet)DISP_st7920_CMD_FunctionSet(0);
   DISP_st7920_WriteCMD(CODE_Display | (Options&7));
   _delay_us(80);   
   DISP_st7920_WaitBusy();
}
void DISP_st7920_CMD_SetCGRAM(char Addr)
{
   if(InstructionSet)DISP_st7920_CMD_FunctionSet(0);
   DISP_st7920_WriteCMD(CODE_SetCGRAM_Addr | (Addr & 63));   
   _delay_us(80);
   DISP_st7920_WaitBusy();
   
}

void DISP_st7920_CMD_SetDDRAM(char Addr)
{
   if(InstructionSet)DISP_st7920_CMD_FunctionSet(0);
   DISP_st7920_WriteCMD(CODE_SetDDRAM_Addr | (Addr & 127));
   _delay_us(80);
   DISP_st7920_WaitBusy();
   
}

void DISP_st7920_CMD_GraphicRam_Addr(char Vertical,char Horizontal)
{
   if(!InstructionSet)DISP_st7920_CMD_FunctionSet(1);
   DISP_st7920_WriteCMD(CODE_SetGraphicRam_Addr | (Vertical & 127));   
   _delay_us(80);
   DISP_st7920_WaitBusy();
   DISP_st7920_WriteCMD(CODE_SetGraphicRam_Addr | (Horizontal & 15));
   _delay_us(80);
   DISP_st7920_WaitBusy();
}
void DISP_st7920_CMD_GraphicMode(char Mode)
{
   if(!InstructionSet)DISP_st7920_CMD_FunctionSet(1);
   DISP_st7920_WriteCMD(CODE_FunctionSet | (DISP_st7920_ParalelModeBits<<4) | (1<<2) | ((Mode & 1)<<1));
   _delay_us(80);
   DISP_st7920_WaitBusy();
}
void DISP_st7920_CMD_GraphicCLS()
{
   for (char r=0;r<32;r++)
   {
      DISP_st7920_CMD_GraphicRam_Addr(r,0);//Выставляем линию
      for(char c=0;c<16;c++)
      {
         DISP_st7920_WriteData(0);
         DISP_st7920_WriteData(0);
      }
   }
}

void DISP_st7920_Pixel(char X,char Y, char Mode)
{
   char HA= X / 16;//Высчитываем горизонтальный адресс
   char P= X % 16;//Смещение в битах

   DISP_st7920_CMD_GraphicRam_Addr(Y,HA);

   char H,L,DH,DL;
   
   if(P>7) H=128>>(P-8);//Расчитываем нашу точку
      else L=128>>P;

   DL=DISP_st7920_ReadData();//Вычитываем уже то что там было
   DH=DISP_st7920_ReadData();
   
   
   switch(Mode)
   {
      case 0://Reset pixel
      {
         L=DL &   (~L);
         H=DL &   (~H);
         break;
      }
      case 1://Set pixel
      {
         L=DL |   L;
         H=DL |   H;
         break;
      }
      
      case 2://Set pixel
      default:
      {
         L=DL ^   L;
         H=DL ^   H;
         break;
      }
   }
   
   DISP_st7920_CMD_GraphicRam_Addr(Y,HA);//Опять ставим адресс
   
   DISP_st7920_WriteData(DL);//Пишем что получилось
   DISP_st7920_WriteData(DH);
}

void DISP_st7920_Init()
{
   DISP_st7920_E_L      //E=0
   DISP_st7920_PM_W   //Port to Write
   DISP_st7920_RS_L
   DISP_st7920_RW_L
   
   DISP_st7920_CMD_FunctionSet(0);
   _delay_us(150);
   DISP_st7920_CMD_FunctionSet(0);
}


У когонить получилось нормально работать с этим контроллером ?


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Вс ноя 22, 2015 09:01:52 
Друг Кота
Аватар пользователя

Карма: 86
Рейтинг сообщений: 1018
Зарегистрирован: Чт апр 11, 2013 11:19:59
Сообщений: 4871
Откуда: Минск
Рейтинг сообщения: 0
Да, вполне.

Правда, позже я отказался от чтения из дисплея - он и так не самый быстрый (медленнее тех, что на ks0108), а тратить время на чтение-модификацию-запись - и того медленнее выходит.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Вс ноя 22, 2015 10:25:39 
Первый раз сказал Мяу!

Зарегистрирован: Вс ноя 11, 2012 13:39:25
Сообщений: 36
Рейтинг сообщения: 0
Тогда может пример ?

Дело в том что я выбирал его не по скорости , а по другим причинам ... и с корость для меня не очень важна...

Кстати я так понимаю что SPI не увеличит его производительность ?

Так и не понял по какому фронту делать задержки .. в мане явноразрисовано что функция выолняется в период высокой активности Е , но по итоговой там в задержке нет смысла ...э


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Вс ноя 22, 2015 13:57:36 
Друг Кота
Аватар пользователя

Карма: 86
Рейтинг сообщений: 1018
Зарегистрирован: Чт апр 11, 2013 11:19:59
Сообщений: 4871
Откуда: Минск
Рейтинг сообщения: 0
Сейчас у меня так.
Суть - из основной программы я пишу не в дисплей, а в 1кБ кадровый буфер. А уже в дисплей эта информация попадает по прерыванию таймера. Частота таймера 20 кГц (50мкс). То есть, каждое очередное прерывание в дисплей улетает новая порция (байт) данных, либо же команда позиционирования на новую строку.

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Вс ноя 22, 2015 14:18:48 
Держит паяльник хвостом

Карма: 10
Рейтинг сообщений: 95
Зарегистрирован: Вт июн 07, 2011 08:03:18
Сообщений: 923
Рейтинг сообщения: 0
...


Последний раз редактировалось OKF Вс ноя 22, 2015 14:21:53, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Вс ноя 22, 2015 14:20:09 
Первый раз сказал Мяу!

Зарегистрирован: Вс ноя 11, 2012 13:39:25
Сообщений: 36
Рейтинг сообщения: 0
ХМ ... у тебя строб имеет длинну
_delay_us(0.32);

У меня _delay_us(36); и еле прет ...
спсибо за код попробую ваш метод чтения , у меня немного другой алгоритм ... может вы поняли даташит лучше чем я ...

Объясню почему мне не важна скорость , это убдет прибор с мнемосхемой и там не нужно видео 5 FPS мне хватит за глаза .. думаю даже 2 хватит :)

у меня обширная библиотека дял сорздания меню и вот по этому надо подогнать драйвер этого дисплея ...

Кстати ранее исполь зовал дисплеи от NOKIA но сейчас они уже маленькие ...

Спасибо за помощь , библиотеку как всегда выложу ... если не против то еще позадаю вопросы ...


OKF, простите конечно но вы не по адресу ... если хотите заработать денег то вамне на этот форум ...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Вс ноя 22, 2015 14:26:38 
Друг Кота
Аватар пользователя

Карма: 86
Рейтинг сообщений: 1018
Зарегистрирован: Чт апр 11, 2013 11:19:59
Сообщений: 4871
Откуда: Минск
Рейтинг сообщения: 0
Строб может быть очень коротким, важно то, что внутренний цикл записи достаточно длинный, порядка 40мкс. Поэтому слишком быстро данные отсылать смысла нет - не пройдут. На то и нужен опрос бита занятости, чтобы понять, когда можно отсылать следующую порцию данных.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Пн ноя 23, 2015 01:32:16 
Родился

Зарегистрирован: Вт дек 02, 2014 21:11:58
Сообщений: 2
Рейтинг сообщения: 0
rastamanoff писал(а):
Насчет Proteusa.
Скоее всего я не правильно выразился.Дело в том ,что плагина для st7920 под Proteus ,я в сети не нашел.Зато есть ks0108,правда только 8-bit.Библиотека u8glib поддерживает оба дисплея.Инициализация LCD это одна строка в коде.Я писал две,допустим инициализация для SPI(st7920) и 8-bit(ks0108),одна из которых закоментирована в зависимости от того симулирую я в Proteuse или заливаю прошивку в реальный контролер.В симуляторе отладил всю графику,даром не гоняя МК прошивкой.Недостатком было +10 пинов для ks0108.
И вот еще "наковырял" в сети пример адаптации STM32F101CBT6 под эту библиотеку ,только под другой дисплей http://blog.bastelhalde.de/?p=759#comment-1567.Хочу еще попробовать портировать под F4 и st7920 .Библиотека действительно неплохая,одних названий функций целая страница,всякие там прямоугольники с закругленными углами,пару десятков шрифтов,картинки в формате xbm. :)))

Это уже очень интересно. У меня как раз проблема моделирования ST7920 в Proteuse. Можно подробнее: что и в каком месте Вы меняете, и как поступаетс графической моделью KS0108, ведь она не совсем совпадает по пинам с пинами ST7920. Proteuse при симуляции работы схемы не матерится ? Можно пример скинуть проекта для AVRSTUDIO ну и проект в PROTEUS? Не пинайте, я новичок.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Пн ноя 23, 2015 15:43:36 
Первый раз сказал Мяу!

Зарегистрирован: Вс ноя 11, 2012 13:39:25
Сообщений: 36
Рейтинг сообщения: 0
Я два дня бился головой об стену , и на тебе
Цитата:
Read data from internal RAM and alter the (AC) by 1
After address set to read (CGRAM,DDRAM,IRAM…..)a DUMMY READ is required.
There is no need to DUMMY READ for the following bytes unless a new address set instruction is issued.


Это старость пришла... слона не заметил еще и капсом выделенный ...

Ну все вроде все читается и пишитеся ...

но на вашей задержке 0.32 по экрану валятся артефакты ... у меня заработало на 12 с периеодичными артефактами и на 16 устойчиво , видимо у меня какаято особо тормозная версия экрана ...

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Пн ноя 23, 2015 15:53:19 
Друг Кота
Аватар пользователя

Карма: 86
Рейтинг сообщений: 1018
Зарегистрирован: Чт апр 11, 2013 11:19:59
Сообщений: 4871
Откуда: Минск
Рейтинг сообщения: 0
Ну.. не знаю. По даташиту ширина строба (Tpw) при чтении 320нс. Об остальном заботится процедура чтения флага занятости.

Ну а dummy read - да, нужен. У меня тоже использовалось (опечатка в комментарии).


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Пн ноя 23, 2015 17:24:19 
Первый раз сказал Мяу!

Зарегистрирован: Вс ноя 11, 2012 13:39:25
Сообщений: 36
Рейтинг сообщения: 0
И так после решения проблемы с пустым чтением... все двинулось


добился всего 18 FPS вывод информациипри дальнейшем уменьшении строба E начинают непрожовываться данные или команды ... гдето тут в ветке писали что сделали 25 . чет сомнительно...

Да экран реально можно использовать лишь через буфер .. вся моя библиотека работы с графикой (шрифты и прочее) при зафиливании по экрану показывает адские тормоза ... даже удивительно , старенький Winstar 12864 и то лучше ....

Ну да ладно мне сойдет , лижбы меню отрисовывалось :) на днях подредактирую чтобы шрифты норм выводились и сделаю демку ... поглядим как оно все будет ...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Пн ноя 23, 2015 17:42:06 
Родился

Зарегистрирован: Пн ноя 23, 2015 17:27:10
Сообщений: 1
Рейтинг сообщения: 0
Здравствуйте уважаемые форумчане, хотел заинтересоваться может кто знает за LCD 1602? у меня беда, подключил к контроллеру через преобразователь интерфейса SPL, а на экране одни за крашеные строки, схему собрал трехфазного инвертора http://arv.radioliga.com/content/view/64/44 у автора он самодельный на семисегментных индикаторах. Помогите кто может.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Пн ноя 23, 2015 18:46:06 
Друг Кота
Аватар пользователя

Карма: 86
Рейтинг сообщений: 1018
Зарегистрирован: Чт апр 11, 2013 11:19:59
Сообщений: 4871
Откуда: Минск
Рейтинг сообщения: 0
Да, ks0108 оказался гораздо более быстрым. Почему я и отказался от чтения и перешёл на использование кадрового буфера и развёртки по прерывания таймера. Очень быстро получается, никаких пустых циклов - но нужно на это дело, ни много ни мало, килобайт ОЗУ.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Вт ноя 24, 2015 08:17:00 
Первый раз сказал Мяу!

Зарегистрирован: Вс ноя 11, 2012 13:39:25
Сообщений: 36
Рейтинг сообщения: 0
WiseLord, прикинь у меня всего 1 кб в наличии :) как бы крутовато ...

Миханикус, во первых вы написали не в ту тему , во вторых вы просто так пытаетесь заменить 7 сег. на 1602 ??? или вы чтото переписали в программе ???

рекуомендую сначала разобраться с этим дисплеем , он способен выводить только симвоьную информацию, для него куча библиотек а в CVAVR даже встроенна поддержка , статей с подробными примерами просто тьма , юзайте гугл , сделайте хоть чтото и покажите вам помогут ... на коте есть тема по этому экрану ...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Ср ноя 25, 2015 15:27:01 
Первый раз сказал Мяу!

Зарегистрирован: Вс ноя 11, 2012 13:39:25
Сообщений: 36
Рейтинг сообщения: 0
Давно задумывал но только сейчас осуществил http://fastereus.ru/index.php/fajly/category/3-utility-dlya-mcu

Редактор шрифтов универсальный для дисплеев с горизонтальной байт ориентацией и вертикальной

вид конечно не какой , но позволяет импортировтаь как в бинарник так и форматированный текст по шаблону (приложил для формирования массива)

В общем потратил сутки , сильно тапками не бейте ...

Короче кому надо ... берем раздаем делемся , будут отклики разовью, написана она вся расширяемо так что можно придумать все что угодно

p.s. из за того что шрифт храниться в INI файле не стоит делать спраяны шириной 1024 пикселя :( скорее всего виндовый Ini сдохнет :)

!!! Не обращайте внимания на папку fonts там лежат артефакты, использовал для тестового вывода ... это не готовые шрифты не обольщайтесь


Последний раз редактировалось Fastereus Ср ноя 25, 2015 15:37:46, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Графический дисплей LCD 12864 (128x64 пикселя) на ST7920
СообщениеДобавлено: Ср ноя 25, 2015 15:34:04 
Друг Кота
Аватар пользователя

Карма: 86
Рейтинг сообщений: 1018
Зарегистрирован: Чт апр 11, 2013 11:19:59
Сообщений: 4871
Откуда: Минск
Рейтинг сообщения: 0
Под wine не запускается что-то...


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 220 ]    , , , , 5, , , ...  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y