اطلاعیه

Collapse
No announcement yet.

آیا ارتباط spi ، وقفه uart رو بهم میریزه؟

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

    آیا ارتباط spi ، وقفه uart رو بهم میریزه؟

    سلام
    من یه مدار بستم که از mmc استفاده کردم که به روش نرم افزاری کار میکنه.حالا می خوام از وقفه uart هم استفاده کنم اما مثل وقتی که وقفه اتفاق میفته برنامه ریست میشه. oo:
    نمی دونم چرا؟
    در ضمن من از mega64 استفاده کردم . وقفه uart هم فقط وقتی کار میکنه که enable interrupts و enable urxc1و on urxc1 lable رو داخل حلقه loop برنامه بذارم؟

    #2
    پاسخ : آیا ارتباط spi ، وقفه uart رو بهم میریزه؟

    کسی از دوستان نظری نداره؟

    دیدگاه


      #3
      پاسخ : آیا ارتباط spi ، وقفه uart رو بهم میریزه؟

      خیر. تاثیری روی هم ندارن.
      اکثر برنامه های موجود هم از هردوی اونا باهم استفاده کردن!!!
      تشکر لازم نیست!

      دیدگاه


        #4
        پاسخ : آیا ارتباط spi ، وقفه uart رو بهم میریزه؟

        پس مشکل کجاست به نظرتون؟ :redface:

        دیدگاه


          #5
          پاسخ : آیا ارتباط spi ، وقفه uart رو بهم میریزه؟

          صمیمانه از دوستان تشکر می کنم که اینقدر همفکری میدن :cry:

          دیدگاه


            #6
            پاسخ : آیا ارتباط spi ، وقفه uart رو بهم میریزه؟

            نوشته اصلی توسط ardavanzzz
            صمیمانه از دوستان تشکر می کنم که اینقدر همفکری میدن :cry:
            متاسفانه دوستان علم غیب ندارن که شما چه برنامهآ‌ای نوشتید و چه کارهایی انجام دادید.

            دیدگاه


              #7
              پاسخ : آیا ارتباط spi ، وقفه uart رو بهم میریزه؟

              من برنامه خاصی ننوشتم .mmc رو با avr_dos و config_mmc راه اندازی کردم.بعد وقفه سراسری و وقفه ارتباط سریال(uart) رو فعال کردم.
              حالا توی زیر برنامه وقفه سریال یه دستور goto گذاشتم که همین کارو خراب کرده.وقتی از زیر برنامه وقفه بیرون میاد ( با اجرای goto) دیگه وقفه سریال کار نمی کنه
              و برای بار دوم گه وقفه میخواد اتفاق بیفته برنامه ریست میشه. :angry:
              آخه مگه goto رو نمیشه داخل زیر برنامه وقفه گذاشت؟

              دیدگاه


                #8
                پاسخ : آیا ارتباط spi ، وقفه uart رو بهم میریزه؟

                احتمالا قبل از خروج باید وقفه ها را غیر فعال کنید ، جائی که محل پرش goto هست مجددا فعال کنید ببینید مشکل حل میشه ؟
                آیا از متغییر های مشترک درهر دو وقفه استفاده کردین ؟ اولیت بندی کردین ؟
                آن دم که مرا مي زده بر خاک سپاريد زير کفنم خمره اي از باده گذاريد
                تا در سفر دوزخ از اين باده بنوشم
                آنلحظه که با دوزخيان کنم ملاقات يک خمره شراب ارغوان برم به سوغات
                هرقدر که در خاک ننوشيدم از اين باده صافي ، بنشينم و با دوزخيان کنم تلافي

                دیدگاه


                  #9
                  پاسخ : آیا ارتباط spi ، وقفه uart رو بهم میریزه؟

                  من کاری که کردم اینه که enable interrupt و enable urxc و on urxc lable رو همونجایی گذاشتم که lable مربوط به goto هست.با این کار فقط یک بار کار میکنه وقفه و بار دوم برنامه ریست میشه. :cry2:


                  آیا از متغییر های مشترک درهر دو وقفه استفاده کردین ؟ اولیت بندی کردین ؟
                  منظورتون چیه؟

                  دیدگاه


                    #10
                    پاسخ : آیا ارتباط spi ، وقفه uart رو بهم میریزه؟

                    سلام.

                    تاریخ پست رو دیدم که قدیمیه!

                    منم یه سوال در همین مورد رو دارم:

                    فرض کنید شما 4 تا اسلیو دارید و با مستر با پروتکل spi دارید اطلاعات رو رد و بدل میکنید. حالا می خوام مستر به پورت سریالش هم پاسخ بده .دو تا کار می تونم بکنم :
                    1- از وقفه سریال استفاده کنم
                    2- از یه تایمر استفاده کنم و هر 10 میکرو ثانیه (فرض) پورت سریال رو چک کنم .

                    به نظرتون کدوم راه حل بهتره؟ آیا استفاده از وقفه پورت سریال تداخل اجازه نمیکنه توی کار با Spi?

                    ممنون

                    دیدگاه


                      #11
                      پاسخ : آیا ارتباط spi ، وقفه uart رو بهم میریزه؟

                      نوشته اصلی توسط babak_9051
                      سلام.

                      تاریخ پست رو دیدم که قدیمیه!

                      منم یه سوال در همین مورد رو دارم:

                      فرض کنید شما 4 تا اسلیو دارید و با مستر با پروتکل spi دارید اطلاعات رو رد و بدل میکنید. حالا می خوام مستر به پورت سریالش هم پاسخ بده .دو تا کار می تونم بکنم :
                      1- از وقفه سریال استفاده کنم
                      2- از یه تایمر استفاده کنم و هر 10 میکرو ثانیه (فرض) پورت سریال رو چک کنم .

                      به نظرتون کدوم راه حل بهتره؟ آیا استفاده از وقفه پورت سریال تداخل اجازه نمیکنه توی کار با Spi?

                      ممنون

                      :cry:

                      دیدگاه


                        #12
                        پاسخ : آیا ارتباط spi ، وقفه uart رو بهم میریزه؟

                        سلام
                        مشکل شما از عدم مقدار دهی پشته نرم افزاری و سخت افزاری هست که با رفتن به لیبل با زیاد بودن حجم برنامه یا با پرش به یه تابع دیگه میکرو فضا در پشته کم آورده و باعث ریست مدار می شه مقدار پشته ها رو از حالت پیش فرض خارج کنین
                        هیچ دانش آموزی نیست که به در خانۀ دانشمندی آمد و شد کند, مگر این که خداوند برای هر گامی که برمی دارد عبادت یک سال را برایش رقم زند.

                        دیدگاه

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