اطلاعیه

Collapse
No announcement yet.

کمک در مورد کاهش و افزایش اعداد

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

    کمک در مورد کاهش و افزایش اعداد

    سلام دوستان
    من می خواهم یه برنامه بنویسم به این صورت.

    یک کیبورد ماتریسی 4 در 4 رو به atmega32 وصل می کنیم. یک میکرو دیگر یک LED وصل می کنیم. در میکرو دوم یک برنامه چشمک زن می نویسیم و LED هر یک ثانیه روشن و خاموش می شود. حالا در میکرو اول با وارد کردن هر عدد در میکرو دوم بتوان ان یک ثانیه رو تغییر داد. مثلا اگر در میکرو اول عدد 5 زده شود در میکرو دوم به جای 1 ثانیه هر 5 ثانیه یک بار چشمک بزنه
    ارتباط میکرو اول و دوم به صورت بی سیم باشد. البته به زبان bascom avr
    l

    #2
    پاسخ : کمک در مورد کاهش و افزایش اعداد

    به نظر من شما پروژه ات رو به دوقسمت تقسیم کن. بخش اول ارتباط بی سیم و بخش دوم میکرو.
    در بخش بی سیم به یک جفت ماژول فرستنده و گیرنده احتیاج داری. پس برای ارتباط با ماژول فرستنده و گیرنده باید ارتباط سریال رو یاد بگیری.
    در بخش میکرو باید برای چشمک زدن LED بری سراغ PWM و برای اسکن صفحه کلید از توابع آماده بسکام استفاده کنی.

    حالا از این موارد کدومشو بلدی ؟
    دلا یاران سه قسمند ار بدانی
    زبانی اند و نانی اند و جانی
    به نانی نان بده از در برانش
    محبت کن به یاران زبانی
    و لیکن یار جانی را به دست آر
    به جانش جان بده تا می توانی

    دیدگاه


      #3
      پاسخ : کمک در مورد کاهش و افزایش اعداد

      حتما تو برنامه از وقفه دریافت دیتای سریال استفاده کن ( URXC )

      دیدگاه


        #4
        پاسخ : کمک در مورد کاهش و افزایش اعداد

        سلام
        گر می شود یه مثال عملی بزارید

        دیدگاه


          #5
          پاسخ : کمک در مورد کاهش و افزایش اعداد

          نوشته اصلی توسط feshwari
          سلام دوستان
          من می خواهم یه برنامه بنویسم به این صورت.

          یک کیبورد ماتریسی 4 در 4 رو به atmega32 وصل می کنیم. یک میکرو دیگر یک LED وصل می کنیم. در میکرو دوم یک برنامه چشمک زن می نویسیم و LED هر یک ثانیه روشن و خاموش می شود. حالا در میکرو اول با وارد کردن هر عدد در میکرو دوم بتوان ان یک ثانیه رو تغییر داد. مثلا اگر در میکرو اول عدد 5 زده شود در میکرو دوم به جای 1 ثانیه هر 5 ثانیه یک بار چشمک بزنه
          ارتباط میکرو اول و دوم به صورت بی سیم باشد. البته به زبان bascom avr
          l
          با سلام
          جناب شرفی ، در صورتی که مسافت این دو میکرو زیاد نیست ، از یک کنترل از راه دور تلویزیون با پروتکل RC5 استفاده بفرمایید .
          فقط کافیه که توسط میکرو دوم ، تعداد پالسهای میکرو اول رو بخونید و بعد تصمیم گیری نمایید .
          پروتکل RC5 در اینترنت ، بوفور توضیح داده شده .
          موفق باشید .

          دیدگاه


            #6
            پاسخ : کمک در مورد کاهش و افزایش اعداد

            من چیزی از اونا سر در نمی آورم. اگه می شود یه مثال عملی بیارید
            ممنون
            محمد شرفی

            دیدگاه


              #7
              پاسخ : کمک در مورد کاهش و افزایش اعداد

              دیدگاه


                #8
                پاسخ : کمک در مورد کاهش و افزایش اعداد

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

                ' RECIVER UNIT

                $regfile = "m8def.dat"
                $crystal = 8000000

                Dim Address As Byte , Command As Byte
                Config Rc5 = Pinc.6
                Config Portb = Output
                Enable Interrupts
                Do
                Getrc5(address , Command)
                Print "asd"
                If Address = 5 Then
                If Command = 1 Then Set Portb.0
                If Command = 2 Then Reset Portb.0
                End If
                Loop




                ' SENDER UNIT


                $regfile = "m8def.dat"
                $crystal = 8000000
                Config Portc = Input
                Config Debounce = 30
                Dim Togbit As Byte , Command As Byte , Address As Byte
                Togbit = 0
                Address = 0
                Hamed:
                Do
                Debounce Pinc.6 , 1 , Comm
                Debounce Pinc.6 , 0 , Comm2
                Loop
                End

                Comm:
                Waitms 50
                Command = 1
                Rc5send Togbit , Address , Command
                jmp hamed

                Cmm2:
                waitms 50
                command=2
                Rc5send Togbit,address,command
                jmp hamed

                دیدگاه


                  #9
                  پاسخ : کمک در مورد کاهش و افزایش اعداد

                  نوشته اصلی توسط feshwari
                  من چیزی از اونا سر در نمی آورم. اگه می شود یه مثال عملی بیارید
                  ممنون
                  محمد شرفی
                  با سلام

                  در سایت اتمل ، دو فایل pdf هست که با دو میکرو avr فرستنده و گیرنده IR ساخته ، با برنامه و توضیحات کامل
                  www.newgenbit.com/product/avr/data/doc2534.pdf
                  AVR415 : RC5 IR Remote Control Transmitterr
                  www.atmel.com/dyn/resources/prod_documents/DOC1473.PDF
                  AVR410 : RC5 IR Remote Control Receiver

                  دیدگاه


                    #10
                    پاسخ : کمک در مورد کاهش و افزایش اعداد

                    ممنون از اینکه جواب دادی. من یه توضیح کامل از این برنامه بالا می خواستم

                    دیدگاه


                      #11
                      پاسخ : کمک در مورد کاهش و افزایش اعداد

                      سلام.

                      گیرنده پایه C.6 هست.

                      فرستنده، خروجی پایه Timer1 هست. OC1A

                      دیدگاه


                        #12
                        پاسخ : کمک در مورد کاهش و افزایش اعداد

                        ممنون
                        خروجی فرستنده Timer1 است ورودی کدام است؟

                        آیا در گیرنده ورودی C.6 است؟ پس خروجی کدام است؟
                        ممنون
                        محمد شرفی

                        دیدگاه


                          #13
                          پاسخ : کمک در مورد کاهش و افزایش اعداد

                          سلام. بزارین کاملتر بگم.

                          در مدار گیرنده:

                          سنسور گیرنده به پایه C.6 وصل میشه.

                          اگر آدرس دریافتی 5 باشد،
                          اگر دستور دریافت شده برابر 1 باشد، مقدار پرت B.0 برابر 1 می شود و اگر دستور دریافت شده برابر 2 باشد پرتB.1 برابر 0 می گردد.




                          در مدار فرستنده:

                          سنسور فرستنده به OCR1A، وصل می شه. ( نحوه اتصالات در Help نرم افزار Bascom موجود است)
                          اگر پین C.6 برابر 1 شود، دستور 1 با آدرس 5 ارسال می شود.
                          اگر پین C.6 برابر 0 شود، دستور 2 با آدرس 5 ارسال می شود.

                          در اینجا پین C.6 نقش دکمه های کنترل را دارند. شما می توانید از هر پین دیگری برای این منظور استفاده کنید.یعنی می توانید اینطور بنویسید:

                          config portb = input
                          portb=255
                          Debounce Pinb.0 , 0 , Comm
                          Debounce Pinb.1 , 0 , Comm2

                          دیدگاه


                            #14
                            پاسخ : کمک در مورد کاهش و افزایش اعداد

                            ممنون آقا افشین
                            می شود فایل پروتوس برنامه RC5 بالا رو بکشی؟
                            محمد شرفی

                            دیدگاه


                              #15
                              پاسخ : کمک در مورد کاهش و افزایش اعداد

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

                              دیدگاه

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