اطلاعیه

Collapse
No announcement yet.

سوال درباره رجیستر

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

    سوال درباره رجیستر

    سلام دوستان .
    یک سری اطلاعات کامل درباره رجیستر میخوام و اینکه اصلا رجیستر چیه؟ ممنون :

    #2
    پاسخ : سوال درباره رجیستر

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

    دیدگاه


      #3
      پاسخ : سوال درباره رجیستر

      رجیستر چیست؟
      رجیسترها توعی حافظه هستند که به طور مستقیم با بخشش پردازشگر میکروکنترلر در ارتباط هستند. هر رجیستر یک بایت یا 8 بیت است. یکی از ویژگی های رجیسترها این است که به خاطر ارتباط نزدیک با پردازنده، سرعت بسیار بالاتری نسبت به سایر خانه های حافظه دارند.
      رجیستر DDRx:
      رجیستر DDRx (Data Direction) برای تنظیم ورودی یا خروجی بودن پایه های میکروکنترلر است. برای تنظیم پایه ها در برنامه، باید به جای x باید آدرس پایه ی مورد نظر(مثل B.3) را بنویسیم. اگر بخواهیم آن پایه خروجی باشد باید بیت رجیستر مربوط به آن را 1 کنیم، و اگر بخواهیم آن پایه ورودی باشد، باید بیت رجیستر مربوط به آن را 0 کنیم. به عنوان مثال اگر بخواهیم پایه17 یعنی D.3 خروجی باشد باید این جمله را بنویسیم: DDRD.3=1;
      و اگر بخواهیم این پایه ورودی باشد: DDRD.3=0;
      رجیستر PORTx:
      در صورتی که پایه ها به صورت خروجی تنظیم شده باشند، هر چه در این رجیستر نوشته شود سطح منطقی پایه ی متناظر را تعیین می کند، مثلاً اگر بنویسیم PORTB.3=1 پایه B.3 یعنی پایه ی 4، 1 منطقی خواهد شد(یعنی ولتاژ 5 ولت بر روی این پایه قرار می گیرد). و اگر بنویسیم PORTC.1=0، پایه ی C.1 یعنی پایه ی 23، 0 منطقی خواهد شد (یعنی ولتاژ این پایه 0 می شود.).
      رجیستر PINx:
      در صورتی که پایه ها به صورت ورودی تنظیم شده باشند، محتویات این رجیستر حاوی اطلاعات دریافتی از پایه های میکروکنترلر است. مثلاً اگر PINB.1=0 باشد، یعنی بر روی پایه شماره ی 2 یا همان B.1 ؛ 0 منطقی اعمال شده است(مثلاً اگر به سنسوری وصل شده است، خروجی سنسور 0 منطقی بوده است). در حقیقت این رجیستر برای خواندن وضعیت پایه های ورودی مورد استفاده قرار می گیرد.

      دیدگاه

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