مشاوره رایگان
دریافت لینک های دانلود دریافت پستی درب منزل مبلغ کل: تومان
جهت دریافت کد تخفیف به کانال تلگرام مراجعه و یا با پشتیبان آنلاین هماهنگ نمایید

نحوه ثبت نام avr


ثبت نام های AVR

AVR میکروکنترلر 8 بیتی است بنابراین تمام پورت های آن 8 بیت عرض دارند. هر پورت دارای 3 ثبت کننده مرتبط با آن است که هر کدام دارای اندازه 8 بیت هستند. هر بیت در آن ثبات ها پین های درگاه خاص را پیکربندی می کند. Bit0 از این رجیسترها با Pin0 پورت مرتبط هستند ، Bit1 از این رجیسترها با Pin1 پورت و مانند سایر بیت ها مرتبط هستند.

سه رجیستر موجود در میکروکنترلر AVR به شرح زیر است:

  • ثبت نام DDRx
  • ثبت نام PORTx
  • ثبت نام PINx

ثبت نام DDRx

Data Direction Register جهت داده پین ​​های پورت را پیکربندی می کند. این رجیسترها برای تعیین اینکه آیا پین های پورت برای ورودی یا خروجی استفاده می شوند ، استفاده می شوند. با نوشتن 1 به بیت در DDRx ، پین مربوط به پورت به عنوان خروجی ایجاد می شود ، در حالی که نوشتن 0 به بیت در DDRx ، پین پورت مربوطه را به عنوان ورودی ایجاد می کند.

مثلا:

  1. DDRA = 0b11111111 ؛
  1. DDRA = 0b00000000 ؛
  2.    
  1. DDRB = 0b00001111 ؛
  • برای ایجاد تمام پایه های پورت A به عنوان پایه های خروجی:
  • برای ایجاد تمام پایه های پورت A به عنوان پایه های ورودی:
  • برای ایجاد شیب کمتر از پورت B به عنوان خروجی و بیشترین شیب به عنوان ورودی:

ثبت نام PINx:

ثبت PINx برای خواندن داده ها از پایه های پورت استفاده می شود. برای خواندن داده ها از پین پورت ، ابتدا باید جهت داده پورت را به ورودی تغییر دهیم. این کار با تنظیم صفر بیت ها در DDRx انجام می شود. اگر پورت خروجی ایجاد شود ، با خواندن رجیستر PINx داده ای داده می شود که روی پین های پورت صادر شده است.

دو حالت ورودی وجود دارد. یا می توانیم از پین های پورت به عنوان ورودی داخلی یا به صورت ورودی های سه گانه استفاده کنیم. به شرح زیر توضیح داده خواهد شد:

برای خواندن داده ها از پورت A ،

  1. DDRA = 0x00 ؛ // پورت A را به عنوان ورودی تنظیم کنید
  2. x = PINA ؛ // مطالب پورت a را بخوانید

ثبت PORTx

به طور کلی ثبت نام PORTx را می توان برای دو منظور استفاده کرد:

برای خروجی داده در متغیر x روی پورت A

  1. DDRA = 0xFF ؛ // پورت A را به عنوان خروجی ایجاد کنید
  2. PORTA = x ؛ // متغیر خروجی در پورت

برای خروجی داده های 0xFF روی پورت B

  1. DDRB = 0b11111111 ؛ // تمام پایه های پورت B را به عنوان خروجی تنظیم کنید
  2. PORTB = 0xFF ؛ // نوشتن داده ها در پورت

برای خروجی داده فقط در بیت 0 پورت C

  1. DDRC.0 = 1 ؛ // فقط 0 پین پورت C را به عنوان یک خروجی تنظیم کنید
  2. PORTC.0 = 1 ؛ // آن را سیگنال بالا کنید.

در حالت ورودی ، هنگامی که pull-up فعال است ، حالت پیش فرض پین "1" است. بنابراین اگر چیزی به پین ​​اضافه نکنیم و اگر بخواهیم آن را بخوانیم به عنوان 1 خوانده می شود.

توجه: هنگام استفاده از تراشه Analog to Digital Converter (ADC) ، پین های پورت ADC باید به عنوان ورودی سه حالته استفاده شوند.

مثلا:

برای ایجاد شیب کمتر درگاه A به عنوان خروجی ، بیشتر خنک کردن ورودی به صورت ورودی با کشش فعال است

  1. DDRA = 0x0F ؛ // nib بالاتر > ورودی ، nib پایین > خروجی
  2. PORTA = 0xF0 ؛ // nib پایین > پایه های خروجی را روی 0 تنظیم کنید

برای ایجاد پورت B به عنوان ورودی سه حالته

  1. DDRB = 0x00 ؛ // از پورت B به عنوان ورودی استفاده کنید
  2. PORTB = 0x00 ؛ // ثبت نام pull-ups را غیرفعال کنید و آن را به حالت سه حالت درآورید

برای ایجاد پورت C به عنوان ورودی با قابلیت کشش و خواندن داده ها از پورت a

  1. DDRC = 0x00 ؛ // پورت C را به عنوان ورودی ایجاد کنید
  2. PORTC = 0xFF ؛ // همه کشش ها را فعال کنید
  3. y = PINC ؛ // خواندن اطلاعات از پین های پورت C
  • برای خروجی داده ها: وقتی پورت به عنوان خروجی پیکربندی می شود ، از ثبت کننده PORTx استفاده می شود. وقتی بیت ها را در DDRx روی 1 قرار می دهیم ، پین های مربوطه به پین ​​های خروجی تبدیل می شوند. اکنون می توانیم داده ها را در بیت های مربوطه در رجیستر PORTx بنویسیم. این بلافاصله با توجه به داده هایی که روی پورت ها نوشتیم ، وضعیت خروجی پین ها را تغییر می دهد. به عنوان مثال:
  • برای فعال کردن / غیرفعال کردن مقاومت های کششی: وقتی پورت به عنوان ورودی پیکربندی می شود ، بیت ها را در DDRx روی 0 قرار می دهیم ، یعنی پین های پورت را به عنوان ورودی ، بیت های مربوطه را در رجیسترهای PORTx استفاده می کنیم که برای فعال / غیرفعال کردن ثبات های کششی مرتبط با آن پین استفاده می شوند. برای فعال کردن مقاومت کششی ، بیت را در رجیستر PORTx روی 1 قرار دهید و برای غیرفعال سازی (یعنی ایجاد پورت به صورت tri) ، آن را صفر کنید.

 

برنامه نویسی با استفاده از AVR Studio

AVR studio یک محیط توسعه یکپارچه (IDE) است که توسط ATMEL برای توسعه برنامه های مختلف تعبیه شده بر اساس میکروکنترلر 8 بیتی AVR ساخته شده است. قبل از نصب AVR Studio ، باید کامپایلر WinAVR را نصب کنید. با نصب WinAVR به AVR Studio اجازه دهید کامپایلر را تشخیص دهد.

مرحله 1:

برنامه نویسی با استفاده از AVR Studio1

گام 2:

برنامه نویسی با استفاده از AVR Studio2

روی پروژه جدید کلیک کنید

مرحله 3:

برنامه نویسی با استفاده از AVR Studio3

  • ابتدا بر روی AVR GCC کلیک کنید
  • نام پروژه را پیکربندی کنید
  • مکان پروژه را انتخاب کنید
  • روی Next کلیک کنید

مرحله 4:

برنامه نویسی با استفاده از AVR Studio4

  • روی AVR Simulator در سمت چپ بلوک کلیک کنید و سپس میکروکنترلر خود را انتخاب کنید (به عنوان مثال - ATmega16).
  • سپس بر روی دکمه پایان کلیک کنید

مرحله 5:

برنامه نویسی با استفاده از AVR Studio5

  • کد را در قسمت اصلی بدن که در تصویر بالا ذکر شده است ، بنویسید.
  • سپس پرونده پروژه را ذخیره کنید.

مرحله 6:

برنامه نویسی با استفاده از AVR Studio6

  • همانطور که در تصویر بالا نشان داده شده است ، به گزینه پروژه بروید.
  • سپس بر روی گزینه پیکربندی کلیک کنید.

مرحله 7:

برنامه نویسی با استفاده از AVR Studio7

  • اگر از کریستال خارجی استفاده می کنید ، فرکانس کریستال را در جعبه برجسته موجود در تصویر بالا بنویسید.
  • سپس کادر مربوط به ایجاد پرونده Hex را علامت بزنید و سپس بر روی OK کلیک کنید.
  • اکنون دوباره پروژه را ذخیره کنید.

مرحله 8:

برنامه نویسی با استفاده از AVR Studio8

  • به گزینه build بروید -> سپس کامپایل کنید
  • این کد را کامپایل می کند و در صورت وجود خطا ایجاد می کند.

 

برنامه نویسی با استفاده از AVR Studio9

برای اولین بار تدوین ، دو خطا ایجاد می کند ، آنها را نادیده بگیرید.

مرحله 9:

برنامه نویسی با استفاده از AVR Studio10

  • دوباره به گزینه build بروید و روی build کلیک کنید.
  • این عملیات پرونده hex یک کد را تولید می کند
  • با استفاده از برنامه نویس از این پرونده hex برای رایت در میکروکنترلر خود استفاده کنید.
فصلِ: 1 , تعداد قسمت ها: 1 , سطح: مقدماتی

این فصل در یک نگاه:

آموزش نصب ورژن 64 بیتی مدل سیم. نرم افزار ModelSim یک نرم افزار قدرتمند شبیه سازی VHDL و Verilog برای تراشه های FPGA است…

بروزرسانی این محتوا در 01/اردیبهشت/97 انجام شد. ModelSim  چیست؟! نرم افزار ModelSim یک نرم افزار قدرتمند شبیه سازی VHDL و Verilog برای تراشه های FPGA است. طراحان مدار می توانند پس از نوش…
فصلِ: 1 , تعداد قسمت ها: 19 , سطح: صفر تا صد

این فصل در یک نگاه:

آردوینو (Arduino) یک پلتفرم اوپن سورس الکترونیک است. بدین معنی که نرم‌افزار و طرح سخت‌افزار آن به صورت آزاد در اختیار تم…

در دنیای الکترونیک برای یادگیری هرچه بهتر مدارها و بوردهایی که میتوان روی آنها برنامه نویسی کرد مثل بورد آردینو هیچ آموزشی و هیچ کتابی بهتر از آموزش های پروزه محوز و سریالی و پشت سرهم نیست و…
فصلِ: 1 , تعداد قسمت ها: 10 , سطح: صفر تا صد

این فصل در یک نگاه:

آشنایی اولیه با دستگاه مرکزی و سنسور هاآموزش دستگاه دزدگیر مرکزی ساده تلفن کننده به همراه سنسور چشمیآموزش دستگاه تلفن کن…

توضیحات کلی مجموعه: شما عزیزان بعد از اتمام این دوره میتوانید نصب یک دستگاه دزدگیر به همراه متعلقات را به صورت مسلط انجام دهید. همچنین می توانید جهت راهنمایی و رفع مشکلات قبل از شروع نصب و …
فصلِ: 6 , تعداد قسمت ها: 25 , سطح: صفر تا صد

این فصل در یک نگاه:

منطق ترتیبی- لچ ها - فلیپ فلاپ ها و مفهوم کلاک - نمودار زمانی - آنالیز منطق ترتیبی - سنتز و طراحی مدار ترتیبی - رجیسترها…

به منظور ارتقاء درس مهم مدارهای منطقی در مقطع کارشناسی، این درس با کیفیتی قابل قبول ضبط شده است و تا کنون مشابهی بر روی اینترنت ندارد.  درس مدارهای منطقی یک درس پایه ای برای همه گرایش های ر…
فصلِ: 8 , تعداد قسمت ها: 36 , سطح: صفر تا صد

این فصل در یک نگاه:

برنامه نویسی سوکت با پایتون - Socket Programming with Python…

توضیحات کلی مجموعه: ...  (میکروکنترلرهای شماره 2) در این مجموعه که ادامه ای بر مجموعه کاملا رایگان میکروکنترلرهای شماره (1) می باشد، سعی می شود که پروژه های پیشرفته تر و کاربردی تری از می…
فصلِ: 10 , تعداد قسمت ها: 301 , سطح: صفر تا صد

این فصل در یک نگاه:

کلام پایانی:-بازار کار-نحوه ی دیدن دوره-میکروکنترلر های مختلف-و...…

فصل اول: در این فصل: -ابتدا به گفتن مقدمه ای درمورد این دوره و میکروکنترلر Avr میپردازیم، -درمورد مباحث ریاضی مورد نیاز صحبت میکنیم، -درمورد مبنا های مختلف صحبت میکنیم، -درمورد تبدیل مبنا …
فصلِ: 1 , تعداد قسمت ها: 13 , سطح: صفر تا صد

این فصل در یک نگاه:

توضیحات کلی مجموعه: دموی دوره را حتما ببینید آموزش این دوره به صورت صفر تا صد هستش دانشجویان رشته آمار میتونن از این دوره بهره کافی رو ببرند. همچنین، دانشجویان سایر رشته ها خصوصا رشته های…
فصلِ: 3 , تعداد قسمت ها: 39 , سطح: صفر تا صد

این فصل در یک نگاه:

تبدیل خطی-انفصال جهشی-تابع پله ای-هم مرتبه نمایی-تبدیلات لاپلاس-تبدیلات معکوس-معادلات دیفرانسیل خطی مرتبه دوم با ضرایب ث…

توضیحات کلی مجموعه: این مجموعه شامل آموزش درس معادلات دیفرانسیل مختص رشته های مهندسی بوده و در تلاش است قدمی در بالا بردن سطح علمی دانشجویان بردارد. آموزش به این صورت است که در ابتدا پیش ن…
فصلِ: 9 , تعداد قسمت ها: 240 , سطح: صفر تا صد

این فصل در یک نگاه:

فصل نهم : پروژه معماری هتل • معرفی پروژه • ترسیم خطوط آکس بندی قائم • نامگذاری محورهای آکس • ترسیم پارکینگ سمت چپ هتل •…

این دوره شامل بیش از 240 جلسه ویدئوی آموزشی اتوکد می باشد و به جرات می گوییم که کاملترین دوره اتوکد در بین تمام آموزش های فارسی و حتی غیر فارسی محسوب می شود. در طول دوره مثالها و پروژه های و…
فصلِ: 1 , تعداد قسمت ها: 4 , سطح: صفر تا صد

این فصل در یک نگاه:

در این دوره به تکنیک های : ضرب , تقسیم , جذر , مثلثات پرداخته شده است .…

فهرست سرفصل ها و رئوس مطالب مطرح شده در این مجموعه آموزشی :     درس یکم: محاسبات سریع ضرب : تکنیک ضرب اعداد دورقمی در ۱۱ تکنیک ضرب اعداد بیش از دو رقمی در عدد ۱۱ تکنیک ضرب اعداد در ۱۲ , …
فصلِ: 10 , تعداد قسمت ها: 47 , سطح: صفر تا صد

این فصل در یک نگاه:

کار نیرو-کار کوپل-اصل کار مجازی و کاربرد-بازده مکانیکی-کار نیرو در جا به جایی محدود-انرژی پتانسیل-انرژی پتانسیل و حالت ت…

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

تولید شده توسط کلیک سایت

پشتیبانی آنلاین
آماده پاسخگویی هستیم
انتخاب تصویر جهت ارسال:
در حال ضبط صدا

(جهت توقف و یا لغو ضبط از دکمه های زیر استفاده کنید)

توقف و ارسال :
لغو ضبط
در حال حاضر تمامی کارشناسان آفلاین هستند. همواره می توانید با شماره تلگرام / واتساپ 09010005000 به صورت آنلاین با ما در ارتباط باشید. جهت ورود به واتساپ کلیک کنید
0 پیام جدید
پشتیبان در حال تایپ ...
ارسال تصویر ضبط صدا
0 کارشناسان آنلاین می باشند
این گفت و گو توسط پشتیبان به اتمام رسید