آموزش AVR – جلسه ۱۳ : ارتباط سریال USART

avr-%d8%ac%d9%84%d8%b3%d9%87-130373402016-11-11-09-38-38

در جلسه سیزدهم مبحث مهم و پرکاربرد واسط ارتباط سریال (USART) تشریح شده تا برای انجام یک پروژه عملی در جلسه آینده آماده شویم.یکی از واسط های ارتباطی هر میکروکنترلر واسط ارتباط سریال است. تعداد زیادی از ماژول ها از طریق این واسط با میکرو ارتباط برقرار میکنند. همچنین دو میکروکنترلر نیز در بسیاری از اوقات از همین واسط برای اتباط و انتقال دستورات کنترلی به یکدیگر استفاده می کنند. لذا در این جلسه مفاهیم و تابع های مورد نظر به طور کامل توضیح داده شد تا در جلسه ی آینده به یک پروژه ی عملی از این مبحث پرداخته شود.

 

سرفصل های جلسه سیزدهم عبارت اند از:

  1. تفاوت ارتباط سریال و موازی
  2. نحوه ی برقراری ارتباط سریال
  3.  آموزش نحوه پیکربندی سخت افزاری واسط سریال در آی سی ATMega32
  4. تشریح توابع رابط سریال در C
  5. آموزش انجام تنظیمات در محیط Code Wizard

 

مشخصات ویدیو:

کیفیت: HD
مدت زمان آموزش:  ۴۳ دقیقه
حجم فایل برای دانلود: ۷۱ مگابایت (فشرده سازی بدون کاهش کیفیت)

 

 

arrow-download-iconدانلود با لینک مستقیم

 

 

مشخصات مقاله
عنوان
آموزش AVR - جلسه ۱۳ : ارتباط سریال USART
توضیحات
در جلسه سیزدهم مبحث مهم و پرکاربرد واسط ارتباط سریال (USART) تشریح شده تا برای انجام یک پروژه عملی در جلسه آینده آماده شویم.
نویسنده
ناشر
تکسین لب
لوگو ناشر
خیلی بدضعیفمتوسطخوبخیلی عالی (3 نظر, امتیاز کل: 3٫00 از 5)
Loading...
با دوستان خود به اشتراک گذارید!

10 دیدگاه ها

  1. مرتضی می‌گه:

    خیلی ممنون از توضیحات زیباتون . لطفا در مورد دیگر ارتباط سریال هم آموزش بگذارید.

    (0)(0)
  2. شهرام سياه می‌گه:

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

    خدا خیرت بده

    (0)(0)
  3. بهي می‌گه:

    با سلام و تشکر از استاد عزیز
    میخواستم بدونم نحوه ارسال int از طریق این ارتباط توضیح بفرمایین ( به صورتی که در میکرو slave متغیر int رو داشته باشیم و بتونیم از اون در محاسباتمون استفاده کنیم مثلا زاویه استپ موتور مون باشه).
    در ضمن با تشکر فراوان از فیلمای عالیتون میخواستم اگر ممکنه بیشتر به سمت مباحث عملی برید و برای مباحث تئوری کمتر وقت بزارین (مثلا تو قسمت ١٣ شما از ۴٠ دقیقه تنها ۴ دقیقه به خود کدویزارد پرداختید)
    اگر ممکن باشه بیشتر مثال بزنید با تنوع بیشتر با استفاده از کدویزارد و پرتئوس قطعا یادگیری خیلی سریعتر و راحتر میشه
    بازهم از زحمات تون تشکر میکنم امیدوارم ناراحت نشده باشین از انتقادم

    (0)(0)
    • محمدرضا سالارباشی می‌گه:

      با سلام
      خوشحالم که مورد قبول واقع شده و اینکه امکان بهره مندی از نظرات سازنده ی شما عزیزان رو هم دارم

      در مورد سوال اول همونطور که تو جلسه هم یک مثال زده بودم به عنوان یک روش شما هر متغیری رو میتونید به فرمت رشته (String) درآورده و ارسال کنید که متغیر int هم یکی از همین موارده
      طرف گیرنده هم به صورت رشته دریافت کرده و بعد از اون تبدیل به عدد int کنید

      مثال طرف فرستنده:
      int my_number;
      printf(“%d”,my_number);

      مثال طرف گیرنده:
      اینجا باید دقت داشته باشید که چون متغیر int حجم ۳۲ بایتی داره اون رو توسط یه آرایه ۴ تایی char دریافت کنید
      int r_number;
      char r_data[4];
      gets(r_data,4);
      r_number=atoi(r_data);

      توضیح اینکه
      تابع gets دارای دو ورودی است: ورودی اول متغیری که باید دیتا درش ریخته بشه و متغیر دوم سایز دیتای دریافتی به بایت
      تابع atoi هم برای تبدیل رشته به متغیر integer هستش که برای استفاده ازش باید کتابخونه stdlib رو include کنید

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

      با تشکر از نظرات سازنده

      (0)(0)
  4. فلانی می‌گه:

    چطور توسط یک بیت parity جایگاه خطا هم مشخص میشه؟ قاعدتاً باید فقط وجود یا عدم وجود خطا رو مشخص کنه که اونم اگه دو تا خطا باشه ممکنه اشتباه تشخیص بدیم. توضیح میدید لطفا. با تشکر

    (0)(0)
    • محمدرضا سالارباشی می‌گه:

      چیزی که شما میفرمایید در علم مخابرات با نام کدینگ شناخته میشه که به بررسی روش های تشخیص و تصحیح خطا میپردازه
      به عنوان مثال برای روشن شدن مطلب، پروژه های پیاده سازی کدینگی مثل توربو کدینگ و LDPC DVBS2(استفاده شده در گیرنده های ماهواره) تا به حال انجام دادم که به بهترین نحو تصحیح خطا هم انجاممیدن اما اینجا خیر
      به سادگی با xor کردن بیت ها و با مشخص بودن نوع پریتی صحیح یا غلط بودن مسیج رو تشخیص میده و هم چنین تحمل خطای اون یک بیته ینی اگر ۲ بیت ۱ تبدیل به صفر یا دو بیت صفر تبدیل به یک بشه تشخیص نمیده
      موفق باشید

      (0)(1)
  5. فلانی می‌گه:

    گفتید جلسه آینده یه پروژه عملی انجام میدید در مورد USART

    (0)(0)
    • محمدرضا سالارباشی می‌گه:

      بله اما با تحقیق به عمل آمده نیاز به دو جلسه برای آموزش پیاده سازی احساس و پروژه عملی به جلسه ۱۶ موکول شد تا دو مبحث فیوزبیت ها و پروگرمرها قبل از پیاده سازی تدریس شود

      (0)(1)

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *