ايران ويج

نسخه‌ی کامل: چندتا سئوال فوري در مورد avr
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2
با سلام خدمت دوستان
من چندتا سئوال دارم اگر لطف كنيد جواب بديد ممنون مي شم:

1- چگونه دوتا پتانسيومتر را به avr وصل كنم . كه با تغيير يكي از انها فاصله بين روشن شدن 8 تا led روي يكي از پورتها تغيير كند. و با تغيير پتانسيومتر دوم مدت زمان روشن ماندن led ها تغيير كند(مي خوام led ها با فاصله قابل تنظيم و مدت زمان روشن ماندن قابل تنظيم تك تك و يكي پس از ديگري روشن بشوند.) مثلا led اول به مدت 2 ثانيه روشن بشود و خاموش بشود و پس از مثلا 15 ثانيه led دوم روشن بشود و به همين ترتيب الي اخر...و اين زمانها با پتانسيومترها قابل تنظيم باشند.

2- من برنامه اي نوشتم كه در ان دوتا از پورتها (bو c) به عنوان خروجي تعريف شده اند.و به انها led وصل كرده ام. تو پروتئوس كه شبيه سازي مي كنم دوتا از پايه هاي پورت c اصلا روشن نمي شوند. وقتي پورت رو عوض مي كنم مثلا اونو به a تغيير مي دم همه روشن مي شن.(پايه هاي 28 و 29 در مگا 32). اين دو پايه اصلا اكتيو نمي شوند. چرا؟
3- مي خوام در مورد فركانس كريستال بدونم. مثلا من توي برنامه با دستور $crystal فركانس رو 8000000 نوشتم. و اسيلاتور هم داخليه و چيزي وصل نكردم.
آيا لازمه جاي ديگه مثلا فيوز بيتها رو تغيير بدهم يا كار ديگه اي بكنم؟ لطفا روش اونو بگيد؟ يا لازم نيست. ضمنا من از يك پروگرمر سريال استفاده مي كنم كه خودش نرم افزار جداگانه داره و بسكام اونو نمي شناسه. به همين خاطر به فيوز بيتها توي بسكام دسترسي ندارم. ممنون از شما
1 - باید با ADC بخوتی پتانسیومتر ها رو و زمان ر تغییر بدی
۲ - jtag رو غیر فعال کن
۳ - فکر کنم پیش فرض ۸ باشه ولی فرکانس دیگه ای می خوای استفاده کنی باید فیوز بیت ها رو تغییر بدی
(۰۲-آبان-۱۳۸۷, ۱۷:۴۱:۲۷)ha_60 نوشته است: [ -> ]1 - باید با ADC بخوتی پتانسیومتر ها رو و زمان ر تغییر بدی
۲ - jtag رو غیر فعال کن
۳ - فکر کنم پیش فرض ۸ باشه ولی فرکانس دیگه ای می خوای استفاده کنی باید فیوز بیت ها رو تغییر بدی

ممنون از پاسختون.
چون من تازه كارم اگر لطف كنيد در مورد ايتم ها توضيحات كامل تري بديد ممنون مي شم. لطفا روش انجام رو بگيد. ضمنا من فعلا مي خوام تو پروتئوس جواب بگيرم در اين صورت چطور مي تونم jtag رو غير فعال كنم؟ لطفا جواب ستوال اول رو هم كاملتر بدهيد.
سلام
اگه از مگا32 استفاده میکنی فرکانس پیش فرضش 1مگ هستش که با تغییر فیوزبیت cksel ها میتونی رو 8 بزاری. با پروتوس زیاد کار نکردم نمیدونم ولی اگه زمانهای دقیقو میخای پروتوس جواب نمی ده.
فركانس كريستال پيش معمولا 1 مگاهرتز هستش . ( تو محدود ميكروهايي هم 8 مگ ديدم . )

JTAG هم فقط تو ATmega 16 پيش فرض فعاله . تو پروتئوس هم پيش فرض غير فعاله .

پروتئوس هم بستگي به سيستمت داره .
زمانهاش دقيقه اگه بتونه سيستمت جواب بده .

اگه مي توني برنامه بسكام و پروتئوس رو بفرست .
باسلام
1- باید از ADC استفاده کنی. (آنالوگ به دجیتال) به این صورت که با پتانسیومتر و یه مقاومت دیگه یه تقسی
ولتاژ بسازی. همینطور که میدونی با تغییر مقدار پتانسیومتر مقدار ولتاژ تقییر میکنه. بعد خروجی این مقسم ولتاژو به پایه ADC بده.(PORTA). مقدارهای مختلف ولتاژ رو از پورت بخون و توی خروجی بریز. OK?????????????

2-توی فیوزبیت ها یه فیوزبیت هست بنام Jtag. باید مقدار 0 بدی تا غیر فعال شود. حلا شما اگه با پروگرام دیگه ای کار می کنین باید راهنماشو بخونین.

3- فرکانس پیش فرض در بسکام 1mhz هست که تا 8mhz متغییره. اگه بالاتر خواستین (تا 16mhz) باید از کریستال خارجی استفاده کنین.

در مورد پروگرامر شما اگه STK200/300 باشه بسکام میشناسه. اما باید تنظیمش کنین. یه نگاهی به مدلش بندازین.
با سلام و تشكر از راهنمايي ها ي خوبتون.
مي شه لطف كنيد و مدار مربوط به پتانسيومترها كه اولي جهت تنظيم زمان پالس از 0.5 ثانيه تا 1.5 ثانيه و دومي جهت تنظيم فاصله پالسها از 5 ثانيه تا 20 ثانيه رو بزاريد؟ چطور پتانسيومترهاي مناسب رو محاسبه و انتخاب كنم؟
نمونه ساده برنامه اينه:

$regfile = "m32def.dat"
$crystal = 1000000

Config Portd = Output
Config Adc = Single , Prescaler = Auto , Reference = Avcc
Dim B As Byte
Dim Wp As Byte
Dim Wi As Byte
Start Adc

Do

For B = 0 To 7
Wp = Getadc(0) 'pulse time
Wi = Getadc(1) 'pulse interval time
Set Portd.b
Waitms Wp
Reset Portd.b
Waitms Wi
Next
Loop
END
با سلام.

پتانسومتر که مدار خیلی پیچیده ایه. دوتا پایه های کناری رو با یه مقاومت کوچیک بده به VCC و GND و از پایه وسطش خروجی بگیر. دیدی چقدر سخته!!!!!!!!!
ممنون دوست من.
اينو مي دونم. چطور اندازه پتانسيومتر مناسب رو محاسبه كنم؟
بهترین کار روش صحیح و خطا هست!!!
من كه معمولا پتانسيومتر 100 كيلو مي ذارم . ( 50 كيلو هم بدك نيست . )
صفحه‌ها: 1 2