اطلاعیه

Collapse
No announcement yet.

آموزش جامع پروتکل USB

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

    آموزش جامع پروتکل USB

    سلام - یه مدتیه دارم رو پروتکل USB مطالعه میکنم تا یه آموزش جامع تهیه کنم - که یه آموزش درباره آموزش مقدماتی خود پروتکل USB هستش و بقیه آموزش ها درباره کلاس/زیر کلاس هاش هستش ( بقیه موارد پروژه های راه اندازی این کلاس ها هستش که با میکرو LPC1768 انجام میشه )- بعضی جاها ممکنه مشکل داشته باشم - برا بعضی مباحث ممکنه وقت نکنم - خواستم ببینم اینجا کسی پایه هستش برا این که کمک کنه تو تهیه آموزش؟ ( در زیر لیست مطلب مورد نیازم رو ذکر کردم ) - مطالب رو هم آماده کنم تو وبلاگم منتشر میکنم - لینکشو میزارم اینجا برا رفع مشکلات احتمالی - این کلیتی هستش که تو ذهنمه. ( سرعتی که من فعلا کار میکنم LS و FS هستش - به کلاس های صوت و تصویر برسیم احتمالا بریم سراغ سرعت HS )
    اسپم هم ندید لطفا تو این پست -


    مطالب مورد نیاز :
    این موارد رو کسی میتونه بره سراغش - بره و مطالبی براشون تهیه کنه - من فعلا وقتشو ندارم حقیقتا ( دارم دیتاشیت کلاس های USB رو میخونم )
    1) نحوه نوشتن درایور ( سمت ویندوز ) برای پروتکل USB
    2) نحوه ارتباط با پروتکول USB ( کلاس های مختلف ) در سمت PC به کمک #C
    3) آموزش جامع و عملی مبحث
    "Differential signaling" که پروتکل USB از این تکنیک برای انتقال داده استفاده کرده.
    4) بخش انگلیسی، کسی انگلیسیش خوب کلاس های USB رو ترجمه کنه - تو PV پیام بدید.

    مشکلات من :
    1) نحوه محاسبه CRC5 و CRC16 - فرمول درستش رو میخوام - من شونصد تا فرمول تست کردم - کل نت رو هم گشتم - که این فرمولا برا بعضی فریم ها درست و برا بقیه اشتباه جواب میداد.

    پروژه های انجام شده فعلا :
    1) کلاس CDC :
    1.1) https://www.aparat.com/v/CsqYH
    2) کلاس HID :
    2.1) موس ( دستور Wheel هم به پروژش اضافه شده - اون کلید چرخشی وسط موس رو میگم - تو فیلم مقابل یادم نبود به پروژه اضافش کنم ) : https://www.aparat.com/v/eplPW
    2.2) کنترل صدای کامپیوتر به کمک 2 دکمه : https://www.aparat.com/v/1yTCE


    من حقیقتا 1نفرم ( گروهی کار نمیکنم) - گفتم اینجا مطرح کنم - تا دوستان دیگه هم اگه دوس دارن کمک کنن برا این موضوع - در هر صورت مطلالب خوبی در این زمینه باشه - اول آخر خودمون ازش استفاده میکنیم دیگه - منم دیدم مطلبی در این زمینه تو نت نی - گفتم برم سمتش - بیش از این سرتون رو درد نمیارم - کسی خواست کمک کنه بسم الله
    جدیدترین ویرایش توسط md3848; ۱۹:۱۵ ۱۳۹۷/۱۱/۱۵.
    اللَّهُمَّ صَلِّ عَلَى مُحَمَّدٍ وآلِ مُحَمَّدٍ وعَجِّلْ فَرَجَهُمْ

    اگه دوس دارید سریع به جواب برسید :
    1) قبل از پرسیدن سوال، بسرچید.
    2) سوالاتون رو با جزئیات کامل مطرح کنید.

    #2
    پاسخ : آموزش جامع پروتکل USB

    منم ساعتهای ویدوو دیدم در مورد USB ولی چیزی دستگیرم نشد انقدر پیچیدس!

    دیدگاه


      #3
      پاسخ : آموزش جامع پروتکل USB

      نوشته اصلی توسط md3848 نمایش پست ها
      ... 3) آموزش جامع و عملی مبحث "Differential signaling" که پروتکل USB از این تکنیک برای انتقال داده استفاده کرده....
      نوشته اصلی توسط md3848 نمایش پست ها
      ... 1) نحوه محاسبه CRC5 و CRC16 - فرمول درستش رو میخوام - من شونصد تا فرمول تست کردم - کل نت رو هم گشتم - که این فرمولا برا بعضی فریم ها درست و برا بقیه اشتباه جواب میداد....
      سلام مهندس،
      این دو موردی رو که برات نقل قول کردم، بعلاوه تقریبا هر آنچه که به لایه فیزیکی ارتباط مربوط میشه رو اصلا لازم نیست بری سراغش!
      چون وقتی فلان چیپ یا فلان میکرو ادعا میکنه که از USB پشتیبانی میکنه، یعنی همه داستانهای لایه فیزیکی رو خودش به صورت سخت افزاری هندل میکنه! و اطلاعات رو توی یه بافر یا توی یه محدوده RAM بهت تحویل میده!!!
      - همین دو جمله حاصل 2 ماه خوندن مداوم PDF زبون اصلی بود!
      ...
      و دست آخر اینکه اگه بتونی USB رو بزنی زمین، شک میدونم بتونی نتایجت رو Share کنی!!
      ◙◙◙◙◙ میخوام به دوستان یه کتاب معرفی کنم! وقت کردید، بخونید - اسمش هست قرآن، سال نشر 10، نویسنده: خدا . ◙◙◙◙◙

      دیدگاه


        #4
        پاسخ : آموزش جامع پروتکل USB

        نوشته اصلی توسط ubub نمایش پست ها
        سلام مهندس،
        این دو موردی رو که برات نقل قول کردم، بعلاوه تقریبا هر آنچه که به لایه فیزیکی ارتباط مربوط میشه رو اصلا لازم نیست بری سراغش!
        چون وقتی فلان چیپ یا فلان میکرو ادعا میکنه که از USB پشتیبانی میکنه، یعنی همه داستانهای لایه فیزیکی رو خودش به صورت سخت افزاری هندل میکنه! و اطلاعات رو توی یه بافر یا توی یه محدوده RAM بهت تحویل میده!!!
        - همین دو جمله حاصل 2 ماه خوندن مداوم PDF زبون اصلی بود!
        ...
        و دست آخر اینکه اگه بتونی USB رو بزنی زمین، شک میدونم بتونی نتایجت رو Share کنی!!
        حرفتو قبول دارم ولی دیتاشیت pic18f4550 رو قسمت usb شو که خوندم فقط 10 صفحه فیوز بیت داره که اصلا نمیدونم چی هستن! ولی کمپایلر ها با 10 خط ارتباط برقرار میکنن...

        دیدگاه


          #5
          پاسخ : آموزش جامع پروتکل USB

          این دو موردی رو که برات نقل قول کردم، بعلاوه تقریبا هر آنچه که به لایه فیزیکی ارتباط مربوط میشه رو اصلا لازم نیست بری سراغش!
          در مطلب شماره 1 که در زیر لینکشو گزاشتم، در عنوان :
          "J & K State (bit) / Byte / Field / Packet / Transaction / Transfer / (micro)Frame"
          در حالت عادی میکرویی که از USB پشتیبانی میکنه ما تقریبا در سطح Packet کدزنی میکنیم ولی خب اگه میکرویی از USB پشتیبانی نکرد مجبوریم در سطح J & K State کدزنی کنیم، فلذا نیازه مواردی همچون معادله صحیح انواع CRC رو بدونیم ( CRC5 - CRC16 )


          ایبابا - پست اول رو نمیشه ویرایش کرد که

          مطالب مورد نیاز :
          5) انواع swich ( از نظر وضعیت دیتا دادنشون ) - میتونید لینکای زیر رو ترجمه کنید یا ...

          What is a Switch? Different Types of Switches. Mechanical Switches, Electrical Switches, Characteristics, Rocker, Toggle, SPST, SPDT, DPDT.



          پروژه های انجام شده فعلا :
          2.1) لینک مطلب : تبدیل میکروکنترلر LPC1768 به موس
          2.3) کنترل کامل صدا ( آخرین پروژه این قسمت ) : https://www.aparat.com/v/f1Q9w



          مطالب منتشر شده فعلا :
          1) آموزش پروتکل usb ( مقدماتی --> پیشرفتش میرهتو بحث نوشتن کتابخونه USB برا میکروهایی که USB رو پشتیبانی نمیکنند - که نیازه مطالبی که در حالت عادی مورد نیاز نی رو بدونید! جمله بندیم تو حلقم )


          بازم میگم هر دوس داره در این موضوع کمکی کنه، اون مواردی که در این پست و پست اول گفتم رو بررسی و مطالعه کنه و یه مطلب تهیه کنه ازشون.
          جدیدترین ویرایش توسط md3848; ۱۶:۰۷ ۱۳۹۷/۱۱/۱۷.
          اللَّهُمَّ صَلِّ عَلَى مُحَمَّدٍ وآلِ مُحَمَّدٍ وعَجِّلْ فَرَجَهُمْ

          اگه دوس دارید سریع به جواب برسید :
          1) قبل از پرسیدن سوال، بسرچید.
          2) سوالاتون رو با جزئیات کامل مطرح کنید.

          دیدگاه


            #6
            پاسخ : آموزش جامع پروتکل USB

            مطالب منتشر شده فعلا :
            2) بحث usb device controller از دیتاشیت LPC1768
            3) کلاس HID جلسه 1
            جدیدترین ویرایش توسط md3848; ۱۷:۳۳ ۱۳۹۷/۱۱/۲۰.
            اللَّهُمَّ صَلِّ عَلَى مُحَمَّدٍ وآلِ مُحَمَّدٍ وعَجِّلْ فَرَجَهُمْ

            اگه دوس دارید سریع به جواب برسید :
            1) قبل از پرسیدن سوال، بسرچید.
            2) سوالاتون رو با جزئیات کامل مطرح کنید.

            دیدگاه


              #7
              پاسخ : آموزش جامع پروتکل USB

              مطالب مورد نیاز :
              6) یه مطلب جامع درباره انواع دستگاه های Digitizer

              7) یه مطلب جامع درباره انواع دستگاهی که با Usb به pc وصل میشن.

              8) کسی دستگاه Graphic Tablet یا Digitizer Device یا اسکنر ( کاغذ میزاری داخلش ازش عکس میگیره ) یا پرینتر داره لطفا اعلام کنه ( البته پرینتر از اینایی که با usb به pc وصل میشن - نه اون قدیمی ها ) به Descriptor شون نیاز دارم ( مخصوصا Digitizer ) - کسی اگه داره بگه - خودم نحوه کپی کردن Descriptor هاش و اصلا Descriptor چی هستش و .... رو بهش توضیح میدم
              جدیدترین ویرایش توسط md3848; ۱۷:۳۵ ۱۳۹۷/۱۱/۲۰.
              اللَّهُمَّ صَلِّ عَلَى مُحَمَّدٍ وآلِ مُحَمَّدٍ وعَجِّلْ فَرَجَهُمْ

              اگه دوس دارید سریع به جواب برسید :
              1) قبل از پرسیدن سوال، بسرچید.
              2) سوالاتون رو با جزئیات کامل مطرح کنید.

              دیدگاه


                #8
                پاسخ : آموزش جامع پروتکل USB

                خدمت دوستان علاقه مند و فعال در این پست/تایپک!!! ( ) - به زودی پروژ کیپد( به کیبورد ناقص میگن کیپد - 3 تا استاندارد داره کیبورد - کمتر از این تعداد - کلید داشته باشه پروژه - به جای لفظ کیبورد - از لفظ کیپد استفاده میشه برای دستگاه فوق ) و مطلب جلسه 2 ( پایانی ) HID قرار داده میشه ( البته شاید نیاز باشه چندتا پروژه قبل گزاشتن این مطلب منتشر کنم و بعد مطلبشو منتشر کنم - حالا ببینیم چی میشه! )

                بیشترین مشکل من همون بحث درایور هستش - الان نوشتن پروژه برا هر قطعه یکم داستان داره - مثلا کیبورد - الان دیدم 8 بایت دیتا میفرسته - حالا کاربرد هر بایت چیه؟ الله اعلم - مجبوری یه کیبورد تهیه کنی و دیتا و توضیح دهندشو آنالیز کنی - با ببینی هر بیت از هر بایت کاربردش چیه!!! - ولی خب
                درایور ( سمت ویندوز ) رو خودت نوشته باشی دیگه این مشکلات وجود نداره- ولی خب یه مشکلی اونموقع بوجود میاد که در هر سیستم جدیدی باید درایور نصب بشه ( البته خب الان همه نت دارن - میتونی درایورو بزاری تو نت - هر کی محصول شما رو خرید - بره درایور فوق رو نصب کنه )

                ================================
                بروزرسانی
                ================================

                پروژه های انجام شده فعلا :
                2.4) تبدیل میکروکنترلر LPC1768 به کیبورد ( در راستای آموزش KEYBOARD/KEYPAD PAGE و LED PAGE از کلاس HID )

                ================================
                بروزرسانی
                ================================

                الان رفتم سراغ ALPHANUMERIC DISPLAY PAGE که یجورایی چیزی که من فهمیدم کنترل 7s با کامپیوتر هستش - یه چی باید مثل این دستگاه ها بشه - دقیقا ذهنیت درستی ندارم نسبت بهش - بخونیم دیتاشیتو ببینم زبون بسته چی میگه



                این واحد از دو نوع سگمنت 7 تایی و 14 تایی و ماتریکس پشتیبانی میکنه.



                یه 14 تا مبحث دیگه غیر این مونده - اونا هم تموم بشن - مبحث hid کامل میشه - و آموزش جلسه 2 اش منتشر میشه - البته شاید برخی از این 14 تا کاربرد رو نگفتم - بعضیاش رو من ندیدم کاربردشو - یا دستگاهی از این این کاربرد استفاده کنه - مثلا مورد TELEPHONY DEVICE PAGE - بعضی موارد رو هم ناقص توضیح میدم و یه مثال نمونه میزارم از یه کاربرد - بقیه کاربرد ها رو خود کاربر بره تست کنه - نمیدونم شاید کاربرد بحث TELEPHONY DEVICE PAGE مثل موارد زیر باشه - نمیدونم دقیقا :





                مثلا بحث LED PAGE شونصد تا led داره - من فقط یه مثال برا led های کیبورد زدم - نوشتن پروژه برای بقیه led ها بر عهده کاربر.
                لپ کلوم این که بعضی چیزا رو میپیچونم - بعضی چیزا رو هم ناقص میگم و کامل توضیح نمیدم.
                جدیدترین ویرایش توسط md3848; ۱۴:۳۹ ۱۳۹۷/۱۱/۲۴.
                اللَّهُمَّ صَلِّ عَلَى مُحَمَّدٍ وآلِ مُحَمَّدٍ وعَجِّلْ فَرَجَهُمْ

                اگه دوس دارید سریع به جواب برسید :
                1) قبل از پرسیدن سوال، بسرچید.
                2) سوالاتون رو با جزئیات کامل مطرح کنید.

                دیدگاه


                  #9
                  پاسخ : آموزش جامع پروتکل USB

                  تو مسابقه زیر هم شرکت کن...از اونجایی که هدفتون یکسان هست شاید یه جایزه ای هم نصیبت شد...!!!

                  مسابقه علمی سال 1397:


                  در راستای اهداف آموزشی سایت و ایجاد انگیزه در افراد مستعد و متخصص و با مشارکت شرکت فن آموز ( fanamouz.ir )، پنجمین دوره مسابقه علمی از طرف سایت KnowledgePlus.ir در سال 1397 برگزار می شود.

                  مقدمه:

                  با توجه به اهمیت بالای ارتباط USB در پیاده سازی پروژه های مختلف توسط میکروکنترلرها و نیاز به یک منبع جامع آموزشی که کاملا عملی و کاربردی باشد، مسابقه علمی امسال با محوریت ارتباط USB برگزار می شود.

                  موضوع مسابقه:

                  موضوع پنجمین دوره مسابقه علمی سایت عبارت است از تدوین جامع ترین و کاربردی ترین منبع آموزشی به همراه مثال های کاربردی برای پیاده سازی ارتباط USB در مدها و کلاس های مختلف روی یکی از شماره های خانواده stm32 به نحوی که برای دانشجویان و علاقه مندان بصورت عملی قابل استفاده باشد.

                  جایزه مسابقه:

                  جایزه مسابقه مبلغ هفت میلیون تومان بصورت نقدی است که امکان افزایش آن بر حسب شرایط وجود دارد.

                  موارد تکمیلی:

                  1- با توجه به تاخیر در اعلام صورت مسئله مسابقه، زمان داوری و اعلام برنده نیمه دوم تیر ماه سال 1398 است.

                  2- نتیجه کار برندگان مسابقه پس از اعطای جایزه به آنها به نام خودشان و بصورت رایگان برای استفاده عموم منتشر خواهد شد.

                  3- هیچ وجهی برای شرکت در این مسابقه از شرکت کنندگان دریافت نمی شود.

                  4- امکان شرکت افراد در این مسابقه بصورت گروهی میسر است.

                  5- در صورت نرسیدن تعداد متقاضیان شرکت در مسابقه به حد نصاب تا تاریخ مشخص، برگزاری مسابقه لغو و مبلغ جایزه صرف امور جاری خواهد شد.

                  6- علاقه مندان به شرکت در مسابقه می توانند برای ثبت نام و اطلاع از جزییات بیشتر روزهای شنبه تا چهارشنبه فقط در محدوده ساعت های 11 تا 12 صبح با شماره 02188743117 تماس بگیرند.

                  7- برای آگاهی از آخرین موارد مرتبط با مسابقه، به اطلاعیه های مندرج در صفحه اول سایت و کانال تلگرام مراجعه کنید.

                  دیدگاه

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