خوب من بیشتر مطالب انجمن درباره ساعت ، تایمر خوندم ولی باز هم نتونستم یه ساعت دقیق بسازم
میکرو : Mega8L
کریستال 32768 هرتزه
محیط : کدویژن
کد برنامه :
نحویه کارم به این صورت هستش که
کریستال ساعت رو به پایه های 9 و 10 میکرو وصل کردم ( بدون خازن )
فرکانس به صورت پیش فرض رو 1،000،000 هستش و هیچ تغیییری ندادم
فیوز بیتی رو تغییر ندادم
نتیتجه :
تایمری که ساختم خیلی سریع کار می کنه
اینها رو هم تست کردم
TCCR2=0x06
باز سریعتر هستش
TCCR2=0x07
سرعتش کمه یعنی 15 ثانیه توی هر یک دقیقه کم هستش
اگه نیاز به تنظیم و یا کار خواصی هست لطفا بگید .
میکرو : Mega8L
کریستال 32768 هرتزه
محیط : کدویژن
Chip type : ATmega8L
Program type : Application
AVR Core Clock frequency: 1.000000 MHz
Memory model : Small
External RAM size : 0
Data Stack size : 256
Program type : Application
AVR Core Clock frequency: 1.000000 MHz
Memory model : Small
External RAM size : 0
Data Stack size : 256
کد برنامه :
کد:
#include <mega8.h>
#include <stdio.h>
#include <alcd.h>
unsigned char h,m,s;
void show(void)
{
char str1[32];
sprintf(str1,"time= %d:%d:%d",h,m,s);
lcd_clear();
lcd_puts(str1);
PORTB.0=~PORTB.0;
}
interrupt [TIM2_OVF] void timer2_ovf_isr(void)
{
if(s==59)
{
s=0;
if(m==59)
{
m=0;
h++;
if(h==24)h=0;
}
else
m++;
}
else
s++;
show();
}
void main(void)
{
ASSR=0x08;
TCCR2=0x05;
TCNT2=0x00;
OCR2=0x00;
TIMSK=0x40;
lcd_init(16);
DDRB.0=1;
DDRB.1=0;
#asm("sei")
while (1);
}
نحویه کارم به این صورت هستش که
کریستال ساعت رو به پایه های 9 و 10 میکرو وصل کردم ( بدون خازن )
فرکانس به صورت پیش فرض رو 1،000،000 هستش و هیچ تغیییری ندادم
فیوز بیتی رو تغییر ندادم
نتیتجه :
تایمری که ساختم خیلی سریع کار می کنه
اینها رو هم تست کردم
TCCR2=0x06
باز سریعتر هستش
TCCR2=0x07
سرعتش کمه یعنی 15 ثانیه توی هر یک دقیقه کم هستش
اگه نیاز به تنظیم و یا کار خواصی هست لطفا بگید .










دیدگاه