STM32F4 ile Iphone 5'in pinlerinden veri almak

Başlatan ArifAhmet, 10 Eylül 2014, 12:42:07

muhendisbey

Soruyu sorarken en son mesajındaki gibi yazman gerekirdi.

http://tr.wikipedia.org/wiki/Schmitt_tetikleyici

Bu devreyi kullanırsan alacağın analog sinyali dijitale çevirebilirsin. Bu devrede opamplı olanı kullanmanı tavsiye ederim.
Zulmü alkışlayamam, zalimi asla sevemem; Gelenin keyfi için geçmişe kalkıp sövemem.

ArifAhmet

Alıntı yapılan: muhendisbey - 10 Eylül 2014, 20:29:29
Soruyu sorarken en son mesajındaki gibi yazman gerekirdi.

http://tr.wikipedia.org/wiki/Schmitt_tetikleyici

Bu devreyi kullanırsan alacağın analog sinyali dijitale çevirebilirsin. Bu devrede opamplı olanı kullanmanı tavsiye ederim.
Yalnız hocam benim alacağım veri şunun gibi olacak; "l255l", "r255r". Bu entegre bunun için uygun değil diye görüyorum. Benim istediğim bu pinden aldığım veriyi UART'a çevirebilirmiyim. Veya yazılımsal olarak bunu çevirecek bir kütüphane varmı. Aruinoda SoftModem kütüphanesi diye birşey uydum ama pek bilgim yok.
Yaşasın Open Source!

muhendisbey

Projenle ilgili çok bilinmeyen var
Öncelikle ses sinyalinin tam dijital bir sinyal olmadığını kabul ederek başlayalım.
UART dijital veri kullanır. Öncelikle verini dijitalleştirerek işe başlamalısın. Bunu da schmit trigger devresi sağlar. Bit hatalarını elimine etmiş olursun. Ayrıca ses olarak eşik ayarlaması yapmak uygun olur diye düşünüyorum.
UART verisine çevirme işlemi iphone üzerindeki yazılımla sağlanır, yok sağlayamam dersen arada PIC gibi bir işlemciye verileri anlamlandırmalısın. Sonuçta UART'ın standardı var, baud rate, parity, stop bit, ve bit ayarı...
Yazdığın verilerden birşey anlamadım. string olarak mı bu veriyi alacaksın/göndereceksin?
Zulmü alkışlayamam, zalimi asla sevemem; Gelenin keyfi için geçmişe kalkıp sövemem.

ArifAhmet

O verileri alıp motor süreceğim ve arada bir pic ile anlamlandırma yapmam ekstra yer kaybı ve maliyet oluyor. Zaten amacım sadece ARM kullanmak. UART işlemini IOS tarafında yapamıyoruz çünkü Apple buna izin vermiyor.
Yaşasın Open Source!

muhendisbey

Alıntı yapılan: ArifAhmet - 10 Eylül 2014, 23:37:39
O verileri alıp motor süreceğim ve arada bir pic ile anlamlandırma yapmam ekstra yer kaybı ve maliyet oluyor. Zaten amacım sadece ARM kullanmak. UART işlemini IOS tarafında yapamıyoruz çünkü Apple buna izin vermiyor.
IOS izin vermez. Yazılımsal UART denilen bir olay var. Kernel falan derlemeden UART'ın standardına göre çıkış verdirmek.
Eğer UART standardında verin yoksa UART ile veri gönderemezsin, daha doğrusu gönderirsin ama bu UART olmaz. Herhangi bir RS232 alıcı da sadece anlamsız değerler okur. Bunun başka yolu yok.
Alan darsa yazılımsal uart yapacaksınız
Alandan biraz feragat ederseniz 12F serisi bir Pic sığdırabilirsiniz.
Zulmü alkışlayamam, zalimi asla sevemem; Gelenin keyfi için geçmişe kalkıp sövemem.

Mucit23

Bak Eğer kulaklık çıkışından veri alman gerekiyorsa ve sadece motor süreceksen uart ile felan uğraşma. CM8870 denen bir enteğre var. DTMF decoder olarak çalışıyor. Yani senin yapman gereken telefondan DTMF tonları üretmek ve bu tonları kulaklık vasıtasıyla CM8870'e iletmek. Bu sayede telefon ile haberleşme işini halletmiş olursun. CM8870'in Dijital çıkışlarından aldığın sinyali arm mcu ile işleyip istediğini yaparsın.

minicihazlar

Apple'ın bağlantı soketinden şifresiz haberleşmeye izin vermesi dolayısıyla herkesin taklit ürün yapmasına izin vermesi tabii ki düşünülemez :) Geçen senelerde uydu alıcısı için iphone dock station gerçeklemek için Apple ile yazışmalarımız oldu ve gördük ki burdaki haberleşme portlarından veri alıp verebilmek için Apple bir entegre kullanıyor. Bu entegre aradaki haberleşmeyi şifreliyor. Yani çok zor ordan bir veri almak. Yapılanlar da genelde olayın etrafından dolaşmaktan ibaret.

uzaylivolkan

Iphone (:>  Ses Çıkışından Mors Alfabesi ile veri yollaya bilirsin

muhendisbey

Telefonu çakmasıyla da değiştirebilir. Çakmalarda android var :)
Zulmü alkışlayamam, zalimi asla sevemem; Gelenin keyfi için geçmişe kalkıp sövemem.

ArifAhmet

Alıntı yapılan: Mucit23 - 10 Eylül 2014, 23:56:09
Bak Eğer kulaklık çıkışından veri alman gerekiyorsa ve sadece motor süreceksen uart ile felan uğraşma. CM8870 denen bir enteğre var. DTMF decoder olarak çalışıyor. Yani senin yapman gereken telefondan DTMF tonları üretmek ve bu tonları kulaklık vasıtasıyla CM8870'e iletmek. Bu sayede telefon ile haberleşme işini halletmiş olursun. CM8870'in Dijital çıkışlarından aldığın sinyali arm mcu ile işleyip istediğini yaparsın.
Hocam ses sinyali alacam fakat kulaklık çıkışından değil. Aşağıdaki ses pinlerinden.
Yaşasın Open Source!

Mucit23

Ses sinyali ses sinyalidir.  CM8870 açısından değişen birşey olmaz
Yani kulaklık Çıkışı veya alt konnektör arasında eğer aynı ses sinyali çıkıyorsa cm8870 açısından bi fark yok. Söylediklerim aynen geçerli. 

ArifAhmet

Teşekkür ederim hocam. Ayrıca bir sorum daha var. Arduino ile ilgili örneklerde, softmodem denen bişey kullanılmış. ARM ile ilgili örneğini bulamadım. Bunu kullanabilme imkanım varmı?
Yaşasın Open Source!

muhendisbey

@arifahmet
http://pinouts.ru/CellularPhones-A-N/apple_lightning_pinout.shtml

Gördüğün üzere alt pinlerde iphone5'in doğrudan ses çıkışı yok. Entegre kullanman gerek.
Zulmü alkışlayamam, zalimi asla sevemem; Gelenin keyfi için geçmişe kalkıp sövemem.

ArifAhmet

Alıntı yapılan: muhendisbey - 22 Eylül 2014, 15:54:37
@arifahmet
http://pinouts.ru/CellularPhones-A-N/apple_lightning_pinout.shtml

Gördüğün üzere alt pinlerde iphone5'in doğrudan ses çıkışı yok. Entegre kullanman gerek.

Tam olarak nasıl bir entegre hocam.
Yaşasın Open Source!

muhendisbey

Bilemiyorum, ancak "accessory identification chip" yani aksesuar tanıma entegresi. Detay belirtmemiş. Muhtemelen böyle bir entegre ses verisini o jacktan dijital olarak alacak.
Zulmü alkışlayamam, zalimi asla sevemem; Gelenin keyfi için geçmişe kalkıp sövemem.