سلام
به طور کلی تو باید این کارها رو بکنی:
1-تشخیص زنگ یا ring detector
2-اشغال کردن خط یا line in use indicator
3-دریافت یا ارسال کد های dtmf
1:
به صورت عادی خط تلفن دارای 48 ولت dc است.ولی در زمان زنگ خودن ولتاژ خط به 110 ولت ac می رسد و فرکنس آن نیز بین 20 تا 40 هرتز است.سیگنال زنگ به صورت 1 ثانیه وصل و 4 ثانیه قطع ارسال می شود.حال ما باید اول ولتاژ دی سی را از روی خط حذف کنیم و منتظر ولتاژ ای سی باشیم.ولتاژ ای سی اول باید دی سی شود و بعد از ضعیف شدن به یک اپتوکانتر متصل شود.خروجی اپتوکانتر هم طوری طراحی می شود که در صورت زنگ خوردن 0 و در حالت عادی 1 باشد و به وقفه های خارجی میکرو وصل می شود.
2:
برای اشغال کردن خط باید 48 ولت آن را به 8 ولت برسانیم.معمولا برای این کار از یک مقاومت 330 اهم 5 وات استفاده می شود که به دو سر خط وصل می شود و ولتاژ آن را به حدود 8 ولت می رساند.
3:
بعد از انجام این کار ها می توان سیگنال های خود را بر روی آن سوار کرد و اطلاعات را رد و بدل کرد.
طریقه ی انتقال اطلاعات به این صورت است که ما باید اول اطلاعات خود را به صورت یک سیگنال dtmf در آوریم و ارسال کنیم.
برای این کار می توان از ای سی های موجود در بازار استفاده کرد که با نام های dtmf generator معروف هستند استفاده کرد.(معروف ترین آن ها mt8870 است که یک فرستنده ی dtmf می باشد)
برای دریافت اطلاعات نیز باید بر عکس همین کار را انجام داد یعنی باید سیگنال dtmf را بعد از دریافت رمز گشایی کرد.برای این کار نیز می توانید از آی سی های موجود در بازار استفاده کرد(معروف ترین این آی سی ها mt8888 است که یک گیرنده و فرستندهی dtmf است.)
موفق باشی
(اگر سوالی بود حتما بپرس)
سلام
آقا/خانم mjes فقط شما نیستی که به مشکل بر خوردی همه باهاش مشکل دارن .من خودم 3 ماه روش کار کردم تا تونستم راش بندازه.
کار با این آی سی خیلی راحت نیست چون نیاز به ریجستر داره که به صورت زیر است:
wr:نوشن بر روی ریجستر ها
cs:انتخاب قطعه یا chip select
rs0:انتخاب ریجستر
rd:خواندن از روی ریجستر
irq/cp:در خواست وقفه/وضعیت خط.در حالت irq یا وقفه ای به محض ارسال یا دریافت یک سیگنال dtmf این پایه 0 می شود.اما در حالت cp یا call progress خروجی این پایه یک موج مربعی است که متناسب با سیگنال ورودی است.
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
اول از همه شما باید مداری رو که پیوست کردم ببندی (البته برای r3 از یه 270 کیلو سری با یه 100 کیلو استفاده کن)
بعد از آن پایه هایی که باید به میکرو وصل شوند را به هر پینی که خواستی متصل کن.
حال باید به آی سی ریجستر بدی.
1-نوشتن بر روی ریجستر کنترلی CRA یا فعال کردن TOUT
rs0=1,wr=0,cs=0,rd=1,cra=1001,wr=1
2-نوشتن بر روی ریجستر کنترلی CRB:
cs=0,rs0=1,wr=0,rd=1,crb=0001,wr=1
3-ارسال عدد مورد نظر:
cs=0,rs0=0,wr=0,rd=1,d0»d3=num(bin),wr=1
4-تاخیر 51ms
5-نوشتن بر روی ریجستر کنترلی CRA یا غیر فعال کردن TOUT
rs=1,cs=0,wr=0,rd=1,cra=0000,wr=1
6-تاخیر 51ms
7-تکرار این اعمال و ارسال عدد بعدی
راستی برنامشم همین روزا می زارم.
[
attachment=7101]