........
(http://img145.imageshack.us/img145/1324/200808151730370051klt9.jpg)
DS1307 Saat:
(http://img361.imageshack.us/img361/3889/200808151730350050kne1.jpg)
Hocam Merhaba;
Projeyide paylaşsan bizlerle. :P
Hocam LCD yi nereden alacağız. buna göre touch panel bulunurmu?
fiyat bilgisi de verebilirmisin.
320x240 GLCD Özdisan'da var.Toplam 11 adet görünüyor.
6adet karaköyde 5 adet izmir özdisanda görünüyor.Telefonla fiyat öğrenebilirsin.
bigbey:
Alıntı Yap
Hocam LCD yi nereden alacağız. buna göre touch panel bulunurmu?
fiyat bilgisi de verebilirmisin.
sordunuzmu fiyatı?
Hayır sormadım henüz. Beraberinde tuoch panelde arıyorum rastlayamadım.
Hocam touch panel bulmak sorun değil. Asıl mesele onu süren entegreyi elde edebilmekte...
Özdisanda oda mevcut TSC2046
WG320240B0,, bu lcd üzerinde Touch panel birlikte geliyor fiyatı yaklaşık ~120 ytl
TSC2046IPWR Touchscreen controller ~2,5 ytl.
Alıntı yapılan: "EOS"WG320240B0,, bu lcd üzerinde Touch panel birlikte geliyor fiyatı yaklaşık ~120 ytl
TSC2046IPWR Touchscreen controller ~2,5 ytl.
nerde bulabiliyoruz bunları.
merhaba. yaklaşık 2 hafta önce özdisandan winstar wg320x240c aldım.
fiyatı yaklaşık 65 $ + KDV idi.(touch panelsiz). yeri karaköy'de akbank ın sağından girince 2. sokağın sağ köşesinde.
touchpanel için datadisplay diye bi firma duydum yeri şişli'de.
http://www.datadisplay.com.tr/
ben de tasarım projesinde kullanıcam. ccs c kullanıyorum ama diğer dillere de bakıcam heralde. 320x240 üzerinde çalışan arkadaşların libraryler konusunda yardımlarını bekliyorum.
bi ilerleme olunca burdan paylaşırım.
herkese iyi çalışmalar...
WG320240B0-TMI-VZ bu ürün 4-wire Analog touchscreen birlikte geliyor
şuanki fiyatı 150ytl civarında
www.özdisan.com
Özdisan çoşmuş
320x240 LCD ~120$
320x240 TouchScreen ~29YTL
@ahmet2004
fiyatda yanlışlık olmasın
WG320240C0-TMI-VZ bu üründe Touch yok fiyatı 120-TL
tek olarak touch fiyatı 29ytl
Glcd de 120$
ahmet2004
üzerinde ( built-in ) dokunmatik kontrol bulunan bir GLCD biliyormusnuz? böyle bir şeyi yurt dışındaki malzemecimize sorduk adam bize hangi dil diye sordu? bilemediğimiz birşey mi var GLCD dilleri hakkında anlamadım ne demek istediğini. işin aslı basit bir menü oluşturup buton yerine dokunmatik ekran kullanarak bir takım yükü anahtarlamak istiyoruz. GLCD, menü ve dokunmatik ekran konusunda bir öneriniz olabilir mi?
Selam,
1-2 hafta önce 240x128 SAP1024 kontrolcüsü ile kontrol edilen ekranın kodlarını vermiştim. Nispeten daha ucuz (Touch panel dahil) $50+kdv civarında fiyatı. Programlaması da T6963'den çok farklı değil. 320x240 çözünürlüğe ihtiyacınız yoksa değerlendirebilirsiniz.
https://www.picproje.org/index.php/topic,19244&highlight=
Analyzer
*OptimusPrime*
Belki microchip'in (1.8" - 4") kullandığı TFT ler için sormuş olabilirler.
4" üzeri fiyatlar birden uçuk kaçık oluyor.
TFT ve Touch fiyatları hala çok pahalı.
Normal Touch'lu mono ekranlar işini görürmü?
şöyle bişey düşünüyorum. mesela glcd üzerinde klima fan gibi simgeler olacak üzerine bastığınızda ilgli kontak açılacak gibi. renkli olması daha hoş olur sanırım. şimdilik araştırmadayım. ürünleri tam olarak bilmediğim gibi nasıl sürerim konusuda benim için hala bir soru işareti. :(
Nasıl bir ekran boyutu düşünüyorsun ona göre konuşalım?
plastik ön panel olarak düşündüğüm bölgede 120*90mm boyutlarında bir boşluğum var. eskiden burada butonlar ve 2x16 karakter bir lcd vardı yerine glcd ve butonlar içinse dokunmatik ekran düşünüyorum. nasıl bişey olabilir?
En az 5" Tft ve Arm7 kullanarak yapabilirsin.Özellikle Tft Lcd çıkışı olan
bir ARM7 kullanabilirsin.En uygun çözüm böyle gözüküyor.
Philips'in arm7 LH75401 vb.. leri Lcd sürücü çıkışlarına sahip.PHY sürücüleri
ile internetten bile kontrol ettirebilirsin cihazını.
Tabii şu yapılarıda inceleyebilirsin.
Freescale i.MX31 SOM-LV
Freescale MCF5329 Fire Engine
Freescale MCF5485 Fire Engine
Marvell PXA270 Card Engine
NXP LH7A400 Card Engine
NXP LH7A404 Card Engine
NXP LH79520 Card Engine
NXP LH79524 Card Engine
Renesas SH7727 Card Engine
Renesas SH7760 Card Engine
Eğer bu tür bir proje yaparsan yardımcı olmaya çalışırım teknik olarak.
biraz incelememe müsade edin.
Burayı (http://www.ccsinfo.com/forum/viewtopic.php?t=39353) inceleyebilirsiniz.
Alıntı Yaphi,
I lost days trying to figure out where CCS's drivers were wrong and I finally gave up. In two hours I coded perfectly (I guess) a working driver for it:
-It only works for 320x240 LCD, parameters such as FX, char width, etc are frozen.
- You can change any pin (DB0-DB7, A0, CS, RST, etc).
- Compatible with CCS graphic.c
- It's for 8080 mode.
Driver :
#define GLCD_RST PIN_A5
#define GLCD_RD PIN_A1
#define GLCD_WR PIN_A0
#define GLCD_CS PIN_A2
#define GLCD_A0 PIN_A3
#DEFINE GLCD_DB0 PIN_B5
#DEFINE GLCD_DB1 PIN_B4
#DEFINE GLCD_DB2 PIN_B3
#DEFINE GLCD_DB3 PIN_B2
#DEFINE GLCD_DB4 PIN_B1
#DEFINE GLCD_DB5 PIN_B0
#DEFINE GLCD_DB6 PIN_C4
#DEFINE GLCD_DB7 PIN_C3
#define GLCD_WIDTH 320
#define GLCD_HEIGHT 240
#define GLCD_CHAR_WIDTH 8
#define GLCD_CHAR_HEIGHT 8
#define ON 1
#define OFF 0
#define COMMAND_MODE output_high(GLCD_A0);
#define DATA_MODE output_low(GLCD_A0);
#DEFINE RA8835_GRAPHICSTART 0x2580
void GlcdPutData(INT8 data);
int8 TakeData(void);
void GLCD_WriteCommand(int8 commandToWrite);
void GLCD_WriteData(int8 dataToWrite);
int8 GLCD_ReadData(void);
void setCursorAddress(int16 addr);
void GlcdGotoTextXY(int16 x, int16 y);
void GlcdPutC(char c);
void FillText(char cara);
void FillGraphic(int1 parameter);
void glcd_RAinit(void);
int8 GLCD_ReadStatus(void);
void GlcdPutData(int8 data)
{
output_bit(GLCD_DB0, bit_test(data,0));
output_bit(GLCD_DB1, bit_test(data,1));
output_bit(GLCD_DB2, bit_test(data,2));
output_bit(GLCD_DB3, bit_test(data,3));
output_bit(GLCD_DB4, bit_test(data,4));
output_bit(GLCD_DB5, bit_test(data,5));
output_bit(GLCD_DB6, bit_test(data,6));
output_bit(GLCD_DB7, bit_test(data,7));
}
int8 TakeData(VOID)
{
INT8 data = 0;
data += input (GLCD_DB0);
data += input (GLCD_DB1) * 2;
data += input (GLCD_DB2) * 4;
data += input (GLCD_DB3) * 8;
data += input (GLCD_DB4) * 16;
data += input (GLCD_DB5) * 32;
data += input (GLCD_DB6) * 64;
data += input (GLCD_DB7) * 128;
RETURN data;
}
void GLCD_WriteCommand(int8 commandToWrite)
{
GlcdPutData(commandToWrite);
COMMAND_MODE
output_low(GLCD_WR);
output_low(GLCD_CS);
delay_cycles(1);
output_high(GLCD_WR);
output_high(GLCD_CS);
}
void GLCD_WriteData(int8 dataToWrite)
{
GlcdPutData(dataToWrite);
DATA_MODE
output_low(GLCD_WR);
output_low(GLCD_CS);
delay_cycles(1);
output_high(GLCD_WR);
output_high(GLCD_CS);
}
int8 GLCD_ReadData(void)
{
int8 tmp;
output_low(GLCD_RD);
output_low(GLCD_CS);
delay_cycles(4);
tmp = TakeData();
output_high(GLCD_RD);
output_high(GLCD_CS);
return tmp;
}
void glcd_RAinit(void)
{
output_high(GLCD_RST);
output_high(GLCD_CS);
output_high(GLCD_RD);
output_high(GLCD_WR);
//system set
GLCD_WriteCommand(0x40);
GLCD_WriteData(0x30);
GLCD_WriteData(0x87);
GLCD_WriteData(0x07);
GLCD_WriteData(0x27);
GLCD_WriteData(0x2F);
GLCD_WriteData(0xEF);
GLCD_WriteData(0x28);
GLCD_WriteData(0x00);
//scroll
GLCD_WriteCommand(0x44);
GLCD_WriteData(0x00);
GLCD_WriteData(0x00);
GLCD_WriteData(0xF0);
GLCD_WriteData(0x80);
GLCD_WriteData(0x25);
GLCD_WriteData(0xF0);
GLCD_WriteData(0x00);
GLCD_WriteData(0x4B);
GLCD_WriteData(0x00);
GLCD_WriteData(0x00);
//HDOT SCR
GLCD_WriteCommand(0x5A);
GLCD_WriteData(0x00);
//OVLAY
GLCD_WriteCommand(0x5B);
GLCD_WriteData(0x01);
//erase all screen
FillGraphic(OFF);
FillText(' ');
//DISP ON
GLCD_WriteCommand(0x58);
GLCD_WriteData(0x56);
//CSRFORM
GLCD_WriteCommand(0x5D);
GLCD_WriteData(0x04);
GLCD_WriteData(0x86);
//DISP ON
GLCD_WriteCommand(0x59);
//CSDIR
GLCD_WriteCommand(0x4C);
//CSRW
setCursorAddress(0x0000);
}
void FillGraphic(int1 parameter)
{
long count;
//set cursor to 2580h
setCursorAddress(0x2580);
//put 00h in all graphic space
count = 9600;
GLCD_WriteCommand(0x42);
while(count != 0)
{
GLCD_WriteData(0xFF * parameter);
count--;
}
}
void FillText(char cara)
{
long count;
//set cursor to 0000h
setCursorAddress(0x0000);
//put 00h in all text space
count = 1200;
GLCD_WriteCommand(0x42);
while(count != 0)
{
GLCD_WriteData(cara);
count--;
}
}
void GlcdPutC(char c)
{
GLCD_WriteCommand(0x42);
GLCD_WriteData(c);
}
//x and y : 1 to max
void GlcdGotoTextXY(int16 x, int16 y)
{
int16 adress = 0;
adress = (y-1)*40;
adress = adress+ x-1;
setCursorAddress(adress);
}
void setCursorAddress(int16 addr)
{
int8 adress;
GLCD_WriteCommand(0x46);
adress = addr & 0xFF;
GLCD_WriteData(adress);
adress = addr >> 8;
GLCD_WriteData(adress);
}
void GLCD_Pixel(int16 x,int16 y, int1 color)
{
int8 tmp = 0;
int16 address = 0;
address = RA8835_GRAPHICSTART + (40 * y) + (x/8);
setCursorAddress(address);
GLCD_WriteCommand(0x43);
tmp = GLCD_ReadData();
if(color == ON)
tmp |= (1 << (7 - (x % 8)));
else
tmp &= ~(1 << (7 - (x % 8)));
setCursorAddress(address);
GLCD_WriteCommand(0x42);
GLCD_WriteData(tmp);
}
void GLCD_GraphicGoTo(int16 x,int16 y)
{
setCursorAddress(RA8835_GRAPHICSTART + (y * 40) + x/8);
}
int8 GLCD_ReadStatus(void)
{
int8 tmp;
output_low(GLCD_RD);
output_low(GLCD_CS);
output_low(GLCD_A0);
delay_cycles(1);
tmp = takedata();
output_high(GLCD_RD);
output_high(GLCD_CS);
output_high(GLCD_A0);
return tmp;
}
#include <16F876A.H>
#fuses HS, NOWDT, NOPROTECT
#use delay(clock = 20000000)
#define LARGE_LCD 1
#include <RA8835V2.c>
#include <graphics.c>
void main(void)
{
glcd_RAinit();
printf(GlcdPutC,"test lol");
GlcdGotoTextXY(20,25);
printf(GlcdPutC,"OMG I'M MOVING");
glcd_circle(100,100,70,1,1);
glcd_circle(250,180,30,1,1);
glcd_rect(200,1,300,80,1,1);
glcd_line(10,239,110,200,1);
glcd_line(100,239,10,200,1);
glcd_line(40,220,80,220,1);
glcd_line(58,230,58,209,1);
}
megasandan 240x128 bir mono glcd temin ettim. neyle süreceğim hakkında şuan pek düşünmüş değilim. hatta bir ara esd den bir çat sesi duydum heralde artık kullnılmaz hale gelmiştir ama aklımda başka bir soru var. şöyleki; lcd ye bazı iconlar çizmek ve kullanıcının bu iconlara dokunarak birşeyler yapacağı bir uygulama düşünüyorum fakat nerden baksanız onlarca ikon var şuan aklımda ve hepsini programa tanıtmak ciddi bir zaman alacağa benziyor. peki bunu kısa yoldan nasıl yapabilirim. derleyicilerin resim formatını doğrudan glcd ye atma gibi bir hünerleri var mı acaba? veya neler tavsiye edersiniz.?
İkonları bmp olarak kaydederek aşağıda linkini verdiğim program vasıtasıyla datalarını çıkarın. Daha sonra çıkarmış olduğunuz dataları harici bir eprom belleğe gömün. Eprom yazma işlemi için yine küçük bir program yazın ve vermiş olduğunuz adresten itibaren dataları sırasıyla eproma yazsın. Hangi ikonun hangi adresten başladığını "#define" şeklinde program içerisinde tanıtın. Ekrandan göstermek istediğiniz zaman, ilgili ikonun adresini alarak epromdan bloklar halinde okur ve grafik lcd'ye basarsınız. Bu yöntem ile 320x240 grafik lcd içerisinde onlarca farklı resmi tarama hızı farkedilmeden gösterebildim. Hatta küçük küçük animasyonlar dahi hazırlamıştım. 18f452 ile 40 mhz'de çalışarak sorunsuz bir şekilde halledebilirsiniz. İyi günler, iyi çalışmalar.
http://rapidshare.com/files/2635098/GLCDtool.rar
çok iyi fikir.
elimde WG240128B kodlu bir GLCD var. biraz vakit ayırmak istiyorum zaten kullanacağım mikroya göre library de bulamadım ama datasheet ini incelerken bir noktaya takıldım. Vee ( negative voltage ) bu düşündüğüm şey değil dimi :) eğer öyleyse ben datasında bu değerin ne olması gerektiğini bulamıyorum. nedir bu?