ايران ويج

نسخه‌ی کامل: مشکل با دماسنج با اتمگا 8
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2
سلام دوستان، من دماسنجی ساخته بودم با ATmega8a که خوب کار میکرد و به دلیل وصل کردن اشتباهی 12 ولت هم میکرو و هم ال سی دیم سوختند، دوباره ال سی دی و میکرو رو خریدم اینبار فروشگاه به من ATmega8L-8pu داده که وقتی پروگرامش میکنم و میزارم رو برد، دما هی بالا پایین میشه، مثلا میشه 7 بعد یهو میشه 56 بعد 22 بعد 47 و ... . تقریبا تو هر ثانیه یک دما با اختلاف حداقل 10 درجه ای نشون میده، ولی منوش درست کار میکنه یعنی به راحتی میره به منوی تنظیم، حداقل دما و حداکثر دما رو هم بخوبی تنظیم میکنم و این اعداد رو که دادم دیگه نیاز به تنظیم دوباره نیست، اینو هم بگم که LM35DZ من کاملا سالمه چون وقتی ولتاژ پایه 2 رو میگیرم دقیقا دمای محیط رو بصورت کاملا صحیح نشون میده. و چون اجساس کردم مبادا از این باشه خازن 100 نانو بین پایه 1 و 3 زدم که تغییری نداشت.
حالا سوالی که خدمت شما دارم اینه که آیا اتمگا 8 آ با اتمگا 8 ال در برنامه تفاوتی دارند و ممکنه که مشکل من همین باشه؟ در ضمن چند بار هم پروگرام کردن رو تکرار کردم که نتیجه یکسان بود.
اگر دوستان راه حلی دارند خوشحال میشم کمکم کنند.
سلام.

ATMEGA8L ولتاژ راه اندازيش كمتر از سريه A كه 5ولته هست.
برنامه تفاوتي ندارهه ...

احتمالا محيط شما محيط ساكني نيست و مثلا در معرض باد هست. اگر روي برد بورد هست مطمئن شيد كه پايه هاش خوب كيپ شده ...
Aref براي ADC رو چي داديد و چطور كانفيگ كرديد ؟

بهتره كه هر سري ،‌چند بار دما رو بگيريد ( مثلا 4 بار ) بعدميانگينش رو حساب كنيد و در فاصله زمانيه مشخص نشان بديد ، هر چند ثانيه 1 بار مثلا و ...

موفق باشيد.
يا علي.
(۱۳-آذر-۱۳۹۰, ۰۰:۲۱:۱۶)sharin نوشته است: [ -> ]سلام.

ATMEGA8L ولتاژ راه اندازيش كمتر از سريه A كه 5ولته هست.
برنامه تفاوتي ندارهه ...

احتمالا محيط شما محيط ساكني نيست و مثلا در معرض باد هست. اگر روي برد بورد هست مطمئن شيد كه پايه هاش خوب كيپ شده ...
Aref براي ADC رو چي داديد و چطور كانفيگ كرديد ؟

بهتره كه هر سري ،‌چند بار دما رو بگيريد ( مثلا 4 بار ) بعدميانگينش رو حساب كنيد و در فاصله زمانيه مشخص نشان بديد ، هر چند ثانيه 1 بار مثلا و ...

موفق باشيد.
يا علي.
سلام
ممنون که پاسخ دادی
برنامه رو من ننوشتم و میگم قبلا روی فیبری که طراحی کرده بودم کار میکرد تا قبل از وصل شدن 12 ولت و سوختنش، حالا هم روی همون فیبره، با این تفاوت که ال سی دی نو خریدم و به جای اتمگا 8 آ ، اتمگا 8 آۀ گذاشتم که قاطی کرده.
فکر کردم مبادا از تغذیه اش باشه برای همین 7805 رو بیرون آوردم و به ورودی 5 ولت و زمین ، از یو اس بی استفاده کردم که دقیقا 5 ولته، ولی باز مشکل حل نشد، من فایل ها رو میزارم که طراحی پروتئوس هم داره، خواهش میکنم یه نگاهی بندازید و کمکم کنید.
دماسنج

در ضمن اگه ممکنه تنظیم فیوزبیت ها رو تو این مدار واسم بزارید.
می تونی از اعداد میانگین بگیری
شما می تونی ۱۰۰ بار تو ثانیه بخونی و میانگین بگیری یک بار نشون بدی اینجوری پرش کمتر می شه
یاشاسین

به احتمال خیلی زیاد میکروی جدیدت اشکال فرکانسی داخلی داره و درست نمیشه و باید یکی دیگه بذاری ...

قبل از این کار شما پایه های 20 و 21 مگا 8 رو به مثبت و پایه 22 رو به منفی وصل کن و همچنین سعی کن با یه تغذیه دیگه هم امتحان کنی و بعدش اگه درست نشد میکرو رو عوض کن!!

-----------------------------------------------------------------------
سختی های بزرگ به آدمی نیروی دو چندان می بخشد (ارد بزرگ)
برنامه كه درست هست.

فيوز بيت ها هم لازم نيست دست بزني و از كريستال داخليه ميكرو استفاده كن. چون برنامه از 1MHz استفاده كرده ...
اون بيت هاش اينطوري ميشه :
000001
int:Rc و......
حالا توي سخت افزاري كه درست كردي ، بين Aref و Avcc خازن گذاشتي ؟!
بايد يه خازن بذاري ...

اين برنامه هم مي ياد 4 بار مقدار دما رو مي خونه و ميانگين ميگيره ...

براي موردي كه رسول جان هم اشاره كرد ،‌اگر اينطور باشه ، مقدار كريستال رو تغيير بده و فيوز بيت رو هم متناسب باهاش تنظيم كن يا فوق اش از كريستال خارجي استفاده كن.

اما استفاده از يه برنامه ي آماده ، اونم در حالي كه ندوني چي توش مي گذره اصلا درست نيست و در شان يه مهندس نيست ...
تجديد نظر كن ...

موفق باشي.
يا علي.

در زمان پروگرم کردن کانفیگ فرکانس میکرو روی 1MHZ قرار دادید؟
اگر نه به همین خاطر چون Prescaler روی Auto هست. و اگر فرکانس بیشتر باشه در نتیجه فرکانس ADC زیاد میشه. و کیفیت کم.
(۱۳-آذر-۱۳۹۰, ۱۳:۲۰:۵۱)sharin نوشته است: [ -> ]براي موردي كه رسول جان هم اشاره كرد ،‌اگر اينطور باشه ، مقدار كريستال رو تغيير بده و فيوز بيت رو هم متناسب باهاش تنظيم كن يا فوق اش از كريستال خارجي استفاده كن.

یاشاسین مرتضی جون Wink

منظور من کریستال داخلی برنامه (نرم افزاری و مربوط به فیوز بیت) میکرو نبودا !!

منظورم از کریستال قسمت سخت افزاری داخلی مگا 8 بود ...

آخه میکرو های جدید خیلی خیلی چینی هستند و زود خراب میشن Biggrin

-------------------------------------------
گریه عقده دل را می گشاید (مثل ترکی)

بابا دمتون گرم خیلی ازتون ممنون بابت کمک
مشکل اینجاست که من مهندس نیستم!!! یعنی اصلا الکترونیک نخوندم!!! ولی یه اطلاعات پایه از الکترونیک میدونم که تو ساخت مدارهای الکترونیکی و کیت ها کمکم میکنه. البته تو ساختن مدار کمی مهارت دارم و لوازم کار هم از قبیل اسیلوسکوپ، فرکانس متر، مولتی متر و .... دارم که کمکم می کنند.
اما از میکروها هیچ چی نمی دونم!
با تشکر از آقای امین زاده، چون من برنامه نویسی بلد نیستم پس نمی تونم فرمایش شما رو انجام بدم.
از آقا رسول هم بخاطر کمک ممنونم، سوالی که برام پیش میاد اینه که آیا همیشه باید این پایه هایی که گفتی به مثبت و منفی تغذیه وصل باشند؟ و وقتی مدار رو روشن میکنیم به اون پایه ها هم تغذیه 5 ولت بره؟
sharin جان از تو هم ممنونم، در مورد خازن نه هیچ خازنی در کار نیست، چه خازنی با چه ظرفیت بزارم؟ 100 نانو فاراد خوبه؟
بعد اینکه میشه لطف کنی بگی چطور کریستال رو تغییر بدم و فیوز بیتش رو هم باهاش تغییر بدم؟
از پردازشگر عزیز هم تشکر دارم، میشه لطف کنید بیشتر توضیح بدید؟ من از برنامه ponyprog استفاده کردم برای پروگرام کردن.
دوباره از همه شما سروران بخاطر کمک نهایت تشکر رو دارم و امیدوارم بیشتر از این کمکم کنید.
عجب !!!
شرمنده ... ( و خوش به حالت از بعضي جهات ... )
يادگيريه ميكرو در سطح ابتدايي كار سختي نيست ، اينطور كه از گفته هاتون هم بر مي ياد فقط كافيه كمي اطلاعات پايه اي از ميكرو داشته باشيد.
من با ponyprog كار نمي كنم ، فكر كنم بيت ها رو بايد تك به تك داخلش برنامه ريزي كني آره ؟
يه عكس از محيطش بذار ...
در كل براي 1MHz داخلي ،‌فيوز بيت هاي CKOPT، نبايد برنامه ريزي بشه و فيوز بيت هاي CKSEL3:0 بايد 0001 باشه ...
اون خازن رو هم جايي نديدم مقداري مشخص كرده باشه ... ، هر چي دمه دستت هست بذار Biggrin
فقط اصلاح مي كنم يه خازن بين زمين و پايه ي Aref ميكرو بذار. 1uf هم بايد خوب باشه ...

برنامه ريزي بيت هاي فيوز بيت يعني 0 كردنشون. اون هايي كه 1 هستن يعني برنامه ريزي نشدن ...

موفق باشي.
يا علي.
(۱۳-آذر-۱۳۹۰, ۱۸:۳۱:۱۶)sharin نوشته است: [ -> ]عجب !!!
شرمنده ... ( و خوش به حالت از بعضي جهات ... )
يادگيريه ميكرو در سطح ابتدايي كار سختي نيست ، اينطور كه از گفته هاتون هم بر مي ياد فقط كافيه كمي اطلاعات پايه اي از ميكرو داشته باشيد.
من با ponyprog كار نمي كنم ، فكر كنم بيت ها رو بايد تك به تك داخلش برنامه ريزي كني آره ؟
يه عكس از محيطش بذار ...
در كل براي 1MHz داخلي ،‌فيوز بيت هاي CKOPT، نبايد برنامه ريزي بشه و فيوز بيت هاي CKSEL3:0 بايد 0001 باشه ...
اون خازن رو هم جايي نديدم مقداري مشخص كرده باشه ... ، هر چي دمه دستت هست بذار Biggrin
فقط اصلاح مي كنم يه خازن بين زمين و پايه ي Aref ميكرو بذار. 1uf هم بايد خوب باشه ...

برنامه ريزي بيت هاي فيوز بيت يعني 0 كردنشون. اون هايي كه 1 هستن يعني برنامه ريزي نشدن ...

موفق باشي.
يا علي.
سلام و ممنون که اینقدر سریع پاسخ میدین
اول اینو بگم که من پایه های 20 و 21 رو به مثبت و 22 رو به منفی وصل کردم که اتفاقی نیافتاد، حالا سعی میکنم بین پایه 21 و زمین همونطوری که شما فرمودید 1 میکرو بزارم ببینم چی میشه.
درباره ponyprog راستش من هم چیز زیادی نمی دونم فقط باهاش چند باری میکرو پروگرام کردم همین، بدون هیچ تنظیمی فقط فایل هگز رو فراخونی کردم بعد write all رو زدم و کار تموم! بدون هیچ مشکلی!
این عکسی که گذاشتم مال security and configuration bits ... از شاخه command هستش که فکر میکنم اون چیزی باشه که شما خواستید، درسته؟
ممنون از کمکت

در ضمن خازن 1 میکروفاراد بین پین های 21 و زمین هم کارساز نبود، هیچ تغییری دیده نمیشه!
صفحه‌ها: 1 2