سلام...آقا این قسمت فقط مخصوص سوال پرسیدن هستش ..هر کس سوالی از مدیران بخش ARM و مدیر سایت داره میتونه از این قسمت استفاده کنه...اگه سوالی ندارید بیخودی اینجا رو شلوغ نکنید بزارید به کارمون برسیم ...(تشکر)
سلام...آقا این قسمت فقط مخصوص سوال پرسیدن هستش ..هر کس سوالی از مدیران بخش ARM و مدیر سایت داره میتونه از این قسمت استفاده کنه...اگه سوالی ندارید بیخودی اینجا رو شلوغ نکنید بزارید به کارمون برسیم ...(تشکر)
خوب اولین سوال رو خودم میپرسم...البته قبلا این سوال رو پرسیده بودم ولی جوابی دریافت نکردم ولی برای شروع بد نیست...
سوال:فرمول تولید وقفه توی keil چیه؟من برای تولید یه وقفه از یه تابع که توی اون یه حلقه for وجود داره استفاده میکنم ولی مقدار دقیق رو برای تولید وقفه نمیدونم ..مثلا برای تولید یه وقفه 0.43ms باید چی کار کنم... :k01:
سلام
اینجا رو ببینید
http://atmel.nl/dyn/products/tools_c...p?tool_id=4343
کاملترین مجموعه سورس ها هست هر چی بخواین داره
واااوووو ...فوق العاده بود...تقریبا تا 80% سری اتمیل رو همراه با مثال گفته...عالیه...
برای فیلیپس هم یه همچین چیزی هست؟
سلام..برای اینکه یه صفحه کیبرد توی proteus با سری LPC اسکن کنیم از چه دستوری باید استفاده کنیم؟
سلام
برای کیبرد کتابخونه ی اماده وجود نداره ، شما میتونید با مثال های avr اون رو راه اندازی کنید ( مثال های avr یک مرجع هست )
سلام من یه برنامه واسه lcd نوشتم ولی وقتی روگرام می کنم تمامیه پین ها ست می مونه و هیچ کدوم ریست نمیشه ممکنه یه نگاش بکنید
سلام
دقیقا روی برنامه زوم نشدم ولی اینو در تابع main بررسی کنید
while (1) {
//comment=Ts_ins_panel_if_ctrl6 ;
//Tslcdoutins();
AT91F_PIO_ClearOutput( AT91C_BASE_PIOA,0x03FFFC00);
AT91F_PIO_ClearOutput (AT91C_BASE_PIOA, AT91C_PIO_PA19);
}
یه توضیح کوچولو می گم که بفهمین چی کار کردم
اقا تو تابع initlcd داریم یه سری کارها مثل فعال کردن کلک lcd و تنظیم گاما و نوع رنگ و مد ارتباطی رو انجام میدیم که اگه دقت کنین تو این تابع 2 تا تابع هی متغیر میگیرن و یه سری کارا انجام میدن
مثلا
Tslcdoutins(Ts_ins_gram_hor_ad);
Tslcdoutdata(0X0000);
خوب تابع اول رجیستر مربوطه رو فراخوانی میکنه از داخل lcd
وتابع بعدی مقدار رو داخلش میریزه و ارسال میکنه
و اینکه چرا این کدها رو ارسال کردم اگه دیتا شیت ili9325 رو مطالعه کنین تا تهش رو می فهمید
اگه این دیتاشیت رو نخونین من تا سال دیگه هم هرف بزنم فایده نداره
درضمن این یکی برنامه ای رو که میزارم سرعت رو تا 12 فریم در ثانیه بالا اوردیم
:k00:
چطور توی KEIL برای AT91SAM7X256 میشه PLL رو راه انداخت.میدونم CONFIGURATION WIZARD هست.یکی گفته بود اینجا که کار نمیکنه این بخش.اولا راست گفته؟اگه نه چطور باید تنظیمش کنم برای یک فرکانس کاری خاص.می دونم این سایت:
http://atmel.com/dyn/resources/prod_...T91SAM_pll.htm
مقادیر DIV وMUL رو می تونی حساب کنی حالا بعد این حساب و قرار دادن آیا بایدPLLCOUNT رو هم تغییر داد؟چه مقداری؟آیا PRESCALER رو هم تغییر داد؟آیا تیک MAIN OSCILLATOR ENABLE رو باید برداشت؟
یک توضیح کامل لطفا!!!
سلام به همگی :D.... من یه سوال داشتم.... من یه LCD N96 چینی خریدم .... با پروژه ای که تو PMM5 بود خوب کار می کنه.... ولی وقتی می خوام یه عکس جدید رو تو ال سی دی نمایش بدم نمی شه ... عکس رو تو فوتو شاپ 240X320 درست کردم ... موقع ذخیره کردن هم BMP با Pix Dept 16 بیتی ذخیره کردمش و با اون نرم افزار Converter تبدیلش کردم.... ولی تو ال سی دی تو چند خط اول یه سری پیکسل رنگی نشون می ده همین .... تو نوشتن مشکلی نداره ... فقط نمی تونم عکس رو توش نشون بدم.... خیلی کارم گیرشه ... ممنون می شم راهنماییم کنید ....
چي شد پس ؟ كسي نيست كمكم كنه ؟؟؟؟؟
دوست من احتمالا توی برنامه یه جایی دستکاری کردی یا دقیقا اون قوانینی که برای ذخیره کردن کد عکس توی یه متغیر رو توی مجله گفتم رو رعایت نکردی . اگه بتونی برنامه رو بزاری شاید بشه کمکی کرد .
سلام ... ممنون كه جواب ميدين .... والا كد برنامه همونيه كه با pmm5 بوده و بدون تغيير فقط مي خوام عكسش رو عوض كنم نمي شه ....مي خوام بدونم كه عكسي رو كه قراره آماده بشه واسه convert چطوري آمادش كنم... تو فوتو شاپ موقع ذخيره كردن مي زارم 16 بيت ولي بازم نشون نميده.... همين ...
يه چيزه ديگه هم تو نرم افزار Converter هست كه نمي دونم چيه . يه جا هست Byte per Pixel كه بطور پيش فرض 8 هستش ... آيا بايد همون 8 باشه ؟؟؟ يك 2نيا ممنون واسه كمكتون .......... x:
عرض ادب خدمت کلیه دوستان
خلایی رو که من توی تاپیکهای این انجمن و همینطور مجله تخصصی دیدم بحث در مورد اینتراپتهای جناب sam7 هست.
مطلبی رو که من از تو datasheet فهمیدم اینه که جناب sam7 مثل سید80 یا سیدmega16 و امثالهم دارای بردارهای از پیش تعریف شده و مشخصی در حافظه واسه اینتراپتاش نیست و باید این آدرسها توسط خود user توی رجیسترهای AIC_SVR0..AIC_SVR31 تعریف شوند. اولا درست میگم و هیچ default ندارن اینا؟ و ثانیا چطور میشه بهینه ترین آدرسها رو پیدا کرد؟ تورو خدا یکی جواب بده...
با سلام
كسي ميتونه اطلاعات كاملي درباره سيستم هاي عامل Windows CEو Linux كه روي arm9 قابل بارگزاريه توضيحي بده ؟؟
و يا اصلاً سورس آماده اي درباره اين سيستم هاي عامل وجود داره ؟
سادگی نهایت کمال است
یه مدتی میشه که نیستم... ولی به زودی بر می گردم...
حتما یه آشنایی مختصری با windows ce , linux دارید . اگه اطلاعات کامل میخواد برای هر کدومش کتاب وجود داره.
فقط من یه توضیحات مختصری میدم:
برای نصب ویندوز ce روی آرم 9 ، باید اول یه نسخه از ایمج اون داشته باشید . ایمج کاملش به راحتی پیدا نمیشه و لی باز پیدا میشه! بعد توسط یه نرم افزار دیگه (فکر کنم اسمش platform builder یا همچین چیزی بود) اون ایمج رو به نسبت سخت افزاری که داری تغییر میدی . مثلا نوع پردازنده ، مقدار و آدرس حافظه ها ، قسمتهای جانبی مثل psi , usart , pio ,.... رو مشخص میکنی . آخرشم براش یه بوت لودر میسازی و همه اینا رو میری تو مموری sd و وصل میکنی به بورد . بعد اگه اشکالی نباشه بوت میشه. (البته من با ویندوز ce کار نکردم ، و نخواهم هم کرد ولی تا جایی که من میدونم اینطوریه)
برای نصب لینوکس ، اول تو اینترنت میگردید که کدوم نسخه ها برای پردازنده شما قبلا پورت شده (کرنل و هسته اون مهمه نه توزیع). تو مرحله بعدی اونی که بیشتر به سخت افزار شما شبیه هست رو انتخاب مبکنبد و مشابه قسمت platform builder سخت افزارتون رو به کرنل میشناسونید (اینبار با تغییر دادن سورس کد ها ) و کرنل رو کامپایل میکنید . بوت لودر ها رو هم متناسب با مدارتون کامپایل میکنید (boot strap , uboot) بعد دوباره همه رو میریزید تو sd (که قرمت و پارتیشن بندی شده) و میزنید به بورد . برای محیط گرافیکی و سایر برنامه های اولیه میتونید یه ایمج درست کنید که بعد از بوت شدن کرنل اون اجرا بشه. معمولا برای همه پردازنده ها یه نسخه لینوکس پورت شده ولی اگه پورت نشده بود بهتره که اگه تجربه زیادی با لینوکس ندارید بیخیالش بشید! البته همونطور که گفتم برای اغلب پردازنده ها ازجمله arm9 نسخه پورت شده وجود داره.
ممکنه کار با ویندوز ce راحت تر به نظر بیاد ولی جدا از مسئله گشتن دنبال کرک و کپی رایت ، شما رو بد عادت و وابسته میکنه (مثل بسکام در مقابل avr-gcc یا ویژوال استدیو در مقابل qt ) در عوض لینوکس اپن سورس هست و آزادی عمل بسیار بالایی دارید و بحث سیستم عامل رو به صورت عمقی و پایه ای یاد میگیرید .
*ایم مواردی که گفتم برای نصب سیستم عامل روی آرم های جدیدتر هم صادقه و فرق چندانی نداره . بنابراین با توجه به اینکه آرم9 اصلا آش دهن سوزی نیست ، اگه میخواید روی مدارتون سیستم عامل نصب کنبد بهتره به گزینه های جدید تر از آرم 9 هم فکر کنید .(از لحاظ هزینه و سختی و سادگی کار تقاوتی زیادی نیست ولی تو امکانات و قدرت پردازش تفاوت بسیار زیادیه)
با تشكر از دوست خوبم farzadsw
يه سوال ديگه به نظر شما مي تونيم چند نفري يه ميني سيستم عامل برا ARM9 بنويسيم ؟؟؟
مي دونم كار خيلي سختي اما بالاخره ديگه
مثلاً مي تونيم با زبان C و اسمبلي به صورت تركيبي كار كنيم و با معرفي سخت افزار يه سيستم عامل ابتدايي جمع كنيم و مرحله به مرحله به روزش كنيم .
سادگی نهایت کمال است
یه مدتی میشه که نیستم... ولی به زودی بر می گردم...
سیستم عامل در حد ویندوز و لینوکس رو نمیشه به این سادگی ها نوشت .
ولی همون طور که گفتید چیزی مثل مینی سیستم عامل رو میشه 3-2 نفری در عرض چند ماه نوشت (البته چند ماه کار ) ، RTOS ها همون چیزی هستن که شما مد نظرتونه . جندتا rtos میشناسم که پروژه دانشجویی بودن و یا حتی کار یه نفر (البته اون افراد برنامه نویس حرفه ای و با تجربه بودن ، بنابر این به طور میانگین 1-2 سالی طول میکشه) .
اما سوال اینجاست که چه لزومی داره از صفر شروع به نوشتن سیستم عامل بشه ، در صورتی که سیستم عامل کامل به صورت اپن سورس وجود داره ؟ از نظر من در وهله اول باید کار کردن با سیستم عامل هایی که وجود داره رو یاد گرفت و در مرحله بعد (اگه لازم باشه) یکی از سیستم عاملهای اپن سورس رو تغییر داد و متناسب با نیاز ی که دارید بهینه کنید .