dsPIC için neden C ?

Başlatan kaypic38, 26 Ocak 2012, 23:40:56

kaypic38

Nasıl olacak peki C derleyici o ASM komutlarını nasıl derleyecek ? veya ASM derleyicisi C komutlarını nasıl derleyecek ?
Bir şeyi gerçekten öğrenmek, yapmak istiyorsan o şeyi yapmışsın, öğrenmişsin demektir...

GreeN

Alıntı yapılan: kaypic38 - 27 Ocak 2012, 17:13:18
Kimse kusura bakmasın ama bu alıntı yaptığım arkadaş dışında kimse konu ile alakalı en azından tam soruya yönelik bir cevap vermemiş... Benim asıl sormak istediğim dsPIC veya bir PIC32 BASIC ile programlanabilir mi ?

PIC için belli derleyiciler var. proton+ (8 bit),Basic(8 bit) , ccs c ( 8,16,32 bit) , mikroe (c , basic, pascal) (8,16 bit)  , Mplap C18 (18Fxx) , Mplab C30(30Fx , 33Fx , ...) , Hitec C (8 bit)... Bildiklerim bu kadar ...

dsPIC için neden C ?  soru gayet açık olduğu için herkes (bende dahil) derleyicileri karşılaştırmış.

Ama sizin dediğiniz basic ile elde edeceğiniz Makine dili x86 kodları olur sanırım. (yanlış anlamadım umarım.)

PIC'te hiç çalıştınız mı ? En temel dil assembly (asm) kodlarını incelediniz mi?

Terörü Lanetliyoruz.

GreeN

Alıntı yapılan: kaypic38 - 27 Ocak 2012, 17:24:19
Nasıl olacak peki C derleyici o ASM komutlarını nasıl derleyecek ? veya ASM derleyicisi C komutlarını nasıl derleyecek ?


Hemen hemen her PIC derleyicisi destekler asm kodlarını c kodlarını arasına yerleştirmeyi

ccs c için misal;

#asm
asm kodları
#endasm

C kodları ile zaten önce asm kodları üretilir sonra makina dili üretilir.

gibi...
Terörü Lanetliyoruz.

kaypic38

Evet zaten şu an asmmbly çalışıyorum 35 komutuda biliyorum (yani usta değilim sadece birer örnek ile mantığını anladım) ve zaten 6 7 ay önce başladım PIC programlamaya daha 16f628a yı yeni yeni bitiriyorum sadece merak ettim aslında ben 2 ay sonra bir PIC kursuna gideceğim kurs hocam BASIC ci mecburen basic öğreneceğim yani basic dili ile her şeyi yapabilirmiyim ? (dsPIC ve 32 bit MCUlar bu işin şu anda en üst düzeyi olduğu için sordum)
Bir şeyi gerçekten öğrenmek, yapmak istiyorsan o şeyi yapmışsın, öğrenmişsin demektir...

kaypic38

Alıntı yapılan: GreeN - 27 Ocak 2012, 17:28:28

Hemen hemen her PIC derleyicisi destekler asm kodlarını c kodlarını arasına yerleştirmeyi

ccs c için misal;

#asm
asm kodları
#endasm

C kodları ile zaten önce asm kodları üretilir sonra makina dili üretilir.

gibi...

Hocam çok teşekkürler bu bilgi çok işime yarar gibi... peki aynısını jal pascal basic gibi dillerde de yapabilirmiyim ?
Bir şeyi gerçekten öğrenmek, yapmak istiyorsan o şeyi yapmışsın, öğrenmişsin demektir...

GreeN

Alıntı yapılan: kaypic38 - 27 Ocak 2012, 17:31:06
Evet zaten şu an asmmbly çalışıyorum 35 komutuda biliyorum (yani usta değilim sadece birer örnek ile mantığını anladım) ve zaten 6 7 ay önce başladım PIC programlamaya daha 16f628a yı yeni yeni bitiriyorum sadece merak ettim aslında ben 2 ay sonra bir PIC kursuna gideceğim kurs hocam BASIC ci mecburen basic öğreneceğim yani basic dili ile her şeyi yapabilirmiyim ? (dsPIC ve 32 bit MCUlar bu işin şu anda en üst düzeyi olduğu için sordum)

Usta , basic ile önün kapalı bence , o kursa para verme diyecem ama demiyorum bir yerden başlamak lazım değil mi? !!! Sanırım sende bunu sorguluyorsun. Neden C , basic bir yerde yetersiz mi kalıyor. Eğer programlama konusunda temeliniz yoksa güzel bir kurs olur. Ama zaten bir şekilde c , basic biliyorsanız , programlama yeteneğiniz varsa ....

Terörü Lanetliyoruz.

Saruman

Basic'te
        ASM
.
.
.
.

        ENDASM

şeklinde kullanılıyor. JAL bilmem.



GreeN

Alıntı yapılan: kaypic38 - 27 Ocak 2012, 17:32:45
Hocam çok teşekkürler bu bilgi çok işime yarar gibi... peki aynısını jal pascal basic gibi dillerde de yapabilirmiyim ?

Saydıklarının hiç birini kullanmadım . Ama CCS C , Microe C , Mplab Cxx ... Bunlarda olduğunu biliyorum.
Terörü Lanetliyoruz.

berat23

Alıntı yapılan: -Hasan- - 27 Ocak 2012, 08:59:59
Aslında müfredatın değişmesi gerekir, ama öğrenciler isteksiz olup kendilerini geliştirmedikleri sürece bunun bir anlamı olmaz, 16F84 ' e mahkum kalmaya devam ederler.

müfredat böyle olmak zorunda.sıfırdan öğrenilirken i7 ile öğrenmeyi beklemeyin güncel diye.zaten bir işlemci baştan öğrenen için yeterince kompleksken dahada kompleksleştirmeye hiç gerek yok.öğrenciler sonradan istediklerini öğrenebilir,tutan yok.

bu dediklerim mühedislik için geçerli.yüksek seviyeli dillerle al ver böl çarp diye basit program yazmak mühendislik işi değildir.

kaypic38

Hocam zaten farkındayım BASİC le pek ileri gidemeyeceğimin benim mikrodenetleyici dünyasına gizmemi sağlayan bana yol gösteren (ALLAH razı olsun) hocam da BASICciydi demişti yetersiz kalıyor bazen diye galiba C öğrenmem lazım birde bu ccs c, c++, c sharp, c30 falan bunlar sadece derleyici isimleri mi yoksa komutları farklı olan temeli aynı olan dil türleri mi ?
Bir şeyi gerçekten öğrenmek, yapmak istiyorsan o şeyi yapmışsın, öğrenmişsin demektir...

GreeN

Alıntı yapılan: kaypic38 - 27 Ocak 2012, 17:47:57
Hocam zaten farkındayım BASİC le pek ileri gidemeyeceğimin benim mikrodenetleyici dünyasına gizmemi sağlayan bana yol gösteren (ALLAH razı olsun) hocam da BASICciydi demişti yetersiz kalıyor bazen diye galiba C öğrenmem lazım birde bu ccs c, c++, c sharp, c30 falan bunlar sadece derleyici isimleri mi yoksa komutları farklı olan temeli aynı olan dil türleri mi ?

ccs C ve C30 PIC için için özel hazırlanmış derleyicilerdir. c++ , C# vs.. ise PC için yazılım hazırlamakta kullanılan derleyicilerdir. pic için kullanılan C temelli diller de temel yapılar, işleyiş , terimler , tanımlamalar vs.. genelde aynı. Ama farklı firmaların PIC'e ait register , pin , çevre birimlerin isimlendirmeleri farklılıklar arzediyor.
Terörü Lanetliyoruz.

kaypic38

Yani ben C mantığını anlasam (hiç çalışmadım ama ordan burdan kulak aşinalığı) for düngüsü cart curt herneyse kısacası C dilini öğrensem tüm derleyicileri rahatlıkla kullanırım öyle mi?
Bir şeyi gerçekten öğrenmek, yapmak istiyorsan o şeyi yapmışsın, öğrenmişsin demektir...

94220039

dsPIC30f2020 kullanıyorum ve programın tamamını assembly ile yazıyorum.

kaypic38

Senin ALLAH'ına kurban :) hocam zor olmuyor mu ?
Bir şeyi gerçekten öğrenmek, yapmak istiyorsan o şeyi yapmışsın, öğrenmişsin demektir...

ahfxg

Alıntı yapılan: 94220039 - 27 Ocak 2012, 22:51:22
dsPIC30f2020 kullanıyorum ve programın tamamını assembly ile yazıyorum.

Bu işlemci güç elektroniği için özelleştirilmiş bir mikroişlemcidir. Dolayısı ile mikrosaniyeler bile sizin için önemlidir. Ondan ASM'de yazmanız kabul edilebilir fakat programın hepsi mi! Yok artık!
Yarın o programı daha güçlü bir güç elektroniği entegresine taşımak istediğinizde ne yapacaksınız? Tekrar oturup baştan mı uğraşacaksınız. Konuşmaya bile gerek yok dediğim olay buydu.

Anlamayanlar için şöyle diyeyim sonra sesini yükseltenler çıkmasın. İşten anlayanlar bilecektir, güç elektroniği demek kontrol demektir. Şimdi bu arkadaşımız bir PID kontrol hazırladı. ASM'de. Yarın patron dedi ki bu işlemci eski teknoloji ya da arkadaş dedi ki bunun hızı bizi kesmiyor artık. Hem ucuz hem uçan işlemciler var onlara geçiyoruz dediniz. Napacaksınız?

ANSI C'de biz genellikle kopyala yapıştırı tercih ediyoruz. Zaman kaybı: 0.4ms
ASM'cilere soruyorum, sizin bir PI bloğunu bir işlemciden başka bir işlemciye almanız kaç saniye pardon gün alacaktır?
Erkeklerin dünyasına başkaldıran bayan mühendis..