همونطور که می دونید می شه یک ram64kB رو به atmega 64و atmega128 اتصال داد و بدون هیچ یرنامه نویسی اضافه ای ram اون رو افزایش داد. لینک زیر یک مثال از اتصال ram 32k به atmega64 رو نشون میده. http://eecs.oregonstate.edu/~traylor/ece473/pdfs/mega128.1_UG.pdf
من این اتصالات بین ram , avr رو بستم.برای برنامه نویسی از codevision ورژن 1.24.5 استفاده کردم.بعد از تعریف chip64 یک منوی external ram به منوی تعریف پروژه اضافه میشه. درد این منو می شه مقدار exteranal ram رو تعریف کرد. من 32k رو انتخاب کردم. بعد از generate کردن پروژه داخل حلقه while یا بیرون داخل main یک تابع رو فراخوانی کردم مثل putchar بعد از program کردن برنامه متاسفانه برنامه به طور مرتب reset می شه. من حتی تابع های دیگر رو هم برای فراخوانی امتحان کردم. ولی مثل اینکه فرق نمیکنه و اصلا به نوع تابع فراخوانی شده بستگی نداره.بلکه مشکل همن ابتدا تو تعریف external ram است چون من یک پروژه دیگه تعریف کردم و external ram رو disable کردم و اصلا همچین مشکلی پیش نیومد و توابع قبلی درست کار کردن و سخت افزار هم هیچ مشکلی نداشت.ممنون می شم منو راهنمایی کنید.
من این اتصالات بین ram , avr رو بستم.برای برنامه نویسی از codevision ورژن 1.24.5 استفاده کردم.بعد از تعریف chip64 یک منوی external ram به منوی تعریف پروژه اضافه میشه. درد این منو می شه مقدار exteranal ram رو تعریف کرد. من 32k رو انتخاب کردم. بعد از generate کردن پروژه داخل حلقه while یا بیرون داخل main یک تابع رو فراخوانی کردم مثل putchar بعد از program کردن برنامه متاسفانه برنامه به طور مرتب reset می شه. من حتی تابع های دیگر رو هم برای فراخوانی امتحان کردم. ولی مثل اینکه فرق نمیکنه و اصلا به نوع تابع فراخوانی شده بستگی نداره.بلکه مشکل همن ابتدا تو تعریف external ram است چون من یک پروژه دیگه تعریف کردم و external ram رو disable کردم و اصلا همچین مشکلی پیش نیومد و توابع قبلی درست کار کردن و سخت افزار هم هیچ مشکلی نداشت.ممنون می شم منو راهنمایی کنید.
دیدگاه