Picproje Elektronik Sitesi

MİKRODENETLEYİCİLER => Diğer => Konuyu başlatan: LukeSkywalker - 05 Ağustos 2018, 16:43:20

Başlık: Parmak izi okuyucu kullanımı.
Gönderen: LukeSkywalker - 05 Ağustos 2018, 16:43:20
https://mikrodunya.wordpress.com/2018/08/05/parmak-izi-sensoru-ve-kullanimi/
Başlık: Ynt: Parmak izi okuyucu kullanımı.
Gönderen: fide - 05 Ağustos 2018, 20:29:52
Elinize sağlık, güzel bir çalışma olmuş.
Başlık: Ynt: Parmak izi okuyucu kullanımı.
Gönderen: OptimusPrime - 06 Ağustos 2018, 06:33:43
Ellerine saglik.

Birkac elestiri kodlama stilin uzerine.  8-)

- mesela getimg, handshake aslinda program icin sabit degerler. Bunlari const olarak tanimlayip daha programin basinda programa goz atana bu mesaji verebilirsin.
- handshake [13] getimg[12] deneme zaten gerek yok handshake[] getimg[] kafi
- for(i=0; i<12; i++) bu sekilde sihirli sayilar kullanmaktan kacin. define ile 12 nin ne oldugunu programi okuyana soylemekte fayda var
- int chardizisinecevir() her ne kadar linuxculer boyle uzun isimler sevmeselerde bende bu sekilde kullaniyorum. fonksiyonun ne is yaptigi gayet acik bir sekilde belli oluyor.

Başlık: Ynt: Parmak izi okuyucu kullanımı.
Gönderen: LukeSkywalker - 06 Ağustos 2018, 07:16:04
Alıntı yapılan: OptimusPrime - 06 Ağustos 2018, 06:33:43Ellerine saglik.

Birkac elestiri kodlama stilin uzerine.  8-)

- mesela getimg, handshake aslinda program icin sabit degerler. Bunlari const olarak tanimlayip daha programin basinda programa goz atana bu mesaji verebilirsin.
- handshake [13] getimg[12] deneme zaten gerek yok handshake[] getimg[] kafi
- for(i=0; i<12; i++) bu sekilde sihirli sayilar kullanmaktan kacin. define ile 12 nin ne oldugunu programi okuyana soylemekte fayda var
- int chardizisinecevir() her ne kadar linuxculer boyle uzun isimler sevmeselerde bende bu sekilde kullaniyorum. fonksiyonun ne is yaptigi gayet acik bir sekilde belli oluyor.



Hocam programda optimize edilecek cok nokta var. Buradaki amacim mukemmel bir program yazmak degil sensorun calismasini göstermek oldugundan üstünkörü yazdim gectim. Yoksa programdaki satir sayisi yari yariya hatta daha fazla azaltilabilir. Ram kullanimi cok daha azaltilabilir dediginiz gibi. Yine de tesekkur ederim.
Başlık: Ynt: Parmak izi okuyucu kullanımı.
Gönderen: foseydon - 06 Ağustos 2018, 11:50:17
Alıntı yapılan: LukeSkywalker - 06 Ağustos 2018, 07:16:04Hocam programda optimize edilecek cok nokta var. Buradaki amacim mukemmel bir program yazmak degil sensorun calismasini göstermek oldugundan üstünkörü yazdim gectim. Yoksa programdaki satir sayisi yari yariya hatta daha fazla azaltilabilir. Ram kullanimi cok daha azaltilabilir dediginiz gibi. Yine de tesekkur ederim.

- üstünkörü yazımlar alışkanlık haline geliyor ve sonradan düzeltmesi daha zor oluyor.
- array uzunluğu baştan belli ise atama yapmak daha doğru. yani handshake[13], bence, daha doğru kullanım.
- @OptimusPrime in dediği gibi sabit olan değerleri "const" ile tanımlamak daha avantajlı. birincisi, saklandığı bellek alanı değişiyor. bunun belirli avantajları var. ikincisi "const" immutable type'tır, yanlışlıkla değiştirilme ihtimalini ortadan kaldırırsın.
- for(int i=0; i<25;i++)tampon=0xff; kullanımı doğru olsa da ben karşıyım, her zaman {} kullanın, tek satır bile olsa. hem okumayı kolaylaştırıyor, hemde olası hataların önüne geçersiniz.
- camelcase veya underscore gösterimi kullanın. tamponusıfırla() yerine tamponuSıfırla() veya tamponu_sıfırla() gibi.
- fonksiyonlar can dostunuzdur. örneğin,
int i=0;
for(i=0; i<13; i++)
{
    myserial.write(img2tz2[i]);
}

kod parçası birkaç yerde geçiyor. bu bir fonksiyon haline getirebilirsiniz:

void serialWrite(int dataCount, byte data[]){
    int i=0;
    for(i=0; i< count; i++)
    {
        myserial.write(data[count]);
    }
}

bunun birkaç avantajı var. değişiklik yapması daha kolay, okuması ve takip etmesi daha kolay.
Başlık: Ynt: Parmak izi okuyucu kullanımı.
Gönderen: LukeSkywalker - 06 Ağustos 2018, 12:46:26
Bahsettiğiniz noktalar kesinlikle doğru ve proje oluştururken dikkat edilmesi gereken şeyler.
Sayfamda paylaştığım kodlar dikkat ederseniz nodemcu için yazılmış, yani prototipleme aşamasında arduino ide ile yazmış olduğum çalışma anında yazılagelmiş kodlar. Aslında her komut gönderimini tek bir fonksiyon içerisinde halledebilirdim. Ama dediğim gibi amaç sennsörün çalıştığını görmekti bunları yazarken, proje aşamasında en iyi hafıza ve işleme optimizasyonunu yapmaya çalışıyoruz elbette. Yeni kod yazmaya başlayacak arkadaşlar yorumlarınızdan faydalanacaktır eminim ki.