دراین پروژه به نحوه ساخت یک دماسنج دقیق با AVRمی پردازیم.امیدوارم ازاین پروژه به خوبی استفاده کنید.تمام مطالب خلاصه شده وساده بیان شده است.اگر هنوز هم عضو سایت ما نشده اید همین الان عضو شوید تاپروژه را ازدست ندهید🌹.
بستن مدار روبرو
مدار طبق شکل درپروتوس یادرعمل ببندید.
نحوه اتصال lcdبخوانید.
قطعات :اتمگا 32 - lm35
توضیحات ساخت پروژه
کدویژن را باز نموده پروژه میسازیم ابتدا اتمگا32انتخاب فرکانس را8مگامیگذاریم سپس adcرافعال میکنیم ودرگزینه lcdمیرویم وفعال برروی پورتb تنظیم میکنیم.سپس پروژه را با نام های عین هم درسه پنچره سیومیکنیم.
توضیحات برنامه
حال درقسمت تعریف اتمگا یک اینکلود دیگر بازنموده delay را مینویسیم (تعریف زمان )وباز دوبار یک اینکولود دیگر باز میکنیم stdio را مینویسیم.سپس دومتغیر ازجنس intتعریف وبرابر0میکنیم که متغیر خالی باشد.ویک متغیر دیگر ازجنس charانتخاب کرده وآکولاد باز کرده 20کاراکتر انتخاب میکنیم(برای تعداد کاراکتر درlcdاست).
(وایل)
متغیر از جنس اینت تعریف شده را برابر read_adc میکنی تا هرچی درخروجی ماژول شناسایی میکند در متغیر بریزد. حال عملیات ضرب وتقسیم t=(a*255)/130 قرارمیدهیم.(255=آخرین کاراکتر درadc).حال بادستور sprintf مقدار حساب شده دما درکروشه با تغییر مدنظر اینت وچر را نمایش میدهیم.حال بادستور lcd_gotoxyمحل نمایش دمادر lcd راتنظیم میکنیم.سپس با دستور lcd_puts متغیر lcdرا قرارمی دهیم تا نوشته را شناسایی وروی lcdچاپ کند.یک زمانی نیاز داریم تا هربار دریافت دما صفحه رفرش شود که با دستور delay _msاستفاده میکنیم.
#include <mega8.h>
#include <stdio.h>
#include < delay .h>
#include <alcd.h>
int a,t=0;
char s[20];
while (1)
{
a=read_adc(0);
t=(a*255)/130;
sprintf(s,"TEMP=%d c",t);
lcd_gotoxy(0,0);
lcd_puts(s);
delay _ms(250);
}
}
راهنما
باکس دانلود فایل پروژه
فایل رادانلود نموده رمز راکپی و پیست کرده سپس ازحالت فشرده خارج نمایید
حجم : 2کیلوبایت
رمز فایل :microbytes.ir
نظرات بسیارمهمه