Picproje Elektronik Sitesi

DERLEYİCİLER => PIC Assembly => Konuyu başlatan: HEXF2 - 30 Nisan 2005, 08:55:01

Başlık: ***KESME ALT PROGRAMI***
Gönderen: HEXF2 - 30 Nisan 2005, 08:55:01
Beyler ben DTMF chip kullanarak uzaktan kontrol devresi yaptım başka bir yerden almadım kendim tasarladım bu yüzden bazı problemleri var piyasada böyle devreler mevcut fakat benim yaptığım devrenin özellikleri çok farklı ama temel aynı DTMF ile cihaz kontrolü

Telefon çalıp hat açıldıktan sonra DTMF karşıdan bir ton alırsa ilgili bacağını lojik 1 yapıyor ve ben bu bilgiyi PIC e kesme olarak gönderiyorum RB0 kesmesi kesme alt programında ise DTMF çıkışlarını bağladığım PORTA yı okuyor ve sırasıyla 1,2,3... rakamları ile karşılaştırıyorum misal porta daki veri 1 ise 1ile karşılaştırma sonucu PORTB nin RB1 çıkışına bağlı xihazı sürüyorum ve böyule devam ediyor yalnız sorunum PORTA okunup eğer karşılaştırma uyuyorsa ilgili cihazı sürüp alt programdan çıkıyorum daha sonra karşıdan yeni bir tuşa basıldığı zaman DTMF nin ilgili bacağı tekrar kesme oluşturuyor ve başka bir cihazı cihazı sürüyorum fakat başka cihazı sürerken diğer cihaz devre dışı kalıyor yani 1 ile karşılaştırma yaptıım RB1 i sürdüm ve kesmeden çıktım şimdi yeni bir kesme geldi 2 cihazı sürücem karşılaştırmayı yaptım ve uyuyorsa 2.cihazı sürdüm FAKAT 1.CİHAZ KAPANIYOR ben aynı anda bir kaç cihazı devreye sokmak istiyorum
programın sadece bu kısmıyla ilgili ufak bir sample hazırladım aşağıdaki adreste

http://s45.yousendit.com/d.aspx?id=08CR5PUNJ0GXQ2OEYNU41A5AOK

yardımlarınızı bekliyorum
Başlık: ***KESME ALT PROGRAMI***
Gönderen: ete - 30 Nisan 2005, 09:57:19
@HexF2,

Sorunun çözümü aşağıdaki gibi olabilir.

Çözüm:
-------------
- PortB nin değerini (daha önceden her hangi bir pini DTMF tarafından set edilmiş olsun) set edilmesi gereken yeni pin değeri ile OR işlemine tabi tutarsan eskisi bozulmadan yeni pin de set edilir. SOnra bu değeri götürüp yeniden PortB nin tamamına yazarsan eski Port değeri + yeni pin değeri şeklinde bir değeri PortB de görürsün.
Bir önek vermek gerekir ise;
Diyelimki Önceki set edilme nedeni ile Port B nin değeri =%00000010 yani 1. bit set edilmiş. (PortB.1=1) vaziyette olsun.
Bu sefer PortA dan gelen bilgi nedeni ile PortB.3 set edelim. Ancak PortB.1 in set değeri bozulmasın.
Şayet PORTB=PortB OR %00001000 şeklinde bir komut verir isem portB nin eski değerini bozmadan Bit3'ü de set ederim.

ASM olarak yapılması gereken iş şu
Senin yazdığın bölümde P3 kısmına bu bölümü ilave etmeye çalışalım;
P3        ;******************************************************
                   movf      PORTA,W      ;Porta --> W
                   movwf     Dtmf         ;W --> Dtmf
                   movlw     0x03         ;W = 3
                   xorwf     Dtmf,W       ;Dtmf - W = W
                   btfss     STATUS,Z     ;Porta'daki veri 3 mü?
                   goto      SON          ;Değil programı sonlandır
                   Movf     PortB,W      ;PortB--->W
                   Iorlw   0x03           ; W or 3
                   Movwf  PortB          ;W--->PortB
                 
       SON         return

ETE
Başlık: slm
Gönderen: HEXF2 - 30 Nisan 2005, 11:45:32
Ete buraya msj attıksan sonra dediğin olay benimde aklıma geldi denemedim ama şimdi diğer gelen bilgiyi yani PORTA daki veriyi 0x03 PORTB ile OR ladığım zaman RB0 kesme pini ne olcak bu yeni bir kesme oluşturmaz heralde değil mi ben bir deneyeyimde yazarım gene
Başlık: ***KESME ALT PROGRAMI***
Gönderen: ete - 30 Nisan 2005, 13:48:50
PortB.0 pinin kesme nedeni ile zaten giriş olması gerekir. Dolayısıyla port değerini okur iken o nolu pin daima 0 gelir ve senin yapacağın OR lama ile ilgisi olmayacaktır. Peki PortB nin set ettiğin bitleri nasıl sıfırlanacak?. Burasını düşündünmü. Programın geri tarafını görmediğim için fikir yürütemiyorum. Sanıyorum bir çözümü vardır.

Dene Bakalım olduğunu göreceksin.

ETE
Başlık: slm
Gönderen: HEXF2 - 30 Nisan 2005, 20:18:48
Evet kapatmak istediğim cihazları kapatabiliyorum onda birşey yok misal 5'e birkez bastığında cihaz açılıyor ve aktif edilme sayısı bir değişkende tutuluyor 5 duşuna bir daha basarsan 2 ile karşılartırma yapılıyor iki kere basıldığından bu karşılatırma sonucu doğru oluyor değişken ile ilgili çıkış sıfırlanıyopr dediğini yarın deniycem ete sonucu buraya yazarım sağol
Başlık: ***KESME ALT PROGRAMI***
Gönderen: Veli B. - 30 Nisan 2005, 20:30:13
Senin yapmak istediğin devreyi ticari olarak 1 yıldır piyasaya sürüyoruz.Benim yöntemim de RB0 kullamnılmıyor(RB4-7 değişme kesmesi yeterli).Sen istersen tabiki kullanabilrsin.DTMF Recevierlarda aktif olarak 5 çıkış bacağı var.DTMF ready ve 4 bitlik çıkış.DTMF ready bacağı bir sinyal alındığında konum değiştirip sinyal kesildiğinde eski konumuna döner(L to H mı hatırlamıyorum)problem değil zaten.
diyelimki birinci cihazı on yapacaksın.bunun için bir tuş tanımla, mesela *,off içinde bir tuş tanımla, mesela # gibi.
Sistemi sıralı çalıştır.
Örnek:
5. cihazı on yapmak istiyorsun.dtmf 5 aldınve bunu değişkene atadın ardından * tuşuna bastın.Karşılaştırma yaptın * tuşu on olduğu için 5 nolu cihaza ait olan pin H oldu.
Şimdi 3 nolu cihazı off yapmak istiyorsun. 3 tuşuna bastın, 5 yüklü olan değişken içeriğine 3 yüklendi.ardından # tuşuna bastın 3 nolu cihaza ait olan pin L oldu.
Oldukça kısa bir kod ile bu sistemi çalıştırırsın.
Başlık: slm
Gönderen: HEXF2 - 30 Nisan 2005, 20:55:08
Evet çeşitli fikirler çıkacak tabi dediğinde çok matılı devre ve programı bitti zaten ben sadece bir kısmında takıldım ilgilendiğiniz için teşekürrler asm dilini iyi biliyorum ama yaz allah yaz bazen tıkanıyo insan neyse @katana dostum * ve # tuşlarını başka işlerde kullıyorum mesela * tuşuna basınca şifre değiştiriliyo tabi ilk olarak eski şifre giriliyor eğer girilen şifre ile önceki şifre aynı değilse değiştirme işlemine izin verilmiyor # tuşu enter tuşu bunun yanıda devrenin fonksiyonları çok bende tam olarak bitireyim bilgisayar yazılımını filan da bir yerler ile anlaşmayı düşünüyorum devre aynı zamanda konuşma süresi belirleyebiliyor belirleediğin numara ile belirlediğin süre kadar konuşuyorsun sonra hat kapanıyor (şirketler için) aynı zamanda bilgisayar yazılımı sayesinde konuşmaları devreden otomatik bilgisayara aktarıp bunu wav olar kaydedip sıkıştırıp maille yollayabiliyor ama bu kısım daha çalışması sürüyor bitince güzel olcak inşallah sizede fikir oldu belki neyse dediklerinizi denedim şimdi oldu bir kaç cihazı sürebiliyorum sağolun beyler
Başlık: slm
Gönderen: HEXF2 - 03 Mayıs 2005, 09:09:46
ya beyle telefonun içini açmadan telefonun çaldığını nasıl algılarız yani ben bu devreyi bir yere kurmak istediğimde telefona müdahale etmek istemiyorum zaten kullanıcıda müsade etmez zilalgılama devresi düşündüm PIC in RB7 bacağına iki darbe gekdikten sonra hattı açmam gerek bu darbeleri PIC e saydırıp dijital anahtar yongası ile hattı açıyordum ama telefonu kurcalamadan olmuyor bunları dışardan nasıl yaparız @katana sen bu işi nasıl hallettin biraz fikir
Başlık: ***KESME ALT PROGRAMI***
Gönderen: CaFFeiNe - 03 Mayıs 2005, 15:06:45
telefonun hattının iki ucunu 220 ohm dirençle birbirine bağla telefon açılmış gibi olur bir röle yardımıyla telefon 2-3 kez çaldıktan sonra yap tabiki
işin bitincede rölenin bırakmasını böylece telefonun tekrar normale dönmesini sağla
Başlık: ***KESME ALT PROGRAMI***
Gönderen: Veli B. - 04 Mayıs 2005, 00:05:30
Eğer GSM kullanacaksan, en kolay yol otomatik cevap modu olan bir telefon kullanman olabilir.
Telekom hatlarını kullanacaksan, burada Yıldırım AK üstadın güzel bir çalışması var.Sanırım pekçok konuda gerçekten güzel bir kaynak olacaktır.Bu çalışmayı incelemeni tavsiye ederim.Bu arada tekrar teşekkürler Üstat.



Akıl Defterim (http://groups.yahoo.com/group/PicProjeUP1/files/YILDIRIM%20AK/)
Başlık: slm
Gönderen: HEXF2 - 04 Mayıs 2005, 08:42:26
Abi bu çalışma nerde acaba @caffeine demek istediğin heralde telefon hattını dışardan açmak istersem bu iki hattı röle yardımıyla kısa devre yapıp daha sonra işim bitince bırakmasını sağlamak peki ben karşıdan aradım sabit telefonu 2 çalmadan sonra röle aktif oldu ve hattı kısa devre yaptı ben şimdi bu sabit telefonla bağlantıyı kurmuş mu oluyorum yav meşgul olmaz mı ?
Başlık: ***KESME ALT PROGRAMI***
Gönderen: Veli B. - 04 Mayıs 2005, 13:32:11
Alıntı yapılan: "katana"



Akıl Defterim

Başlık: slm
Gönderen: HEXF2 - 05 Mayıs 2005, 08:28:12
ya abi bak bir arkadaş attı bişey çekildi kenara şimdi benim bir tek sorumun var telefona müdahele etmeden hattı açmak arkadaş demişki hattı kısa devre yaparsan hat açılmış olur ya zaten iki tane tel var ben bunları kısa devre yaptım hat açıldı eyvallah peki yine herhangi bir telden DTMF verisi alabilecek miyim ya beyle biraz yardım bitireyim şu işide işimize bakalım ya herşey bitti bir burda tıkandım
Başlık: slm
Gönderen: HEXF2 - 06 Mayıs 2005, 08:09:52
Ya beyler şuna cevap vercek bir allahın kulu yok mu soru basit telefona müdahale etmeden sadece hatla telefonun çaldığını PIC e nasıl algılatırım ve hattı nasıl açarım telefonun içini açtımı kolay ama ben sadece hat la bu işi halletmek istiyorum telefonun içini açmadan
Başlık: ***KESME ALT PROGRAMI***
Gönderen: oziant - 06 Mayıs 2005, 09:19:37
normal telefonlarda zil sesi
çaldıgı zaman telefon hattında ac voltaj vardır
bunu degerlendirip zilin cıldıgını anlarsın sonrada
telefon hattının uçuna arkadaşın dedigi gibi direnci baglarsın
telefon açılmış olur işin bittiginde direnci devre dışı yapman lazım
yoksa hattın sürekli meşgul olur
Başlık: ***KESME ALT PROGRAMI***
Gönderen: SpeedyX - 06 Mayıs 2005, 11:06:52
Sizin için çok masraflı olurmu bilmem ama sanırım MT88E43 - Caller ID entegresi veya türevleri işinizi görür. bu sayede telefonun gerçekten çaldığını ve hangi numaranın aradığını bilmeniz mümkün.
(http://www.eproje.com/hs/ap/ap5041.gif)

http://assets.zarlink.com/DS/zarlink_MT88E43_JAN_01.pdf
Başlık: slm
Gönderen: HEXF2 - 07 Mayıs 2005, 08:12:39
Tamam işte bildiğim bir yanıttı ama emin olmak istedim yani beyler bir konu açıyorum birkaç şey soruyorum bir iki kişi cevap veriyor sonra herkez başka bir yere ben tam yardımcı olunduğunu sanıyordum bu sitede ama sanırım eskidenmiş ben geç kaldım

Neyse arkadaşlar şimdi telefon hattında iki tane kablo var zaten şimdi burda AC değişim olduğu için telefonun çaldığını algılama işini herhangi bir kablodan alıp değerlendirebilirim herhalde birde bu AC gerilim telefon çaldığında kaç çalmadan önce kaç bilen varsa yazsın lütfen yani telefon çaldığında bu AC gerilimin yükseldiğini nasıl algılarım da tel çaldığı zaman PIC e saydırırım saydırma işlemi kolay ama bu değişimi nasıl algılıcam

Ayrıca bu iki teli kısa devre yapıp hattı açtıktan sonra yine tellerden herhangi birinden DTMF bilgisi alabilir miyim

Ya burası hep öğrencimi dolu daha evvel bu işle uğraşmış tekniker mühendis yok mu arkadaşlar cevap verecek dikkat ediyorum hem basit ve devamlı karşılaşılan sorulara cevap veriliyor biri yaptığı birşey ile ilgili birşey sordumu adamın yalvarması lazım cevap verin diye biraz anlayış beyler bu devreyi hemen bitirmem lazım programı hazır ama donanımda takıldım kaldım
Başlık: ***KESME ALT PROGRAMI***
Gönderen: oziant - 07 Mayıs 2005, 08:42:43
bir ucundan olmaz çünkü ac voltaj iki ucuyla beraberdir
normalde telefon hattında 48 volt civarında dc gerilim vardır
sen bir adet hat trafosu  bul
telefon hattının ucunu a ve b olarak düşün
1 mikrofarad 250 volt luk bir kondansatörü a yada b ucuna seri bagla
diger ucuna bir adet diyot 1n4007 sonra 1 kiloohm cıvarı bir yük direnci
ve diger uca birleştir
normalde telefon hattında dc vardır kondasatörden gecmez
fakat zil çalınca (ac)gerilim gecer ve direnc üzerinde bir gerilim düşümü
olur bununla telefonun caldıgın anlarsın
ondan sonra hatta trafoyu baglarsın trafonun diger ucundan dtmf  sinyallerini
alırsın, sonra trafoyu hattan cıkar
yoksa telefon meşgul kalır
istersen direnc olan yere opto cuplör kullanabilirsin tabiiki
dirence paralel 47 mikrofarad (63v) koymayı unutma yoksa telefon calma
sayın yanlış olur
umarım problemin cözülür
Başlık: ***KESME ALT PROGRAMI***
Gönderen: CaFFeiNe - 07 Mayıs 2005, 17:03:41
(http://img215.echo.cx/img215/2763/dt3nm.jpg)
Başlık: ***KESME ALT PROGRAMI***
Gönderen: oziant - 07 Mayıs 2005, 17:24:11
eline saglık cafeine
bende cizim programı olmayınca cizemedim
Başlık: ***KESME ALT PROGRAMI***
Gönderen: CaFFeiNe - 07 Mayıs 2005, 21:39:46
oziant arkadaş ben yukarıdakini isis ile çizdim sende yoksa bence en kısa sürede proteusu indirip kurcalamaya başla çok faydalı bir araç
Başlık: slm
Gönderen: HEXF2 - 08 Mayıs 2005, 09:13:21
ya beyler allah razı olsun kafamda son birkaç soru var onuda sorucam sonra bitiyor olay @caffeine dostum şimdi bu dediğin bölüm telefonun kaç kere çaldığı anlamak için ok çok güzel istediğim sayıda telefonun çalmasını bu devre ile anlıyacağım peki daha sonra hattı açmak için "TELEFON HATTI " yazan iki ucu röle ile kısa devre mi yapmam gerek

İkinci sorumda o iki hattan herhangi birinden 8270 in DTMF in ucuna giriş yapıp DTMF sinyallerini alabilirmiyim yoksa bu iki hattı ilk önce trafoya daha sonra trafo çıkışındaki herhangi bir uçtan mı almalıyım DTMF girişini şimdilik son sorumdu
Başlık: slm
Gönderen: HEXF2 - 09 Mayıs 2005, 08:13:52
sanırım biraz daha yalvarmalıyım son sorum dedim yaa
Başlık: ***KESME ALT PROGRAMI***
Gönderen: Veli B. - 09 Mayıs 2005, 09:17:17
Biraz araştır.Sana verilenleri bir incele.8870 ve Akıl defteri sana yeterli. :evil:
Aşağıda bir link verdim.Sorunun cevabı orada devre(prensip) olarak verilmiş durumda.


Bu datasheete bir bak. (http://www.clare.com/home/PDFs.nsf/www/M8870-R3.pdf/$File/M8870-R3.pdf)
Başlık: slm
Gönderen: HEXF2 - 10 Mayıs 2005, 08:34:52
ya hoca çok sağolun bana araştır diyosunda bir bilsen ne kadar arştırıyorum zaten burayada bilen kişilere sormam bir nevi araştırmadır değil mi yukarda verdiğin data sheet de kafama birşey takıldı bütün fikirler de gitti kafamdan ya data sheet in yukarsındaki bir devrede DTMF bilgisi IN- den alınmış bir kondanstör ve bir direnç ile fakat aşağıda bir devrede de input configration yazan yerde de DTMF bilgisi yani telefonun iki hattı (iki tel) IN- ve IN+ ya bağlanmış ilk olarak seri iki kondansatöre girmiş daha sonra bu uçlara arkadaşlar sorduğum son sorumdu iki sorum var

1.DTMF VERİSİNİ HATTAN NASIL ALIP 8870'E GÖNDERİCEM HATTAN SADECE 1 TANESİNDEN ŞEKİLDEKİ DEVREDE "DTMF INPUT" GİRİŞİNE GİRİCEM YOKSA IN- VE IN+ GİRİŞLERİNE HATTIN İKİ UCUNU BAĞLIYCAM

2.SORUM TELEFONUN ÇALDIĞINI ALGILADIK OK HATTI AÇMAM İÇİN BU İKİ KABLOYU (HATTAKİ İKİ UÇ) KISA DEVRE Mİ YAPMAM GEREK BİR RÖLE İLE BU UÇLARI KISA DEVRE YAPTIĞIM ZAMAN 8870'E GİDEN UÇLAR ETKİLENİR Mİ BİLGİ GELİR Mİ YANİ
Başlık: ***KESME ALT PROGRAMI***
Gönderen: Veli B. - 10 Mayıs 2005, 10:27:29
@Hexf2,
Bir de buna bak bakalım.Eğer yine çözemezsen beraber yapalım :D.
Bordtaki arkadaşlarımızın genel olarak prensibi, hazırdan ziyade mantık ve prensipler üzerine yardımcı olmak.Hazır ürün vermektense, nasıl yapılacağı konusuna odaklanmak.Bu tarz sorulara pek cevap verilmemesinin sebebi budur.Eğer gerçekten araştırıp, belirli bir noktaya getirip tıkanmışsan, durum değişir.
Bunu bir incele, çok güzel bir kaynaktır ama emin ol Akıl defteri yanında esamesi bile okunmaz.Bu yüzden neden daha önce bu linki vermedin deme!  :idea:


Link burda) (http://info.hobbyengineering.com/specs/DIY-k140.pdf)
Başlık: ***KESME ALT PROGRAMI***
Gönderen: z - 10 Mayıs 2005, 11:31:07
Telefon Hattında normalde DC gerilim vardır.
Santral telefonunuzun zilini çaldırmak isteyince, hatta AC gerilim verir.

Hattan DC gerilimi kaldırıpta mı AC gerilim veriyor yoksa DC gerilim üzerine mi AC gerilim bindiriyor bilmiyorum ama scopun varsa ölçüp öğrenirsin. (Scopunu izalasyon trafosu ile şebekeden beslemen gerekir yada pilli scop kullanmalısın)

Santral telefon ahizesinin kaldırıldığını hatta paralel direnç girmesinden (DC hattan akım çekilmesinden) anlar.  

Araştırma illa bir şeyler okumak anlamına gelmez. Size birazcık deney yapma ruhu gerekiyor.

Yukarıdaki açıklamalarda kaç volt AC, kaç volt DC, kaç ohm kullanılıyor gibi sorular sorabilirsin. Bu ülkeden ülkeye değişir. Boardda kimse cevap vermezse telefon idaresi teknik bölümlerinden öğrenilebilir yada  bir kaç farklı yerde (evinde, iş yerinde, dayının amcanın evinde) avometreyi alır eline ölçer ve ölçümlerin ortalamasını alırsın.

Telefon hattını doğrudan çiplere giremezsin. Araya en azından empedans ve voltaj seviye uyumunu sağlayacak devre eklemen gerekir. Bunu kullanacağın çipin verilerinden okuyacaksın.

Tabiki devrenin girişine koruma tertibatı almayı da unutmaman gerekir.
Başlık: slm
Gönderen: HEXF2 - 11 Mayıs 2005, 08:16:31
katana eyvallah hoca bak bu işimi görür işte çok sağol

@bunalmış o dediklerinin daha alasını yaptım ben deneyci ruhun olsun diyosunda yani telefon idaresine bile gittim bişey sorucam bir proje üstünde çalışıyorum dedim ve sordum adamlara adamlar güldü sorduğum soru da mantıksız birşey değildi yani okuduk o kadar momçak değiliz adamlar sonra saçma sapan sorular sormaya başladılar yok sen nerde oturuyosun kaç yaşındasın ulan evlenicen mi benle bende dedim allah belanızı versin çıktım evdeki hatla uğraştım bi cacık çıkması işte böyle beyler biz böyle bir ülkede yaşıyoruz