برای اینکه بخای یه همچین چیزی رو بسازی اول باید در باره میکروکنتلر ها و برنامه نویسیشون به اندازه کافی بدونی
اگه همینطوری بخای بری جلو هم هزینت تلف میشه هم اینکه ازش زده میشی.
برای اینکه بخای یه همچین چیزی رو بسازی اول باید در باره میکروکنتلر ها و برنامه نویسیشون به اندازه کافی بدونی
اگه همینطوری بخای بری جلو هم هزینت تلف میشه هم اینکه ازش زده میشی.
من اومدم
سلام از اين كه اينقدر حرف ميزنم عذر ميخوام:
اما شما دوست عزيز ، كجايي هستي؟ اين ميلادي كه همسايه ما هست نيستي؟
اگه در مناطق گرم و خشك هستي سعي كن زياد به پايه هاي IC ها دست نزني چون بعضي ها ممكنه بسوزند. مخصوصا وقتي از جاي مرطوب مثل شمال ميري يه جاي خشك مثل يزد ، نزديك IC شدي بدون سوخته !( بدن انسان مثل يك خازن 100pF عمل ميكنه و چند كيلو ولت ولتاژ ساكن در بدنت ذخيره ميشه و اگه با چيزي يا كسي تماس پيدا كني جرقه ميزني البته تو احساس خوبي بهت دست ميده ولي اون طرف يه لحظه شوك ميگيره بعدش بايد فرار كني ! ما توي اصفهان اينكارو ميكرديم خيلي كيف ميداد
)
من نرم افزار كامپايلر CodeVision AVR رو پيشنهاد ميكنم. در اين نرم افزار قسمتهاي اصلي مثل تنظيمات كه وقتگير هستن رو به صورت ويژوال تنظيم ميكنيم و كدش خودكار نوشته ميشه ، و بعد برنامه اصلي رو ما مينويسيم. زبانش هم C هست كه گفتي بلدي. همونطور كه گفتم و گفت بايد از كتاب ياد بگيري ولي اون كتابي كه گفت مال يه برنامه ديگه هست كه زبانش هم بيسيكه و كلا ضعيف تر از كامپايلرهاي زبان C هست، بهش نگييا)
خوب اين مدار پروگرامر AVR با پورت پرينتر هست. به جز AVR - IC اصلي كه قراره پروگرام بشه ، يه مقاومت و يه IC داره به همراه كانكتور پورت پرينتر ( به فروشنده بگو كانكتور به سيم وصل ميشه نه روي فيبر مدار ! محفظه هم يادت نره ) . البته احتمالا يه IC ديگه ( توليد كننده ولتاژ 5 ولت ) و يه خازن كوچيك ميخواد: ورودي اين IC رو طبق شكل به يه منبع ولتاژ بين 8 تا 20 ولت ( غير از كامپيوتر ) بده ، منفي خروجي ( GND ) رو به منفي مدار پروگرامر وصل كن ، مثبت خروجي رو هم به +5 ولت. بهترين كار اينه كه يه باتري 9 ولت كتابي بخري ( سره شش ضلعي منفيه ، و سر گرد مثبت - يا سيم سياه منفي و سيم قرمز مثبته ). گيره سوسماري هم 4 تا بخر . اسم قطعات هم كه روي نقشه نوشته شده. فقط پايه هاي كانكتور پرينتر رو از نزديك كه ببيني، شماره ها رو ريز روش نوشته. پايه هاي AVR - IC هم كه با هم فرق دارن ، ولي نقشه پايه هاي ATmega 8 رو كه مدارو باهاش ميسازي برات ميذارم.جزئيات ديگه باشه بعدا.
اين باشد پروگرامر STK200/300 :
و اينم مدار اصلي :
وااين جناب هم كدها ( يكي C و ديگري تبديل شده به HEX كه توسط هر كامپايلري پروگرام ميكند IC را :
شكل پايه هاي ATmega8 هم در اين فايل موجود ميباشد. فعلا درود و دو صد بدرود ...کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
طرز كار و مابقي را بعدا عرض خواهيم نمود ، خسته شده ايم فعلا ...![]()
Last edited by New Ray; 04-01-2010 at 08:10.
سلام.... باتشکر بسیار فراوان از شما دوست وفادار....
واقعا" خسته نباشید. شرمنده کردید.....
من خرم آباد هستم. نه ولی اسما" یکی هستیم.....اما شما دوست عزيز ، كجايي هستي؟ اين ميلادي كه همسايه ما هست نيستي؟
اگه اینجا کاری داشتین تاجایی که بتونیم در خدمتیم
راستی این خنک کننده و گرم کننده کجا باید نصب بشن؟؟؟طرز كار و مابقي را بعدا عرض خواهيم نمود ، خسته شده ايم فعلا ...
منتظر هستیم.
مین من هرچه گشتم LPT نداره باید به کجاش وصل کنم؟؟؟؟؟؟؟؟؟ مدل هم ASUS p5k
اگه برا کامپیوتر من راهی نداره یه پراگرمر هست میده 10 تومن بگیرمش خوبه؟
فعلا" یا حق
Last edited by ClubMilad; 04-01-2010 at 11:55.
بيبين چوطو آدمو سر كار ميذاريو !قبلا ميگفتي من ديگه پروگرامر نميذاشتم ديگه . اگه 10 تومن داره بگير خوب. فقط ببين AVR هست و نوعش ( اسمش ) يا پورتي كه ميخوره چيه. اين USB-asp كوچولوهه رو CodeVision ساپورت نميكنه ها ! راستي CodeVision هم بايد بگيري ها! دانلودشو آقا پيام يه جا گذاشته همين پايين سايت زود بزن تا نرفته صفحه قبل.
اگه كتاب بخري معمولا CD كدويژن با ديتاشيتهاي IC هاي مختلف رو هم توش دارن. كتاب ميكرو كنترلر AVR با CodeVision ( به زبان C ) بگير. اين كتابها رو مغازه هاي الكترونيك هم ميفروشن.
اما مقاومتهاي 1K اهم 20 تا و 3.3 اهم 10 تا بگير بعدا نيازت ميشه. بجاي مقاومتهاي پايه LED ها 1K اهم بذار. فقط من در سون سگمنت بايد هر پايه يه مقاومت ميذاشتم ولي براي سادگي يه دونه مقاومت براي كلشون گذاشتم. پايه سون سگمنت رو هم بعد برات ميكشم ميذارم.
خنك كننده نميخواد كه !
اين نقشه كامل براي ساخت:
سون سگمنت : ( اين مدار از سمت چپي استفاده ميكنه ، كاتد مشترك )
اينم ليست قطعات :
R :
3.3 ohm ------------------ X 5
100 ohm ----------------- X 5
270 ohm ------------------ X 5
1 K ohm ------------------ X 20
10 K ohm ---------------- X 5
C :
10 uF ---------------------- X 5
IC :
ATmega8 ----------------- X 1
7805 ------------------------ X 1
LM35 ----------------------- X 1
متفرقه :
7-segment Cathode --- X 3
LED Green --------------- X 2
LED Red ------------------ X 2
شستي فشاري مينياتوري ------ X 4
سيم نازك برد بورد يا سيم تلفن X 2 meter
گيره سوسماري -------------- X 2
Last edited by New Ray; 04-01-2010 at 22:41.
باز هم ممنوندوست عزیز.
منظورم از خنک کننده اینه که اگه دما از حد تعیین شده بالا رفت روشن بشود.
میشه فایل proteus رو هم بزاری.
وقتي دما بالاتر از حد ميشه LED سبز روشن ، و وقتي كمتر از حد ميشه LED قرمز روشن ميشه.
اولش به صورت پيش فرض حد دما بين 15 تا 30 درجه قرار داده شده ولي ميشه با زدن دكمه SET تنظيمش كرد. به اين ترتيب كه LED قرمز چشمك ميزنه و بعد با دكمه هاي پايين و بالا دماي حد پايين رو تنظيم ميكنيم.
پس از چند ثانيه دستگاه به حالت عادي برميگرده و دوباره دكمه SET رو ميزنيم اينبار LED سبز چشمك ميزنه و مثل دفعه قبل دماي حد بالا رو تنظيم ميكنيم.
اگه دستگاه خاموش بشه دماي تنظيم شده دوباره پيش فرض ميشه ( 15 تا 30 درجه ميشه چون از متغير در eeprom استفاده نكردم )
LM35 هم اگه طرف صافش رو ببيني ، سمت چپي مثبت ( به مقاومت 3.3 اهم وصل شده ) ، وسطي خروجي و سمت راستي به منفي وصل ميشه.
ضمنا برنامه رو طور خاصي نوشتم و شلوغ شده واسه همين نميشه چيزي ازش فهميد ! حتي خودم !
اينم Proteus : ( مال من ورژن قديميه 6.5 هست )
فقط توش بايد يه كليك راست روي آي سي بعد يه كليك چپ دوباره ( اگه ورژن جديد هم همينطور باشه ) ، حالا توي قسمت انتخاب فايل HEX كه بهت دادم رو بذاري تا كار كنه.
کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
Last edited by New Ray; 05-01-2010 at 15:05.
تشکر از اینکه وقت گرانبهایتان را صرف ما میکنید.که با هیچ چیز قابل جبران نیست.
دوست عزیز این فایل با پسوند c رو اگه بخواهم دستکاری کنم و بعد تبدیل کنم به hex چطوری هست.؟
بعد هم تو proteus سون سگمنت ها عدد 8 رو نشون نمیدن باید چه کنم؟
یه سوال دیگه چطوری یه هیتر 220 ولت AC رو به جای LED قرمز که 2 ولت هست بزارم.
Last edited by ClubMilad; 06-01-2010 at 14:08.
اگه فايل C رو دستكاري كني بعد به HEX تبديلش كني بايد جواب بده البته تو CodeVision چون فايلهاي include هم داره. اين برنامه رو خيلي شلوغ نوشتم چيزي متوجه شدي؟ميتونستم دسته بندي كنم و توي تابعهاي مجزا بنويسم يا اينكه از امكانات IC مثل تايمر و وقفه خارجي استفاده كنم كه ديگه هول هولي شد ! ( فوقع ما وقع ) كه يادت هست تو عربي ؟
اگه خواستي اين مدارو واقعا بسازي گفتم براي هر پايه سون سگمنت يه مقاومت بين حدود 100 اهم تا 1k بذار ولي توي proteus مقدارش يكم فرق داره و ميتوني مقدار مقاومت پايه منفي سون سگمنت رو كم كني . مثلا 50 اهم بذار. ( واقعي اگه همينو بسازي رقم 1 پر نور و رقم 8 كم نور ميشه كه proteus اونو خاموش نشون ميده و بايد هر پايه مقاومت جدا داشته باشه كه در اينصورت بجاي مقاومت پايه منفي سيم بذار )
ضمنا LM35 براي ورژن من كار نكرد ميتوني به جاش يه منبع ولتاژ بذاري و بجاي هر درجه 10 ميلي ولت بهش بدي. مثلا 28 درجه ميشه 280mV .
دستگاه هيتر ( گرم كننده ) يا فن (خنك كننده ) با برق 220 رو ميشه با يه رله روشن و خاموش كرد :
يه مقاومت و يه ترانزيستور NPN ( ترانزيستور منفي مثل BC327 يا s8050 و مشابهشون عاليه ) و يه رله پنج ولت هم ميخواي ، از باتري 9 ولت كتابي براي اين قسمت استفاده نكن چون جريان اين باتري ها براي رله ضعيفه و ممكنه اصلا مدارت خاموش بشه.
البته يه وقت با اين رله ها كولر يا بخاري برقي قوي روشن نكني ها ! براي اينا بايد كارهاي ديگه اي انجام داد ( اين رله 5 ولت ضعيفه - روي رله ها جريان كار كليدشونو مينويسن مثلا : 7A 240VAC ولي مثلا كولر در لحظه اول كار حدود 10 تا 20 آمپر جريان ميكشند . ميشه چند تا رله گذاشت و براي هر كدوم يه ترانزيستور و مقاومت گذاشت كه سر و تهشون به هم وصل ميشن (موازي) اول كار با برق كار نكنيا ! من هنوز از كار با برق يكم ميترسم. يه وقت نزني همه چيز و نيست و نابود كني ! ( اونوقت من از دست سوالاتت راحت ميشم) ) پرانتزها رو داشتي ؟ زبان C آدمو اينجوري ميكنه ديگه !
تو اشك منو در آوردي![]()
شوخي كردما ناراحت نشي يه وقت !![]()
Last edited by New Ray; 06-01-2010 at 20:35.
سلام و خسته نباشيد.
من فايل با پسوند C رو با codeVision باز ميکنم بعد از تغييرات ايکن IC رو ميزنم برا پروگرم کردن. بعد يه پنجره باز ميشه برا پروگرم که از منوي فايل اون يه SAVE FLASH داره و يه SAVE EEPROM کدومش رو بايد بزنم.(از همينجا فايل HEX رو ميگيرن ديگه نه ؟).البته تو CodeVision چون فايلهاي include هم داره
البته تو همين پنجره که باز ميشه يه سري تنظيمات داره مثل CHIP که بايد ATMEGA8 باشه و يک سري تنظيمات ديگه(آدرس و ...) که اگر مهم هستند لطفا" توضيح رو بدهيد.(من هرچي با اين پنجره ور رفتم و فايل HEX ساختم و اووردم تو PROTEUS اصلا" کار نميکرد!)
البته من دستورهاي زبان C رو بلد هستم(تا حد قابل قبولي...) بله يه چيزهايي متوجه شدم. ولی به قول خودتون...اين برنامه رو خيلي شلوغ نوشتم چيزي متوجه شدي؟(اگر یه زمانییییییی نمیخوا تو زحمت مجدد بیفتید سرتون خلوت بو برنامش رو یه کم جم و جور کنید بهتر هست و بزارید همین جا
)
ميشه بگيد که متغيير ها رو چطو در حافظه ماندگار که با قطع و وصل برق مقدارشون از بين نميرن تعريف کنم؟
من با ورژن 7.6 کار کردم. و LM35 رو که نميشناخت پاک کردم يه LM35 که تو ورژن جديد داره با دو تادکمه که روش هست گذاشتم و خوب کار کرد.ضمنا LM35 براي ورژن من كار نكرد ميتوني به جاش يه منبع ولتاژ بذاري و بجاي هر درجه 10 ميلي ولت بهش بدي. مثلا 28 درجه ميشه 280mV .
من دو تا آداپتور قابل تنظيم دارم که تا 12 ولت قابل تنظيم هستند با همونها وصلش ميکنم.(تو کل مدار از همن ها استفاده ميکنم)از باتري 9 ولت كتابي براي اين قسمت استفاده نكن چون جريان اين باتري ها براي رله ضعيفه و ممكنه اصلا مدارت خاموش بشه.
راستي ميشه از 5 ولت USB برا اون پراگرمر که آموزش دادي استفاده کرد و اون 7805 رو نگذاشت.(برا يه زماني اگر خواستيم درست کنيم پرسيدم)
اونوقت من از دست سوالاتت راحت ميشمالبته من سوال زياد ميکنمتو اشك منو در آوردي؟؟ شما هم که ماشا الله هميشه جواب ميدهيد ولطف داريد.
نه اصلا".شوخي كردما ناراحت نشي يه وقت !
باز هم تشکر فراوان.
سلام ، اولش بگم بدون كتاب نميشه چيزي ياد گرفتا !
وقتي اول يه پروژه ايجاد ميكني ازت ميپرسه از قسمت CodeWizard استفاده ميكني يا نه ( اين قسمت براي تنظيمات سخت افزاري هست كه كدشون خودكار نوشته ميشه ، فقط بعد از تنظيمات ( كه بلد نيستي) توي منو گزينه Generate, Save and Exit رو بزني و آدرس ذخيره كردن فايلها رو بهش بدي ) براي اينكار بايد سخت افزار ميكرو رو بشناسي .
قبل از پروگرام در منوي setting گزينه programmer رو بزن و نوع پروگرامرت رو انتخاب كن ( ايني كه نقشه شو گذاشتم STK200+/300 هست) . اما در قسمتي كه گفتي ، بعد از انتخاب نوع IC ، اگه توي برنامه يه پروژه ايجاد كردي به صورت پيشفرض فايلهاي كامپايل شده ( هم flash و هم eeprom ) آماده ريختن در آي سي هستند در غير اينصورت از منوي File گزينه Load to Flash ( و در صورت استفاده Load to EEPROM ) رو بزن و فايلهاي ذخيره شده رو انتخاب كن ( rom يا hex براي Flash و eep براي EEPROM ). حالا از منوي Program ابتدا Erase chip و سپس flash و eeprom رو بزن تا آيسي برنامه ريزي بشه . ( مراقب باش اگه آشنايي نداري گزينه هاي Fuse bit و Lock bit و All رو دست نزني ! )
ببين اين آيسي ها به تغذيه 5 ولت صاف احتياج دارن ! اگه جريان زياد نكشي USB ميشه ولي آداپتورتو مستقيم بهش نزن چون اولا 5 ولت دقيق نيست ( اگه نشاندهنده ولتاژ ديجيتالي نداره ) دوما ولتاژش صاف نيست ، IC ميسوزه ها ! به همون 7805 وصل كن و آداپتورتو به وروديش وصل كن ( 8 ولت تا 20 ولت ).
اما اون پروگرامري كه من گذاشتم ، چون ممكنه منفي پورت DB25 ( LPT ) با منفي USB فرق داشته باشه نگفتم با USB ، ولي اگه زدي و سيستمت نتركيد حتما كار ميكنه ديگه !
اما متغير : اون دو تا متغير ( High و Low ) رو بردار و قبل از تابع main بنويس و قبل از نوع متغير eeprom بنويس .
مثلا اينجور : ( eeprom unsigned char High=30 ) ولي اگه ميخواي مطمئن بشي اصلا پاك نميشه ( read only ) بجاي eeprom بنويس flash
Last edited by New Ray; 07-01-2010 at 22:41.
هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)