سلام به همگی
من امروز بیکار بودم... :biggrin: خواستم یه برنامه دماسنج برای خودم بنویسم و نوشتم ولی نمیدونم چگونه باید خروجی ADCW از ماژول A2D رو مقدار دهی کرد تا خروجی رو درست روی lcd نمایش بده.
برنامه اینه:
آدرس فایل کدویژن به همراه فایل پروتئوس هم اینه: حجمش 96 کیلوبایت بیشتر نیست:
http://s5.picofile.com/file/8103266692/termometer.rar.html
یه کمکی بکنید...چیز زیادی از شما نمیخوام...فقط بفرمایید ضرب و تقسیم مقدار خروجی ADCW که شامل دو رجیستر هشت بیتی ADCH و ADCL هست چگونه باید باشد تا مقدار دما درست نشون داده بشه..
اون تقسیم بر 4 رو هم همینجوری گذاشتم...چیز بهتری به ذهنم نرسید.
در ضمن از سنسور LM35 برای پروژه استفاده کردم.
ممنونم
من امروز بیکار بودم... :biggrin: خواستم یه برنامه دماسنج برای خودم بنویسم و نوشتم ولی نمیدونم چگونه باید خروجی ADCW از ماژول A2D رو مقدار دهی کرد تا خروجی رو درست روی lcd نمایش بده.
برنامه اینه:
کد:
#include <mega16.h> #include <delay.h> #include <alcd.h> #include <stdio.h> #include <stdlib.h> void main(void) { char buffer[10]; PORTA=0x00; DDRA=0x00; PORTB=0x00; DDRB=0x00; PORTC=0x00; DDRC=0x00; PORTD=0x00; DDRD=0x00; ADMUX = 0b01100000; ADCSRA = 0b11100111; SFIOR = 0b00000000; lcd_init(16); lcd_gotoxy(0,0); lcd_puts("TEMP: 'C"); while (1) { ADCW= (ADCW/4); sprintf(buffer,"%d",ADCW); lcd_gotoxy(6,0); lcd_puts(buffer); } }
http://s5.picofile.com/file/8103266692/termometer.rar.html
یه کمکی بکنید...چیز زیادی از شما نمیخوام...فقط بفرمایید ضرب و تقسیم مقدار خروجی ADCW که شامل دو رجیستر هشت بیتی ADCH و ADCL هست چگونه باید باشد تا مقدار دما درست نشون داده بشه..
اون تقسیم بر 4 رو هم همینجوری گذاشتم...چیز بهتری به ذهنم نرسید.
در ضمن از سنسور LM35 برای پروژه استفاده کردم.
ممنونم
دیدگاه