السلام عليكم ورحمة الله وبركاته
كيفكم شباب ؟؟
أنا اشتغل على دائرة التحكم بالأجهزة عن طريق الإتصال الهاتفي
واستخدمت DTMF DECODER CM8870PI
مع PIC 16F628
جربت DTMF لحاله وشغال تمام لكن إذا وصلت البيك في الدائرة يتوقف الDTMF عن العمل
مع العلم إنها تتوقف مباشرة فور توصيل الكهرباء للبيك (يعني البيك لسى ماشبكت فيه غير القراوند و 5 فولت ) وع كذا يوقف DTMF
ياليت اللي عنده أي فكرة يرد لي
وهذا كود البيك بلغة بيك بيزك برو
كود:
* DEVICE MCLR_OFF,INTRC_OSC
CMCON=7
LED1 var PORTA.0
LED2 var PORTA.1
LED3 var PORTA.2
LED4 var PORTA.3
TRISA.0=0
TRISA.1=0
TRISA.2=0
TRISA.3=0
TRISB.0=1
TRISB.1=1
TRISB.2=1
TRISB.3=1
LOW LED1
LOW LED2
LOW LED3
LOW LED4
gg:
IF (PORTB.0 == 1) AND (PORTB.1 == 0 )AND (PORTB.2 == 0) AND (PORTB.3 == 0) THEN
HIGH LED1
ELSEIF (PORTB.0 == 0) AND (PORTB.1 == 1) AND (PORTB.2 == 0) AND (PORTB.3 == 0) THEN
HIGH LED2
ELSEIF (PORTB.0 == 1) AND (PORTB.1 == 1) AND (PORTB.2 == 0) AND (PORTB.3 == 0) THEN
HIGH LED3
ELSEIF (PORTB.0 == 0) AND (PORTB.1 == 0) AND (PORTB.2 == 1) AND (PORTB.3 == 0) THEN
HIGH LED4
ELSEIF (PORTB.0 == 1) AND (PORTB.1 == 0) AND (PORTB.2 == 1) AND (PORTB.3 == 0) THEN
LOW LED1
ELSEIF (PORTB.0 == 0) AND (PORTB.1 == 1) AND (PORTB.2 == 1) AND (PORTB.3 == 0) THEN
LOW LED2
ELSEIF (PORTB.0 == 1) AND (PORTB.1 == 1) AND (PORTB.2 == 1) AND (PORTB.3 == 0) THEN
LOW LED3
ELSEIF (PORTB.0 == 0) AND (PORTB.1 == 0) AND (PORTB.2 == 0) AND (PORTB.3 == 1) THEN
low LED4
ENDIF
goto gg
END
الكود يقوم بقرائة الخرج من DTMF ويشغل اللمبه المقابله له على أحد مخارج البيك
وشكرا