13 Mart 2017 Pazartesi

LINUX İÇİN KURULUM

Sisteminiz için tar.gz dosyasını indirin ve JDK 'yi yüklemek istediğiniz yere taşıyın . Genellikle JDK usr/java içine yüklenir. Ayrıca kök dizine erişim izni gerektirdiğini unutmayın. Paketten çıkarmak ve yüklemek için terminalde

# tar zxvf jdk-7-Linux-i586.tar.gz

dedikten sonra  /jdk1.7.0 dizininde yüklenmiş olacaktır. Windows için yaptığımız gibi Linux'te de JDK'nın her yerden çalışması için bir şeyler yapmamız gerekmektedir. Bunun için /etc/profile.d dizininde bir komut dosyası oluşturmamız gerekecek.  Bunu yapmak gayet kolay : dizin içerisinde java_env.sh isimli bir komut dosyası oluşturun ve içerisine bu script'i ekleyin.


#!/bin/bash
JAVA_HOME=/usr/java/jdk1.7.0
PATH=$JAVA_HOME/bin:$PATH
export PATH JAVA_HOME
export CLASSPATH=.

Son olarak , kullanıcının oturum açtığında kullanması için gerekli izni vermek için ise şunu giriyoruz.

# chmod 755 java_env.sh

Daha sonra yeniden giriş yaptığımızda sistem değişkeni ayarlanmış olacaktır. Ayrıca Ubuntu kullanıcıları webupd8  takımının depolarından kurabilirler. Bunun için bu paketi depomuza eklememiz gerekecek.  Terminal'i açıp şu komutu verin :

sudo add-apt-repository   ppa:webup8team/java

Ardından yeni depodaki paketlerin de ulaşabilir olması için paket listenizi şu komutla güncelleyin :

sudo apt-get update

Şimdi de bize Oracle JDK 'yı indirip hazır edecek olan paketi şu komut ile kurun :


sudo apt-get install oracle-java7-set-default oracle-java7-insaller oracle-jdk7-installer

Bu komuttan sonra Oracle'ın sunucularından sisteminize uygun JDK paketi indirilecek ve kurulacaktır. Bunun süresi bağlantı hızınıza göre değişebilir. JDK kurulumunu yaptıktan sonra tekrardan konsola

java -version

komutunu vererek hangi java sürümünü kullandığınızı görebilirsiniz.








12 Mart 2017 Pazar

WINDOWS İÇİN KURULUM

Exe dosyayı indirip çalıştırdıktan sonra size rehberlik edecek yönergeleri izleyin. Ardından kurulumu gerçekleştirin.
Kurulumda sonraki adımlarda Next'e basarak ilerlediğimizde ve kurulumu tamamladığımız zaman bir sonraki ekran görüntüsü ile karşılaşırız .
Daha sonra asıl önemli olay ise Windows'ta PATH (Yol ) değişkeninde JDK yolunu ayarlamamız gerektiğidir. P A T H değişkeninin belirlenmesinin  amacı herhangi bir yerden çalıştırılabilir dosyalar oluşturabilmektir. Aksi taktirde her zaman komut satırından bir şey yürütmek istediğinizde tam yolunu yazmanız gerekecektir.

Ayrıca Eclipse'de  JAVA_HOME değişkenine bağlıdır. Sistem ortam değişkenlerini ayarlamak için aşağıdakileri yapmanız gerekmektedir. JDK'nızın

C:/java/jdk/jdk1.6.0_12/bin

adresi  üzerinde olduğunu varsayalım.

1. Path'i eklemek için Windows 7'ye göre (Farklı Windows sürümlerinde farklı olabilir) Denetim Masası>Sistem>Gelişmiş Sistem Ayarları 'na tıklayın .
2.Açılcak olan penceredeki Ortam Değişiklikleri... butonuna tıklayın.

3. Ortam Değişiklikleri bölümünde Düzenle... butonuna tıklayın.

4.Değişken adı yazan bölüme  JAVA_HOME , Değişken değeri yazan bölüme de C:/java/jdk/jdk1.6.0_12 yazın ve Tamam butonuna basarak kapatın .
5.Sistem değişkenleri bölümünden Path bölümünü bulun Düzenle butonuna basın.
6.Açılan penceredeki Değişken değeri alanının başına %JAVA_HOME%/bin; ekleyin.

11 Mart 2017 Cumartesi

JAVA GELİŞİRME KİTİ (JDK)

İlk olarak yüklemeniz gereken yazılım Java Geliştirme Kitidir.  www.oracle.com/technetwork/java/javese/downloads/intex.html sayfasına giderek JDK indir (Download) butonuna tıklamanız gerekmektedir. Karşımıza şöyle bir sayfa gelecek :
Lisan sözleşmesini kabul edip işletim sisteminize uygun sürümü seçerek indirin. x86 dosyalarının 32 bit ve x64 dosyalarının 64 bit işletim sistemleri için olduğunu unutmayın. Doğru versiyonu seçtiğinizden emin olun..
Buradaki listeden fark edebileceğiniz gibi Mac OSX için JDK Oracle sitesinde yer almamaktadır.  Çünkü Apple kendi JDK 'sini sağlamaktadır. Bütün Mac OS X bilgisayarda yüklü halde gelmektedir. Terminalde :

java -versiyon

Yazarak versiyonu kontrol edebilirsiniz.




DESTEKLENEN ANDROİD CİHAZLAR

Açık Aksesuar Standardı , Android tabletlere yönelik versiyonu olan Android Honeycomb 3.1'in parçası olarak duyurulmuştur. Daha sonra Google bununla yetinmeyip Android 2.3.4 'e geriye dönük portlamıştır.
Açık Aksesuar Standardı  desteğini alan ilk cihazlar Motorola Xoom ve Google Nexus S olmuştur.  Diğer cihazlar da bu cihazları  takip ederek bu standarda sahip oldu. Ama bu seferde Android için problem olan fragmentation yani parçalama sorununa yol açtı. Bunun kötü sonucu ise Açık Aksesuar modunun bazı cihazlarda çalışmaması olmuştur.
Bunun nasıl olduğunu şöyle ifade edeyim : Donanım katmanındaki USB  sürücülerinin Açık Aksesuar Modu ile uyumlu olmaması bu sorunu ortaya çıkarmıştır. Yani sadece Google 'ın Android işletim sisteminde yaptığı değişiklikler yeterli olmamıştır. USB sürücülerinin de Açık Aksesuar Modu ile uyumlu hale getirilmesi gerekmektedir. Bu nedenle bir çok geliştirici cihazlarını daha üst bir sürüme (3.1 ve üzeri ) güncelledi veya root  ederek başka Android Rom 'ları yükleyerek bu sorunu aşmaya çalıştı.

NOT !
Android işletim sisteminde en geniş yetkilere sahip olan kullanıcılara root kullanıcısı adı verilir. Sizler telefonlarınızı veya mobil cihazlarınızı satın aldığınızda , telefonunuzdaki bu işletim sisteminin aslında tam yetkili kullanıcısı değilsinizdir. İçerisinde belli kısıtlamalar bulunur. Örneğin üreticinin size zorunlu kıldığı programları "uygulamalar" bölümünden kaldıramazsınız.  Ya da üreticinin onay vermediği ayarları değiştiremezsiniz. Çünkü siz bir root kullanıcısı değilsinizdir.  Eğer Android işletim sistemine sahip bu cihazların tam yetkisini ele almak istiyorsanız telefonunuzu teknik tabirle root etmeniz gerekir..




  Ancak bazı Android cihazlar Açık Aksesuar modu ile test edilmiş ve mükemmel çalıştığı   söylenmiş , bazıları resmi olarak bazıları ise geliştiriciler tarafından denenmiştir. Burada ADK ile uyumlu cihazların bazılarını bir liste halinde vereceğim. Bu demek değil ki sadece bunlarla sınırlı bu liste :

&Google Nexus S
&Google Nexus One
&Acer Iconia A100
&Acer Iconia A500
&LG Optimus Pad
&ASUS Eee Pad Transformer TF101
&Asus Memopad7
&Samsung Galaxy Tab 10.1
&Samsung Galaxy S
&Samsung Galaxy Ace
&Motorola Xoom




DONANIM GELİŞTİRME KARTLARI

GOOGLE ADK 2011

Google ADK 2011,Mayıs 2011 ' de Google I/O ' da tanıtılan referans bir karttır. Ayrıca Açık Aksesuar Standardına sahip ilk karttır. Bu  tüm geliştirme araçlarının ve kodlarının açık olduğu , daha doğrusu açık kaynaklı olduğu anlamına gelir. Kit olarak gelen bu donanım , anakart diyebileceğimiz bir kart ve bir shield ile birlikte gelmektedir.


NOT !

Shield, Arduino'nun yeteneklerini ve kapasitesini artırmaya veya genişletmeye yarayan kartlardır. Bunlar Arduino kartımızın üzerine kolayca takılıp sökülebilmektedir.

                      Bu kartın üzerinde 3 tane belirgin giriş vardır (kartın pinleri hariç):
1. Bilgisayarınıza bağlamak için bir DC güç girişi
2. Telefon ve tabletinizi bağlamak için USB A tipi bir giriş
3. Kartınızı programlamak ve hata ayıklamak için USB B tipi bir girişe sahiptir.


Google ADK 2011 , ATmega2560 AVR mikrokontröllere sahip bir karttır. C dilinde programlanmak için dizayn edilmiştir. Bunun kullanıcılara getirisi Assembly dilini kullanan kartlara göre daha kolay programlamasıdır.
ATmega 2560 , 256 KB bir dahili Flash belleğe ve 8 bit bir işlemciye sahiptir. Ayrıca 16 mhz hızında çalışır. İlaveten 8 KB  SRAM ve 4 KB  EEPROM hafızası vardır. Kart 16 analog  giriş/çıkış pinine sahiptir. Analog değeri dijitale 10 bit çözünürlüğünde dönüştürerek  1024 farklı değeri gösterebilir.
Kart varsayılan olarak 5V ile çalışmaktadır. 54 tane dijital giriş/çıkış pini bulunan kartta 14 pin PWM ' ye izin verilmektedir.

Demo Shield farklı sensör ve aktüatörleri ( bir mekanizmayı veya sistemi kontrol eden veya hareket ettiren bir tür motor ) içeren ek karttır. Shield kelimesinin bir Arduino terimi olduğunu  ve ayrıca genişletme kartlarına verilen bir isim olduğunu söylemiştik. Shield 'lar anakartın üzerine oturacak şekilde tasarlanmıştır. Böylelikle Shield 'ın kullanmadığı bağlantı pinlerini kullanabilmekteyiz.

Demo Shield ' de bulunan bazı sensör ve aktüatörler :

& Bir Analog Joystick
& 3 Buton
& 3RGB LED
& Sıcaklık Sensörü
& Işık Sensörü
& Kapasitif dokunmatik alan
& 3 Servo bağlantısı
& Ekstra güç için iki tane röle (24 V 1A 'e kadar )


GOOGLE ADK 2012

Adın da anlaşıldığı gibi Google ADK 2012 Google I/O da tanıtılmıştır. ADK2012  Arduino Due platformunu temel almaktadır.

Donanım özellikleri şöyle :

& ARM 32 bit Cortex MP3 işlemci
&Andoid cihaz ve bilgisayar için iki ayru USB bağlantısı
& Işık , renk, yakınlık , sıcaklık , nem , barometrik basınç ve ivme sensörü
& Micro SD kart  desteği
& Bluetooth desteği

ADK 2011 ' e göre oldukça güçlü olan bu kart ne yazık ki sınırlı sayıda üretilmiş ve Google IO etkinliğinde geliştiricilere dağıtılmıştır.

ARDUİNO ADK

 Arduino ADK ,Arduino geliştiricileri  tarafından geliştirilen ATmega 2560 mikrokontrölere sahip bir karttır. Temel olarak Arduino Mega 2560 karını alsa da USB host özelliği sayesinde ondan ayrılmaktadır.



Google ADK 'ya oldukça benzeyen kart , DC güç için bir USB girişine , Android cihazları bağlamak için ise USB A tipi bir girişe sahiptir. Programlamak ve hata ayıklamak için ise USB B tipi bir girişi vardır.  CPS için 6 adet pin bulunur. CPS 'nin Türkçe karşılığı : devre üzerinde programlamadır. Bu kullanıcılara , mikrokontrolörü programlarken , kod atmak için mikrokontrolörü her seferinde yerinden söküp takmak yerine sadece kablo yardımıyla devre üstünden program atma imkanı verir.


ARDUINO DUE

Arduino ailesinin 8 biti terkettiği ilk karttır. 32 bit ARM Cortex-MP3 işlemci , içinde Dijital Sinyal  işlemcisi, 12 bit DAC ,UART, SPI, 12C ve diğer birimleri bulunmaktadır.


NOT !
Bit kavramıyla kastedilen cihazınızın işlemcisinin verileri işlediği yolun büyüklüğüdür.


Arduino DUE 'yi kullanıcılar için önemli kılan hem güçlü bir kart olması , hem de USB  OTG  özelliğine sahip olmasıdır.  Bu özelliği sayesinde ADK uyumlu bir kart olmaktadır.

NOT !

USB OTG 'nin açılımı On-The-Go . Bu sayede OTG desteği ile telefon kullanıcıları USB üzerinden diğer cihazlara hızlıca bağlanabiliyor .


IOIO

IOIO (yo-yo şeklinde telaffuz ediliyor ) PIC mikro denetleyici tabanlı bir geliştirme kartıdır. IOIO  Sparkfun Electronics tarafından Açık Aksesuar standardı duyurulmadan önce geliştirilmiş bir karttır. IOIO  kartı Android 1.5 ve üzeri bütün cihazları ile çalışacak şekilde tasarlanmıştır.

Ürün Sparkfun tarafından artık satılmadığı için üzerinde durmaya gerek yoktur...


7 Mart 2017 Salı

ADK NEDİR ?

Accessory Development Kit (ADK) yani Aksesuar geliştirme Kit'i temelde Google tarafından oluşturulan basit Açık Aksesuar Standardına bağlı mikrokontrolör geliştirme kartıdır.

NOT: Daha konunun başındayken belirtmek istedim ; Konu boyunca Aksesuar  olarak ifade edilecek her şey ,Android cihaza bağlanabilen her türden donanım olarak anlaşılmalıdır.


Herhangi bir özelliğe sahip kart , ADK uyumlu olabilmesine rağmen şu an piyasada bulunan ADK uyumlu kartlar büyük çoğunlukla  Arduino tabanlıdır. Google da bu yönde karar vermiştir. Bu nedenle , referans kitinde Arduino Mega 2560 tabanını referans alınmıştır. Ayrıca Google bunu yazılım ve donanım geliştiricilerine açık kaynaklı olarak sunmuştur.
Donanım kartları ile iletişime geçmek için Android cihazların belirli kriterleri yerine getirmesi lüzumludur. Bu kriterleri Android 3.1 ve üzeri sürümleri kullanan veya Android 2.3.4 kullanan ( geri dönük port edilmiş - backported )cihazlar sağlamaktadır. Bildiğiniz gibi Android Cihazlar USB sürücü desteğine sahiptir  ve bu sürücüler aksesuar modunda çalışabilmeyi sağlamaktadır.


NOT: Aksesuar modu USB host yeteneğine sahip olan Android cihazlara harici donanımlarla iletişim izni vermektedir.


Açık aksesuar standardı ,USB Host için güç temin etmektedir. Ayrıca bağlı aygıtların numaralandırılmasını da sağlamaktadır. Bununla birlikte , USB 2.0 standartlarına göre Android cihaz şarj amacıyla 5V'luk  500mA güç sağlamak zorundadır. İlaveten ADK geliştirme kartları için birçok firmware    sağlamakta ve bunların içerisinde kütüphaneler , kaynak kodları ve Arduino Sketch'leri yer almaktadır.


NOT:  Bağlı aygıtların numaralandırılması ,bize  Android cihaza bağlı hangi aksesuarla (aygıtla ) iletişime geçileceğinin tespiti için gereklidir. Bu sayede uygulama  geliştirme esnasında doğru aygıtla iletişimi temin etmiş oluyoruz.


Ayrıca Google  örnek bir uygulama yayınlayarak sensörlerle Android cihazların yeteneklerini bir uygulamada göstererek referans oluşturmuştur.


İPUCU !!!
Standart Andoid ADK Demo Kit uygulamasını Google Play Store'dan indirebilirsiniz.


Bir ADK donanım projesi oluşturduğunuzda , artık siz de  Android cihazlar için bir aksesuar geliştiriyorsunuz demektir.