Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 15.06.2010, 21:30  
Uragan90
Почётный гражданин KAZUS.RU
 
Аватар для Uragan90
 
Регистрация: 20.09.2009
Сообщений: 1,899
Сказал спасибо: 470
Сказали Спасибо 408 раз(а) в 255 сообщении(ях)
Uragan90 на пути к лучшему
По умолчанию Re: Библиотека LS020+LPC2368

Я могу дать инициализацию! Если нужна! Может библиотеку напишем?
Реклама:
Uragan90 вне форума  
Непрочитано 15.06.2010, 21:53  
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: Библиотека LS020+LPC2368

Сообщение от Uragan90 Посмотреть сообщение
Я могу дать инициализацию! Если нужна!
Давайте. Лучше ссылкой на источник. А то у меня только даташит на TM032LDH03 с таким же контроллером.
kison вне форума  
Непрочитано 15.06.2010, 23:29  
Uragan90
Почётный гражданин KAZUS.RU
 
Аватар для Uragan90
 
Регистрация: 20.09.2009
Сообщений: 1,899
Сказал спасибо: 470
Сказали Спасибо 408 раз(а) в 255 сообщении(ях)
Uragan90 на пути к лучшему
По умолчанию Re: Библиотека LS020+LPC2368

Так какой у вас дисплей, я думал st032... с контроллером HX8352A...
Uragan90 вне форума  
Непрочитано 16.06.2010, 00:12  
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: Библиотека LS020+LPC2368

Сообщение от Uragan90 Посмотреть сообщение
я думал st032... с контроллером HX8352A...
Он и есть. А вот документация с инициализацией от TM032LDH03 - там тоже HX8352A.
Но от еще одного описания не откажусь
kison вне форума  
Непрочитано 16.06.2010, 13:18  
Uragan90
Почётный гражданин KAZUS.RU
 
Аватар для Uragan90
 
Регистрация: 20.09.2009
Сообщений: 1,899
Сказал спасибо: 470
Сказали Спасибо 408 раз(а) в 255 сообщении(ях)
Uragan90 на пути к лучшему
По умолчанию Re: Библиотека LS020+LPC2368

Вот я начал писать библиотеку под этот дисплей! Но трудно дается Может поможите чем? Нутам замечания, предложения, правки
PHP код:
//--------------------------------------------------------------------------//
//    Подпрограмма инициализации и основных функций дисплея ST032D6C-E00    //
//    КОНТРОЛЛЕР-HX8352A                                                    //
//--------------------------------------------------------------------------//



/*-------------- ЦВЕТ -----------------------------------------------------*/
#define   RGB(r,g,b)
#define   RGB_GREEN
#define   RGB_BLUE
#define   RGB_RED
#define   RGB_GREEY
#define   RGB_YELLOW
#define   RGB_ORANGE
#define   RGB_PINK
#define   RGB_BROWN
#define   RGB_GREY
#define   RGB_VIOLET
#define   RGB_WHITE
#define   RGB_BLACK
/*-------------------------------------------------------------------------*/


/*----------- ОБЪЯВЛЕНИЕ ПЕРЕМЕННЫХ -----------------------------------------------------------------------------*/
void LCD_Init(void);                                                                      //Инициализация дисплея
void LCD_FillRect(unsigned char X1,unsigned char Y1,unsigned char X2,unsigned char Y2);   //Задать область вывода
void LCD_FillScr(unsigned int color);                                                     //Залить дисплей цветом 
void LCD_PutPixel(unsigned char X1,unsigned char Y1,unsigned int color);                  //Вывод точки на дисплей
void LoadImage(unsigned char X1,unsigned char Y1,const unsigned int *Image);              //Вывод рисунка на дисплей
void LCD_FilScr(const unsigned char *Buff);                                               //Залить дисплей цветом
void LCD_Line(int x1int y1int x2int y2);                                            //Рисуем линию
void LCD_Circle(unsigned char cxunsigned char cy ,unsigned char radius,unsigned color); //Рисуем круг
void delay_ms(unsigned int sleep);
/*--------------------------------------------------------------------------------------------------------------*/


//==================================================  ==================================================  ==========//
void delay_ms(unsigned int sleep)
{
    
unsigned int _del_del2;
    
_del2 sleep;
    while (
_del2 › 0){
    
_del 0x2FFF;
    while (
_del0
    
_del--;
     
_del2--;
}

}



//--- Инициализация дисплея ------------------------------------------------//
void LCD_Init(void//------- Инициализация дисплея ------------------------//
{
RESET();
delay_ms(150);
Set_LCD_8B_REG(0x83,0x02); // TESTM=1
Set_LCD_8B_REG(0x85,0x02); // VDC_SEL=010.
Set_LCD_8B_REG(0x8B,0x00); // STBA[15:8]=0x00
Set_LCD_8B_REG(0x8C,0xB3); // STBA[7]=1, STBA[5:4]=11, STBA[1:0]=11
Set_LCD_8B_REG(0x83,0x00); // TESTM=0


//----------- РУГИСТРЫ ГАММЫ -----------------------------------------------//
Set_LCD_8B_REG(0x3E,0xA0); //Управляющий регистр гаммы №1
Set_LCD_8B_REG(0x3F,0x03); //Управляющий регистр гаммы №2
Set_LCD_8B_REG(0x40,0x00); //Управляющий регистр гаммы №3
Set_LCD_8B_REG(0x41,0x45); //Управляющий регистр гаммы №4
Set_LCD_8B_REG(0x42,0x03); //Управляющий регистр гаммы №5
Set_LCD_8B_REG(0x43,0x47); //Управляющий регистр гаммы №6
Set_LCD_8B_REG(0x44,0x23); //Управляющий регистр гаммы №7
Set_LCD_8B_REG(0x45,0x77); //Управляющий регистр гаммы №8
Set_LCD_8B_REG(0x46,0x01); //Управляющий регистр гаммы №9
Set_LCD_8B_REG(0x47,0x1F); //Управляющий регистр гаммы №10
Set_LCD_8B_REG(0x48,0x0F); //Управляющий регистр гаммы №11
Set_LCD_8B_REG(0x49,0x03); //Управляющий регистр гаммы №12
//---------------------------------------------------------------------------//


//----------- Power Supply Setting ------------------------------------------//

Set_LCD_8B_REG(0x17,0xC1); // RADJ=1100, OSC_EN=1
Set_LCD_8B_REG(0x23,0x01); // TE 0n
Set_LCD_8B_REG(0x2B,0xF9); // N_DCDC=0xF9.
delay_ms(10);
Set_LCD_8B_REG(0x1B,0x14); // BT=0001, AP=100
Set_LCD_8B_REG(0x1A,0x11); // VC3=001, VC1=001 (VLCD/DDVDH)=6.45V)
Set_LCD_8B_REG(0x1C,0x0E); // VRH=1110 (VREG1=6.0V)
Set_LCD_8B_REG(0x1D,0x0F); // VBGP=1111
Set_LCD_8B_REG(0x1F,0x3B); // VCM=011_1011
delay_ms(20);
Set_LCD_8B_REG(0x19,0x0A); // GASENB=0, PON=0, DK=1, XDK=0, VLCD_TRI=1, STB=0
Set_LCD_8B_REG(0x19,0x1A); // GASENB=0, PON=1, DK=1, XDK=0, VLCD_TRI=1, STB=0
delay_ms(40);
Set_LCD_8B_REG(0x19,0x12); // GASENB=0, PON=1, DK=0, XDK=0, VLCD_TRI=1, STB=0
//---------------------------------------------------------------------------//


//------------ VLCD=2XVCI by 2 CAPs -----------------------------------------//

delay_ms(40);
Set_LCD_8B_REG(0x1E,0x2E); // VCOMG=1, VDV=0_1110
//---------------------------------------------------------------------------//


//----------- VCOMG NEW LOCATION --------------------------------------------//

Set_LCD_8B_REG(0x83,0x02); // TESTM=1
Set_LCD_8B_REG(0x93,0x10); // R93[4]=1, VCOMG=1
Set_LCD_8B_REG(0x83,0x00); // TESTM=0
delay_ms(100);
//---------------------------------------------------------------------------//


//------------ DGC Function Enable ------------------------------------------//

Set_LCD_8B_REG(0x5A,0x01);
DGC_PA_REG(0x5C);
//---------------------------------------------------------------------------//


//------------ Display ON Setting -------------------------------------------//

Set_LCD_8B_REG(0x3C,0xFF); // N_SAP=0111 1111
Set_LCD_8B_REG(0x3D,0x0E); // I_SAP=0000 1110
Set_LCD_8B_REG(0x34,0x38); // EQS=1000 0111
Set_LCD_8B_REG(0x35,0x38); // EQP=0011 1000
Set_LCD_8B_REG(0x24,0x38); // GON=1, DTE=1, D=10
delay_ms(40);
Set_LCD_8B_REG(0x24,0x3C); // GON=1, DTE=1, D=11
Set_LCD_8B_REG(0x16,0x08); // BGR=1
Set_LCD_8B_REG(0x01,0x06); // INVON=1, NORNO=1
}
void DGC_PA_REG(unsigned char ADDR)
{
unsigned char i;
LCD_CS 0;
LCD_RS 0;
WR_8B_FORMAT(ADDR); //ADDR=0x5C.
LCD_RS 1;
for( 
i=0i‹=2i++)
{
WR_8B_FORMAT(0x00);
WR_8B_FORMAT(0x04);
WR_8B_FORMAT(0x08);
WR_8B_FORMAT(0x0C);
WR_8B_FORMAT(0x10);
WR_8B_FORMAT(0x14);
WR_8B_FORMAT(0x18);
WR_8B_FORMAT(0x1C);
WR_8B_FORMAT(0x20);
WR_8B_FORMAT(0x24);
WR_8B_FORMAT(0x28);
WR_8B_FORMAT(0x2C);
WR_8B_FORMAT(0x30);
WR_8B_FORMAT(0x38);
WR_8B_FORMAT(0x3C);
WR_8B_FORMAT(0x3F);
WR_8B_FORMAT(0x43);
WR_8B_FORMAT(0x46);
WR_8B_FORMAT(0x48);
WR_8B_FORMAT(0x4C);
WR_8B_FORMAT(0x50);
WR_8B_FORMAT(0x54);
WR_8B_FORMAT(0x58);
WR_8B_FORMAT(0x5C);
WR_8B_FORMAT(0x60);
WR_8B_FORMAT(0x64);
WR_8B_FORMAT(0x66);
WR_8B_FORMAT(0x6A);
WR_8B_FORMAT(0x6E);
WR_8B_FORMAT(0x71);
WR_8B_FORMAT(0x75);
WR_8B_FORMAT(0x79);
WR_8B_FORMAT(0x7D);
WR_8B_FORMAT(0x81);
WR_8B_FORMAT(0x85);
WR_8B_FORMAT(0x89);
WR_8B_FORMAT(0x8E);
WR_8B_FORMAT(0x92);
WR_8B_FORMAT(0x98);
WR_8B_FORMAT(0x9C);
WR_8B_FORMAT(0xA0);
WR_8B_FORMAT(0xA4);
WR_8B_FORMAT(0xA9);
WR_8B_FORMAT(0xAE);
WR_8B_FORMAT(0xB1);
WR_8B_FORMAT(0xB5);
WR_8B_FORMAT(0xB9);
WR_8B_FORMAT(0xBD);
WR_8B_FORMAT(0xC1);
WR_8B_FORMAT(0xC5);
WR_8B_FORMAT(0xCA);
WR_8B_FORMAT(0xCF);
WR_8B_FORMAT(0xD4);
WR_8B_FORMAT(0xDA);
WR_8B_FORMAT(0xDE);
WR_8B_FORMAT(0xE1);
WR_8B_FORMAT(0xE5);
WR_8B_FORMAT(0xE9);
WR_8B_FORMAT(0xED);
WR_8B_FORMAT(0xEF);
WR_8B_FORMAT(0xF2);
WR_8B_FORMAT(0xF5);
WR_8B_FORMAT(0xF8);
WR_8B_FORMAT(0xFF);
}
LCD_CS 1;
}
//-----------------------------------------------------------------------//


//==================================================  ==================================================  ===================


//==================================================  ==================================================  ===================
void LCD_FillRect(unsigned char stX,unsigned char stY,unsigned char lngX,unsigned char lngY)//====//Задать область вывода
{



}
//==================================================  ==================================================  ===================
void LCD_FillScr(unsigned int color)//==================================================  ==========//Залить дисплей цветом 
{



}
//==================================================  ==================================================  ===================  
 
void LCD_FilScr(const unsigned char Buff)//==================================================  ==//Залить дисплей цветом 
{



}  
//==================================================  ==================================================  ===================
void LCD_PutPixel(unsigned char X1,unsigned char Y1,unsigned int color)//========================//Вывод точки на дисплей
{


 
}
//==================================================  ==================================================  ===================
void LoadImage(unsigned char X1,unsigned char Y1,const unsigned int *Image)//==================//Вывод рисунка на дисплей
{


}

 
//==================================================  ==================================================  ===================
void LCD_Circle(unsigned char cxunsigned char cy ,unsigned char radius,unsigned color)//==================//Рисуем круг
{



}


//==================================================  ==================================================  ==================
void LCD_Line(int x1int y1int x2int y2)//==================================================  =========//Рисуем линию
{



}
//==================================================  ==================================================  ================== 
Uragan90 вне форума  
Непрочитано 16.06.2010, 14:04  
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: Библиотека LS020+LPC2368

Сообщение от Uragan90 Посмотреть сообщение
Может поможите чем? Нутам замечания
Мощная заготовка Непонятно правда под что пишется. Ну вот например:
Код:
LCD_CS = 0;
Сможете объяснить КАК это должно работать? Применительно к ARM7 LPC2368.
Что такое LCD_CS в Вашем варианте?
Кстати инициализация на первый взгляд у Вас не для HX8352A. Можно все же ссылку на источник?
И еще - не надо делать 8-ми битные переменные, если в этом нет необходимости.
К примеру из Вашей заготовки:
Код:
unsigned char i;
LCD_CS = 0;
LCD_RS = 0;
WR_8B_FORMAT(ADDR); //ADDR=0x5C.
LCD_RS = 1;
for( i=0; i‹=2; i++)
Какой смысл делать i 8-ми битной? Регистр в ARM7 имеет 32 разряда и работает всегда с полной разрядностью. Так что unsigned int или uint32_t будет куда правильнее.
Задержки софтом делать не стоит - таймеров в LPC2368 много, вот через них и делайте. Предсказать время исполнения кода в ARM7TDMI весьма непросто. Так что для софтовых задержек его придется подгонять и не в симуляторе, а на железе измеряя получившуюся задержку. Это кривой путь. С таймером все проще.
kison вне форума  
Непрочитано 16.06.2010, 14:26  
Uragan90
Почётный гражданин KAZUS.RU
 
Аватар для Uragan90
 
Регистрация: 20.09.2009
Сообщений: 1,899
Сказал спасибо: 470
Сказали Спасибо 408 раз(а) в 255 сообщении(ях)
Uragan90 на пути к лучшему
По умолчанию Re: Библиотека LS020+LPC2368

Инициализацию мне подогнали с какого то китайского сайта! Она выше в том виде как есть и она именно для HX8352A- это точно (я проверял по даташит, все сходятся)!!! "LCD_CS" какая то переменная, сам разбираюсь... Вот и попросил помощи!!! Мне немног не понятно как описать цвет, в даташит на дисплей есть 12 регистров отвечающих за гамму, не мог бы кто объяснить принцип?

Последний раз редактировалось Uragan90; 16.06.2010 в 14:36. Причина: доп
Uragan90 вне форума  
Непрочитано 16.06.2010, 14:47  
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: Библиотека LS020+LPC2368

Сообщение от Uragan90 Посмотреть сообщение
"LCD_CS" какая то переменная, сам разбираюсь... Вот и попросил помощи!!!
Это должна быть вовсе не переменная, а физический вывод порта.
И выглядеть должно примерно так:
Код:
#define LCD_CS  (1) // CS подключен к P1.1
#define SET_LCD_CS()   FIO1SET = (1‹‹LCD_CS)
#define CLR_LCD_CS()   FIO1CLR = (1‹‹LCD_CS)

// дальше в тексте программы вместо LCD_CS = 0 нужно:
CLR_LCD_CS();
Нужно еще инициализировать вывод вначале - сделать ножку выходом. По умолчанию после сброса она вход.
Инициализацию посмотрю повнимательней, но Ваша совпала с hx8347A один в один. А это немного другой контроллер. Ссылку на китайский сайт/форум можно?
kison вне форума  
Непрочитано 16.06.2010, 15:07  
Uragan90
Почётный гражданин KAZUS.RU
 
Аватар для Uragan90
 
Регистрация: 20.09.2009
Сообщений: 1,899
Сказал спасибо: 470
Сказали Спасибо 408 раз(а) в 255 сообщении(ях)
Uragan90 на пути к лучшему
По умолчанию Re: Библиотека LS020+LPC2368

Держи!!! Как пиксель засветить с нужным цветом Может поможешь в понимании процесса
Вложения:
Тип файла: rar hx8352-initial.rar (68.4 Кб, 558 просмотров)
Uragan90 вне форума  
Сказали "Спасибо" Uragan90
kison (16.06.2010)
Непрочитано 16.06.2010, 16:05  
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: Библиотека LS020+LPC2368

Сообщение от Uragan90 Посмотреть сообщение
Как пиксель засветить с нужным цветом
Записать соответствующее значение в экранную память. Как кодируется цвет - на странице P.39 даташита на контроллер. Это для 8-ми битной шины. Для 16 битной стр. Р.38 В документации на дисплей нет указания сколько цветов у интерфейса (65536 или 262144), это придется выяснять методом тыка.
Хотя когда я пытал мелтовцев, там фигурировало 65536 цветов - http://www.lcddisplay.ru/forum/index...d&FID=3&TID=43

Последний раз редактировалось kison; 16.06.2010 в 16:09.
kison вне форума  
 

Закладки
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Плата LPC2368 Uragan90 Микроконтроллеры, АЦП, память и т.д 170 13.04.2010 13:03
библиотека HC12 для Proteus Fenolftalein Proteus, KiCAD и другие ECAD 0 12.01.2010 10:47


Часовой пояс GMT +4, время: 02:21.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot