دماسنج دیجیتال با GLCD
هدف پروژه :
هدف از انجام این پروژه نحوه راه اندازی و استفاده از ال سی دی های گرافیکی می باشد ، ضمن اینکه در این مسیر با ADC و نحوه راه اندازی و استفاده از آن آشنا خواهیم شد .
شرح پروژه :
خواندن دما از سنسور LM35 و نمایش دما به صورت دیجیتالی به سانتی گراد و فارنهایت بر روی LCD گرافیکی .
سخت افزار مورد استفاده :
برای انجام این پروژه از برد آموزشی ARM شرکت نامینیک استفاده شده است ، همچنین نیاز به یک LCD گرافیکی 20 پین استاندارد می باشد . LCD بر روی پین هدر 20 پین روی برد سوار می شود که با علامت P12 بر روی برد مشخص است . با استفاده از مقاومت متغییر R84 می توان کنتراست LCD را کنترل نمود .
ساختار برنامه :
در این پروژه از ساختار های استاندار ارایه شده از سوی شرکت اتمل استفاده شده است به نحوی که فایل اصلی پروژه در آدرس ProjectProject-keilprojectuv2 موجود می باشد ، همچنین تمامی فایل های کتابخانه ای مربوطه در آدرسProjectat91lib قابل دسترس می باشند .
کتابخانه های استفاده شده :
علاوه بر کتابخانه های معمول استفاده شده در تمامی پروژه جهت راه اندازی هسته ارم و مقداردهی IO ها از کتابخانه های زیر استفاده گردیده است .
کتابخانه ( Periodic Interval Timer)PIT : جهت پیاده سازی تابع Delay در برنامه از واحد PIT هسته ارم استفاده شده است تا در زمان مشخص یک interrupt سخت افزاری به سیستم بدهد.
کتابخانه (Advanced Interrupt Controller) AIC : جهت مدیریت interrupt های ایجاد شده از این فایل کتابخانه ای استفاده می گردد.
کتابخانه (Analog-to-Digital Converter) ADC : جهت خواندن مقدار سنسور LM35 استفاده شده است .LM35 یک سنور دما با خروجی ولتاژ پیوسته می باشد که برای محاسبه مقدار دما نیاز است تا خروجی آنالوگ سنسور اندازه گیری شود.
کتابخانه GLCD : جهت راه اندازی LCD گرافیکی از این کتابخانه استفاده شده است ، لازم به توضیح است کتابخانه های مشابه دیگری نیز برای این منظور یافت می شود که البته این کتابخانه تمامی توابع سطح پایین را پیاده سازی نموده و این قابلیت را دارد تا از تمامی امکانات GLCD ها استفاده گردد.
در ارتباط با LCD های گرافیکی لازم به توضیح است که این LCD ها به صورت Pixel accessible می باشند ، به این معنا که جهت استفاده از آنها باید هر Pixel را به صورت جداگانه مقدار دهی نمود ، از اینرو توابع سطح پایین جهت مقدار دهی وinitialize کردن LCD پیاده سازی می گردند که با استفاده از آنها می توان توابع مفید دیگری مانند نوشتن و کشیدن بر رویLCD ها را پیاده سازی نمود .
تشریح کد :
در ابتدای برنامه ابتدا واحد های PIT و AIC و ADC مقدار دهی اولیه می شوند