Nasihat isteyen acemi bir ARM programcısına tavsiyesi olan ?

Başlatan GaGuLi, 26 Kasım 2016, 14:58:26

JOKERAS

Sağa shift işleminin çarpma yaptığını biliyorum.
Sormak istediğim,derleyici shift esnasında tam bölünmeyen sayılar için gerektiğinde
bölme modulünü koda dahil ederken aynı dahil etme durumunu çarpma içinde yapıyormu?



Zoroaster

Seytan deliginden kacti.

JOKERAS

Alıntı yapılan: Zoroaster - 26 Kasım 2016, 20:09:16
Keil acaip atraksiyonlar yapıyor.
Hah,tam adamına dedin yani ZorO usta.
Ben ne anlarım Keil'den,kurulu bile değil. Daha XC'yi çözemedimki Keil'i çözeyim:)
Yavaş yavaş,aceleye gerek yok.
Bir gün benim olacaksın Istanbuuul misali, bir gün senin ciğerini sökeceğim Kel Keil µVision:)
Derleyicilerin Sentaks ve Semantik analizlerinde farklılıklar varmı acaba?

ARM işlemciler ile PIC işlemciler arasında,mimari olarak çok fark varmı?
Bir de onları öğrenmek gerekecek,yok registeri,yok osilatörü,yok memorisi falan.
Bunlar beni öldürecek,yav ne zor işler bunlar.
Bindik bir alamete gedoyoz Gıyamete:)

GaGuLi

@Zoroaster @JOKERAS ustalarım, başlığı farklı mecralara kaydırdığınız için bana bir nasihat borçlusunuz ona göre  ;)

JOKERAS

Alıntı yapılan: GaGuLi - 26 Kasım 2016, 20:31:01
@Zoroaster @JOKERAS ustalarım, başlığı farklı mecralara kaydırdığınız için bana bir nasihat borçlusunuz ona göre  ;)
Pardon GaGuLi usta,
Bazen farkına varmadan konular farklı mecralara kayabiliyor.
Bu konuda size nasihat veremem,zira hiç bir fikrim yok.
Ama size ilaç olacak çok arkadaş var bu forumda.

RaMu

Kaydırmayı illa 2nin katıyla çarpmada kullanılabilir diye düşünmemek lazım,
Misal RegX i 3 ile çarpacaksan
Temp = RegX bir sola kaydır
Sonuc = Temp + RegX

Ayrıca sağa kaydırarak 2nin katlarına bölme işleminde
kaydırıp attığınız bitleri
atmayın bir register a alıp bakın :)
ne göreceksiniz acaba.
Tabiki bunu tam bölünmeyen bir sayıyı bölmede deneyin.



@GaGuLi helal olsun bu kadar azimle uğraşmışsın,
istersen datasheet okuma yorumlama işini ben anlatırım sana,
ama yazmakla olacak iş değil.

Alıntı yapılan: GaGuLi - 26 Kasım 2016, 14:58:26
...
Mesela siz bu dediğim şekilde bir çipi alıp dökümanına bakıp dışarıdan bir kütüphane yardımı olmadan kodlarınızı yazabiliyor musunuz ?
...
Asm yazdığımda bunu yapmak zorunda olduğum için,
veya kütüphanesi olmayan bir şey kullandığımda gerektiğinden,
veya sevdiğim için,
doğal olarak evet.
Sorularınıza hızlı cevap alın: http://www.picproje.org/index.php/topic,57135.0.html

GaGuLi

Teşekkür ederim hocam yardımlarınız için. Bu hazırcılık işine bir son vermem gerektiğini hissettim bismillah deyip kolları sıvadım. Tüm yardım ve yönlendirmelerinizi bekliyorum hocam, elbette bir konu üzerinde anlatımlarınız olur ama ondan ziyade bu ilk aşamalarda sanki daha çok tavsiye ve yönlendirilmeye ihtiyaç duyuyor gibiyim. Siz bana kilit noktaları gösterin ben onları tırmalayayım sonra diyim ki hocam şunu anlamadım ozaman anlatın bana, hazır olmasın yani :)

Faruk53

@GaGuLi hocam Allah kolaylık versin diyim öncelikle :) ben bu forumdan çok şey öğrendim. ve buna istinaden elimden geldiğince neler yaptığımı nasıl yaptığımı bi anlatmak isterim. öncelikle kullanıcağın derleyiciye ve kullanıcağın dile hakim olduktan sonra gerisi gerçekten geliyor.
ben C ile yazıyorum ama tek başına C de bazı noktalarda yetmiyor asm ye de ufaktan hakim olmak gerekiyor. istediğin şey işlemciyle kullanıcağın bütün donanımların kütüphanesini en baştan herşeyiyle kendin yazabilmek ki insana ciddi oranda bi özgüven ve tat veriyor :) ama bu noktaya gelmek gerçekten biraz emek ve azim istiyor ki bu da sende var o kadar uğraşmışsın çabalamışsın devam da et aynen bu şekilde.
işlemcinde kullanıcağın dahili donanımlarla ilgili bütün kütüphanelerin hazırsa zaten bir çok şeyi halletmişsindir demektir. çünkü asıl önemli olan o kısımları eksizsiz oluşturabilmek. daha sonra belli bir malzemeyle uğraşırken kesinlikle ilk başta o malzemeyle ilgili neler yapılmış bi araştırman gerekiyor. Datasheetler ahhh o datasheetler :) sabahlara kadar kafayı yedirtir bazen insana :) sana şöyle bir örnek vermek istiyorum. Mesela bir RF modülü olan RFM96 için konuşalım. SPI haberleşme protoklünü kullanıyor. önce tabiki datasheetini indirip bi bakıyoruz neler var neler yok. SPI haberleşmesi belli adreslerdeki verilere ulaşarak orada işlemler yapmamıza olanak sağlıyor ve gerçekten hızlı bir haberleşme. Daha sonra Register Table Summary denen başlık... Modülün hangi adresinde neler var, hangi adrese erişip ne yapabiliyorsun. aslında bu işlemcilerimiz için yazdığımız donanımsal kütüphanelere benzer şeyler. aslına bakarsan benim önerim önce bugüne kadar yazılan yapılan uygulamaları incelemen. birde bu benim fikrim tabi yazılan kütüphaneler sabittir. yani 'RegOpMode'(0x01) adresine ulaştığında yapıcağın şey sabittir. Ama main programında yapıcağın şeyler çok değişkenlidir. yani biri mat1 problemiyken diğeri diferansiyel denklemdir. mat1 probleminde kimisi değişkeni x der y der ama çözüm yolu 1 tanedir. diğerinde ise çözüm yolu çoktur. yani demem o ki oluşturduğun kütüphaneyi 1 kere yazıcaksın ve o yazdığın muhakkak birilerinin yazdığıyla aynı olcaktır. ama main programın tamamen sana özgü olcaktır. asla ama asla hazıra kon demiyorum ki herkes gibi buna bende karşıyım. belli bir süre yapılanları incelemeden mantığı oturmaz sadece onu savunuyorum. işlemcini,derleyicini ve kullandığın dili iyi tanıdıktan sonra üstesinden gelemiceğin proje olmaz inşallah. Allah yardımcın olsun hocam :)