مداري که PCB ، فايل سورس (به زبان C با نرم افزار codevision) و فايل HEX آن را در اختيارتان گذاشته ام را خودم طراحي و ساختم و عکس زير هم نمونه ساخته شده توسط خودم است.




مشخصات :
- توان مصرفي پايين به دليل استفاده از ميکرو کنترلر ATtiny26L
- نمايشگر هفت تکه اي (Seven Segment) که از چند متري خوانده مي شود
- سايز کوچک PCB در ابعاد 6*8 ساتيمتر
- نمايش دما بصودت درجه سانتيگراد و فارنهايت

ليست قطعات :

- 1 عدد آي سي ميکروکنترلر AVR ATtiny26L ya ATtiny26
- 1 عدد سون سگمنت 4 تايي کاتد مشترک
- 1 عدد آي سي ULN2803 بافر
- 8 عدد مقاومت 180 اهم يا حدود آن
- 1 عدد مقاومت 4.7 کيلو براي Pullup يا 10 کيلو
- 1 عدد آي سي LM35 سنسور دما
- 1 عدد آي سي رگولاتور ولتاژ 5 ولتي به مدل 7805


شرح عملکرد مدار :
همانطور که ميدانيد سنسور LM35 به ازاي هر 1 درجه ساننتيگراد 10 ميلي ولت ولتاژ مي دهد و در اينجا توسط مبدل آنالوگ به ديجيتال داخلي ميکرو تبديل به عدد مي شود و توسط نمايشگر سون سگمنت تا 3 رقم نشان مي دهد. لازم به ذکر است به دليل نمايش علامت درجه سانتيگراد يا فارنهايت در برنامه سون سگمنت بصورت برعکس دکود شده است.
يک جامپر 3 تايي در برد تعبيه شده است که با صفر و يک شدن آن نمايش دما تغير مي کند که شما با تغييراتي کوچک در سورس کد آن ميتوانيد آن را به دلخواه تغيير دهيد.
اين مدار دقيق کار ميکند (خودم از صفر درجه سانتيگراد تا 65 درجه تست کردم) اما ايراداتي نيز دارد (مانند نخواندن دماهاي منفي، انتخاب آي سي ميکرو با امکانات کم و ... )که بعد از ساختن PCB آن متوجه شدم و اميدوارم اساتيد بزرگوار بنده را ببخشند .

نکته مهم : براي نمايش علامت درجه بايد هنگام پروگرم کردن فيوز بيت RSTDISBL را برنامه ريزي کنيد.