امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
نيازمند فركانس متر دقيق(با كريستال ساعت)
نویسنده پیام
student-p آفلاین
كاربر دو ستاره
**

ارسال‌ها: 168
موضوع‌ها: 24
تاریخ عضویت: مهر ۱۳۸۸

تشکرها : 18
( 125 تشکر در 76 ارسال )
ارسال: #12
RE: نيازمند فركانس متر دقيق(با كريستال ساعت)
کد:
$regfile = "m32def.dat"
$crystal = 8000000

'----------
Config Lcd = 16 * 2
Config Lcdpin = Pin , Rs = Porta.0 , E = Porta.1 , Db4 = Porta.2 , Db5 = _
Porta.3 , Db6 = Porta.4 , Db7 = Porta.5
Cursor Off
'-----------
Config Timer1 = Counter, Edge = Rising
Ddrb.1 = 0
Portb.1 = 1
'-------
Config Timer2 = Timer,Async=ON, Prescale = 128
'---------------
Enable Timer1
Enable Timer2
Enable Interrupts

'---------------------
On Ovf1 Pulse_counter
On Ovf2 Displays
'-------------------
Dim A As Long, B As Byte
B = 0
'----------------------------
Cls
Locate 1, 1
Lcd "Frequency meter"
Locate 2, 1
Lcd "avrprojects.info"
Wait 5
Cls
'-----------------------
Start Timer2
'------------
Do
Loop
End 'end program
'--------------
Displays:

Stop Timer2
Cls
Home
A = B * 65536
A = A + Counter1
Lcd "Frequency:"
Locate 2, 1
Lcd A ; " HZ"

B = 0
Counter1 = 0
Timer2 = 0
Start Timer2

Return
'----------------------
Pulse_counter:
Incr B
Counter1 = 0
Return



در مورد سئوالتون باید بگم که کار تایمر ربطی ب واحد ADC نداره دوتا واحد کاملا مجزا هستند؛و وقتی شما دارید فرکانس رو با استفاده از تایمر کانتر تعریف شده در برنامه بدست میارید در حقیقت دارید تعداد پالس ها رو با کانتر یک در مدت زمان یک ثانیه ایی که تایمر دو درست میکنه میشمارید؛

همین؛در نهایت ی عدد دارید که نشون گر دوره تناوب سیگنال ورودی یا همون فرکانس هست،پس ما در این پروژه هیچ استفاده از ADC نکردیم

Exclamation برنامه هم چند تا ایراد داشت رفع شد(برنامه و فایل شبیه ساز پروتئوس رو ضمیمه کردم)


موفق باشید


فایل‌(های) پیوست شده
.rar   FRQ.rar (اندازه: 23.05 KB / تعداد دفعات دریافت: 55)

موفقيت توانايي رفتن از شكستي به شكست ديگر بدون از دست دادن شور و حرارت است. (وينستون چرچيل)

بهترین لینک دنیا اینجا رو کلیک کن(هر چی بخوای هست)

۰۷-دى-۱۳۹۱, ۲۲:۴۶:۵۲
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : jansfred, vigraz, omid_phoenix, hadikh73
vigraz آفلاین
عضو افتخاری
****

ارسال‌ها: 164
موضوع‌ها: 0
تاریخ عضویت: مرداد ۱۳۹۱

تشکرها : 341
( 336 تشکر در 151 ارسال )
ارسال: #13
RE: نيازمند فركانس متر دقيق(با كريستال ساعت)
(۰۶-دى-۱۳۹۱, ۲۱:۰۴:۵۲)jansfred نوشته است: فركانس متر
مگه توي فركانس متر ورودي به صورت آنالوگ نيست؟
كه بايد از adc ميكرو استفاده كنيم ديگه
پورت آ هم adc داره ديگه
درست ميگم؟

پروژه من فركانس متر خيلي دقيق با كريستال ساعت هست
با تشكر
سلام
فرکانس متر احتیاجی به adc میکرو ندارد در ورودی
فرکانس مترها یک ترانزیستور با بایاس C ویا دو ترانزیستور
بصورت اشمیت تریگر وجود دارد تا ورودی با شکل موجهای انالوگ
را به مربعی تبدیل کند این کار را میتوان با adc میکرو انجام
داد ولی رنج سنجش را خیلی پایین میاورد البته برای یک کاربرد
محدودویا اموزش adc مفید است

اما مدار فرکانس متر دقیق ارتباطی به نحوه پردازش ورودی ندارد
وفقط باید دوره زمانی شمارش پالس مربعی وارد شده توسط کریستال
تامین شده باشد

مدار وبرنامه ارسالی دوستمان در بالا گویاتر است (همزمان با متن من ارسال شده یا
من قبلا ندیدم)

موفق باشید
(آخرین ویرایش در این ارسال: ۰۷-دى-۱۳۹۱, ۲۲:۵۴:۴۸، توسط vigraz.)
۰۷-دى-۱۳۹۱, ۲۲:۴۸:۰۸
ارسال‌ها
پاسخ
تشکر شده توسط : jansfred, omid_phoenix
jansfred آفلاین
كاربر دو ستاره
**

ارسال‌ها: 147
موضوع‌ها: 19
تاریخ عضویت: مهر ۱۳۹۱

تشکرها : 95
( 47 تشکر در 23 ارسال )
ارسال: #14
RE: نيازمند فركانس متر دقيق(با كريستال ساعت)
از هردوي شما خيلي خيلي ممنونم
يك دنيا ممنون
كاملا متوجه شدم قضيه چيه
۰۸-دى-۱۳۹۱, ۰۰:۰۰:۴۰
ارسال‌ها
پاسخ
aKaReZa75 آفلاین
حسین باقری
*****

ارسال‌ها: 1,484
موضوع‌ها: 22
تاریخ عضویت: مرداد ۱۳۹۱

تشکرها : 4898
( 4577 تشکر در 1474 ارسال )
ارسال: #15
RE: نيازمند فركانس متر دقيق(با كريستال ساعت)
دوست عزیز من این پروژه رو تو سایت گذاشتم.
با کریستال ساعت هم هست و خیلی هم دقیقه ولی با سون سگمنت نشون میده.
ولی میشه با یک مقدار دستکاری کردن اطلاعات رو با ال سی دی یا پورت سریال هم نشون داد.
اگه بکارت میاد تا لینکشو بت بدم؟

سلام، من حسین باقری هستم، طراح الکترونیک و برنامه نویس میکروکنترلر.
توی کانال یوتیوب من قراراه طراحی انواع بردهای الکترونیکی مثل بردهای تک لایه، دو لایه یا به طور کلی بردهای چند لایه، بردهای مبتنی بر میکروکنترلر، بردهای صنعتی، بردهای الکترونیک قدرت و بردهای فرکانس بالارو یاد بگیریم.
همینطور کدنویسی انواع میکروکنترلرهای 8 بینی مثل میکروکنترلرهای خانواده AVR-STM8، میکروکنترلرهای میبتی بر معماری ARM مثل STM32 و پردازنده های مخصوص اینترنت اشیاء مثل ESP32-ESP8266 و DSPها یاد میگیریم.
در کنار مباحث گفت شده، اصول اندازه الکترونیکی، نحوه صحیح مونتاژ و عیب‌یابی بردهای الکترونیکی، شبیه سازی مدارات مختلف رو هم یاد میگیریم.
اگر علاقه مند به یادگیری موضوعات عنوان شده هستید، به کانال یوتیوب من با آدرس زیر سر بزنید.
https://www.youtube.com/@aKaReZa75
۰۸-دى-۱۳۹۱, ۰۰:۱۵:۱۳
وب سایت ارسال‌ها
پاسخ
jansfred آفلاین
كاربر دو ستاره
**

ارسال‌ها: 147
موضوع‌ها: 19
تاریخ عضویت: مهر ۱۳۹۱

تشکرها : 95
( 47 تشکر در 23 ارسال )
ارسال: #16
RE: نيازمند فركانس متر دقيق(با كريستال ساعت)
نيكيو پرسش
بله دوسته عزيز لينك بده
تشكر
۰۸-دى-۱۳۹۱, ۰۰:۳۱:۵۷
ارسال‌ها
پاسخ
omid_phoenix آفلاین
مدیر بخش
*****

ارسال‌ها: 2,238
موضوع‌ها: 108
تاریخ عضویت: شهریور ۱۳۹۱

تشکرها : 12682
( 15433 تشکر در 4574 ارسال )
ارسال: #17
RE: نيازمند فركانس متر دقيق(با كريستال ساعت)
نقل قول: با تشكر
پس يعني اين الان با adc ميكرو كار ميكنه ديگه؟
آخه lcd رو با پورت a كانفيگ كردين؟
من يه برنامه ميخام كه با كريستال ساعت باشه و ورودي آنالوگ داشته باشه(با adc ميكرو كار كرده باشه)
ترجيحا مختصر باشه كه بتونم واسه استادم توضيح بدم
بينهايت ممنون
jansfred جان گرفته بودی ما رو داداشQuestion
الان سه ساعت بود داشتم رو adc فکر میکردم که چطوری میتونم بین یه ولتاژ انالوگ ورودی با فرکانس رابطه ایجاد کنمExclamation


(۰۷-دى-۱۳۹۱, ۲۲:۴۶:۵۲)student-p نوشته است:
کد:
$regfile = "m32def.dat"
$crystal = 8000000

'----------
Config Lcd = 16 * 2
Config Lcdpin = Pin , Rs = Porta.0 , E = Porta.1 , Db4 = Porta.2 , Db5 = _
Porta.3 , Db6 = Porta.4 , Db7 = Porta.5
Cursor Off
'-----------
Config Timer1 = Counter, Edge = Rising
Ddrb.1 = 0
Portb.1 = 1
'-------
Config Timer2 = Timer,Async=ON, Prescale = 128
'---------------
Enable Timer1
Enable Timer2
Enable Interrupts

'---------------------
On Ovf1 Pulse_counter
On Ovf2 Displays
'-------------------
Dim A As Long, B As Byte
B = 0
'----------------------------
Cls
Locate 1, 1
Lcd "Frequency meter"
Locate 2, 1
Lcd "avrprojects.info"
Wait 5
Cls
'-----------------------
Start Timer2
'------------
Do
Loop
End 'end program
'--------------
Displays:

Stop Timer2
Cls
Home
A = B * 65536
A = A + Counter1
Lcd "Frequency:"
Locate 2, 1
Lcd A ; " HZ"

B = 0
Counter1 = 0
Timer2 = 0
Start Timer2

Return
'----------------------
Pulse_counter:
Incr B
Counter1 = 0
Return



در مورد سئوالتون باید بگم که کار تایمر ربطی ب واحد ADC نداره دوتا واحد کاملا مجزا هستند؛و وقتی شما دارید فرکانس رو با استفاده از تایمر کانتر تعریف شده در برنامه بدست میارید در حقیقت دارید تعداد پالس ها رو با کانتر یک در مدت زمان یک ثانیه ایی که تایمر دو درست میکنه میشمارید؛

همین؛در نهایت ی عدد دارید که نشون گر دوره تناوب سیگنال ورودی یا همون فرکانس هست،پس ما در این پروژه هیچ استفاده از ADC نکردیم

Exclamation برنامه هم چند تا ایراد داشت رفع شد(برنامه و فایل شبیه ساز پروتئوس رو ضمیمه کردم)


موفق باشید

(۰۷-دى-۱۳۹۱, ۲۲:۴۸:۰۸)vigraz نوشته است:
(۰۶-دى-۱۳۹۱, ۲۱:۰۴:۵۲)jansfred نوشته است: فركانس متر
مگه توي فركانس متر ورودي به صورت آنالوگ نيست؟
كه بايد از adc ميكرو استفاده كنيم ديگه
پورت آ هم adc داره ديگه
درست ميگم؟

پروژه من فركانس متر خيلي دقيق با كريستال ساعت هست
با تشكر
سلام
فرکانس متر احتیاجی به adc میکرو ندارد در ورودی
فرکانس مترها یک ترانزیستور با بایاس C ویا دو ترانزیستور
بصورت اشمیت تریگر وجود دارد تا ورودی با شکل موجهای انالوگ
را به مربعی تبدیل کند این کار را میتوان با adc میکرو انجام
داد ولی رنج سنجش را خیلی پایین میاورد البته برای یک کاربرد
محدودویا اموزش adc مفید است

اما مدار فرکانس متر دقیق ارتباطی به نحوه پردازش ورودی ندارد
وفقط باید دوره زمانی شمارش پالس مربعی وارد شده توسط کریستال
تامین شده باشد

مدار وبرنامه ارسالی دوستمان در بالا گویاتر است (همزمان با متن من ارسال شده یا
من قبلا ندیدم)

موفق باشید

دوستان ممنون که خوب توضیح دادید، منم اینا رو فراموش کرده بودم!
در کل تو adc ما یه ولتاژ آنالوگ به میکرو میدیم و طبق یه رابطه ای اون و به دیجیتال تبدیل می کنیم؛
adc ما که 10 بیت داره، طبق رابطه ی زیر ولتاژ رو به دیجیتال تبدیل می کنه؛
کد:
B = Getadc(0)
A = B / 204.6
D = Fusing(a , "#.##")
متغیر b همون 10 بیت adc ماست که مقدار 1023 است و با این تقسیمات می تونیم ولتاژ بین 0 تا 5 ولت بگیریم.
اینا رو همینطوری دور از بحث گفتم تا بعدا به دردتون بخورهWink

۰۸-دى-۱۳۹۱, ۱۲:۱۶:۵۲
ارسال‌ها
پاسخ
تشکر شده توسط : jansfred
jansfred آفلاین
كاربر دو ستاره
**

ارسال‌ها: 147
موضوع‌ها: 19
تاریخ عضویت: مهر ۱۳۹۱

تشکرها : 95
( 47 تشکر در 23 ارسال )
ارسال: #18
RE: نيازمند فركانس متر دقيق(با كريستال ساعت)
نه داداشه گلم مگه آزار دارم اذيتت كنم(روبوخان)
آخه ميدونيد : استاد ما يه فركانس متر توي پروتوس جلومون بست كه از adc ورودي ميگرفت و خيلي برنامش كوتاه بود
بعد هم گفت كسي حق يادداشت نداره و در اخر هم گفت يكي شبيه اين واسم بياريد(10 نمره داره)
منم اصلا يادم نمياد با تايمرها كاركرده بود (شايد برنامش 15 خط هم نميشد اما خيلي درست كار كرد)
ولي در كل بابت راهنمايي شما و تمام دوستان يه دنيا ممنون


جناب روبو خان دقيقا استادمون با همين قسمت آخر توي ارسال 17 كار كرد
همين عدد 1023 رو تقسيم به 5 كردو 204.6 به دست اومد كه تو برنامه قرار داد
و از دستور فيوزينگ استفاده كرد
اينايي كه دور از بحث گفتين دقيقا همينايي بود كه استادم گفت و من لازم داشتم
با تشكر
فقط اگه ميشه برنامشو به طور كامل بگيد
۰۸-دى-۱۳۹۱, ۱۵:۵۹:۱۸
ارسال‌ها
پاسخ
omid_phoenix آفلاین
مدیر بخش
*****

ارسال‌ها: 2,238
موضوع‌ها: 108
تاریخ عضویت: شهریور ۱۳۹۱

تشکرها : 12682
( 15433 تشکر در 4574 ارسال )
ارسال: #19
RE: نيازمند فركانس متر دقيق(با كريستال ساعت)
(۰۸-دى-۱۳۹۱, ۱۵:۵۹:۱۸)jansfred نوشته است: نه داداشه گلم مگه آزار دارم اذيتت كنم(روبوخان)
آخه ميدونيد : استاد ما يه فركانس متر توي پروتوس جلومون بست كه از adc ورودي ميگرفت و خيلي برنامش كوتاه بود
بعد هم گفت كسي حق يادداشت نداره و در اخر هم گفت يكي شبيه اين واسم بياريد(10 نمره داره)
منم اصلا يادم نمياد با تايمرها كاركرده بود (شايد برنامش 15 خط هم نميشد اما خيلي درست كار كرد)
ولي در كل بابت راهنمايي شما و تمام دوستان يه دنيا ممنون
خدا نکنه مردم آزار باشیدHeart
خواهش میکنم
نقل قول: جناب روبو خان دقيقا استادمون با همين قسمت آخر توي ارسال 17 كار كرد
همين عدد 1023 رو تقسيم به 5 كردو 204.6 به دست اومد كه تو برنامه قرار داد
و از دستور فيوزينگ استفاده كرد
اينايي كه دور از بحث گفتين دقيقا همينايي بود كه استادم گفت و من لازم داشتم
با تشكر
فقط اگه ميشه برنامشو به طور كامل بگيد
ببینید میشه این کار رو انجام داد، برنامه شم میزارم واستون ولی ببینید با adc نمیشه و فقط میشه یه رابطه بین ولتاژ و فرکانس نوشت و...

تو این برنامه ای که من گذاشتم واستون، ابتدا ولتاژ ورودی رو توسط adc به 0 تا 5 ولت تبدیل میکنید.
بعد یه رابطه ای رو بین فرکانس و ولتاژ می نویسد که من یه رابطه فرضی نوشتم که درست نیست فقط محض نمونه قرار دادم.
بعد ولتاژ و فرکانس رو رو یه lcd نمایش میدید؛

کد:
$regfile = "m8def.dat"
$crystal = 1000000
'----------
Config Lcdpin = Pin , Rs = Portb.0 , E = Portb.1 , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.4 , Db7 = Portb.5
Config Lcd = 16 * 2
'----------
Config Adc = Single , Prescaler = Auto , Reference = Aref
Enable Adc
Start Adc
'----------
Dim A As Word
Dim D As Single
Dim B As Single
Dim E As Single
Dim C As String * 10
Dim F As String * 10
'----------
Cls
Cursor Off
'----------
Do
'----------
A = Getadc(0)
B = A / 204.6
C = Fusing(b , "#.##")
'----------
D = B / 4
E = D * 100
F = Fusing(e , " #.##") اینا رو برای نمونه نوشتم
'----------
Locate 1 , 1
Lcd "VOLT " ; C ; " " ; "V":
'----------
Locate 2 , 1
Lcd "FRE " ; F ; " " ; "HZ": اینا رو برای نمونه نوشتم
'----------
Loop
End 'end program

اینم فایل کاملش؛

.rar   fre.rar (اندازه: 24.65 KB / تعداد دفعات دریافت: 58)

۰۸-دى-۱۳۹۱, ۲۱:۵۴:۵۰
ارسال‌ها
پاسخ
تشکر شده توسط : jansfred
jansfred آفلاین
كاربر دو ستاره
**

ارسال‌ها: 147
موضوع‌ها: 19
تاریخ عضویت: مهر ۱۳۹۱

تشکرها : 95
( 47 تشکر در 23 ارسال )
ارسال: #20
RE: نيازمند فركانس متر دقيق(با كريستال ساعت)
آقا دستت درد نكنه
دقيقا دنبال همين بودم
يك دنيا ممنون
واسه ي ورودي هم استادم يه پتانسومتر گذاشت ك پايه ي وسط به ورودي آنالوگ و يك پايه به VCC و پايه ي ديگه به GND
كه با تغيير پتانسيومتر مقدار ولتاژ يا فركانس عوض ميشد
تشكررررررررررررررررررررررررر
۰۹-دى-۱۳۹۱, ۰۱:۱۲:۳۰
ارسال‌ها
پاسخ
student-p آفلاین
كاربر دو ستاره
**

ارسال‌ها: 168
موضوع‌ها: 24
تاریخ عضویت: مهر ۱۳۸۸

تشکرها : 18
( 125 تشکر در 76 ارسال )
ارسال: #21
RE: نيازمند فركانس متر دقيق(با كريستال ساعت)
جناب jansfred عزیز

احتمالا استادتون میخواسته ی جوری دستور Fusing رو بهتون معرفی کنهWink
نه اینکه طرز ساخت فرکانس متر رو با استفاده از ADC یادتون بده؛چون همچین چیزی شدنی نیست؛مثل این میمونه که بخواین با ترازو مقدار دما محیط رو بدست بیارین؛ن؟

موفق باشید...

موفقيت توانايي رفتن از شكستي به شكست ديگر بدون از دست دادن شور و حرارت است. (وينستون چرچيل)

بهترین لینک دنیا اینجا رو کلیک کن(هر چی بخوای هست)

۰۹-دى-۱۳۹۱, ۲۰:۳۲:۰۰
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : vigraz
jansfred آفلاین
كاربر دو ستاره
**

ارسال‌ها: 147
موضوع‌ها: 19
تاریخ عضویت: مهر ۱۳۹۱

تشکرها : 95
( 47 تشکر در 23 ارسال )
ارسال: #22
RE: نيازمند فركانس متر دقيق(با كريستال ساعت)
نميدونم . احتمالا
سلامت باشيد
۰۹-دى-۱۳۹۱, ۲۱:۱۳:۵۰
ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  درخواست کمک برای ساعت با فونت بزرگ sobhan6831 4 2,400 ۲۴-فروردین-۱۳۹۷, ۲۰:۱۹:۱۲
آخرین ارسال: sobhan6831
  دانلود رایگان سورس ساعت حرم امام رضا (ع) ورژن 2 sina6479 3 5,371 ۲۶-اسفند-۱۳۹۶, ۲۲:۱۹:۴۴
آخرین ارسال: sajjad85
  ساخت تابلو روان و ساعت هوایی گردون یا همون Propeller Clock با موتور فن !!! t3r!p3000 85 91,068 ۲۲-شهریور-۱۳۹۵, ۲۱:۴۴:۳۸
آخرین ارسال: taherehselseleh
  سوال در مورد ساخت ساعت با ال سي دي navayi 5 4,744 ۱۲-اسفند-۱۳۹۴, ۱۲:۱۷:۱۰
آخرین ارسال: 1نفر
  کریستال خارجی+کریستال ساعت در atmega8 cortex-m3 1 2,967 ۰۳-مرداد-۱۳۹۴, ۲۰:۱۳:۰۳
آخرین ارسال: sharin
  ساعت گردان Mani27 0 1,998 ۲۱-اردیبهشت-۱۳۹۴, ۱۳:۳۹:۰۴
آخرین ارسال: Mani27
  کمک در ساخت ساعت دقیق SABER66 30 25,956 ۱۴-دى-۱۳۹۳, ۰۰:۲۵:۵۶
آخرین ارسال: mehdi2015
  کار با ماژول ساعت DS1307 kimiafars 7 6,393 ۰۴-آذر-۱۳۹۳, ۱۰:۳۱:۰۴
آخرین ارسال: kimiafars
  چطور مي تونم فركانس توليدي سنسور hs1101 را بخوانم؟ sheikholeslam 16 14,534 ۱۰-مهر-۱۳۹۲, ۱۲:۳۳:۰۹
آخرین ارسال: z.f.k
  ساعت و دما با سون سگمنت با باتري بك آپ mobah 24 24,574 ۰۹-شهریور-۱۳۹۲, ۱۵:۵۰:۴۶
آخرین ارسال: Ambassador

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 2 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS