اطلاعیه

Collapse
No announcement yet.

RAM خارجی

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

    RAM خارجی

    سلام
    برای میکروی mega32 میشه از RAM خارجی استفاده کرد ؟ و میشه چند مدل معرفی بفرمایین ( بین 8 تا 64 کیلو )

    ممنون :redface:
    وقتی تو نیستی
    نه هست های ما چونانکه بایدند
    نه باید ها...
    هر روز بی تو http://www.up98.org/upload/server1/0...158wwayrz3.jpg
    روز مباداســـت !

    #2
    پاسخ : RAM خارجی

    نه نمیشه...
    باید حتما پایه ی ALE داشته باشه مثله 8515 یا 8535
    یا Atmega 64 و بالاتر.
    الهم عجل لولیک الفرج

    فقط 313 نفر...

    دیدگاه


      #3
      پاسخ : RAM خارجی

      بله میشه
      من برای atxmega64a3 که این پایه ها رو هم نداشت وصل کردم
      باید عملکرد این واحد (اتصال به رم خارجی) رو خود شبیه سازی کنی
      افتادگی آموز اگر طالب فیضی هرگز نخورد آب زمینی که بلند است

      دیدگاه


        #4
        پاسخ : RAM خارجی

        ای ول...
        یه چیزی یاد گرفتیم.
        ممنون دوست عزیز.
        الهم عجل لولیک الفرج

        فقط 313 نفر...

        دیدگاه


          #5
          پاسخ : RAM خارجی

          سلام
          اینکه میکروکنترلری را که امکان متصل کردن RAM خارجی ندارد را بیایید و با پین های IO آن این کار را شبیه سازی کنید شدنی هست و هیچ مشکلی ندارد اما سرعت خواندن و نوشتن در حافظه به شدت کاهش میابد :sad:. حتی با این روش به یک ATmega8 هم می توانید RAM خارجی وصل کنید. اگر برنامه را به زبان اسمبلی بنویسید فرض کنید از یک پورت برای دیتا باس و یک پورت برای آدرس باس و چند پین از یک پورت را هم برای سیگنال های کنترلی در نظر میگیریم. حالا فرض کنید می خواهید در یکی از خانه های RAM خارجی بنویسید 1. باید آدرس را در پورت میکروکنترلر قرار دهید 2 کلاک 2. باید دیتا را در پورت میکروکنترلر قرار دهید 2 کلاک 3. باید سیگنال کنترلی را فعال کنید 2 کلاک 4. باید سیگنال کنترلی را غیرفعال کنید 2 کلاک ==== در مجموع 8 کلاک حداقل نیاز دارید تا یک بایت را در یک آدرس حافظه RAM بنویسید.
          حالا اگر میکروکنترلر امکان متصل کردن RAM خارجی را داشته باشد در این صورت پورت ها مربوطه مستقیم به دیتا باس و آدرس باس میکروپروسسور وصل است (سرعت این باس ها خیلی بیشتر از پین های IO می باشد) و با یک دستور اسمبلی که 2 کلاک نیاز دارد در یک خانه از حافظه RAM خارجی بنویسید. همچنین در برنامه نویسی همانطور که یک متغییر را تغریف می کنید در حافظه RAM داخلی آنرا در حافظه RAM خارجی تعریف کنید و دسترسی به این دو متغییر هیچ فرقی باهم ندارد.
          پس طراحی این دو سخت افزار فرق اصلی آن سرعت دسترسی به حافظه می باشد.
          حالا برای انتخاب میکروکنترلر اگر به حافظه فلش زیادی نیازی ندارید و همچنین پین IO زیاد نیاز ندارید می توانید از ATmega162 استفاده کنید که پکیج آن مشابه AT89S51 می باشد. در غیر اینصورت می توانید از ATmega64 به بالا استفاده کنید.
          فایل های پیوست شده

          دیدگاه

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