6 Nisan 2016 Çarşamba

Arduino DHT11 Isı ve Nem Sensörü Kullanımı

Merhaba arkadaşlar uzun bir aranın ardından bugün sizlere arduino da dht11 sensörü ile ortam sıcaklık ve nem ölçümünün nasıl kullanılacağını dilim döndüğünde anlatmaya çalışacağım.

Öncelikle internetten arduino ide programını indiriyoruz. Bu program bizim arduino kartlarımızı programlamamızı sağlayan ücretsiz sunulan ide. Ben şahsen arduino ide programını pek sevmesemde bu yazımızda bu ide üzerinden gideceğiz.

(Alternatif olarak CodeBlock Arduino ide sini kullanmanızı  tavsiye ediyorum. Hem daha profesyonel bir program hemde autocomplate v.b bir çok özelliği içerisinde barındırıyor. Bir sonraki yazımızda bu idenin kurulumu ve kullanımı ile ilgili bir yazı paylaşmayı düşünüyorum)

Programı indirmek için tıklayınız.

Programı indirdikten sonra stantart program kurulumu gibi next ile adımları tamamlıyoruz. Akabinde Arduino IDE programımızı çalıştırıyoruz.  Programın ilk açılış ekranı aşağıdaki gibidir. Arduino programlar Sketch olarak adlandırıldığından ilk sketch dosyamız açılıyor.


Yukarıda ki resimde de görüldüğü gibi ilk program açılışında setup ve loop fonksiyonları otomatik geliyor. Arduino programı için olmazsa olmaz fonksiyonlarımız bunlar. Hiç bir şekilde bu fonskiyonları silmeyiniz aksi halde program hata verecektir.

Setup() : kartın ilk çalışmaya başladığında gerekli olan işlemleri bir defaya mahsus yapan  fonksiyondur.

Loop(): ise tıpkı while(1) de olduğu gibi sonsuz kere çalışan döngümüzdür.

Bu kısa bilgilerin ardından hemen programımıza kütüphanemizi ekleyelim.

 Dht11 kütüphanesini indirmek için tıklayınız.

Kütüphanemizi de indirdikten sonra tekrardan arduino ide mize dönüp yükleme işlemini gerçekleştiriyoruz.



Resimdeki numaralandırılmış adımları takip ediyoruz ve 3 numaralı alana tıkladığımızda bizden .zip uzantılı dosyanın konumunu soruyor. Kütüphaneyi indirdiğimiz konuma gidip kütüphanemizi seçip ok diyoruz. Böylelikle kütüphanemiz yüklenmiş oluyor.

Şimdi ilk sketch dosyamızın içindeki tüm kodları silip aşağıdaki kodları yapıştırıyoruz.

 
#include <dht11.h>
int pin = 2; // bağlantı yapılacak bacak no
DHT11 dht11(pin);


void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
}

void loop() {
  // put your main code here, to run repeatedly:
  Serial.println();
  int err;
  float temp, humi;
  if ((err = dht11.read(humi, temp)) == 0)
  {
    Serial.print("Sıcaklık:");
    Serial.print(temp);
    Serial.print(" Nem:");
    Serial.print(humi);
    Serial.println();
  }
  else
  {
    Serial.println();
    Serial.print("Hata No :");
    Serial.print(err);
    Serial.println();
  }
  delay(DHT11_RETRY_DELAY); //delay for reread

}


 Bağlantı şeması




Faydalı olması dileğiyle.

15 Haziran 2015 Pazartesi

Asp.net seo uyumlu link yapımı

Merhaba arkadaşlar.

Bu yazımızda son zamanların gözde olayı seo uyumlu link yapabilmeniz için basit bir fonksiyon paylaşacağım. Bu fonksiyona gönderdiğiniz yazıyı(metni) size seo uyumlu hale dönüştürüp geri yolluyor. Sizde bu dönen veriyi linklendirmeleriniz de rahatlıkla kullanabilirsiniz. Unutmadan bu dersimizde Asp.net Seo link kullanımını anlatmıyoruz. Sadece seo uyumlu linkleri nasıl üretebileceğinizi gösterecem. Asp.net seo uyumlu link yönlendime işlemini ise bir sonraki makalemizde inceleyeceğiz. İsterseniz hemen fonksiyonumuzu yazmaya başlayalım.

#region seoUrlYap
        /// 
        /// Metin olarak yazılan yazıları seo uyumlu hale getiriyor
        /// 
        /// 
        /// String türünde 255 karakter uzunluğunda veri döndürüyor
        public string seoUrlYap(string data)
        {
            data = data.Replace(",", "").Replace("\"", "").Replace("'", "").Replace(":", "").Replace(";", "").Replace(".", "").Replace("!", "").Replace("?", "").Replace(")", "").Replace("(", " ").Replace("&", " ").Replace(" ", " ").Replace("#", "sharp");

            if (data.Length > 255) // siz isterseniz bu sayıyı düşürüp artırabilirsiniz.
            {
                data = data.Substring(0, 255);
                data = data.Substring(0, data.LastIndexOf(" "));
            }
            data = data.Replace(" ", "-").ToLower(); // boşluk karakterini - ile değiştiriyoruz
            // son olarak ise türkçe karakterlerimizi değiştirerek linklerde oluşabilecek hataların önüne geçiyoruz
            // return ile de son halini geri döndürüyoruz.
            return data.Replace("ş", "s").Replace("Ş", "s").Replace("ç", "c").Replace("Ç", "c").Replace("ö", "o").Replace("Ö", "o").Replace("ü", "u").Replace("Ü", "u").Replace("İ", "i").Replace("ı", "i").Replace("ğ", "g").Replace("Ğ", "g");
        }
        #endregion

Evet fonksiyonumuz bu kadar isterseniz birde son olarak kullanımına bakalım

Örnek Kullanım
 string yazi = "Asp.net seo uyumlu link yapımı";
 string seoLink = seoUrlYap(yazi);
 Response.Write("Seo uyumlu link: "+seoLink);
Ekran çıktısı:
 asp-net-seo-uyumlu-link-yapimi
bu işlemlerden sonra ise "a" tagımıza yeni linkimizi yazabiliriz.

 Örnek:
 <a href="<=this.seoLink">Asp.net seo uyumlu link yapımı</a>

Umarım anlaşılır ve işe yarar bir yazı olmuştur.

Bir sonraki yazımızda Asp.net seo uyumlu sayfa yapımını göreceğiz ve bu yazımızda da burada anlatılan fonksiyonu kullanacağız. Asp.net seo uyumlu sayfa içinde urlrewrite.dll  dosyamızı kullanacağız.

Bir sonraki derste görüşmek üzere....

c# veri kesme fonksiyonu

Merhaba arkadaşlar. Bu yazımızda c# dili kullanarak bir metni kesme fonksiyonunu göreceğiz. Aslında c# ile gerek asp.net web projelerinizde gerekse c# webform projelerinizde rahatlıkla kullanabilirsiniz. Hemen fonksiyonumuzu yazalım,
#region veriKes
        public string veriKes(string veri = null, int baslangic = 0, int uzunluk = 1)
        {
            try
            {
                string sonuc = ""; // yazının son halini tutmak için tanımlıyoruz
                int kackarakter = veri.Length; // yazı uzunluğumuzu alıyoruz
                if (kackarakter > uzunluk) // yazı uzunluğu kesmemizi istediğimiz uzunluk değerinden büyükse kesme işlemi yap
                {
                    sonuc = veri; // veri ile gelen değeri sonuc değişkenimize yüklüyoruz
                    int basla = baslangic; // kaçıncı karakterden başlayarak kesme yapmak istediğimizi belirtiyoruz
                    int bitir = uzunluk; // başlangıç karakterinden sonra kaç kelime göstermek istediğimizi belirtiyoruz
                    sonuc = sonuc.Substring(basla, bitir); // substring fonsiyonu ile kesme işlemini tamamlıyoruz
                }
                else
                { // eğer yazı uzunluğu kesilmesini istediğimiz sayıdan küçük ise doğrudan atama yapıyoruz
                  // örnek yazımız 30 karakter biz 40. karakterden başlatıp 60 karakter göstermek istiyoruz. 
                  // Bu gibi durumların önüne geçmiş oluyoruz
                    sonuc = veri;
                }

                return sonuc;
            }
            catch (Exception)
            {

                return ("");
            }

        }
        #endregion

Fonksiyonlarımız bu kadar şimdi örnek bir kullanımına bakalım.
 string yazi = "Merhaba Dünya!";
 string yaziKes = veriKes(yazi,0,7);
 console.write("Sonuc: {0}",yaziKes);
Ekran Çıktımız: Merhaba olacaktır. Umarım işinize yarar bir yazı olmuştur. Bir sonraki yazımızda görüşmek üzere...

C# dll md5 ve sha1 şifreleme kullanımı

Merhaba arkadaşlar bu yazımızda c# ile md5 ve sha1 şifreleme yapabilmeniz için iki küçük fonksiyon yazacağım. Sizde bu fonksiyonu ilgili dosyanıza yapıştırıp rahatlıkla kullanabilirsiniz. Hatta isterseniz class dosyası oluşturup içerisine ekledikten sonra derleyebilir , sonrasında ise projelerinize referans ekleyerek kullanabilirsiniz. Neyse lafı daha fazla uzatmadan hemen kodlarımızı yazalım.

Öncelikle dosyamızın en üstüne;

using System.Web.Security;

kodunu ekliyoruz. Sonrasında ise aşağıdaki fonksiyonlarımızı dosyamıza ekliyoruz.

      // c# md5 şifreleme işlemi için kullanıyoruz
        public string md5Sifre(string sifre)
        {
            return FormsAuthentication.HashPasswordForStoringInConfigFile(sifre, "md5");
        }

     // c# sha1 şifreleme işlemi için kullanıyoruz
        public string sha1Sifre(string sifre)
        {
            return FormsAuthentication.HashPasswordForStoringInConfigFile(sifre, "sha1");
        }

geriye kalan ise sadece fonksiyonlarımızı çağırmak oluyor. Örnek

 string sifre = "ABCDEF";
 string sifreleMd5   = md5Sifre(sifre);
 string sifreleSha1  = sha1Sifre(sifre);

console.write("Md5 Şifreli Hali : {0} \n",sifreleMd5);
console.write("Sha1 Şifreli Hali : {0} \n",sifreleSha1);
Hepsi bu kadar. Bir sonraki yazıda görüşmek üzere başarılar.

12 Haziran 2015 Cuma

Php dosya yol işlemleri

Merhaba arkadaşlar.

Bu yazımızda sizlere php de kullanabileceğiniz ve lazım olacağını düşündüğüm php de yol işlem fonksiyonlarını paylaşacağım. İlgili kodlar aşağıda dır.


$konum = "http://root:123@divran.com:2082/index.php?do=register#256"; 
echo "Sunucu Adı : " .$_SERVER['SERVER_NAME'] ."
"; echo "Sunucu Adı : " .$_SERVER['HTTP_HOST'] ."
"; echo "Kök dizin : " .$_SERVER['DOCUMENT_ROOT'] ."
"; echo "Dosyannın tam yolu : " .$_SERVER['SCRIPT_FILENAME'] ."
"; echo "Dosya yolu : " .$_SERVER['PHP_SELF'] ."
"; echo "Dosya yolu : " .$_SERVER['SCRIPT_NAME'] ."
"; echo "Dosya yolu : " .$_SERVER['REQUEST_URI'] ."
"; echo "Remote Adres : " .$_SERVER['REMOTE_ADDR'] ."
"; echo "Fiziksel Yol : " .$_SERVER['PATH_TRANSLATED'] ."
"; echo "Dosyanın bulunduğu dizin : " .dirname($_SERVER['SCRIPT_FILENAME']) ."
"; echo "Dizin tam yolu : " .dirname(__FILE__) ."
"; echo "Dosyanın tam yolu : " .realpath($_SERVER['SCRIPT_FILENAME']) ."
"; echo "Dosyannın tam yolu : " .realpath(__FILE__) ."
"; echo "Dosyanın bulunduğu dizin : " .realpath(dirname(__FILE__)) ."
"; echo "Dosya Adı : " .basename($_SERVER['PHP_SELF']) ."
"; echo "Dizin yolu : ".pathinfo($_SERVER['SCRIPT_FILENAME'],PATHINFO_DIRNAME) ."
"; echo "Dosya Adı : ".pathinfo($_SERVER['SCRIPT_FILENAME'],PATHINFO_BASENAME) ."
"; echo "Dosya uzantısı : " .pathinfo($_SERVER['SCRIPT_FILENAME'],PATHINFO_EXTENSION) ."
"; echo "Dosya adı (uzantısız) : " .pathinfo($_SERVER['SCRIPT_FILENAME'],PATHINFO_FILENAME) ."
"; echo "". $konum ." için url ayrıştırma

"; echo "URL Şeması : " .parse_url($konum,PHP_URL_SCHEME) ."
"; echo "Host : " .parse_url($konum,PHP_URL_HOST) ."
"; echo "Port: " .parse_url($konum,PHP_URL_PORT) ."
"; echo "Kullanıcı : " .parse_url($konum,PHP_URL_USER) ."
"; echo "Şifre : " .parse_url($konum,PHP_URL_PASS) ."
"; echo "Sayfa : " .parse_url($konum,PHP_URL_PATH) ."
"; echo "URL Sorgusu: " .parse_url($konum,PHP_URL_QUERY) ."
"; echo "Kanca : " .parse_url($konum,PHP_URL_FRAGMENT) ."
";
Faydalı olması dileğiyle.

Php ile mp3 birleştirme

Merhaba arkadaşlar. Bu yazımızda php ile iki farklı mp3 dosyasını birleştirmeyi göreceğiz. Bunun için yapmamız gereken bir php dosyası oluşturmak ve aşağıdaki kodları bu php dosyayına yapıştırmak olacaktır.
 Php Kodu
<?php
$dosya1 = file_get_contents('dosya1.mp3'); // birinci dosyanın adı
$dosya2 = file_get_contents('dosya2.mp3'); // ikinci dosyanın adı
?>
öncelikle ses dosyalarımızı değişkenlere atıyoruz. Son olarak birleştirme işlemini ise aşağıda ki kod ile gerçekleştiriyoruz.
file_put_contents('birlesmisdosya.mp3', $dosya1 . $dosya2);

Sonuç olarak ise bize birlesmisdosya.mp3 uzantılı dosyayı üretiyor.

 Faydalı olması dileğiyle.

Kaynak kodu indirmek için Tıklayınız

  Alıntı

Php hastag(etiket) sistemi yapımı

merhaba arkadaşlar bu yazımızda php ile hastag fonksiyonu oluşturacağız.

Hashtag sistemleri, Twitter başta olmak üzere bir çok sitede çokça kullanılıyor ve kısa yoldan etiket oluşturmamıza olanak sağlıyor.

  Nasıl Çalışır?

Çalışma mantığı gayet basit. PHP Regex fonksiyonlarını kullanarak, yazılan yazıda bulunan ve # karakteri ile
başlayan kelimeleri buluyoruz. Bulunan kelimeleri de yine bir Regex fonksiyonuyla linke dönüştürüyoruz.


 Hemen php hastag fonksiyonumuzu yazalım.

index.php

function hashtag($str) {
$regex = "/(#)+[a‐zA‐Z0‐9]+/";
$str = preg_replace($regex, '\\0', $str);
return($str);
}
Şimdi basitçe kullanalım
$string = "Merhaba #dunya";
echo hashtag($string);
Çıktısı
Merhaba #dunya
Bir sonraki yazıda görüşmek üzere...

Android Mobil İşletim Sistemi

       Android Mobil İşletim Sistemi

Bu başlık altında Android mobil işletim sistemi hakkında genel bilgi vereceğiz.

Android, Google ve Open HandsetAllience tarafından geliştirilmiş Linux tabanlı, açık kaynak kodlu bir mobil işletim sistemidir. Ara katman yazılımı, kütüphaneler ve APIC dilinde yazılmıştır. Anca uygulama yazılımları ise Apache Harmony üzerine kurulu Java uyumlu kütüphaneler içeren uygulama iskeleti üzerinden çalışır. Açık kaynak kodlu olmasına bağlı olarak geniş bir uygulama geliştirme grubuna sahiptir. Geliştiriciler Android uygulamalarını Java dilinde yazarlar. Android, bu derlenmiş Java kodlarını çalıştırmak için dinamik çevirmeli (JIT) Dalvik sanal makinasını kullanır.

2008'de piyasaya sürülen Android'in API level 8 ve daha üst sürümleri aşağıdaki tablodadır.

VersionCodenameAPIDistribution
2.2Froyo80.3%
2.3.3 -
2.3.7
Gingerbread105.6%
4.0.3 -
4.0.4
Ice Cream Sandwich155.1%
4.1.xJelly Bean1614.7%
4.2.x1717.5%
4.3185.2%
4.4KitKat1939.2%
5.0Lollipop2111.6%
5.1220.8%