اطلاعیه

Collapse
No announcement yet.

مشکل در ارتباط UART بین دو میکرو avr

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

    مشکل در ارتباط UART بین دو میکرو avr

    با سلام به همه ی دوستان :
    من یه برنامه توی بسکام نوشتم که یک میکرو کیبورد 4*4 رو اسکن میکنه و عدد متناظر با هر کلید رو به میکرو دوم می فرسته . این برنامه تو پروتئوس عالی جواب میده ولی هر کاری میکنم روی بردبورد جواب نمیده و عددهای بی معنی نشون میده.
    اگه کسی می دونه مشکل کجاست لطفا کمک کنه چون وقتم خیلی کمه :nerd:

    #2
    پاسخ : مشکل در ارتباط UART بین دو میکرو avr

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

    دیدگاه


      #3
      پاسخ : مشکل در ارتباط UART بین دو میکرو avr

      سلام:
      برای هر دو میکرو از فرکانس داخلی استفاده کردم(4 مگا)و باود هر دو رو 9600 قرار دادم با این وجود توی پروتئوس جواب میده ولی روی برد بورد مثلا اگه من عدد 8 از کیبورد 4*4 رو فشار بدم LCD عدد 65531 رو نمایش میده. :eek:

      دیدگاه


        #4
        پاسخ : مشکل در ارتباط UART بین دو میکرو avr

        سورس برنامتو بزاری بهتر میشه نظر داد

        دیدگاه


          #5
          پاسخ : مشکل در ارتباط UART بین دو میکرو avr

          برنامه فرستنده:
          $regfile = "M8DEF.DAT"
          $crystal = 1000000
          $baud = 9600
          Config Pind.1 = Output
          Config Lcdpin = Lcd , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = _
          Portc.5 , E = Portc.0 , Rs = Portc.1
          Config Kbd = Portb , Debounce = 20 , Delay = 100


          Dim A As Byte


          Do

          A = Getkbd()
          A = Lookup(a , Read_key)

          Printbin A

          Cls
          Lcd A

          Waitms 100

          Loop
          End

          Read_key:
          Data 13 , 14 , 0 , 15 , 12 , 9 , 8 , 7 , 11 , 6 , 5 , 4 , 10 , 3 , 2 , 1

          برنامه گیرنده:
          $regfile = "M32DEF.DAT"
          $crystal = 1000000
          $baud = 9600
          Config Lcdpin = Lcd , Db4 = Porta.2 , Db5 = Porta.3 , Db6 = Porta.4 , Db7 = _
          Porta.5 , E = Porta.0 , Rs = Porta.1
          Config Portb = Output
          Config Pind.7 = Output
          Config Pind.0 = Input

          Dim A As Byte

          Do

          Inputbin A

          Cls
          Locate 1 , 3
          Lcd A
          Waitms 100
          Loop

          End

          دیدگاه


            #6
            پاسخ : مشکل در ارتباط UART بین دو میکرو avr

            اشتباهت اینجاست
            4 مگ داخلی انتخاب کردی بعد توی برنامه نوشتی 1 مگ :eek:
            توی پروتوس هم فرکانس پیش فرض میکرو 1 مگ هست

            دیدگاه


              #7
              پاسخ : مشکل در ارتباط UART بین دو میکرو avr

              بله دمت گرم حق با شما بود، مشکل حل شد
              از لطف همه ممنون :bye

              دیدگاه


                #8
                پاسخ : مشکل در ارتباط UART بین دو میکرو avr

                خوب تشکر بزن دیگه :mrgreen:

                دیدگاه

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