PDA

توجه ! این یک نسخه آرشیو شده می باشد و در این حالت شما عکسی را مشاهده نمی کنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : فرکانس متر دیجیتالی با Pic16f8 دارای Lcd



TAHA
11-11-2009, 11:20 AM
این پروژه رو به طور اتفاقی و کاملا نا خواسته طراحی کردم....داستانش مفصله. با این همه چیزه جالبی از آب در اومد... خودم که خیلی حال کردم. انشا الله که شما هم ازش لذت میبرین.
http://www.iran-eng.com/images/statusicon/wol_error.gifاندازه ی اين عكس تغيير داده شده است. برای ديدن كامل عكس اينجا را كليك كنيد. اندازه ی عكس اصلی 1600x1120 است.http://forum.patoghu.com/images/statusicon/wol_error.gifاین تصویر تغییر اندازه یافته است.براي ديدن اندازه واقعي اينجا كليك كنيد اندازه واقعی تصویر 1600x1120.http://i10.tinypic.com/4bdup6s.jpg

این پروژه بر مبنای دستور COUNT موجود در کامپایلر PICBASIC PRO طراحی شده است.این دستور برای اندازه گیری فرکانس سیگنالی است که به ورودی اعمال شده. این اندازه گیری در یک بازه زمانی معین انجام می شود. دستور فوق دارای سه پارامتر است. اول پایه ای که قرار است از آن نمونه برداری شود .دوم طول زمان نمونه برداری و سوم نام متغیری که عدد در آن ذخیره می شود.
کار مهم برنامه نویسی فقط یه لوپ کوچکه که تعین میکنه عدد روی LCD بر حسب هرتز باشه یا کیلو هرتز.
در ضمن برای اینکه مدار بتونه با شکل موج های ورودی سینوسی و مثلثی هم کار بکنه از یک اپ امپ استفاده کردم.این طبقه در اصل یک مدار تشخیص گذر از صفر است.
راستی یادم رفت بگم که این مدار با کریستال ۴ مگا هرتز می تونه فقط تا فرکانس ۲۵ کیلو رو نشون بده.
در ادامه کد های PICBASIC PRO رو مشاهده می کنید:

' LCD should be connected as follows:
' LCD PIC
' DB4 PortA.0
' DB5 PortA.1
' DB6 PortA.2
' DB7 PortA.3
' RS PortA.4 (add 4.7K pullup resistor to 5 volts)
' E PortB.3
' RW Ground
' Vdd 5 volts
' Vss Ground
' Vo 20K potentiometer (or ground)
' DB0-3 No connect

r var word
f var word
loop: f = 0
r = 0
count portb.0 , 1000 , f
if f > 1000 then khz
Lcdout $fe, 1 ' Clear LCD screen
Lcdout #f ' Display Freq.
lcdout $FE, $14
lcdout "Hz"

goto loop

khz: r = f // 1000
f = f / 1000
Lcdout $fe, 1 ' Clear LCD screen
Lcdout #f ' Display Freq.
lcdout "."
lcdout #r
lcdout $FE, $14
lcdout "KHz"
goto loop

فایل شبیه سازی شده با پروتوس رو از اینجا (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fwww.2shared.com%2F file%2F1683790%2Fad8e9e6d%2FPIC_Digital_Lcd_Ferq_m eter_gen.html) دانلود کنید.
کد های Hex رو هم از اینجا (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fwww.2shared.com%2F file%2F1683796%2F44ed3b58%2FPIC_Lcd_Freq.html) دانلود کنید.