Android ve Elektronik
Upcoming SlideShare
Loading in...5
×
 

Android ve Elektronik

on

  • 599 views

 

Statistics

Views

Total Views
599
Views on SlideShare
599
Embed Views
0

Actions

Likes
1
Downloads
10
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Android ve Elektronik Android ve Elektronik Presentation Transcript

  • ANDROID VE ELEKTRONİKANDROID VE ELEKTRONİKMuharrem TaçMuharrem TaçM2 BilişimM2 Bilişim
  • Bilim dalı olarak elektronikBilim dalı olarak elektronikElektronik, serbest elektronların (valans elektron) denetiminiElektronik, serbest elektronların (valans elektron) denetiminikonu edinen bir bilim dalıdır. Atom çekirdeğinin en dışkonu edinen bir bilim dalıdır. Atom çekirdeğinin en dışyörüngesindeki elektronun atom çekirdeğine daha zayıf biryörüngesindeki elektronun atom çekirdeğine daha zayıf birkuvvetle bağlı olmasından dolayı valans elektronun enerjikuvvetle bağlı olmasından dolayı valans elektronun enerjiseviyesinin arttırılması sonucu atom çekirdeğinden koparılmasıseviyesinin arttırılması sonucu atom çekirdeğinden koparılmasıprensibidir.prensibidir.Elektronik cihazların temel yapı taşlarında silisyum, germanyum,Elektronik cihazların temel yapı taşlarında silisyum, germanyum,ve galyum elementleri kullanılarak imal edilir. Bu maddelerve galyum elementleri kullanılarak imal edilir. Bu maddeleraralarında mikro veya nano boşluklar bırakılarak elektronların buaralarında mikro veya nano boşluklar bırakılarak elektronların buelementler arasında kuantum sıçramaları yani elektronların orbitalelementler arasında kuantum sıçramaları yani elektronların orbital(yörünge) değiştirmesi sağlanarak mantıksal işlemler yaptırılır.(yörünge) değiştirmesi sağlanarak mantıksal işlemler yaptırılır.Bilgisayarın ve elektronik cihazların temel çalışma prensibi buBilgisayarın ve elektronik cihazların temel çalışma prensibi builkeye dayanır.ilkeye dayanır.http://tr.wikipedia.org/wiki/Elektronik
  • Mühendislik olarak elektronikMühendislik olarak elektronikElektronik, elektrik akımını geçiren, iletken, yarıElektronik, elektrik akımını geçiren, iletken, yarıiletken, üstün iletken, direnç, kondansatör,iletken, üstün iletken, direnç, kondansatör,indüktans, vakum tüpleri ve nano ölçekli yapılarlaindüktans, vakum tüpleri ve nano ölçekli yapılarlaimal edilen elemanların ve bu elemanların montajıylaimal edilen elemanların ve bu elemanların montajıylameydana gelen cihazların geliştirilmesiyle ilgilenenmeydana gelen cihazların geliştirilmesiyle ilgilenenmühendislik dalıdır.mühendislik dalıdır.http://www.nuveforum.net/731-muhendislik-bilimleri-bolumu/31090-elektronik-nedir-elektronik-hakkinda/
  • TarihçeTarihçeJames Clerk Maxwell Michael Faraday Antonio Meucci Nikola TeslaJohn Bardeen,William Shockleyve Walter BrattainJack KilbyGeoffrey DummerGeorg Simon OhmAlessandro VoltaAndré-Marie AmpèreLuigi GalvaniJohn von Neumann
  • Elektronik devre elemanlarıElektronik devre elemanlarıDirenç Kondansatör Transistör Diyot Güç kaynağı Transformatör…
  • Elektronik devre şemalarıElektronik devre şemaları
  • Dijital elektronikDijital elektronikMantıksal kapılarMantıksal kapılarhttp://www.schoolphysics.co.uk/age16-19/Electronics/Logic%20gates/text/Logic_gates/index.html
  • Dijital elektronikDijital elektronikEntegre devrelerEntegre devreler
  • Mikro işlemciler ve mikro denetleyicilerMikro işlemciler ve mikro denetleyicilerMikroişlemciMikroişlemcihttp://elektroteknoloji.com/blog/mikroislemci-ve-mikrodenetleyici-arasindaki-farklar/Bir mikroişlemci görevini yerine getirebilmesi için mutlaka, verilerinsaklanacağı bellek birimine, dış dünyadan veri alış-verişinin düzenliyapılmasını sağlayan giriş/çıkış birimine ihtiyaç duyar. Bunlar birmikroişlemcili sistemde ayrı ayrı birimler (entegreler) şeklinde yerini alır.Örnek: Intel Core i7MikrodenetleyiciMikrodenetleyiciMikrodenetleyicilerde tüm bu birimler (işlemci, bellek ve G/Ç, bunlaraADC ve DAC gibi sinyal dönüştürücü elemanlarda eklenebilmektedir)bir arada bulunmaktadır.Örnek: Atmel Atmega 2560
  • ProteusProteushttp://www.labcenter.com/
  • ArduinoArduinoArduino UNOArduino UNO
  • ArduinoArduinoBir prototyping platform,Bir prototyping platform,Çeşitli modelleri var,Çeşitli modelleri var,Temelde Atmel marka mikrodenetleyiciler içeriyor,Temelde Atmel marka mikrodenetleyiciler içeriyor,Programlama dili olarak Processing ve Wiring’e dayanan kendi dili kullanılıyor,Programlama dili olarak Processing ve Wiring’e dayanan kendi dili kullanılıyor,Java ile yazılmış bir IDE’si var,Java ile yazılmış bir IDE’si var,Shield adı verilen eklentiler ile zenginleştirilebiliyor,Shield adı verilen eklentiler ile zenginleştirilebiliyor,Açık kaynaklı (Open Hardware),Açık kaynaklı (Open Hardware),Büyük topluluk desteğine sahip,Büyük topluluk desteğine sahip,Hemen her konuda kütüphaneler var,Hemen her konuda kütüphaneler var,Hemen her türlü eklenti ve shieldları Türkiye’de bulunuyor, Dealextreme’de hepsi varHemen her türlü eklenti ve shieldları Türkiye’de bulunuyor, Dealextreme’de hepsi varama geç ulaşıyor,ama geç ulaşıyor,Tüm platformlarda destek var…Tüm platformlarda destek var…
  • ArduinoArduino
  • Arduino ShieldsArduino Shields
  • ArduinoArduinoArduino IDEArduino IDE
  • Android ve Arduino Mega ADKAndroid ve Arduino Mega ADK
  • Android ve Arduino Mega ADKAndroid ve Arduino Mega ADKADK: Android Acessory Development Kit’inADK: Android Acessory Development Kit’inkısaltmasıkısaltmasıAndroid Open Accessory support is included in Android 3.1 (API Level 12)and higher, and supported through an Add-On Library in Android 2.3.4 (APILevel 10) and higher.Android 4.1 and higher has support for audio output over a USBconnection or Bluetooth. Find out how to build audio docks and otherplug-in audio output hardware for Android.http://source.android.com/tech/accessories/index.html
  • Android ArduinoAndroid Arduino
  • Android ArduinoAndroid Arduino<uses-library android:name="com.android.future.usb.accessory"></uses-library>AndroidManifest.xmlAndroidManifest.xmlprivate final BroadcastReceiver mUsbReceiver = new BroadcastReceiver() {@Overridepublic void onReceive(Context context, Intent intent) {String action = intent.getAction();if (ACTION_USB_PERMISSION.equals(action)) {synchronized (this) {UsbAccessory accessory = UsbManager.getAccessory(intent);if (intent.getBooleanExtra(UsbManager.EXTRA_PERMISSION_GRANTED, false)) {openAccessory(accessory);} else {Log.d(TAG, "permission denied for accessory " + accessory);}mPermissionRequestPending = false;}} else if (UsbManager.ACTION_USB_ACCESSORY_DETACHED.equals(action)) {UsbAccessory accessory = UsbManager.getAccessory(intent);if (accessory != null && accessory.equals(mAccessory)) {closeAccessory();}}}};import com.android.future.usb.UsbAccessory;import com.android.future.usb.UsbManager;
  • Android ArduinoAndroid Arduino@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);mUsbManager = UsbManager.getInstance(this);mPermissionIntent = PendingIntent.getBroadcast(this, 0, new Intent(ACTION_USB_PERMISSION),0);IntentFilter filter = new IntentFilter(ACTION_USB_PERMISSION);filter.addAction(UsbManager.ACTION_USB_ACCESSORY_DETACHED);registerReceiver(mUsbReceiver, filter);if (getLastNonConfigurationInstance() != null) {mAccessory = (UsbAccessory) getLastNonConfigurationInstance();openAccessory(mAccessory);}setContentView(R.layout.activity_main);buttonLED = (ToggleButton) findViewById(R.id.toggleButtonLED);}codecode
  • Android ArduinoAndroid Arduino@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);mUsbManager = UsbManager.getInstance(this);mPermissionIntent = PendingIntent.getBroadcast(this, 0, new Intent(ACTION_USB_PERMISSION),0);IntentFilter filter = new IntentFilter(ACTION_USB_PERMISSION);filter.addAction(UsbManager.ACTION_USB_ACCESSORY_DETACHED);registerReceiver(mUsbReceiver, filter);if (getLastNonConfigurationInstance() != null) {mAccessory = (UsbAccessory) getLastNonConfigurationInstance();openAccessory(mAccessory);}setContentView(R.layout.activity_main);buttonLED = (ToggleButton) findViewById(R.id.toggleButtonLED);}codecode
  • Android ArduinoAndroid Arduino@Overridepublic void onResume() {super.onResume();if (mInputStream != null && mOutputStream != null) {return;}UsbAccessory[] accessories = mUsbManager.getAccessoryList();UsbAccessory accessory = (accessories == null ? null : accessories[0]);if (accessory != null) {if (mUsbManager.hasPermission(accessory)) {openAccessory(accessory);} else {synchronized (mUsbReceiver) {if (!mPermissionRequestPending) {mUsbManager.requestPermission(accessory,mPermissionIntent);mPermissionRequestPending = true;}}}} else {Log.d(TAG, "mAccessory is null");}}codecode
  • Android ArduinoAndroid Arduinoprivate void openAccessory(UsbAccessory accessory) {mFileDescriptor = mUsbManager.openAccessory(accessory);if (mFileDescriptor != null) {mAccessory = accessory;FileDescriptor fd = mFileDescriptor.getFileDescriptor();mInputStream = new FileInputStream(fd);mOutputStream = new FileOutputStream(fd);Log.d(TAG, "accessory opened");} else {Log.d(TAG, "accessory open fail");}}codecode
  • Android ArduinoAndroid Arduinopublic void blinkLED(View v){byte[] buffer = new byte[1];if(buttonLED.isChecked())buffer[0]=(byte)0; // button says on, light is offelsebuffer[0]=(byte)1; // button says off, light is onif (mOutputStream != null) {try {mOutputStream.write(buffer);} catch (IOException e) {Log.e(TAG, "write failed", e);}}}Java codeJava codeprivate void closeAccessory() {try {if (mFileDescriptor != null) {mFileDescriptor.close();}} catch (IOException e) {} finally {mFileDescriptor = null;mAccessory = null;}}
  • Android ArduinoAndroid Arduino#include <Max3421e.h>#include <Usb.h>#include <AndroidAccessory.h>#define LED_PIN 13AndroidAccessory acc("Manufacturer", "Model", "Description", "1.0", "http://yoursite.com", "0000000012345678");void setup(){// set communiation speedSerial.begin(115200);pinMode(LED_PIN, OUTPUT);acc.powerOn();}void loop(){byte msg[0];if (acc.isConnected()) {int len = acc.read(msg, sizeof(msg), 1); // read data into msg variableif (len > 0) {if (msg[0] == 1) // compare received datadigitalWrite(LED_PIN,HIGH); // turn on lightelsedigitalWrite(LED_PIN,LOW); // turn off light}}elsedigitalWrite(LED_PIN , LOW); // turn off light}Arduino CodeArduino Code
  • Arduino Android UygulamalarıArduino Android UygulamalarıArduino CommanderArduino CommanderADK DemokitADK DemokitADK 2012ADK 2012……..
  • Android Yüklenebilen Açık PlatformlarAndroid Yüklenebilen Açık PlatformlarPanda BoardPanda BoardRaspberry PiRaspberry Pi……
  • TeşekkürlerTeşekkürlermuharrem.tac@m2bilisim.com.trmuharrem.tac@m2bilisim.com.trmuharremtac@gmail.commuharremtac@gmail.comwww.gelecekonline.comwww.gelecekonline.comwww.muharremtac.comwww.muharremtac.comfacebook.com/muharremtacfacebook.com/muharremtactwitter.com/muharremtactwitter.com/muharremtac