PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : مشکل با راه اندازی sam7s64



mrmehdi
26-03-2012, 06:54
سلام
دوستان مشکلی که من دارم اینه که یه سم 64 رو تبدیل کردم به دیپ و ولتاژها و تغذیه ها رو بصورت صحیح اتصال دادم.پروگرمر هم جی لینک فروشگاه هست.
برای کریستال 12 مگ و پی ال ال هم طبق نقشه 1.2 کیلو و 10 نانو و 1 نانو قرار دادم.
پروگرم جی تگ به درستی میکرو رو ومیشناسه و اریز و پروگرم میکنه ولی مشکل اینجاست فایل هگزی رو که وارد برنامه جی فلش میکنم بعد از اینکه بطور صحیح روی میکرو ریخته شد میکرو هیچ عکس والعملی نشون نمیده.
برنامه ساده زیر




#include "AT91SAM7S64.h" /* AT91SAMT7X256 definitions */
#include "lib_AT91SAM7S64.h"

void wait(void);
int main (void) {
for (;;) {
AT91F_PIO_CfgOutput(AT91C_BASE_PIOA, AT91C_PIO_PA0);
AT91F_PIO_CfgOutput(AT91C_BASE_PIOA, AT91C_PIO_PA1);
AT91F_PIO_ClearOutput(AT91C_BASE_PIOA, AT91C_PIO_PA0);
AT91F_PIO_ClearOutput(AT91C_BASE_PIOA, AT91C_PIO_PA1);
wait();
AT91F_PIO_SetOutput (AT91C_BASE_PIOA, AT91C_PIO_PA0);
AT91F_PIO_SetOutput (AT91C_BASE_PIOA, AT91C_PIO_PA1);
wait();
}
}
void wait (void) {
unsigned int n;
for (n = 0; n < 100; n++);
}


کامپایلر هم کیل است.
تنظیمات استارت آپ میکرو
You can see links before reply
دهن من رو سرویس کرد این سم...
لطفا کمک کنید.
یاعلی

sadmonew
26-03-2012, 12:48
سلام مهندس
شما اون تيكي رو كه تو عكس نشون دادم، براي پروژه خودتون، زدين؟
تست كنيد ببينيد جواب ميده؟
البته تو انجمن رو بيشتر سرچ مي كردين حتما جواب مشكلتون رو پيدا ميكردين.

mrmehdi
26-03-2012, 13:58
سلام
مرسی از جواب
مهندس من اون تیک هم فعال کردم برنامه اجرا نمیشه از روی میکرو.مشکل از کجاست.
آقا فعلا یه مشکل اساسی پیدا کردم که هرسری برنامه رو با ج لینک میریزم روی میکرو،میکرو رو که ریست میکنم حافظه برمیگرده به حالت اولیش!!!
من میام با ج فلش کل حافظه رو پاک میکنم. برا چک کردنش هم حافظه رو میخونم و کاملا خالی است.چیزی که میخونه:یعنی دقیقه میام
Target---->Connect---->OK
Target--->Erase Chip---->OK
بعد که تغذیه میکرو رو قطع و وصل میکنم میام حافظه رو میخونم:
Target--->Connect--->OK
Target---->Read Back---->Entire Chip
رو میزنم میبینم حافظه این بار خالی نیست!!!!
یچیز هایی توی حافظش هست ...
یعنی تقریبا 1/3 داده است که هرسری هم ثابت است!!!
دلیلش چیه هرچندبار هم که تکرار کردم همینطور بود!!!!!

sadmonew
26-03-2012, 15:04
Target--->Erase Chip---->OK

سلام مهندس
Target--->Erase Sectors رو براي پاك كردن ميكرو انتخاب كنيد.
البته هر مرتبه كه ميكرو پروگرم كنيد، قبلش ميكرو پاك ميشه بعد برنامه ريزي ميشه.
من الان برنامه رو تست كردم، بدون مشكل جواب ميده.
البته بايد يه تصحيح تو برنامه انجام بدين.
تو تابع wait قسمت مربوط به دستور for رو به صورت زير تغيير بدين:


void wait (void) {
unsigned int n;
for (n = 0; n < 100000; n++);
}