ساعت ورژن اول
پروژه: پیادهسازی ساعت دیجیتال با استفاده از LCD کاراکتری و ATmega32
در این پروژه، با استفاده از میکروکنترلر ATmega32 و یک LCD کاراکتری LM016، یک ساعت دیجیتال طراحی و پیادهسازی خواهیم کرد که زمان را به صورت ساعتی، دقیقهای و ثانیهای نمایش میدهد.
موارد مورد نیاز:
– میکروکنترلر ATmega32
– LCD کاراکتری LM016
– برد بورد و سیمهای اتصال
هدف این پروژه، نمایش زمان به صورت دیجیتال بر رویLCD است که زمان به صورت دستی تنظیم میشود و بهطور پیوسته روی نمایشگر نمایش داده میشود. این پروژه به شما کمک میکند تا با نحوه کار با LCD و مدیریت زمان در یک پروژه دیجیتال آشنا شوید.
#include
#include
#include
#include
char c[16];
int H,M,S;
void main(void)
{
lcd_init(16);
lcd_putsf("time");
while (1)
{
for(H=0;H<=23;H=H+1)
{
for(M=0;M<=59;M++)
{
for(S=0;S<=59;S++)
{
sprintf(c,"%02d:%02d:%02d",H,M,S);
lcd_gotoxy(0,1);
lcd_puts(c);
delay_ms(100);
}
}
}
}
}
این کد برای پیادهسازی یک ساعت دیجیتال ساده با استفاده از میکروکنترلر ATmega32و LCD کاراکتری طراحی شده است. در این کد، سه متغیر H (ساعت)، M (دقیقه) وS (ثانیه) برای نگهداری زمان استفاده میشوند. کد وارد یک حلقه سهگانه میشود که ابتدا ساعت را از 0 تا 23 و سپس دقیقه و ثانیه را از 0 تا 59 افزایش میدهد. برای هر تغییر زمان، زمان به فرمت hh:mm:ssدر قالب یک رشته (با استفاده از تابع sprintf) در متغیر c ذخیره میشود. سپس این رشته به LCD ارسال شده و نمایش داده میشود. برای ایجاد فاصله زمانی بین هر ثانیه، از تابع delay_ms(100) استفاده میشود. کد به صورت پیوسته زمان را بروزرسانی کرده و نمایش میدهد تا زمانی که دستگاه روشن است