اطلاعیه

Collapse
No announcement yet.

مشکل با عدم دریافت CRC در ارتباط spi

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

    مشکل با عدم دریافت CRC در ارتباط spi

    سلام

    رو یک برد 2 میکرو وجود دارد که با هم از طریق spi ارتباط دارند .
    میکرو فرستنده stm32f4 و میکرو گیرنده stm32f0 است .
    spiدر حالت dma تنظیم شده است .
    crc هم فعال میباشد .
    در سمت فرستنده مشکلی وجود ندارد با توجه به چیزی که بر روی اسکوپ میبینیم پکت درست است .
    در سمت گیرنده ولی تنها پکت دیتا دریافت میشود .ومحتوای رجیستر crc صفر میباشد .
    تنظیم رجیستر ها با نرم افزرا cube انجام شده است .

    دوستان اگر کسی تجربه کار پریفرال spi در میکرو stm32f0 را دارد لطفا راهنمایی کنید .
    تشکر
    از جمله ی رفتگان این راه دراز
    باز آمده ای کو که به ما گوید راز
    هان بر سر این دو راهه از روی نیاز
    چیزی نگذاری که نمی آیی باز

    #2
    پاسخ : مشکل با عدم دریافت CRC در ارتباط spi

    نوشته اصلی توسط mori64 نمایش پست ها
    سلام

    رو یک برد 2 میکرو وجود دارد که با هم از طریق spi ارتباط دارند .
    میکرو فرستنده stm32f4 و میکرو گیرنده stm32f0 است .
    spiدر حالت dma تنظیم شده است .
    crc هم فعال میباشد .
    در سمت فرستنده مشکلی وجود ندارد با توجه به چیزی که بر روی اسکوپ میبینیم پکت درست است .
    در سمت گیرنده ولی تنها پکت دیتا دریافت میشود .ومحتوای رجیستر crc صفر میباشد .
    تنظیم رجیستر ها با نرم افزرا cube انجام شده است .

    دوستان اگر کسی تجربه کار پریفرال spi در میکرو stm32f0 را دارد لطفا راهنمایی کنید .
    تشکر
    س
    سلام CRC در فرستنده محاسبه میشه و باید به طریقی به فرستنده ارسال بشه، پس باید بعد از ارسال هر رشته دیتا CRC محاسبه شده اونو جدا گونه بفرستین و در گیرنده هم جداگونه دریافت کنین و با دادهای دریافت شده قبلی مقایسه کنین.

    دیدگاه


      #3
      پاسخ : مشکل با عدم دریافت CRC در ارتباط spi

      نوشته اصلی توسط mohammadne نمایش پست ها
      س
      سلام CRC در فرستنده محاسبه میشه و باید به طریقی به فرستنده ارسال بشه، پس باید بعد از ارسال هر رشته دیتا CRC محاسبه شده اونو جدا گونه بفرستین و در گیرنده هم جداگونه دریافت کنین و با دادهای دریافت شده قبلی مقایسه کنین.
      با تشکر از پاسخ شما
      اطلاعات که از سمت فرستده ارسال میشه مشکلی نداره چون با اسکوپ که بررسی کردم دیدم crc در انتهای پکت اضافه شده .
      در سمت گیرنده با توجه به اینکه عمل دریافت توسط dma مدیریت میشه در انتهای دریافت dma یک انتراپت زده میشود .
      با توجه به توضیحات منوال اینجا باید محتوای رجیستر rx_crc چک شود که این مشکل من همین محتوای اشتباه است .
      از جمله ی رفتگان این راه دراز
      باز آمده ای کو که به ما گوید راز
      هان بر سر این دو راهه از روی نیاز
      چیزی نگذاری که نمی آیی باز

      دیدگاه


        #4
        پاسخ : مشکل با عدم دریافت CRC در ارتباط spi

        نوشته اصلی توسط mori64 نمایش پست ها
        با تشکر از پاسخ شما
        اطلاعات که از سمت فرستده ارسال میشه مشکلی نداره چون با اسکوپ که بررسی کردم دیدم crc در انتهای پکت اضافه شده .
        در سمت گیرنده با توجه به اینکه عمل دریافت توسط dma مدیریت میشه در انتهای دریافت dma یک انتراپت زده میشود .
        با توجه به توضیحات منوال اینجا باید محتوای رجیستر rx_crc چک شود که این مشکل من همین محتوای اشتباه است .
        شما مطمعن هستین انتهای پکت CRC ارسال میشه ؟؟؟ شما چطور با اسکوپ به این نتیجه رسیدین ؟؟؟ اگه ارسال میشه پس شما میتونین اونو از بافر DMA بخونین و دستی صحتشو بسنجین و فعلا با رجیستر rx-crc کار نداشته باشین.

        دیدگاه


          #5
          پاسخ : مشکل با عدم دریافت CRC در ارتباط spi

          شما مطمعن هستین انتهای پکت CRC ارسال میشه ؟؟؟
          بله .
          شما چطور با اسکوپ به این نتیجه رسیدین ؟؟؟
          با توجه به قابلیت تریگ .
          اگه ارسال میشه پس شما میتونین اونو از بافر DMA بخونین و دستی صحتشو بسنجین و فعلا با رجیستر rx-crc کار نداشته باشین.
          با توجه یه حجم و نرخ ارتباط در واحد زمان این کار (حتی با استفاده از پریفرال crc ) این کار cpu را به شدت درگیر میکند .




          نوشته اصلی توسط mohammadne نمایش پست ها
          شما مطمعن هستین انتهای پکت CRC ارسال میشه ؟؟؟
          از جمله ی رفتگان این راه دراز
          باز آمده ای کو که به ما گوید راز
          هان بر سر این دو راهه از روی نیاز
          چیزی نگذاری که نمی آیی باز

          دیدگاه


            #6
            پاسخ : مشکل با عدم دریافت CRC در ارتباط spi

            نوشته اصلی توسط mori64 نمایش پست ها
            با توجه یه حجم و نرخ ارتباط در واحد زمان این کار (حتی با استفاده از پریفرال crc ) این کار cpu را به شدت درگیر میکند .
            منظورم اینه موقتی اینو برای یک پاکت ارسالی چک کنین. تا مشکل کار رو پیدا کنین، اینو میدونم که اگر از CPU استفاده کنین 100 درصد درگیر میشه و در زمانی که از DMA استفاده میکنین CPU رو تنها %0.72 مشغول میکنه.

            دیدگاه

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