PDA

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



imported_pmf
26-08-2012, 20:59
سلام
آقا من تونستم میکرو برد را به کامپیوتر از طریق سمبا شناسایی کنم.اما هر کار میکنم که دقیقا برنامه ساده زیر را از طریق بردآموزشی ببینم نمیشه!!!!!این برنامه قرار بود چشمک زن باشه ولی اینقد ازش پاک کردم همین ازش موند که اینم جواب نمیده.:(لطفا شما نگا برنامه من کنید ببینم ایراد از کجاست؟؟؟؟؟کامپایلر من کیل می باشد.
#include <AT91SAM7s64.H>
#include <lib_AT91SAM7S64.h>
#include <delay.h>
int main (void)
{
AT91F_PIO_CfgOutput(AT91C_BASE_PIOA,AT91C_PIO_PA0) ;
while(1)
{
AT91F_PIO_ClearOutput(AT91C_BASE_PIOA, AT91C_PIO_PA0);
}
}
wait()
{
unsigned int n;
for (n=1;n<7372800;n++);
}
بنظر شما این برنامه که بدون ERROR وwarning هست و با دیباگر کیل هم جواب میده و پروگرم هم میشه ، مشکلش کجاست؟؟؟؟:x:x:x
توی آرم و کیل نیازی به تعریف کریستال نیست؟؟؟؟؟توی قسمت TARGET من کریستال را روی 18.432 تنظیم می کنم.پیش فرض خودش هم که 20مگاهرتزه جواب نمیده !!!! توی این برد آموزشی PA0---PA3 به کاتد 4 تاLED وصل شده که وقتی این برنامه رو کامپایل می کنم نه تنها این LED ها روشن نمیشه بلکه ولتاژ این پایه ها 2.6 ولته.کلافم کرده 3 روزه.:unh::baad::baad:cry::
ممنونم

Doloop
26-08-2012, 22:12
من با اتمل کار نکردم ولی...
یه سوال توی آرم اتمل مگه نباید کلاک سیستم فعال بشه ؟
شما کجای برنامه این کارو انجام دادی ؟
شاید مشکل از همینه !!!
نمونه مثال که براش زیاده یکیشو نگاه کنی همه چی دستگیرت میشه :wink:

mahdimolaei
26-08-2012, 23:02
سلام
آقا من تونستم میکرو برد را به کامپیوتر از طریق سمبا شناسایی کنم.اما هر کار میکنم که دقیقا برنامه ساده زیر را از طریق بردآموزشی ببینم نمیشه!!!!!این برنامه قرار بود چشمک زن باشه ولی اینقد ازش پاک کردم همین ازش موند که اینم جواب نمیده.:(لطفا شما نگا برنامه من کنید ببینم ایراد از کجاست؟؟؟؟؟کامپایلر من کیل می باشد.
#include <AT91SAM7s64.H>
#include <lib_AT91SAM7S64.h>
#include <delay.h>
int main (void)
{
AT91F_PIO_CfgOutput(AT91C_BASE_PIOA,AT91C_PIO_PA0) ;
while(1)
{
AT91F_PIO_ClearOutput(AT91C_BASE_PIOA, AT91C_PIO_PA0);
}
}
wait()
{
unsigned int n;
for (n=1;n<7372800;n++);
}
.................

سلام پسر خوب
شما که اصلا پایه هات رو set نكردی
در ثانی
شما اصلا wait رو در while (1) قرار ندادی و تابعتون داره مکررا پایه 0 پورت A رو صفر میکنه و اصلا 1 نمیشه که بخواد روشن خاموشی اون رو ببینی
این رو برای حلقه while(1) بنویس:
while(1)
{
AT91F_PIO_ClearOutput(AT91C_BASE_PIOA, AT91C_PIO_PA0);
delay_s(1);
AT91F_PIO_SetOutput(AT91C_BASE_PIOA, AT91C_PIO_PA0);
delay_s(1);
}
اينجا كدها به هم ریخته ولی اگر از همین جا کپی کنی درست کپی میشه
راستی از شبیه ساز کیل هم می تونی ببینی که پایه هات چطوری صفر و یک میشن!
ان شاالله که مشکلت حل میشه:wink:
یاعلی
در ضمن کریستالت رو هم درست فعال کردی فقط اگه سربرگ target رو درست کنی کافیه!

mahdimolaei
26-08-2012, 23:14
در ضمن من هنوز متوجه نشدم تابع wait() كه شما نوشتي ناقصه ، چجور کار میکنه
شما که کتابخونه ی وقفه رو اضافه کردی از همون delay_s(n) استفاده کن دیگه
فکر کنم طرز نوشتن تابعت هم اگر قرار بود ازش استفاده کنی این باشه:

void wait (void)
{
unsigned int n;
for (n=1;n<7372800;n++);
}


در ثانی اگر تابع رو آخر برنامه بنویسی باید در ابتدای برنامه به کامپایلر معرفیش کنی
یعنی قبل از استفاده ، مثلا قبل از تابع main به اینصورت معرفیش کنی:
void wait (void);

imported_pmf
27-08-2012, 01:40
سلام وتشکر از دوستانی که جواب دادن با این دقت
مهدی جان همونطور که در بالا گفتم کاتد led ها به porta وصل شده ونیازی به یک شدن ندارم چون نمیخام چشمک بزنه فقط خواستم ببینم که اصلا روشن میشن یا نه، که متاسفانه نشدن!!!!!!cry::cry::


در ضمن من هنوز متوجه نشدم تابع wait() كه شما نوشتي ناقصه ، چجور کار میکنه
شما که کتابخونه ی وقفه رو اضافه کردی از همون delay_s(n) استفاده کن دیگه
بله شما درست میگید از هدر تاخیر استفاده کردم اما همونطور که گفتم این برنامه اونقد ازش پاک شده تا به این سادگی دراومده که رفع عیب بشه
فکر کنم طرز نوشتن تابعت هم اگر قرار بود ازش استفاده کنی این باشه:

void wait (void)
{
unsigned int n;
for (n=1;n<7372800;n++);
}


در ثانی اگر تابع رو آخر برنامه بنویسی باید در ابتدای برنامه به کامپایلر معرفیش کنی
یعنی قبل از استفاده ، مثلا قبل از تابع main به اینصورت معرفیش کنی:
void wait (void);
درضمن اگر تابع wait() مشکل داشت که برنامم کامپایل نمیشد.تازه اگه دقت کنید من که نوشتم بدون error کامپایل شده وتوی شبیه ساز کیل هم جواب داده خاطر جم باشید.تنها مشکلم با برد آموزشیه که با اینکه کامل پروگرم میشه اما جواب نمیده!!!!!!!!:baad::baad:
در واقع برنامه اینه:
#include <AT91SAM7s64.H>
#include <lib_AT91SAM7S64.h>
int main (void)
{
AT91F_PIO_CfgOutput(AT91C_BASE_PIOA,AT91C_PIO_PA0) ;
while(1)
{
AT91F_PIO_ClearOutput(AT91C_BASE_PIOA, AT91C_PIO_PA0);
}
ممنونم

Doloop
27-08-2012, 02:24
اگه پروژت رو قرار بدی دوستان بهتر میتونن کمکت کنن :wink:
البته اگه محرمانه نیست :0013:

mahdimolaei
27-08-2012, 11:30
در واقع برنامه اینه:
#include <at91sam7s64.h>
#include <lib_at91sam7s64.h>
int main (void)
{
at91f_pio_cfgoutput(at91c_base_pioa,at91c_pio_pa0) ;
while(1)
{
at91f_pio_clearoutput(at91c_base_pioa, at91c_pio_pa0);
}
ممنونم
سلام
ببينید شما حلقه ی شماره 1 تون مدام داره پایه صفرتون رو صفر میکنه ،خب دیگه چرا تو حلقه گذاشتین
یکبار بگذار بیرون حلقه ببین جواب میده؟
ضمنا قرار شد با شبیه ساز کیل امتحان کنی ها
نحوه ی استفاده ش فکر کنم تو مجله میکرو شماره 2 اومده!
راستی شاید هم اشتباه بهت گفته باشن که آند مشترکن ، با 1 کردن پایه ها امتحان کردی؟
( امتحانش ضرری نداره!)

imported_pmf
27-08-2012, 20:42
سلام وتشکر
مهندس جان فعلا پروژه ای در کار نیست که بخواد محرمانه باشه!!!!!!!! :sa:من فقط میخوام برنامه ها رو از کیل وشبیه سازش روی برد واقعی تست کنم.:unh: که از بردآموزشی شرکت نوآوران at91sam7s64 استفاده می کنم.اگه نوشته ها منو با دقت بخونید متوجه میشید که :
1-پروژه یک چشمک زن ساده بوده که توی برنامش هم پایه ها رو صفر کردم وبعد از چند ثانیه صفر کردم، که با شبیه ساز کیل خیلی قشنگ جواب داده.cry::
2-من طبق نقشه ای که توی دفترچه برد آموزشی هست که کاتد LED ها به میکرو وصل هستند پایه ها رو صفر می کنم.در ثانی بر فرض که نقشه اشتباه باشه، من در ابتدای کار هم یک دادم کار نکرده واز همه مهمتر اینکه ولتاژ پایه های میکرو را در هر حالت اندازه گرفتم اما مقدارش 2.6 ولت بدون تغییر مونده.
3-من پروگرام سمبا را هم با کامپیوتر شناسایی کردم واز اون بابت مشکلی نیست.:(
فقط یک نکته که یادم رفته بگم اینکه یک برنامه نمونه شرکت را با این برد تست کردم جواب هم داده اما متاسفانه خود شرکت از IAR استفاده کرده و من از کیل.و نکته دیگر اینکه برنامه شرکت فایل .BIN رو پروگرم می کنم و اما پروژه خودم فایل .HEX را.بنظر شما مشکل از این نیست که من فیل هگزو با سمبا پروگرم می کنم؟؟؟؟؟؟؟؟؟؟؟؟ در زیر قسمتی از نقشه وهمچنین فایل برنامه شرکت رو ضمیمه می کنم شما ببینید شاید تفاوتش را شما متوجه شدید.
متشکرم

abrar
27-08-2012, 22:08
چرا دوست عزیز برای sam-ba باید به bin تبدیل کنی

imported_pmf
28-08-2012, 00:38
اما من توی پست دیگه از do...loop شنیدم گفت که هگز یا باین فرقی نداره و هردو میشه!!!!!!!!!!!:sa::sa::sa:
اگه امکان داره لطفا این نرم افزار hex2bin را بذارید لینکشو تا من دانلودش کنم شاید جواب داد.
متشکرم

Doloop
28-08-2012, 02:17
من !!!ii998)ii998)ii998)ii998)ii998)ii998)ii998)ii998 )ii998)ii998)ii998)ii998)
تا اونجا که یادم میاد گفتم HEX خودم تست نکردم شما تست کنید ببینید جواب میده یا نه ... :0013:
مگر اینکه خلافش ثابت بشه :wink:
اینم برنامه HEX2BIN که من دارم (یادم نمیاد برای چی دانلودش کردم :mrgreen:)

طرز استفاده فایل هگز رو درگ کن ببر روی آیکون این برنامه بعد OPEN بزن توی محل ذخیره فایل هگز یه فایل باینری میسازه

imported_pmf
28-08-2012, 09:14
سلام
doloop عزیز خداییش اونروز که گفتی البته با هگز هم جواب میده سر این حرف شما من فایل هگز را با سمبا استفاده می کردم :cry::cry:.5 شبانه روز من تست میکردم چون همونطور که گفتم برنامه من درست بود و به استناد حرف شما از هگز استفاده کردم. که متاسفانه خلاف آن ثابت شد:brk::brk:.یه خواهش دارم از همه دوستان که تا چیزی را خودتان تست نکردید ومطمئن نیستید به دیگران هم نگید ویا اینکه ذکر کنید که خودتان تست نکردید.:x
ممنون