ايران ويج

نسخه‌ی کامل: کمک در باره تایمر
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
من یه فرکانس متر با avr نوشتم فرکانسو اشتباه نشون میده!!!چرا؟؟؟
کسی برنامه bascom اونو نداره؟برنامه کتاب کاهه کار نمی کنه!!!!
$regfile = "m32def.dat"
$crystal = 8000000
Config Lcdpin = Pin , Db4 = Pina.2 , Db5 = Pina.1 , Db6 = Pina.0 , _
Db7 = Pina.5 , E = Pina.3 , Rs = Pina.4
Config Lcd = 16 * 2
Config Timer1 = Counter , Edge = Falling
Config Timer0 = Timer , Prescale = 1024
Enable Counter1
Enable Interrupts
Enable Timer0
Enable Timer1
On Ovf1 Pulsecount
On Ovf0 Ovf0occures
Tcnt0 = 0
Dim A As Long , I As Long , B As Byte
B = 0
Cls
Do
Start Timer0
Loop
End 'end program

Ovf0occures:
Incr I
If I > 30 Then
Stop Timer0
Home
Cls
A = B * 65536
A = A + Counter1
Lcd "f=" ; A ; "Hz"
B = 0
I = 0
Counter1 = 0
Start Timer0
End If
Return

Pulsecount:
Incr B
Counter1 = 0
Return
احتمالا فرکانس خود میکرو رو درست تنظیم نکردی مثلا تو برنامه 8M ولی میکرو داره با فرکانس 1M کار می کنه
مشکل همون فرکانس بود تو proteus یک مگا بود میکرو هم فیوز بیت رو1M بود
پس نکته اینکه فرکانس میکرو فقط به فیوز بیت بستگی داره نه به :
crystal = 8000000 $