ايران ويج

نسخه‌ی کامل: کنترل وسایل الکتریکی با تلفن
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2
با سلام به تمامی دوستان
من قصد ساختن مداری برای کنترل وسایل الکتریکی از طریق خط تلفن را دارم و اینم میدونم که باید از MT8870 استفاده کنم اما تا حالا دو تامدار بیشتر نتونستم پیدا کنم متاسفانه هر دو به زبان اسمبلی هستش آیا کسی از دوستان برنامه انو به بیسیک داره ؟
با تشکر[attachment=4442][attachment=4443]
مهندس برنامه خواصی نداره !

فقط شما باید تشخیص بدی وقتی تلفن زنگ زد تلفن رو مشغول کنه و منتاظر دریافت اطلاعات از MT8870 باشه !!!!

شما اگه بسکام یه خورده بلد باشی برنامه نویسیش کاری نداره !

شما شروع کن !

کمکی خواستی بچه ها هستن !!


اینم یه برنامه واسه شروع :

کد php:
$regfile "m32DEF.dat" $crystal 4000000

Config Lcdpin 
Pin Db4 Pinb.2 Db5 Pinb.3 Db6 Pinb.4 Db7 Pinb.5 Pinb.1 Rs Pinb.0
Config Lcd 
16 Cursor Off Cls

Config Porta 
Input Portd Output

Dim B 
As Word As Word P(4) As Byte Pn As Byte
Dim Perr 
As Byte Pas As Eram Word

Pas 
0

Star
:

   
Reset Portd.0 Reset Portd.1 Cls Lcd "    STAND BY   "

   
Bitwait Pina.7 Reset

   Set Portd.0 
Home Lcd "     RING 1     "

   
For 0 To 100
      
If Pina.7 1 Then Goto Star
      Waitms 12
   Next

   Bitwait Pina.7 
Set

   Reset Portd.0 
Wait 1

   
For 0 To 100
      
If Pina.7 0 Then Goto Ring2
      Waitms 150
   Next

   
Goto Star

Ring2
:

   
Set Portd.0 Home Lcd "     RING 2     "

   
For 0 To 100
      
If Pina.7 0 Then Goto Star
      Waitms 12
   Next

   Bitwait Pinb.0 
Reset

   Set Portd.1 
Reset Portd.0 Wait 1 Sound Pind.3 200 100 Perr 6

Inpas1
:
   
Cls Lcd "INSERT PASSWORD" Pn Locate 2 6

Inpas2
:

   
Waitms 200

   
For 0 To 15000
      
If Pina.5 1 Then Goto Pas
      Waitms 1
   Next

   
Goto Star

Pas
:

   
P(pn) = Pina P(pn) = P(pn) And 15 Lcd "*" Decr Pn

   
If Pn <> 0 Then Goto Inpas2

   B 
P(4) * 1000 P(3) * 100 P(2) * 10
   B 
P(1)

   If 
<> Pas Then :
      
Decr Perr Cls Lcd "INAVLID PASSWORD" Home L
      Lcd 
"      " Perr
      
If Perr 0 Then :
         
Cls Lcd " ERROR PASSWORD " Home L Lcd "DISCONECT  WAIT "
         
Reset Portd.1 : Goto Star
      End 
If
      
Wait 1 : Goto Inpas1
   End 
If

   
Cls Lcd "INSERT OPERATION"

Do

   
Waitms 100

   
For 0 To 20000
      
If Pina.5 1 Then Goto Op
      Waitms 1
   Next

   
Goto Star

Op
:

   
Pn Pina Pn Pn And 15

   Select 
Case Pn
   
Case 1:
      
Toggle Portd.6 Home L Lcd "  TOGGLE OUT 1  "
   
Case 2:
      
Set Portd.7 Home L Lcd "    ON OUT 2    "
   
Case 3:
      
Reset Portd.7 Home L Lcd "   OFF OUT 2    "
   
Case 5:
      
Set Portd.5 Home L Lcd "   OPEN DOOR    " Wait 3 Reset Portd.5
   End Select

Loop

End 

و نقشه فوق :

[تصویر:  index.php?module=thumbnail&file=e78p9lga...z995lv.png]
کلیک کنید تا بزرگشو ببینید !
با سلام مجدد
دوست عزیز من برنامه شما رو مطالعه کردم اما اینو نفهمیدم که رله ای که در قسمت خط قرار داره وضیفش چیه؟
راستی در آی سی MT8870 پایه 10و15 چه وظیفه ای بر عهده دارند؟
با تشکر
رله به همراه چوک آبی وظیفش مشغول کردن خط تلفنه !!!

پایه 15 هنگامی که یه کد DTMF دریافت شد واسه یه لحظه یک می شه که میکرو بفهمه کلیدی فشار داده شده !
پایه 10 رو هم تو دیتاشیتش ببین !
مهندس یک سوال دیگه
مگه پایه 11تا 14 عدد باینری تولید نیکنه؟
پس چرا شما مقداری که از پورت A دریافت میکنید را در یک رشته قرار نمیدهید؟
خوب آره !!
اون پایه های خروجی هستش که بسته به عدد وارد شده خروجی می ده !
دلیل نداشت تو رشته بریزم !
همینطوری راحت تر بودم !
مهندس یک سوال ؟
وقتی که خط در حالت زنگ خوردن هستش MT8870 چه پایه ای رو یک میکنه و به چه شکلی باید عملیت گوشی برداری را آغاز کرد ؟
مهندس شما که تو برنامت portc.1 تعریف که نکردی؟
راستی شکل های که خودم گذاشتم تو پست اولم به نظر شما از لحاظ مداری درسته؟
باتشکر
8870 زنگ خوردن رو حس نمی کنه !
می تونید یه اپتوکوپلر واسه این کار بذارین !

باید اهم دو سر گوشی رو بیاری پایین تا خط مشغول شه !
یه مقاوت 330 اهم و یه ترانزیستور و یا چوک آبی !!!!

اونم رو حساب فراموشی بذار !

آره درستن !
(۲۴-دى-۱۳۸۸, ۱۴:۳۱:۰۶)Gawky نوشته است: [ -> ]مهندس برنامه خواصی نداره !

فقط شما باید تشخیص بدی وقتی تلفن زنگ زد تلفن رو مشغول کنه و منتاظر دریافت اطلاعات از MT8870 باشه !!!!

شما اگه بسکام یه خورده بلد باشی برنامه نویسیش کاری نداره !

شما شروع کن !

کمکی خواستی بچه ها هستن !!


اینم یه برنامه واسه شروع :

کد php:
$regfile "m32DEF.dat" $crystal 4000000

Config Lcdpin 
Pin Db4 Pinb.2 Db5 Pinb.3 Db6 Pinb.4 Db7 Pinb.5 Pinb.1 Rs Pinb.0
Config Lcd 
16 Cursor Off Cls

Config Porta 
Input Portd Output

Dim B 
As Word As Word P(4) As Byte Pn As Byte
Dim Perr 
As Byte Pas As Eram Word

Pas 
0

Star
:

 
Reset Portd.0 Reset Portd.1 Cls Lcd " STAND BY "

 
Bitwait Pina.7 Reset

 Set Portd.0 
Home Lcd " RING 1 "

 
For 0 To 100
 
If Pina.7 1 Then Goto Star
 Waitms 12
 Next

 Bitwait Pina.7 
Set

 Reset Portd.0 
Wait 1

 
For 0 To 100
 
If Pina.7 0 Then Goto Ring2
 Waitms 150
 Next

 
Goto Star

Ring2
:

 
Set Portd.0 Home Lcd " RING 2 "

 
For 0 To 100
 
If Pina.7 0 Then Goto Star
 Waitms 12
 Next

 Bitwait Pinb.0 
Reset

 Set Portd.1 
Reset Portd.0 Wait 1 Sound Pind.3 200 100 Perr 6

Inpas1
:
 
Cls Lcd "INSERT PASSWORD" Pn Locate 2 6

Inpas2
:

 
Waitms 200

 
For 0 To 15000
 
If Pina.5 1 Then Goto Pas
 Waitms 1
 Next

 
Goto Star

Pas
:

 
P(pn) = Pina P(pn) = P(pn) And 15 Lcd "*" Decr Pn

 
If Pn <> 0 Then Goto Inpas2

 B 
P(4) * 1000 P(3) * 100 P(2) * 10
 B 
P(1)

 If 
<> Pas Then :
 
Decr Perr Cls Lcd "INAVLID PASSWORD" Home L
 Lcd 
" " Perr
 
If Perr 0 Then :
 
Cls Lcd " ERROR PASSWORD " Home L Lcd "DISCONECT WAIT "
 
Reset Portd.1 : Goto Star
 End 
If
 
Wait 1 : Goto Inpas1
 End 
If

 
Cls Lcd "INSERT OPERATION"

Do

 
Waitms 100

 
For 0 To 20000
 
If Pina.5 1 Then Goto Op
 Waitms 1
 Next

 
Goto Star

Op
:

 
Pn Pina Pn Pn And 15

 Select 
Case Pn
 
Case 1:
 
Toggle Portd.6 Home L Lcd " TOGGLE OUT 1 "
 
Case 2:
 
Set Portd.7 Home L Lcd " ON OUT 2 "
 
Case 3:
 
Reset Portd.7 Home L Lcd " OFF OUT 2 "
 
Case 5:
 
Set Portd.5 Home L Lcd " OPEN DOOR " Wait 3 Reset Portd.5
 End Select

Loop

End 

و نقشه فوق :

[تصویر:  index.php?module=thumbnail&file=e78p9lga...z995lv.png]
کلیک کنید تا بزرگشو ببینید !
سلام
میشه لطفا لینک عکسو درست کنین؟
سلام

علی جون من میخوام این MT8870DE رو بدون میکرو آزمایش کنم ... چند تا مدار مختلف موجود در دیتا شیت و ... را بستم اما جواب نمیگیرم

بعنوان مثال این رو هم بستم:

[تصویر:  3355105887518141.jpg]


مدار شما رو هم امتحان کردم وبه خروجی ها LED وصل کردم اما بازم نمیشه:

[تصویر:  2247702111142.jpg]


یه مداری هم واسه تستش وجود داره اما امتحانش نکردم:

[attachment=5823]


در کل چی کار کنم ... این طریقه وصل به تلفن رو هم کمی توضیح بده

آیا اول تلفن رو اشغال کنم بعد مدار رو بهش وصل کنم؟

من با موبایل به خط تلفن زنگ میزنم ...بعد گوشی تلفن رو بر میدارم و بعد مدار رو به خط وصل میکنم وبعد کلیدهای موبایل رو فشار میدم ...اما هیچ اتفاقی نمی افته Sad

حتی آی سی رو هم عوض کردم اما نشد!!!!

---------------------------------------------
زندگی کوتاه است و هنر طولانی
صفحه‌ها: 1 2