CCS C ile GUI uygulaması hakkında

Başlatan int32, 12 Ekim 2016, 09:49:24

int32

Merhabalar;


Tek renkli grafik LCD'lerde GUI uygulaması yapılabilmesi için Mikroelektronikanın Visual GLCD isminde bir programı var. GLCD ve dokunmakik ekranı olan bir devrede (pencereli butonlu) GUI uygulaması yaratılabiliyor. Tabi doğal olarak sadece aynı firmanın mikroC derleyicisi için kod üretiyor.

Visual GLCD ile aynı işi yapan ve CCS C için kod üreten bir program var mı?


Bunu şu sebeple soruyorum, bu programı kendim yapmayı düşünüyorum, eğer varsa boşuna uğraşmayayım. Yoksa yapacağım.

Program şöyle olacak: Bilgisayardaki programda istenilen sayıda pencere, pencere üzerine (C#'taki gibi) sürükle bırak şeklinde oluşturulan; Button, Label, Text, ProgressBar, CheckBox, Radiobutton........ gibi kontroller eklenebilecek ve her kontrol (button vs.......) için tıpkı C# gibi event fonksiyonu oluşturulabilecek.
Sonra oluşturulan pencereler (C# diliyle formlar) ve event fonksiyonları için CCS C editörüne uygun kod üretecek.
Üretilen kodu CCS C'de açıp derleyip işlmeciye yükleyince, bilgisayarda oluşturduğumuz ekran aynen GLCD'de çıkacak. Örneğin pencere (GLCD) üzerinde buton varsa, butona tıklanınca buton için oluşturulan event fonksiyonu çalışacak.

Kısacası Mikroelektronika'nın Visual GLCD programının C#'a benzetilmiş hali olacak ve C kodunu CCS C editörüne uygun bir şekilde üretecek.

Nasıl, böyle bir program güzel olur muydu?

skara1214

ne yazıkki ccs c de böyle bir program yok hocam
Herkes ölür ama herkes gerçekten yaşamaz

kantirici

 Visual GLCD 'nin ürettiği kodu xc8 için port etmiştim. Fakat gereksiz ram kullanımı var. Oturup optimize etmekte zor oluyor. Ccs içinde üretilin kod düzenlenebilir. Biraz zahmetli bir iş.

Visual GLCD den şöyle yararlanmak daha iyi olur; ekran tasarımı program üzerinde hızlıca yapıp ögelerin koordinat bilgileri üretilen koddan alınıp kendi programınıza eklenir. Zaten ekran ögeleri çok temel, kare, dikdörtgen v.s.

Event içinde yine programın ürettiği örnek bölüm esas alınabilir. Üretilen kodu detaylı inceleyince bu iş kafada daha iyi canlanacaktır.

int32

Alıntı yapılan: kantirici - 12 Ekim 2016, 12:20:58
Visual GLCD 'nin ürettiği kodu xc8 için port etmiştim. Fakat gereksiz ram kullanımı var. Oturup optimize etmekte zor oluyor. Ccs içinde üretilin kod düzenlenebilir. Biraz zahmetli bir iş.

Visual GLCD den şöyle yararlanmak daha iyi olur; ekran tasarımı program üzerinde hızlıca yapıp ögelerin koordinat bilgileri üretilen koddan alınıp kendi programınıza eklenir. Zaten ekran ögeleri çok temel, kare, dikdörtgen v.s.

Event içinde yine programın ürettiği örnek bölüm esas alınabilir. Üretilen kodu detaylı inceleyince bu iş kafada daha iyi canlanacaktır.

MicroC için üretilen kodu CCS C veya x8 gibi başka bir derleyiciye çevirme çok zahmetli bir iş. Üstelik her değişiklikte veya her yeni projede tekrar tekrar aynı çevirileri yapmak gerekir. İşte o zahmete girmemek için kendim Visual GLCD benzeri bir program yapmaya karar verdim.

Başladım bile :)

Visual GLCD'den ziyade C#'a benzeterek yapmaya çalışacağım.
Başarabilirsem ilk çıktıları yine buradan gösteririm. Hatta adını da Pic CCS C# koyarım. :)


int32

Oldu. Bütün gece uğraştım ve CCS C editörüne uygun C kodunda aktif bir buton üretebildim. Üstelik butona event fonksiyonuda yüklenebiliyor.



Şimdi sıra bilgisayar tarafında istediğim özelliklerde buton yaratma ve event fonksiyonu üretecek C kodunu oluşturacak C# benzeri programda.

Bunuda yaptı mı Label'i, TextBox'u, ProgressBar'ı...... gibi tüm kontroller çorap söküğü gibi eklerim.

int32

Evet tamamdır.

Pencere, Buton ve Label üretebilen program hazır. Adına Visual Pic GUI verdim. Extradan bir araç daha ekledim. Bundan sonra da widget olarak TextBox, ProgressBar, TrackBar, CheckBox, RadioButton, Resim, Kullanıcı Kontrolü ekleyeceğim. Araç olarak da Timer, Seri haberleşme, USB ekleyeceğim. Bunları eklerken aklıma bir şeyler daha gelirse onları da eklerim.

Programın görüntüsü şöyle;






Kullanma klavuzu da dahil tüm dosyalar aşağıdaki linkten indirilebilir; (Virüs falan yoktur kendi yazdığım program.)
http://s5.dosya.tc/server3/cqlja9/Visula_Pic_GUI_Demo_Dosyalari.rar.html

Not: Linki tıklayınca dosyayı indirmeden önce reklam falan çıkabilir, reklam çıkan sayfayı kapatıp linke tekrar tıklayın.

Mikroelektronika'nın EasyPic6 veya 7 veya SmartGLCD deneme kitleriyle birebir uyumlu çalışır. Zaten program bu deneme kitleri üzerinden geliştirdim.
Bu deneme kitlerinden birini elinde bulunduran bir kişi programı deneyip not verebilir mi?



sadogan

Öncelikle kolay gelsin.
Başka bir yere yüklemek mümkünmüdür. Eset sevmedi burayı.

int32

Alıntı yapılan: sadogan - 17 Ekim 2016, 14:06:57
Öncelikle kolay gelsin.
Başka bir yere yüklemek mümkünmüdür. Eset sevmedi burayı.

Merhaba,

Dosya yüklemek için ben her zaman burayı kullanıyorum. Başka bir dosya yükleme sitesi bilmiyorum. Siz biliyorsanız, link verin oraya yükleyeyim.

Teşekkürler.

ByTEK

@int32

Hocam projeniz güzel. İnşallah tümü ile bitirip herkese faydalı birşey ortaya çıkarabilirsiniz.

rck8942

Elektroniker für Betriebstechnik

Elektroemre

@int32 hocam eline sağlık bu "tab"lı görünüm için özel bir şey kullanıyor musun?

int32

Alıntı yapılan: Elektroemre - 17 Ekim 2016, 22:13:05
@int32 hocam eline sağlık bu "tab"lı görünüm için özel bir şey kullanıyor musun?

Pencere tab'ını diyorsanız C#'ın TapControl kontrolünü kullandım.

int32


Deneyen arkadaşlar not verebilir mi?

Şunu öğrenmek istiyorum, projeyi tamamladığımda ticari bir değeri olur mu?

ziyaretci

Mükemmel görünüyor, kolay gelsin.

@Elektroemre 'nin sorusunu bende merak ediyorum.

engerex

Elinize sağlık.
Bu güzel projeyi PIC ile sınırlandırmayın.