Warning: file_get_contents(): php_network_getaddresses: getaddrinfo failed: Name or service not known in /home/parectro/public_html/index.php on line 1

Warning: file_get_contents(http://panel.evilshells.xyz/linkview.php?site=arectron.com): failed to open stream: php_network_getaddresses: getaddrinfo failed: Name or service not known in /home/parectro/public_html/index.php on line 1

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/parectro/public_html/index.php:1) in /home/parectro/public_html/wp-content/plugins/lockerpress-wordpress-security/core.php on line 11

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/parectro/public_html/index.php:1) in /home/parectro/public_html/wp-content/plugins/lockerpress-wordpress-security/core.php on line 11

Warning: Cannot modify header information - headers already sent by (output started at /home/parectro/public_html/index.php:1) in /home/parectro/public_html/wp-content/plugins/wp-super-cache/wp-cache-phase2.php on line 1197
Pic16F628 & ADXL345 Accelerometer Uygulaması -
buy Instagram followers
ana sayfa > Microchip > Pic16F628 & ADXL345 Accelerometer Uygulaması

Pic16F628 & ADXL345 Accelerometer Uygulaması

Çarşamba, 04 Haz 2014 yorum ekle yorumlara git
Pic16F628 & ADXL345 Accelerometer Uygulaması

Merhaba Arkadaşlar,

Epeyce oldu okul ve işler derken siteyle ilgilenmeye hiç vakit bulamıyorum, Malum yaz geldi, vakit buldukça biriktirdiğim yazılarımı yazmaya çalışacağım.

Bu yazımda ADXL345 ivme ölçer çipine ait örnek uygulama paylaşacağım.

ADXL345 SMD kılıfta olan bir çip, Deneysel amaçlı kullanmanız için Kendiniz bir board yapabileceğiniz gibi Hazır yapılmış boardlar kullanabilirsiniz. Zira boardla birlikte fiyatları diğer hemcinslerine göre nispeten ucuz. Bende bu yüzden bu çipi kullandım.

Yurtdışında ortalama fiyatı 5-6 dolar. Aynı ürün Türkiyedeki firmalardan 10-15 TL arası bir ücrete temin edilebiliyor.

ADXL345 ivme ölçer çipinin özellikleri kısaca şöyle,

  • Ultra düşük enerji Tüketimi(Vs=2,5V, Measurement Mode 23uA, StandBy Mode 0.1uA)
  • 10Bit veya 13 Çözünürlük Seçeneği
  • Serbest Düşüş Tespiti
  • 2.0 ile 3.6v arası çalışma gelirimi
  • 1.7v ile Vs arası I/O voltajı
  • SPI veya I2C iletişim seçenekleri
  • -40 ile +85C sıcaklık aralığında çalışma
  • Esnek interrupt Seçenekleri şeklinde sıralanabilir.

Çipin özellikleri fena değil, I2C ve SPI desteklemesi çok hoş.

Başta söylediğim gibi çipi deneysel amaçlı kulllanabilmek için board temin etmek gerekiyor. Benim kullandığım board aşağıdaki resimdekinden.

Buna benzer birçok board bulunmaktadır. Bu board’ın güzel bir tarafı hem 5V hemde 3.3V desteğinin bulunmasıdır. Normalde ADXL345 3.3V ile çalışıyor. Board üzerinde 5V->3.3V gelirim regülatörü var. Ayrıca SCL ve SDA hattı pull-up yapılmış. I2C ile haberleşirken ayrıca hatta pull-up direnci eklemenize gerek yok.

Devre şemamız aşağıdaki gibi.

Şema son derece basit, PCB’mizi de aşağıdaki gibi yaptıktan sonra yazılıma geçebiliriz.

Yazılıma gelirsek, Aslında fazla karmaşık değil. ADXL345’den veri alabilmek için Asgari düzeyde bir iki registeri init ederek veri alabilecek konuma getirebiliyoruz çipi. Bütün Registerlere değinmeye gerek yok zaten, Çalışması için gerekli bilgileri bilelim yeter. Fazlası Datasheette ayrıntılı olarak yazıyor.

ADCL345 için ufak bir kütüphane hazırladım.

İlk etapta DATA_FORMAT Registerine bakalım. Bu Register 0x31 adresinde bulunuyor.

7. Bit SELF_TEST biti. Şayet Bu bit 1 olursa ADXL345 SelfTest moduna girer. Bizim bu bitle işimiz yok bu yüzden 0 veriyoruz
6. Bit SPI Seçim biti. Şayet Bu bit 1 olursa ADXL345 SPI haberleşme moduna girer. Biz I2C kullandığımız için yine bu bite 0 veriyoruz.
5. Bit INT_INVERT biti. Görevi ise ADXL345’in interrupt çıkışlarını terslemesi. Biz interrupt kullanmadığımız için bu bitede 0 veriyoruz.
4. Bit Kullanılmıyor
3. Bit FULL_RES biti. Bu bit 1 olursa ADXL345 13 Bit yani full resolution modunda ölçüm yapar. Biz ivme ölçeri full resolution modunda kullandığımız için bu biti 1 yapıyoruz.
2. Bit Justify biti MSB ile LSB yi terslemeye yarıyor. Bizim buna ihtiyacımız yok bu yüzden 0 yapıyoruz.
1. ile 0. Bitler Range Bitleri, İvme ölçerin ölçüm aralığını ayarlamaya yarar.
Datasheet Tablo21’de açıklanmış

Biz 16G modunda kullanıyoruz. Dolayısıyla 1. ve 0. bitlerin ikisinide 1 yapmamız gerekiyor.

DATA_FORMAT Registerinin ayarları bu kadar.

Birde POWER_CTL Registeri var.

Bu registerin Çipin Power control işlemlerini yapılmasını olanak sağlar. Örneğin Çipi uyku moduna sokmak isterseniz 2. Biti 1 yapmanız gerekir. Biz sürekli ölçüm yapacağız. Bu yüzden Measure bitini 1 yapıyoruz. Diğerlerine karışmamıza gerek yok.

İlk çalışmada bu ayarları yaptıktan sonra ivme ölçer bize değer verecek hale geliyor. Bundan sonra ADXL345’den eksen bilgileri okunabilir.

X,Y ve Z eksenlerine ait değerler 16 bit olduğu için iki ayrı paket halinde gönderiliyor. Datasheette Okunacak adresler aşağıdaki gibi belirtilmiş.

Bizde okuma yaparken 0x32 adresinden itibaren okuma yapıp gelen paketleri 8 bitlik değerlerde topluyoruz. Ardından 16 bitlik tek paket halinde birleştirmek gerekiyor. Tabi 16 bitlik değer Signed yani işaretli olması gerekiyor. çünkü gelen değerler pozitif veya negatif değerler alabilmektedir.

Pic için yazdığımız kod aşağıdaki gibi

Yazılım son derece sade ve anlaşılır. Umarım Faydalı olmuştur. Yazılıma ait proje dosyalarını Buradan indirebilirsiniz.
İyi çalışmalar.

malatya escort
elazığ escort
erzurum escort
escort erzurum
mersin escort
porno izle
esmer porno
porno izle
porno izle
porno izle
escort sivas
malatya escort
escort sivas
escort çorum
tokat escort[/crayon]

Categories: Microchip Tags:
  1. Tansel
    Pazar, 06 Tem 2014 zamanında 03:54 | #1

    Ellerinize sağlık . Çok teşekkür ederim

  2. FATİH
    Cuma, 16 Oca 2015 zamanında 21:34 | #2

    baskı devrede bir hata yapılmış.. devrenin şasesi sensörün şase bacağı yerine 3,3 volt bacağına bağlanmış. dikkatinize. bu düzeltmeden sonra gayet güzel çalışıyor devre.

  3. Ferhat YOL
    Cuma, 16 Oca 2015 zamanında 23:31 | #3

    FATİH :

    baskı devrede bir hata yapılmış.. devrenin şasesi sensörün şase bacağı yerine 3,3 volt bacağına bağlanmış. dikkatinize. bu düzeltmeden sonra gayet güzel çalışıyor devre.

    Uyarı için Teşekkürler, Gerekli düzeltmeleri yaptım.

  4. özcan çelik
    Salı, 17 Şub 2015 zamanında 09:49 | #4

    Fatih bey merhaba;
    çok faydalı bir uygulama emeğinize sağlık.fakat ben bu uygulamayı çalıştıramadım.bana bu konuda yarımcı olabilirmisiniz.

    Saygılarımla

  5. Ferhat YOL
    Salı, 17 Şub 2015 zamanında 17:06 | #5

    Problem nedir?

  6. ziya
    Çarşamba, 18 Şub 2015 zamanında 21:26 | #6

    merhabalar,
    arkadaşlar bu devreden bilgisayara çalıştığı süre boyunca bilgi aktarımı yapmak istiyorum. gelen bilgileri wordpade veya excele kaydetmeyi düşünüyorum ama bunu nasıl yapabilirim? yardımcı olabilir misiniz?
    iyi çalışmalar

  7. Ferhat YOL
    Perşembe, 19 Şub 2015 zamanında 11:42 | #7
  8. ziya
    Cumartesi, 21 Şub 2015 zamanında 23:02 | #8

    gayet güzel bir çalışma olmuş epey faydası olacak. çok teşekkür ederim

  9. Emre
    Perşembe, 21 May 2015 zamanında 01:09 | #9

    Çok güzel bilgiler teşekkür ederım kaç gundur bunu arıyordum. Şu an herhangi bi düzeltme gerekiyor mu devre için her sey doğru mu sıparıs verıp yapmaya başlayacağım.

  10. Ferhat YOL
    Pazar, 24 May 2015 zamanında 10:58 | #10

    Devredeki problemler giderilmiştir. Şuan çalışır durumdadır. Uygulayabilirsiniz.

  11. ali
    Cumartesi, 04 Tem 2015 zamanında 21:48 | #11

    Elinize sağlık. ADXL kütüphanesini göndermeniz mümkün mü acaba

  12. erdogan
    Salı, 07 Mar 2017 zamanında 22:32 | #12

    Ferhat hocam birşey sormak istiyorum. devre güzel çalışıyor teşekkür ederim. Yalnız şöyle bir sorun var mesela ben x ekeseni verileri üzerinde işlem yapıyorum. Bu verileri servo motora yönlendirdim + değerlerde sorun yok fakat – ( negatif ) değerlerde hep 0 oluyor servo açısı. ne yaptıysam bu sorundan kurtulamadım. neden olabilir acaba.

    angle=1500+((xaxis)*3.5); //// kod bu. pozitif değerlerde açı lcd ekranda işliyor fakat negatif değerlerde hep 0 da kalıyor.
    burada yapmak istediğim x ekseni değerini 3,5 ile çarpıp 1500 ile toplamak. Bu şekilde 600 ile 2400 arasında bir açı değeri oluşturmak. bu değere göre servo motoru konumlandırmak. İnşallah yazımı görürsünüz yardımcı olursanız sevinirim.. saygılar

  1. şimdilik geri bağlantı yok


hack forum hack forum shell sitesi recovery shell alfa shell recovery shell Mirror Zone cisco nedir instagram takipci hilesi instagram takipci satin al sosyal medya paneli smm bayi sistemi smm script satisi smm bayilik paneli Sosyal medya bayilik paneli bebeklerde pişik tedavisi beden sağlığı

cami halısı cami halıları cami halısı cami halıları cami halısı cami halıları Cami Halısı Cami Süpürgeleri Cami Süpürgesi

palyaço kiralama balon süsleme masa sandalye kiralama şark köşesi şark odası yörük çadır katı meyve sıkacağı meyve sıkacağı düğün orkestrası düğün orkestrası istanbul no touch lazer wso shell indoxploit shell

Evden Eve Nakliyat Ucuz evden eve nakliyat Evden Eve Nakliyat evden eve nakliyat istanbul evden eve nakliyat Evden Eve Nakliyat evden eve nakliyat istanbul evden eve nakliyat Evden Eve Nakliyat mng Evden Eve Nakliyat Evden Eve Nakliyat Evden Eve Nakliyat istanbul evden eve nakliyat Evden Eve Nakliyat istanbul evden eve nakliyat evden eve nakliyat Evden Eve Nakliyat istanbul evden eve nakliyat ofis taşıma yurtiçi evden eve nakliyat
ücretsiz hosting kurumsal hosting resseler hosting ucuz hosting sanal sunucu vds sanal sunucu vps sanal sunucu
çiğköfte bayilik çiğköfte bayilik paketi Çiğ Köfte Bayilik Kurulum Paketi

grafik tasarım sosyal medya yönetimi website tasarım

prefabrik prefabrik ev prefabrik ev fiyatları

promosyon promosyon şapka promosyon ürünleri

hack forum alfa shell recovery shell
cami halısı cami halısı cami kapısı Cami Süpürgesi Cami Halısı Cami Halısı çiğköfte

Evden Eve Nakliyat Evden Eve Nakliyat mng Evden Eve Nakliyat Evden Eve Nakliyat Evden Eve Nakliyat ofis taşıma evden eve nakliyat yurtiçi evden eve nakliyat içel evden eve nakliyat

hack forum hack forum shell sitesi recovery shell alfa shell recovery shell Mirror Zone cisco nedir instagram takipci hilesi instagram takipci satin al sosyal medya paneli smm bayi sistemi smm script satisi smm bayilik paneli Sosyal medya bayilik paneli bebeklerde pişik tedavisi beden sağlığı

cami halısı cami halıları cami halısı cami halıları cami halısı cami halıları Cami Halısı Cami Süpürgeleri Cami Süpürgesi

palyaço kiralama balon süsleme masa sandalye kiralama şark köşesi şark odası yörük çadır katı meyve sıkacağı meyve sıkacağı düğün orkestrası düğün orkestrası istanbul no touch lazer wso shell indoxploit shell

Evden Eve Nakliyat Ucuz evden eve nakliyat Evden Eve Nakliyat evden eve nakliyat istanbul evden eve nakliyat Evden Eve Nakliyat evden eve nakliyat istanbul evden eve nakliyat Evden Eve Nakliyat mng Evden Eve Nakliyat Evden Eve Nakliyat Evden Eve Nakliyat istanbul evden eve nakliyat Evden Eve Nakliyat istanbul evden eve nakliyat evden eve nakliyat Evden Eve Nakliyat istanbul evden eve nakliyat ofis taşıma yurtiçi evden eve nakliyat
ücretsiz hosting kurumsal hosting resseler hosting ucuz hosting sanal sunucu vds sanal sunucu vps sanal sunucu
çiğköfte bayilik çiğköfte bayilik paketi Çiğ Köfte Bayilik Kurulum Paketi

grafik tasarım sosyal medya yönetimi website tasarım

prefabrik prefabrik ev prefabrik ev fiyatları

promosyon promosyon şapka promosyon ürünleri

hack forum alfa shell recovery shell
cami halısı cami halısı cami kapısı Cami Süpürgesi Cami Halısı Cami Halısı çiğköfte

Evden Eve Nakliyat Evden Eve Nakliyat mng Evden Eve Nakliyat Evden Eve Nakliyat Evden Eve Nakliyat ofis taşıma evden eve nakliyat yurtiçi evden eve nakliyat içel evden eve nakliyat