اطلاعیه

Collapse
No announcement yet.

کنترل راه دور با خط تلفن 12 کانال

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

    کنترل راه دور با خط تلفن 12 کانال

    با سلام
    با کمک اول خدا بعد شما دوستان عزیز این پروژه من تموم شد وحالا جهت قدر دانی از شما ورفع مشکلات اون رو در سایت قرار میدم و از شما دوستان میخام که مشکلات اون رو به من بگید
    توضیحاتی در مورد مدار
    اول این که من mt8870گیرم نیومد و از il8870 استفاده کردم
    اپتوکوپلر که من استفاده کردم 817هست و چهار پایه داره ولی در شبیح سازی اپتوکوپلره 6پایه داره شما از پایه ششم صرف نظر کنین
    خوروجی برای رله پایه های portb.2 تاpinb.7 و pinc.0 تا pinc.5هست ومن اونا رو فقط با ledامتحان کردم
    خروجی صدای at8 رو که portb.1 هست رو به 741 دادمش تا دامنه اون رو به 12vبرسونم و با خازن 104 به خط وصل کردم
    اینتراپس مدار هم pind.2 هست که به mt8870وصله
    اون چهار بیت که از mt8870خارج میشه رو به pind.0 , pind.1 , pind.4 ,pind.5 وصل کردم
    برای این که به طور اتوماتیک گوشی رو برداره خط تلفن رو به یک اپتو کوپلر دادم و خوریجیش رو با یک ترانزیسور به pinb.6 دادم
    توضیح مختصری برای برنامه
    اول چک میکنه که اگر pind.6 یک شد یک واحد به cاضاف میکنه و هروقت c=2خط رو وصل میکنه بعد از ستا بوق رمز زو میخاد وبعد )2314( با زدن هر کلید روی صفحه کلید تلفن میپره روی برنامه اون رله و با زدن کلید # رله رو خاموش میکنه وبا زدن کلید 0 بدون هیچ تاثیری بر روی این رله برمیگرده وبا زدن کلید * رله رو روشن میکنه قابل ذکر هست که
    کلید 1 =رله 1
    کلید 2=رله2
    کلید 3=رله 3
    کلید 4=رله 4
    کلید 5=رله5
    کلید 6=رله6
    کلید 7=رله 7
    کلید 8=رله8
    کلید 9=رله9
    کلید 0=رله 10
    کلید *=رله 11
    کلید #=رله12
    و در پایان میگویم اگه کسی مدا رو بست و مشکلی داشت ما در خدمتیم
    کوچییییییییییییییییییییییییییییک شما محسن



    $regfile = "m8def.dat"
    $crystal = 2000000
    Config Int0 = Rising
    Enable Interrupts
    Enable Int0
    On Int0 Int00
    Cursor Off
    Dim A As Byte
    Dim B As Single
    Dim C As Byte
    Dim D As Byte
    Dim E As Long
    Dim F As Byte
    Dim G As Long
    Dim H As Long
    Rel Alias Portb.0
    Rel1 Alias Portb.2
    Rel2 Alias Portb.3
    Rel3 Alias Portb.4
    Rel4 Alias Portb.5
    Rel5 Alias Portb.6
    Rel6 Alias Portb.7
    Rel7 Alias Portc.0
    Rel8 Alias Portc.1
    Rel9 Alias Portc.2
    Rel10 Alias Portc.3
    Rel11 Alias Portc.4
    Rel12 Alias Portc.5
    Config Portb = Output
    Config Portd = Input
    Config Portc = Output
    A = 0
    B = 0
    C = 0
    D = 0
    E = 0
    F = 0
    Sound Pinb.1 , 400 , 100
    Main:
    C = 0
    Do
    If Pind.6 = 0 Then
    jmp respons
    End If
    Loop
    '--------------------------------------------------------------------
    Respons:
    Incr C
    If C = 2 Then
    Set Rel
    jmp main2
    End If
    Waitms 2000
    For E = 1 To 50000
    If Pind.6 = 0 Then
    jmp respons
    End If
    Next
    C = 0
    jmp main
    '-------------------------------------------------------------------
    '============================================ =======================
    '-------------------------------------------------------------------
    Main2:
    D = 0
    Waitms 400
    Sound Pinb.1 , 400 , 100
    Waitms 100
    Sound Pinb.1 , 400 , 100
    For E = 1 To 100000
    Checkpass:
    If D = 1 Then
    jmp c1
    End If
    If D = 3 Then
    jmp c2
    End If
    If D = 5 Then
    jmp c3
    End If
    If D = 7 Then
    jmp c4
    End If
    If D >= 8 Then
    Reset Rel
    D = 0
    End If
    Next
    Sound Pinb.1 , 1000 , 100
    Reset Rel
    jmp main
    '---------------------------------------------------
    C1:
    If A = 2 Then
    D = 2
    Waitms 200
    jmp Checkpass
    Else
    Waitms 1000
    Sound Pinb.1 , 1000 , 100
    Reset Rel
    jmp main
    End If
    jmp Checkpass
    C2:
    If A = 3 Then
    Waitms 200
    D = 4
    jmp Checkpass
    Else
    Waitms 1000
    Sound Pinb.1 , 1000 , 100
    Reset Rel
    jmp main
    End If
    jmp Checkpass
    C3:
    If A = 1 Then
    D = 6
    jmp Checkpass
    Else
    Waitms 1000
    Sound Pinb.1 , 1000 , 100
    Reset Rel
    jmp main
    End If
    jmp Checkpass
    C4:
    If A = 4 Then
    jmp start0
    Else
    Waitms 1000
    Sound Pinb.1 , 1000 , 100
    Reset Rel
    jmp main
    End If
    '------------------------------------------------------
    '============================================ ==========
    '------------------------------------------------------
    Start0:
    A = 0
    Waitms 100
    Sound Pinb.1 , 100 , 100
    Waitms 100
    Sound Pinb.1 , 100 , 100
    Waitms 100
    Sound Pinb.1 , 100 , 100
    E = 0
    For G = 1 To 200000
    '............................................ ................
    '11111111111111111111111111111111111111111111 1111111111111111
    If A = 1 Then
    For E = 1 To 15
    Waitms 500
    Sound Pinb.1 , 50 , 50
    If A = 10 Then
    jmp okch1
    End If
    If A = 11 Then
    Set Rel1
    jmp okch1
    End If
    If A = 12 Then
    Reset Rel1
    jmp okch1
    End If
    Next
    Okch1:
    Waitms 200
    Sound Pinb.1 , 100 , 500
    A = 0
    End If
    '22222222222222222222222222222222222222222222 2222222222222222
    If A = 2 Then
    For E = 1 To 15
    Waitms 500
    Sound Pinb.1 , 50 , 50
    If A = 10 Then
    jmp okch2
    End If
    If A = 11 Then
    Set Rel2
    jmp okch2
    End If
    If A = 12 Then
    Reset Rel2
    jmp okch2
    End If
    Next
    Okch2:
    Waitms 100
    Sound Pinb.1 , 100 , 500
    A = 0
    End If
    '33333333333333333333333333333333333333333333 3333333333333
    If A = 3 Then
    For E = 1 To 15
    Waitms 500
    Sound Pinb.1 , 50 , 50
    If A = 10 Then
    jmp okch3
    End If
    If A = 11 Then
    Set Rel3
    jmp okch3
    End If
    If A = 12 Then
    Reset Rel3
    jmp okch3
    End If
    Next
    Okch3:
    Sound Pinb.1 , 100 , 500
    A = 0
    End If
    '44444444444444444444444444444444444444444444 444
    If A = 4 Then
    For E = 1 To 15
    Waitms 500
    Sound Pinb.1 , 50 , 50
    If A = 10 Then
    jmp okch4
    End If
    If A = 11 Then
    Set Rel4
    jmp okch4
    End If
    If A = 12 Then
    Reset Rel4
    jmp okch4
    End If
    Next
    Okch4:
    Sound Pinb.1 , 100 , 500
    A = 0
    End If
    '55555555555555555555555555555555555555555555 5555555
    If A = 5 Then
    For E = 1 To 15
    Waitms 500
    Sound Pinb.1 , 50 , 50
    If A = 10 Then
    jmp okch5
    End If
    If A = 11 Then
    Set Rel5
    jmp okch5
    End If
    If A = 12 Then
    Reset Rel5
    jmp okch5
    End If
    Next
    Okch5:
    Sound Pinb.1 , 100 , 500
    A = 0
    End If
    '66666666666666666666666666666666666666666666 6666666
    If A = 6 Then
    For E = 1 To 15
    Waitms 500
    Sound Pinb.1 , 50 , 50
    If A = 10 Then
    jmp okch6
    End If
    If A = 11 Then
    Set Rel6
    jmp okch6
    End If
    If A = 12 Then
    Reset Rel6
    jmp okch6
    End If
    Next
    Okch6:
    Sound Pinb.1 , 100 , 500
    A = 0
    End If
    '77777777777777777777777777777777777777777777 777777777
    If A = 7 Then
    For E = 1 To 15
    Waitms 500
    Sound Pinb.1 , 50 , 50
    If A = 10 Then
    jmp okch7
    End If
    If A = 11 Then
    Set Rel7
    jmp okch7
    End If
    If A = 12 Then
    Reset Rel7
    jmp okch7
    End If
    Next
    Okch7:
    Sound Pinb.1 , 100 , 500
    A = 0
    End If
    '88888888888888888888888888888888888888888888 88888888
    If A = 8 Then
    For E = 1 To 15
    Waitms 500
    Sound Pinb.1 , 50 , 50
    If A = 10 Then
    jmp okch8
    End If
    If A = 11 Then
    Set Rel8
    jmp okch8
    End If
    If A = 12 Then
    Reset Rel8
    jmp okch8
    End If
    Next
    Okch8:
    Sound Pinb.1 , 100 , 500
    A = 0
    End If
    '99999999999999999999999999999999999999999999 99999999
    If A = 9 Then
    For E = 1 To 15
    Waitms 500
    Sound Pinb.1 , 50 , 50
    If A = 10 Then
    jmp okch9
    End If
    If A = 11 Then
    Set Rel9
    jmp okch9
    End If
    If A = 12 Then
    Reset Rel9
    jmp okch9
    End If
    Next
    Okch9:
    Sound Pinb.1 , 100 , 500
    A = 0
    End If
    '10101010101010101010101010101010101010101010 101010
    If A = 10 Then
    A = 0
    For E = 1 To 15
    Waitms 500
    Sound Pinb.1 , 50 , 50
    If A = 10 Then
    jmp okch10
    End If
    If A = 11 Then
    Set Rel10
    jmp okch10
    End If
    If A = 12 Then
    Reset Rel10
    jmp okch10
    End If
    Next
    Okch10:
    Sound Pinb.1 , 100 , 500
    A = 0
    End If
    '11111111111111111111111111111111111111111111 11111111111
    If A = 11 Then
    A = 0
    For E = 1 To 15
    Waitms 500
    Sound Pinb.1 , 50 , 50
    If A = 10 Then
    jmp okch11
    End If
    If A = 11 Then
    Set Rel11
    jmp okch11
    End If
    If A = 12 Then
    Reset Rel11
    jmp okch11
    End If
    Next
    Okch11:
    Sound Pinb.1 , 100 , 500
    A = 0
    End If
    '12121212121212121212121212121212121212121212 121212121212
    If A = 12 Then
    A = 0
    For E = 1 To 15
    Waitms 500
    Sound Pinb.1 , 50 , 50
    If A = 10 Then
    jmp okch12
    End If
    If A = 11 Then
    Set Rel12
    jmp okch12
    End If
    If A = 12 Then
    Reset Rel12
    jmp okch12
    End If
    Next
    Okch12:
    Sound Pinb.1 , 100 , 500
    A = 0
    End If
    '............................................ ............
    Next G
    E = 0
    D = 0
    Sound Pinb.1 , 100 , 1000
    Reset Rel
    jmp main
    '-------------------------------------------------------
    '============================================ ===========
    '-------------------------------------------------------
    Int00:
    A = Pind
    A.2 = A.4
    A.3 = A.5
    A.4 = 0
    A.5 = 0
    A.6 = 0
    A.7 = 0
    G = 0
    Incr D
    E = 0
    Return
    End


    لینک دانلود فایل حاوی اطلاعات در مورد مدار
    http://www.4shared.com/file/32904948/85e12499/mt8870.html?dirPwdVerified=5d2320c9


    فایل های پیوست شده
    انجام پروژه هاي برنامه نويسي اندرويد
    [glow=red,2,300]نرم افزار نقشه هاي پاور کامپيوتر اندوريد[/glow]
    http://cafebazaar.ir/app/?id=com.atxdroid

    #2
    پاسخ : کنترل راه دور با خط تلفن 12 کانال

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

    دیدگاه


      #3
      پاسخ : کنترل راه دور با خط تلفن 12 کانال

      دوست عزیز در مورد مدارت واسه کاهش قطعاتت می تونی از رله 5 ولتی استفاده بکنی

      یه سوال : از اون اپ امپ برای چه کاری استفاده کردید؟؟ این اپ امپ مقایسه کننده است که پایه ای که به sound زدی رو با یه نسبتی از ولتاژ تغذیه مقایسه می کنه؟
      ضمنا توی این مدارت خط های io رو چرا درنظر نگرفتید همون هائی که باید کنترل رو انجام بدن ( کنترل کلیدی )

      ضمنا مدارات با گرفتن یه شماره تلفن و کدگشائی اون عمل اجازه اعمال کنترل رو میده ( به برنامه ات وقت نکردم نگاه بکنم ) یا نه جور دیگه است

      موفق باشی

      دیدگاه


        #4
        پاسخ : کنترل راه دور با خط تلفن 12 کانال

        نوشته اصلی توسط رضا حاجی زاده
        دوست عزیز در مورد مدارت واسه کاهش قطعاتت می تونی از رله 5 ولتی استفاده بکنی

        یه سوال : از اون اپ امپ برای چه کاری استفاده کردید؟؟ این اپ امپ مقایسه کننده است که پایه ای که به sound زدی رو با یه نسبتی از ولتاژ تغذیه مقایسه می کنه؟
        ضمنا توی این مدارت خط های io رو چرا درنظر نگرفتید همون هائی که باید کنترل رو انجام بدن ( کنترل کلیدی )

        ضمنا مدارات با گرفتن یه شماره تلفن و کدگشائی اون عمل اجازه اعمال کنترل رو میده ( به برنامه ات وقت نکردم نگاه بکنم ) یا نه جور دیگه است

        موفق باشی

        او 741 همونطور که توضیح داده بودم
        خروجی صدای at8 رو که portb.1 هست رو به 741 دادمش تا دامنه اون رو به 12vبرسونم و با خازن 104 به خط وصل کردم
        و باید بگم که مدار گوشی رو برمیداره و در صورت صحیح دادن رمز وارد مرحله کنترل دوازده تا رله میشه
        و یک سوال مگر برای سویچ کردن رله پنج ولت نباید یک مقاومت و یک ترانزیستور زد پس چه فرقی میکنه
        انجام پروژه هاي برنامه نويسي اندرويد
        [glow=red,2,300]نرم افزار نقشه هاي پاور کامپيوتر اندوريد[/glow]
        http://cafebazaar.ir/app/?id=com.atxdroid

        دیدگاه


          #5
          پاسخ : کنترل راه دور با خط تلفن 12 کانال

          لینک دانلود فایل حاوی اطلاعات در مورد مدار
          http://www.4shared.com/file/32904948/85e12499/mt8870.html?dirPwdVerified=5d2320c9
          لینک دیگه کار نمی کنه می شه دوباره پلود کنید؟

          برنامه به چه زبانی هست و با چه نرم افزاری باید تستش کرد؟؟

          ممنون
          It's okay to pick your friends, but don't pick them to pieces- means give prize then criticism if it's a friend!

          دیدگاه


            #6
            پاسخ : کنترل راه دور با خط تلفن 12 کانال

            نوشته اصلی توسط beheshtaein
            لینک دانلود فایل حاوی اطلاعات در مورد مدار
            http://www.4shared.com/file/32904948/85e12499/mt8870.html?dirPwdVerified=5d2320c9
            لینک دیگه کار نمی کنه می شه دوباره پلود کنید؟

            برنامه به چه زبانی هست و با چه نرم افزاری باید تستش کرد؟؟

            ممنون
            سلام عزیزم
            از اونجای که هیج برنامه انالیزری mt8870 رو نداره (تا اونجای که من خبر دارم) پس باید مدارت رو به صورت عملی امتحان کنی
            و مبتونی از قسمت mt 8870 شروع کنی یعنی بعد از بستن مدار و برای امتحان میتونی روی Q1 at Q4 mt8870 ال ای دی بزنی و نتیجه کارت رو ببینی
            این هم مدار mt



            مقادری المانها

            R1= 100 KOhm
            R2= 100 KOhm
            R3= 270 KOhm

            C1= 100 nF
            C2= 100 nF
            C3= 100 nF

            XTAL= Quarzo da 3,58MHz
            IC1= MT8870
            و بعد از امتحان در صورتی که درست باشه ای ای دی ها به صورت باینری عدد رو نشون میدن که اگر به ده ده ای تبدیل کنی عدد مورد نظر رو میبینی
            و حالا نوبت به اتصال mt به atmega8 میرسه که به شکل زیر هست
            pd0 to Q0
            pd1 to Q1
            pd4 to Q2
            pd5 to Q3
            pd2 to std

            و برنامه همون برنامه بالا هست
            امیدوارم موفق باشی
            اگه بازم مشکلی داشتی ما در خدمتیم
            انجام پروژه هاي برنامه نويسي اندرويد
            [glow=red,2,300]نرم افزار نقشه هاي پاور کامپيوتر اندوريد[/glow]
            http://cafebazaar.ir/app/?id=com.atxdroid

            دیدگاه


              #7
              پاسخ : کنترل راه دور با خط تلفن 12 کانال

              جناب mohsen.hex از راهنمایی هاتون ممنونم...

              اما مدار میکروکنترلر به چه صورت هست؟ برای تست این مدار من نیاز دارم به یک روشی اول خط رو وصل کنم، (اگه مدار میکروکنترلر و رله و.. نبسته باشم) چه طور می شه این کار رو به صورت دستی انجام داد؟
              ما مداری شبیه به مدار بالا بستیم (فقط یه کم فرق داره که به نظرم خیلی مهم نیست و دو مدار مثل همه) اما وقتی که زنگ می زدیم برای وصل مدار از یک مقاومت 220 اهمی استفاده کردیم، اتفاق مسخره ای که می افتاد و بیچاره مون کرد این بود که هر بار یک جوابی می گرفتیم. یه بار مقاومته می تونست خط تلفن رو وصل کنه و بعد خط وصل شده رو در مدار mt8870 می گذاشتیم و با اسکوپ خروجی ها رو نگاه می کردیم(با موبایل تماس گرفته بودیم) با زدن کلیدهای موبایل هیچ تغییری در خروجی mt8870 مشاهده نمی شد!! :angry: اما بار دیگه اصلا مقاومت نمی تونست خط رو وصل کنه و داغ می کرد و بوی سوختگی از مدار.... و اما بار دیگر با گذاشتن مقاومت 220 اهمی صدای موسیقی از داخل موبایل شنیده می شد :surprised: خلاصه اعصاب واسه ما نذاشت دیگه :angry:
              توروخدا کمک کنید به نظر شما اشکال از کجا بوده که هر بار یه نتیجه ای می گیریم؟؟
              راستی یه چیز دیگه که ممکنه مهم باشه اینه که ما از خط تلفن دانشگاه استفاده می کنیم که احتمالا از مرکز تلفن دانشگاه کنترل می شه ممکنه سیستمش فرق داشته باشه و باعث این مشکل شده؟؟
              مرسی
              It's okay to pick your friends, but don't pick them to pieces- means give prize then criticism if it's a friend!

              دیدگاه


                #8
                پاسخ : کنترل راه دور با خط تلفن 12 کانال

                نوشته اصلی توسط beheshtaein
                جناب mohsen.hex از راهنمایی هاتون ممنونم...

                اما مدار میکروکنترلر به چه صورت هست؟ برای تست این مدار من نیاز دارم به یک روشی اول خط رو وصل کنم، (اگه مدار میکروکنترلر و رله و.. نبسته باشم) چه طور می شه این کار رو به صورت دستی انجام داد؟
                ما مداری شبیه به مدار بالا بستیم (فقط یه کم فرق داره که به نظرم خیلی مهم نیست و دو مدار مثل همه) اما وقتی که زنگ می زدیم برای وصل مدار از یک مقاومت 220 اهمی استفاده کردیم، اتفاق مسخره ای که می افتاد و بیچاره مون کرد این بود که هر بار یک جوابی می گرفتیم. یه بار مقاومته می تونست خط تلفن رو وصل کنه و بعد خط وصل شده رو در مدار mt8870 می گذاشتیم و با اسکوپ خروجی ها رو نگاه می کردیم(با موبایل تماس گرفته بودیم) با زدن کلیدهای موبایل هیچ تغییری در خروجی mt8870 مشاهده نمی شد!! :angry: اما بار دیگه اصلا مقاومت نمی تونست خط رو وصل کنه و داغ می کرد و بوی سوختگی از مدار.... و اما بار دیگر با گذاشتن مقاومت 220 اهمی صدای موسیقی از داخل موبایل شنیده می شد :surprised: خلاصه اعصاب واسه ما نذاشت دیگه :angry:
                توروخدا کمک کنید به نظر شما اشکال از کجا بوده که هر بار یه نتیجه ای می گیریم؟؟
                راستی یه چیز دیگه که ممکنه مهم باشه اینه که ما از خط تلفن دانشگاه استفاده می کنیم که احتمالا از مرکز تلفن دانشگاه کنترل می شه ممکنه سیستمش فرق داشته باشه و باعث این مشکل شده؟؟
                مرسی

                سلام
                برای امتحان mt همون طور که گفتم روی خروجی های mt یعنی Q0 و Q1 و Q2 و Q3 ال ای ای بزن (به طور جداگانه )اگر وضعیت ای ای دی ها به این شکل بود
                Q0 روشن و Q1 خاموش و Q2 خاموش و Q3 خاموش یعنی
                1 0 0 0
                یا 0001 که تبدبل باینری به ده دهی میشود عدد یک یا به عبارتی دکمه یک

                یا

                Q0 روشن و Q1 خاموش و Q2 روشن و Q3 خاموش یعنی
                1 0 1 0
                یا 0101 که تبدبل باینری به ده دهی میشود عدد پنج یا به عبارتی دکمه پنج
                لازم ذکر هست که بگم mt8870 تا زمانی که کلید بعد زده نشده در حالت قبل میمونه
                و پایه std با هر بار زدن کلید صفحه کلید تلفن یک پالس تولید میکنه همزمان این پالس پایه ها هم مقدار جدید را نمایش میدن


                شما میتونی برای اطمینان از صحت خط تلفن یک گوشی وصل کنی و اونو برداری و با زدن کلید تونی که تولید میشه هم بشنوی و هم روی mt نتیجه رو ببینی زمنن احتیاج نیست که حتما زنگ بزنی چون mt هر پالسی که شبیح به تن تلفن باشه اشکار میکنه هالا یه خدا خیرت بده بگو چون کلی از خرجت کم میشه تا اونجای که من میدونم می تونی با دادن برق 9 ولت به تلفونت اونو بدون اینکه به خط مخابرات وصل کنی روشن کنی و صدای تن رو داشته باشی

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

                خلاصه اعصاب واسه ما نذاشت دیگه :angry:
                خون کثیف خودتو الو ده نکن
                در ضمن مدار کامل و برنامه رو برات در اولین فرصت میزارم
                انجام پروژه هاي برنامه نويسي اندرويد
                [glow=red,2,300]نرم افزار نقشه هاي پاور کامپيوتر اندوريد[/glow]
                http://cafebazaar.ir/app/?id=com.atxdroid

                دیدگاه


                  #9
                  پاسخ : کنترل راه دور با خط تلفن 12 کانال

                  خدا خیرت بده زبونتم خیر کنه :mrgreen:

                  منتظرم...
                  It's okay to pick your friends, but don't pick them to pieces- means give prize then criticism if it's a friend!

                  دیدگاه


                    #10
                    پاسخ : کنترل راه دور با خط تلفن 12 کانال

                    با سلام
                    ضمن تشکر از پروژه جالب شما وال اینکه لینک دانلود کار نمیکنه دوباره اپلودش بفرما
                    دوم هم اینکه اگر لطف کنی همه برنامه رو سطر به سطر برا من بی سواد توضیح بدی یه دنیا ممنونت میشم
                    خدا خیرت بده
                    خداوندا تو چناني كه دوستت ميدارم...
                    مراچنان كن كه تو دوست ميداري

                    دیدگاه


                      #11
                      پاسخ : کنترل راه دور با خط تلفن 12 کانال

                      آقا محسن لینکت خرابه....... :biggrin:

                      دیدگاه


                        #12
                        پاسخ : کنترل راه دور با خط تلفن 12 کانال

                        چشم تا چند لحضه دیگه از دوباره اپلود میکنم
                        و در مورد توضیح برنامه چشم امشب خونه رفتم براتون میزارم حمید خان عزیز دل :biggrin:
                        انجام پروژه هاي برنامه نويسي اندرويد
                        [glow=red,2,300]نرم افزار نقشه هاي پاور کامپيوتر اندوريد[/glow]
                        http://cafebazaar.ir/app/?id=com.atxdroid

                        دیدگاه


                          #13
                          پاسخ : کنترل راه دور با خط تلفن 12 کانال

                          از این که لینک بالا خراب شده معذرت میخام البته من پروژه رو حذف نکردم بلکه خود 4شرید حذف کرده
                          این هم لینک جدید
                          http://www.4shared.com/file/42760123/7a9701b1/mt8870_to_atmega_8.html?dirPwdVerified=5d2320c9
                          توضیحات
                          فایلmadar.dsn فایل حاوی سیم کشی مدار هست
                          فایل madar.LYT حاوی پشت فیبر مدار هست که خودم طراحی کردم و فکر میکنم چندتا مشکل کوچک داره بهتره خودتون چکش کنین و من برای قطع وصل کردن رله ها که از avr قطع وصل میشن پین هدر زدم و از روی برد مادر سیم بردم به بردی که رله ها روی اون سوار بودن
                          فایل mt 0.9ok.bas حاوی برنامه برای بسکام هستش
                          و
                          اینا رو از بالا برداشتم
                          اول این که من mt8870گیرم نیومد و از il8870 استفاده کردم
                          اپتوکوپلر که من استفاده کردم 817هست و چهار پایه داره ولی در شبیح سازی اپتوکوپلره 6پایه داره شما از پایه ششم صرف نظر کنین
                          خوروجی برای رله پایه های portb.2 تاpinb.7 و pinc.0 تا pinc.5هست ومن اونا رو فقط با ledامتحان کردم
                          خروجی صدای at8 رو که portb.1 هست رو به 741 دادمش تا دامنه اون رو به 12vبرسونم و با خازن 104 به خط وصل کردم
                          اینتراپس مدار هم pind.2 هست که به mt8870وصله
                          اون چهار بیت که از mt8870خارج میشه رو به pind.0 , pind.1 , pind.4 ,pind.5 وصل کردم
                          برای این که به طور اتوماتیک گوشی رو برداره خط تلفن رو به یک اپتو کوپلر دادم و خوریجیش رو با یک ترانزیسور به pinb.6 دادم
                          توضیح مختصری برای برنامه
                          اول چک میکنه که اگر pind.6 یک شد یک واحد به cاضاف میکنه و هروقت c=2خط رو وصل میکنه بعد از ستا بوق رمز زو میخاد وبعد )2314( با زدن هر کلید روی صفحه کلید تلفن میپره روی برنامه اون رله و با زدن کلید # رله رو خاموش میکنه وبا زدن کلید 0 بدون هیچ تاثیری بر روی این رله برمیگرده وبا زدن کلید * رله رو روشن میکنه قابل ذکر هست که

                          :nerd:
                          انجام پروژه هاي برنامه نويسي اندرويد
                          [glow=red,2,300]نرم افزار نقشه هاي پاور کامپيوتر اندوريد[/glow]
                          http://cafebazaar.ir/app/?id=com.atxdroid

                          دیدگاه


                            #14
                            پاسخ : کنترل راه دور با خط تلفن 12 کانال

                            اینم قسمتی از توضیح برنامه که گفته بودین بزار

                            $regfile = "m8def.dat" برای انتحاب میکرو
                            $crystal = 2000000 فرکانس کاری میکرو
                            Config Int0 = Rising پیکر بندی پایه انتراپس از نوع پاین رونده
                            Enable Interrupts فعال کردن وقفه خارجی
                            Enable Int0 فعال کردن انتراپت یک
                            On Int0 Int00 روشن کردن اینتراپت یک
                            Cursor Off خاموش کردن مکان نما روی نمایشگر
                            Dim A As Byte قراردادن a از نوع بایت
                            Dim B As Single قراردادن b از نوع سانگل
                            Dim C As Byte تکرار
                            Dim D As Byte تکرار
                            Dim E As Long تکرار
                            Dim F As Byte تکرار
                            Dim G As Long تکرار
                            Dim H As Long تکرار
                            Rel Alias Portb.0 از این به بعد اسم portb.0 میشود rel
                            Rel1 Alias Portb.2 از این به بعد اسم portb.0 میشود rel1
                            Rel2 Alias Portb.3 تکرار
                            Rel3 Alias Portb.4 تکرار
                            Rel4 Alias Portb.5 تکرار
                            Rel5 Alias Portb.6 تکرار
                            Rel6 Alias Portb.7 تکرار
                            Rel7 Alias Portc.0 تکرار
                            Rel8 Alias Portc.1 تکرار
                            Rel9 Alias Portc.2 تکرار
                            Rel10 Alias Portc.3 تکرار
                            Rel11 Alias Portc.4 تکرار
                            Rel12 Alias Portc.5 تکرار
                            Config Portb = Output م portb را به شکل خروجی معرفی کن
                            Config Portd = Input م portd را به شکل ورودی معرفی کن
                            Config Portc = Output "
                            A = 0 مقدار a را مساوی صفر قرار بده
                            B = 0 تکرار
                            C = 0 تکرار
                            D = 0 تکرار
                            E = 0 تکرار
                            F = 0 تکرار
                            Sound Pinb.1 , 400 , 100 صدا ای بر روی pinb.1 با بلندی 400 و مقدار 100 پالس تولید کن
                            Main:
                            C = 0
                            Do شروع حلقه
                            If Pind.6 = 0 Then اگر pind.6 مساوی 0 بود
                            jmp respons پرش کن به respons
                            End If پایان اگر
                            Loop پایان حلقه
                            '--------------------------------------------------------------------
                            Respons:
                            Incr C یک واحد به cاضاف کن
                            If C = 2 Then اگر برابر 2 بود
                            Set Rel رله را یک کن این رله در صورتی روشن میشود که c برابر 2 شود و عدد c از یک شدن pind.6 بدست می اید که با هر بار زنگ خوردن گوشی یک عد د به c اضاف میشود که از راه اپتو کوپلر متوجه میشود
                            jmp main2 بپر به main2
                            End If پایان اگر
                            Waitms 2000 م 2000 میلی ثانیه صبر کن
                            For E = 1 To 50000 با هر بار رسیدن به این نقطه یک واخد به e اضاف کن
                            If Pind.6 = 0 Then اگر pind.6 مساوی 0 بود
                            jmp respons بپر به respons
                            End If پایان اگر
                            Next این دستور مربوط به for e = 1 to 50000 است که زمانی که مقدار e به 50000 رسید از این قسمت عبور کن مو در صورتی که کمتر از 50000 بود برو به for e = 1 to 50000
                            C = 0
                            jmp main
                            من که خسته شدم شما چی اخه تا الان سر کار بودم
                            بقیه داستان در شب اینده'
                            انجام پروژه هاي برنامه نويسي اندرويد
                            [glow=red,2,300]نرم افزار نقشه هاي پاور کامپيوتر اندوريد[/glow]
                            http://cafebazaar.ir/app/?id=com.atxdroid

                            دیدگاه


                              #15
                              پاسخ : کنترل راه دور با خط تلفن 12 کانال

                              Main2: مین دوم
                              D = 0
                              Waitms 400
                              Sound Pinb.1 , 400 , 100 صدا روی pinb.1 با طول 400 و تکرار 100 پالس تولید کن
                              Waitms 100
                              Sound Pinb.1 , 400 , 100 صدا روی pinb.1 با طول 400 و تکرار 100 پالس تولید کن
                              For E = 1 To 100000 یک واحد به e اصاف کن تا زمانی که 100000 شود بعد از نکست عبور کن
                              Checkpass: لیبل چک رمز
                              If D = 1 Then اگر d مساوی 1 سپس ( then یعنی سپس)
                              jmp c1 بپر به c1
                              End If پایان اگر ( هر دستور if با endif تمام میشود)
                              If D = 3 Then دستور تکراری با لا توضیح داده شده
                              jmp c2 دستور تکراری با لا توضیح داده شده
                              End If دستور تکراری با لا توضیح داده شده
                              If D = 5 Then دستور تکراری با لا توضیح داده شده
                              jmp c3 دستور تکراری با لا توضیح داده شده
                              End If دستور تکراری با لا توضیح داده شده
                              If D = 7 Then دستور تکراری با لا توضیح داده شده
                              jmp c4 دستور تکراری با لا توضیح داده شده
                              End If دستور تکراری با لا توضیح داده شده
                              If D >= 8 Then اگر d بیشتر یا مساوی هشت بود سپس
                              Reset Rel رله را خاموش کن (این رله mt8870 را وارد مدار میکند برای دیکد کردن اطلاعات)
                              D = 0 دستور تکراری با لا توضیح داده شده
                              End If دستور تکراری با لا توضیح داده شده
                              Next دستور تکراری با لا توضیح داده شده
                              Sound Pinb.1 , 1000 , 100 دستور تکراری با لا توضیح داده شده
                              Reset Rel دستور تکراری با لا توضیح داده شده
                              jmp main دستور تکراری با لا توضیح داده شده
                              '--------------------------------------------------
                              از این قسمت به بعد کلیه دستورها تکراری میباشند
                              C1:
                              If A = 2 Then
                              D = 2
                              Waitms 200
                              jmp Checkpass
                              Else
                              Waitms 1000
                              Sound Pinb.1 , 1000 , 100
                              Reset Rel
                              jmp main
                              End If
                              jmp Checkpass
                              C2:
                              If A = 3 Then
                              Waitms 200
                              D = 4
                              jmp Checkpass
                              Else
                              Waitms 1000
                              Sound Pinb.1 , 1000 , 100
                              Reset Rel
                              jmp main
                              End If
                              jmp Checkpass
                              C3:
                              If A = 1 Then
                              D = 6
                              jmp Checkpass
                              Else
                              Waitms 1000
                              Sound Pinb.1 , 1000 , 100
                              Reset Rel
                              jmp main
                              End If
                              jmp Checkpass
                              C4:
                              If A = 4 Then
                              jmp start0
                              Else
                              Waitms 1000
                              Sound Pinb.1 , 1000 , 100
                              Reset Rel
                              jmp main
                              End If

                              بقیه داستان در شب بعد
                              دارم روی mmc کار میکنم بخاتر همین انشا الله فردا شب در خدمتم
                              :nerd:
                              انجام پروژه هاي برنامه نويسي اندرويد
                              [glow=red,2,300]نرم افزار نقشه هاي پاور کامپيوتر اندوريد[/glow]
                              http://cafebazaar.ir/app/?id=com.atxdroid

                              دیدگاه

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