اطلاعیه

Collapse
No announcement yet.

اتصال OC1A به بلندگو برای شنیدن تون DTMF ?

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    اتصال OC1A به بلندگو برای شنیدن تون DTMF ?

    با سلام خدمت دوستان عزیز

    من میخواستم پایه ی OC1A رو به یک بلندگوی معمولی وصل کنم تا تون DTMF تولید شده توسط میکرو رو از بلندگو بشنوم ولی وقتی مستقیما وصل میکنم فقط یک صدای گوش خراش میشنوم و تون DTMF نمیشنوم.لطفا من رو در مورد سوالات زیر راهنمایی کنید.
    1-آیا باید بین OC1A و بلندگو مدار خاصی قرار بدم؟
    2-آیا باید PB1 را خرو جی تعریف کنم؟
    3-من از کریستال داخلی و از میکروی mega 8 استفاده میکنم.
    به طور کلی مشکل از کجا میتونه باشه؟؟
    با تشکر

    #2
    پاسخ : اتصال OC1A به بلندگو برای شنیدن تون DTMF ?

    مدار خاصی که نمیخواد
    نیازی نیست خروجی تعریف کنید
    باید از کریستال خارجی استفاده کنید ترجیحا بین 8 تا 12 مگا هرتز
    فرکانسی که توی برنامه مینویسد با فرکاس کریستالتون برابر باشه
    پروردگارا: به من زيستني عطا کن که در لحظه مرگ بر بي ثمري لحظه اي که براي زيستن گذشته است حسرت نخورم، و مردني عطا کن که بر بيهودگيش سوگوار نباشم. بگذار تا آن را خود انتخاب کنم، اما آنچنان که تو دوست ميداري

    دیدگاه


      #3
      پاسخ : اتصال OC1A به بلندگو برای شنیدن تون DTMF ?

      هنگام استفاده از دستور dtmf بهتره کریستال 10 مگ به بالا استفاده بشه . من با بیزر جواب گرفتم
      موفقيت = يك درصد نبوغ ، 99 درصد عرق ريختن
      (اديسون)

      دیدگاه


        #4
        پاسخ : اتصال OC1A به بلندگو برای شنیدن تون DTMF ?

        دوست عزیز اگر از بسکام استفاده می کنید و از dtmf out باید بگم که روی مگا8 جواب نمیده
        و روی مگا 16 کار میکنه
        پایه هم خروجی باشه
        من این کار رو با روش های مختلف انجام دادم
        مشکل خوردی یه روش دیگه هم بهت میگم

        دیدگاه


          #5
          پاسخ : اتصال OC1A به بلندگو برای شنیدن تون DTMF ?

          دوست عزیز این مثال تو HELP بسکام هست و داخل همین HELP کاملا توضیح داده

          $regfile = "m48def.dat" ' specify the used micro

          $crystal = 8000000 ' used crystal frequency

          $baud = 19200 ' use baud rate

          $hwstack = 32 ' default use 32 for the hardware stack

          $swstack = 10 ' default use 10 for the SW stack

          $framesize = 40 ' default use 40 for the frame space



          'since the DTMFOUT statement uses the TIMER1 interrupt you must enable

          'global interrupts

          'This is not done by the compiler in case you have more ISRs

          Enable Interrupts





          'the first sample does dtmfout in a loop

          Dim Btmp As Byte , Sdtmf As String * 10



          Sdtmf = "12345678" ' number to dial



          Do



          Dtmfout Sdtmf , 50 ' lets dial a number

          ' ^ duration is 50 mS for each digit

          Waitms 1000 ' wait for one second





          ' As an alternative you can send single digits

          ' there are 16 dtmf tones

          For Btmp = 0 To 15

          Dtmfout Btmp , 50 ' dtmf out on PORTB.3 for the 2313 for 500 mS

          'output is on the OC1A output pin

          Waitms 500 ' wait 500 msec

          Next

          Loop

          End


          همونطور که میبینید از کریستال 8 استفاده کرده و پایه رو هم خروجی تعریف نکرده
          پروردگارا: به من زيستني عطا کن که در لحظه مرگ بر بي ثمري لحظه اي که براي زيستن گذشته است حسرت نخورم، و مردني عطا کن که بر بيهودگيش سوگوار نباشم. بگذار تا آن را خود انتخاب کنم، اما آنچنان که تو دوست ميداري

          دیدگاه


            #6
            پاسخ : اتصال OC1A به بلندگو برای شنیدن تون DTMF ?

            پس من یه مگا شانزده بگیرم با یه کریستال.من از بسکام استفاده میکنم.البته دقیقا کاری که در نهایت میخوام انجام بدم اتصال این خروجی به یک فرستنده ی اف ام هستش ولی اول باید حتما روی بلند گوی معمولی جواب بگیرم.

            یه چیزی هم که هست اینه که وقتی توی ISIS 7 Professional مدار DTMF معمولی رو شبیه سازی کنید اگر از Speaker استفاده کنید همین مشکل من رو میتونید در اونجا ببینید ولی اگر از (SOUNDER(piezo استفاده کنید بدون هیچ مشکلی تون DTMF روبه طور واضح خواهید شنید

            من تغیراتی رو که همه ی شما دوستان فرمودید رو انجام میدم اگر مشکلی بود دوباره مزاحم شما عزیزان خواهم شد

            خیلی ممنون از همگی

            دیدگاه


              #7
              پاسخ : اتصال OC1A به بلندگو برای شنیدن تون DTMF ?

              s=0912*******
              Wait 1
              Dtmfout S , 200
              Sound Pind.5 , 20 , 60000
              wait 20

              من با دستور sound کار نکردم به نظرتون در صورت اتصال پین دی 5 به خط تلفن این برنامه صدای بیپ رو پخش میکنه واسه کسی که گوشی رو برداره ؟
              موفقيت = يك درصد نبوغ ، 99 درصد عرق ريختن
              (اديسون)

              دیدگاه


                #8
                پاسخ : اتصال OC1A به بلندگو برای شنیدن تون DTMF ?

                البته که صدا رو روی خط پخش میکنه البته اگه پین رو درست به خط تلفن وصل
                کنید
                چند نکته رو هم رعایت کنید
                1- بجای pind.5 از portd.5 استفاده کنید
                و اون 60000 iهم خیلیه و با کریستالهایی به فرکانسهای متفاوت هم باید مقدارش تغییر کنه
                من یک پروژه توی قسمت پروژه های AVR به نام کنترل 6 کاناله از طریق خط تلفن
                همراه با سورس بسکام گذاشتم که در اون صدای بیپ هم با تن های مختلف روی خط ارسال میشه
                پروردگارا: به من زيستني عطا کن که در لحظه مرگ بر بي ثمري لحظه اي که براي زيستن گذشته است حسرت نخورم، و مردني عطا کن که بر بيهودگيش سوگوار نباشم. بگذار تا آن را خود انتخاب کنم، اما آنچنان که تو دوست ميداري

                دیدگاه


                  #9
                  پاسخ : اتصال OC1A به بلندگو برای شنیدن تون DTMF ?

                  امیر آقا میشه بگیددر دستور Sound Beep , 400 , 100 عدد 400 (تعداد)و 100 (ثابت زمانی ) رو بر چه مبنایی نوشتید ؟ با توجه به این که کرستال شما داخلی یک مگ بود
                  فرمول خاصی داره یا بر حسب تجربه ؟
                  موفقيت = يك درصد نبوغ ، 99 درصد عرق ريختن
                  (اديسون)

                  دیدگاه


                    #10
                    پاسخ : اتصال OC1A به بلندگو برای شنیدن تون DTMF ?

                    راستش کاملا تجربی و با آزمون و خطا پیدا میکردم
                    برای آزمایش از پروتئوس هم میتونید استفاده کنید دقیق کار میکنه
                    پروردگارا: به من زيستني عطا کن که در لحظه مرگ بر بي ثمري لحظه اي که براي زيستن گذشته است حسرت نخورم، و مردني عطا کن که بر بيهودگيش سوگوار نباشم. بگذار تا آن را خود انتخاب کنم، اما آنچنان که تو دوست ميداري

                    دیدگاه

                    لطفا صبر کنید...
                    X