14
˙ ˇﺳﺘﻔﺎ˙ ﺑﺎ˙ ﺻﺪ ﭘﺨﺶ ﺿﺒﻂAVR MMC ˙ﺟﺮ˙ ﺗﮭﯿﮫ: ˇ˙ ﻧﺒﻲ ﻓﺮﯾﺪ˙ ˇﺳﺘﻔﺎ˙ ﺑﺎ˙ ﺻﺪ ﭘﺨﺶ ﺿﺒﻂAVR MMC Æ ﺳﯿﮕﻨﺎ ﺑﮫ ﺑﺎﯾﺴﺖﻣﻲˇ ﺷﻮﺧﯿﺮ ﺣﺎﻓﻈﮫ ﻧﺪ˙ ﺑﺘﻮ ﺻﺤﺒﺖÆ ﺳﯿﮕﻨﺎﯾﻨﻜﮫ˙ ˙ ﻗﺒﻞ ﭼﯿﺰ ﮬﺮ˙ ﻗﺒﻞˇ ﺷﻮ ﺗﺒﺪﯾﻞﻣﺎ ˙ ˙ ﻣﺠﺰ ﺷﻜﻞϭ .( ˇ ﺷﻮ ﻣﻲªﻧﺠﺎ˙ ﯾﻚˇ ﭘﺮﯾﻮ˙ˇ ﺑﺮ ﻧﻤﻮﻧﮫ ﺑﻮﺳﯿﻠﮫ ﻛﺎﯾﻦ˙ ﺷﻜﻞϮ ﻧﻤﻮﻧﮫˇ ﺑﯿﻦ ﻓﺎﺻﻠﮫSampling Period ˇ ﺷﻮ ﻣﻲ ﻧﺎﻣﯿﺪ˙ˇ ﺑﺮ ﻧﻤﻮﻧﮫ ﻓﺮﻛﺎﻧﺲ´ ﻋﻜﺲ ﺷﻜﻞϭ ﺷﻜﻞϮ ˙ ﺻﺪ˚ﯾﻨﺼﻮ˙ ﻏﯿﺮˇ” ﺑﺎﺷﺪÆ ﺳﯿﮕﻨﺎ ﻓﺮﻛﺎﻧﺲﺑﺮ˙ﺑﺮˇ ﻻﻗﻞ˙ ﺣﺪ ﺑﺎﯾﺴﺖ ﻣﻲ˙ˇ ﺑﺮ ﻧﻤﻮﻧﮫ ﻓﺮﻛﺎﻧﺲΪη ΪϫϮΧ Ρϭέ ϱΪλ ϥϮϤϫ ϲΟϭήΧ . ﯾﺮ ﺻﺤﺒﺖ ﻓﺮﻛﺎﻧﺲ ﻋﻤﺪ˚ﻃﻼﻋﺎ˙ 3000 ﺳﺖ˙ ﮬﺮﺗﺰ ﯾﻦ˙ ﺑﻨﺎﺑﺮ ﺑﺎﻧﺪﺳﺎˇ ﻣﺤﺪ˙ ﺑﺮ˙ ﺗﻮ ﻣﻲˇﺳﺘﻔﺎ˙ ﮔﺬ ﭘﺎﯾﯿﻦ ﻓﯿﻠﺘﺮ ﯾﻚ˙ ﻓﻦ ﻣﯿﻜﺮ˙ ﻣﺪﺟﻲ ﺧﺮˇ” Æ ﯿﮕﻨﺎˇ ﻧﻤﻮ ﻓﻦ ﻣﯿﻜﺮﺟﻲ ﺧﺮˇ ﻓﯿﻠﺘﺮˇ˙ˇ ˙ ﻗﺮ˙ ﻧﺘﯿﺠﮫ ﺑﮭﺘﺮﯾﻦ ﺑﮫ ﯾﺎﺑﻲﺳﺖˇ ˙ ﺑﺮ ﭘﺮﯾﻦ˙ ˇ ﻟﺒﺘﮫ˙ έήϗ ϲΟϭήΧ έΩ έ ήϳί ϞϜη ϪΑ ϱήΘϠϴϓ ϞϳΎϤΗ ΕέϮλ έΩ ΪϴϧϮΗ ϲϣ ΎϤη Ύϣ˭Ζγ ϩΪη ήψϧ ϑήλ ﮬﯿﺪˇ ﺑﺎﺷﯿﺪﺷﺘﮫ˙ˇ ﺗﻮﺟﮫ ﺷﺪﮬﺪ˙ ﺧﻮﺟﻲ ﺧﺮÆ ﺳﯿﮕﻨﺎ ﺗﻀﻌﯿﻒ ﻣﻮﺟﺐ ﻛﺎﯾﻦ˙

å Ò˙ æ Ò˙ ϭ Sampling Period Ϯ ϭdl.controlmakers.ir/books/AVR_SOUND_RECORDER-www... · ˇ˙Ò ﻲﺒﻧ ﺪﯾﺮﻓ : ˙ﺮﺟ˙ æ ﮫﯿﮭﺗ mmc æ avr Ò˙ åˇﺎﻔﺘﺳ˙

Embed Size (px)

Citation preview

Page 1: å Ò˙ æ Ò˙ ϭ Sampling Period Ϯ ϭdl.controlmakers.ir/books/AVR_SOUND_RECORDER-www... · ˇ˙Ò ﻲﺒﻧ ﺪﯾﺮﻓ : ˙ﺮﺟ˙ æ ﮫﯿﮭﺗ mmc æ avr Ò˙ åˇﺎﻔﺘﺳ˙

ÒÇ åÏستفاÇ با Çپخش صد æ ضبطAVR æMMC ÇجرÇ æ تھیھ :ÏÇÒ فرید نبي

ÒÇ åÏستفاÇ با Çپخش صد æ ضبطAVR æMMC

áمي بایست بھ سیگناº Ïشو åخیرÐ حافظھ íæÑ ندÇصحبت بتو áینكھ سیگناÇ ÒÇ قبل æ ھر چیز ÒÇ قبل

Ïتبدیل شو äماÒ ÒÇ Çشكل مجزϭ .(Ïمي شو ãنجاÇ یكÏپریو íÑÇÏبوسیلھ نمونھ بر Ñین كاÇ شكل

Ϯ نمونھæÏ فاصلھ بینSampling Period Ïمي شو åنامید íÑÇÏفركانس نمونھ بر ä عكس æ

ϭشكل

Ϯشكل

íÇصد ÊÑینصوÇ غیر ÑϺباشد áبر فركانس سیگناÇبرæÏ القلÇمي بایست حد íÑÇÏفركانس نمونھ بر

ΪηΪϫϮΧΡϭέϱΪλϥϮϤϫϲΟϭήΧ. یرÒ فركانس صحبت åعمد ÊطالعاÇ3000 ستÇ ین ھرتزÇبنابر

یگناÑϺ á خرæجي مدÑÇ میكرæفن ÒÇ یك فیلتر پایین گذÇ ÑستفاåÏ مي توäÇ برíÇ محدÏæساíÒ باند س

Ïفن نموæجي میكرæخر ÑÏ فیلتر äÏÇÏ ÑÇقر ÒÇ ست یابي بھ بھترین نتیجھÏ íÇبر åژæین پرÇ ÑÏ لبتھÇ

έήϗϲΟϭήΧέΩέήϳίϞϜηϪΑϱήΘϠϴϓϞϳΎϤΗΕέϮλέΩΪϴϧϮΗϲϣΎϤηΎϣ˭ΖγϩΪηήψϧϑήλ

ھ Çین كاÑ موجب تضعیف سیگناá خرæجي خوÇھد شدتوجھ ÇÏشتھ باشید ك Ïھید

www.ControlMakers.ir

Page 2: å Ò˙ æ Ò˙ ϭ Sampling Period Ϯ ϭdl.controlmakers.ir/books/AVR_SOUND_RECORDER-www... · ˇ˙Ò ﻲﺒﻧ ﺪﯾﺮﻓ : ˙ﺮﺟ˙ æ ﮫﯿﮭﺗ mmc æ avr Ò˙ åˇﺎﻔﺘﺳ˙

ÒÇ åÏستفاÇ با Çپخش صد æ ضبطAVR æMMC ÇجرÇ æ تھیھ :ÏÇÒ فرید نبي

Ïمي شو åیج نامیدÑتدº ستÇ فركانس ä ÑÏ نالوگ یجیتالي كھ متناسب با نمونھÏ ÑÇشكلتعیین مقد

ϯϭϰ.(Ïمي شو åلوشن نامیدæÒÑ æ åÏبو Ïæیجیتالي محدÏ یرÏمقا áمثا äÇلوشن 255بھ عنوæÒÑ íÇبرϴ

Çین خطاí تدÑیج بھ بنابرÇین تدÑیج سیگناÂ áنالوگ موجب Ï ÒÇست Ñفتن ÇطالعاÊ سیگناá مي شوÏبیتي

طوÑ معكوÓ متناسب با æÒÑلوشن سیگناÏ áیجیتاÇ áستºھمچنین بھ طوÑ معكوÓ متناسب با Ñنج

ΖγϝΎϨϴγϲϜϴϣΎϨϳΩ. با تنظیم äÇمي توAGND æ AREF القلÇحد ÑÇینامیكي بھ مقدÏ نجѺ كثرÇحد æ

Ïتعیین نمو ÇÑ áند سیگناÇفن مي توæمیكر åیگر تقویت كنندÏ ینامیكي بھ شكليÏ نجÑ پوشش íÇبرADC

Ïتنظیم شوÏیج مي شوÑتد íموجب كاھش خطا Þفو ÔæÑ æÏ یش ھرÇفزÇ موجب ãæÏ ÔæÑ åæبھ عال

سیگناá بھ نویز مي شوºÏبنابرÇین ÑÇجح Çست

جي شدåسیگناá تدÑی: ϯشكل

سیگناÏ áیجیتاϰ :áشكل

بخش ھاÇ íÇ íست كھ ھرگز ä ÒÇ تجاÒæ نمي كند Ç ÑÏMin æMaxین مدº ÑÇسیگناíÇÑÇÏ á مقاÏیر

íÇÑÇÏ ھیچ گونھ Çطالعاتي نیستند º بنابرÇین برíÇ حفظ حافظھ مي تو äÇنھا æMax ÇÑ باالMin íپایین

www.ControlMakers.ir

Page 3: å Ò˙ æ Ò˙ ϭ Sampling Period Ϯ ϭdl.controlmakers.ir/books/AVR_SOUND_RECORDER-www... · ˇ˙Ò ﻲﺒﻧ ﺪﯾﺮﻓ : ˙ﺮﺟ˙ æ ﮫﯿﮭﺗ mmc æ avr Ò˙ åˇﺎﻔﺘﺳ˙

ÒÇ åÏستفاÇ با Çپخش صد æ ضبطAVR æMMC ÇجرÇ æ تھیھ :ÏÇÒ فرید نبي

Ïكر Ýحذ. íباال íیختن قسمت ھاÑ ÑæÏ æ بھ پایین áكل سیگنا äÏÇÏ بوسیلھ شیفت Ñین كاÇMax ãنجاÇ

Ïشكل مي گیرϱ

Ðخیرå شوMMC Ïبیتي Çست Ç æین سیگناá مي توÇند بر Ç ÑÏϴ íæÑین پرæژå سیگناá نھایي

áæÇ طبقھ :ä åتقویت كنند æ فنæمیكر ܩÇ ÑÏین مدÑÇتقویت كنندå میكرæفن ºیك تقویت كنندå معكوÓ كنندå ساÇ åÏست كھ بھرä å توسط ൌ ͳȀͷÏمت تعیین مي شوæمقا ÒÇ فنæتغذیھ میكر íÇبرR4 æ ستÇ åشد åÏستفاÇC1 ظیفھæ نیز

íلتاژھاæ äÏبلوكھ كرDC ÏÑÇÏ åبرعھد ÇÑ.R2 æR3 ϩΪϬϋήΑέϱΩϭέϭΖδϓϢϴψϨΗϪϔϴχϭΰϴϧ

ÏندÑÇ íنید بجاÇمي توLM741 ÒÇLM324 كنید åÏستفاÇ

ϳشكل ÑÇمد íÏæÑæ طبقھ

ãæÏ طبقھ: æ كنترلرæمیكرMMC قرÏÑÇÏ ÑÇ كھ æظیفھ ÑÏیافت سیگنا áنالوگ ÒÇ مدÇ ÑÏATMEGA32 ÑÇین بخش یك میكرæكنترلر

íæÑ برº نتیجھ تبدیل åخیرÐ سپس æ áیجیتاÏ áبھ سیگنا ä تبدیل æ فنæمیكرMMC åبرعھد ÇÑ

ÏÑÇÏ. نالوگ بھ پایھ áسیگناADC0 íæÑ تبدیل بر ÒÇ پس æ Ïمي شو ÏÑÇæMMC Ïمي شو åخیرÐ

www.ControlMakers.ir

Page 4: å Ò˙ æ Ò˙ ϭ Sampling Period Ϯ ϭdl.controlmakers.ir/books/AVR_SOUND_RECORDER-www... · ˇ˙Ò ﻲﺒﻧ ﺪﯾﺮﻓ : ˙ﺮﺟ˙ æ ﮫﯿﮭﺗ mmc æ avr Ò˙ åˇﺎﻔﺘﺳ˙

ÒÇ åÏستفاÇ با Çپخش صد æ ضبطAVR æMMC ÇجرÇ æ تھیھ :ÏÇÒ فرید نبي

Çست كھ برÏ íÇستیابي بھ حدÇكثر سرعت نوشتن SPIبصوMMC ÊÑپرæتكل ÑÇتباطي میكرæكنترلر با

ϞϜΗϭήίϥΪϧϮΧϭSPI ستÇ åشد åÏستفاÇ íÑÇفزÇ سخت ÊÑبصو

ÑÏ íÑكلید فشا æÏ äنشا íÇنیز بر íÑنو ÏیوÏ æÏ æ ندÑÇÏ åبرعھد ÇÑ ÊطالعاÇ پخش æ ظیفھ ظبطæ ÑÇمد

بدین جھت MMCپایھ ھاÇ íما Ïلیل قرÑÇ گیرí مقاäÏÇÏíæÑ Êæ صحت عملكرÏ مدÑÇ بكاÑ Ñفتھ Çند

æϱϥϮϭΪϨϛϞϤΤΗζϳΎϫϪϳΎϱϭέήΑέΖϟϭلت بوæ åÏ نمي توÇند æلتاژ ÇMMC 3.3ست كھ تغذیھ

Çست بنابرÇین مقاÊæ ھا í نشاåÏÇÏ ä شدæ åظیفھ تقسیم æلتاژ TLL ÇÑبصوÊÑ خرæجي میكرæكنترلر

γΩϱήΑϪϛΪϧέΩϩΪϬϋήΑت íپایھ ھا íæÑ لتاژæ º äطمیناÇ كثرÇیابي بھ حدMMC º2 نظر گرفتھ ÑÏ لتæ

åشدΖγ= (2.2 /2.2 + 3.3 ) ∗ 5 .

نیست DOنیاíÒ بھ قرäÏÇÏ ÑÇ مقاæمت بر íæÑ پایھ تذكر

شكل Òیر Çین حالت ÇÑ نشاä مي æلت ÇستفاåÏ نمایید ϯϯحتما مي بایست Ñ ÒÇگوالتوMMC ÑبرíÇ تغذیھ

Ïھد

æ میكرæكنترلر MMCتغذیھ ϴشكل

íبجاMMC ميΗ ÊÑكاÒÇ نیدÇوSD ÒÇ ÊÑكا Úنو æÏ ھرº كنید åÏستفاÇ نیز

ϞϜΗϭήSPI ینكھÇ ضمنºپشتیباني مي كنندSD نیز íسرعت بیشتر ÒÇ

ÇÑ نشاϪψϓΎΣΕέΎϛϱΎϫϪϳΎΐϴΗήΗϞΑΎϘϣϞϜηMMC äبرخوÇ ÑÇÏÑست

مي Ïھد

www.ControlMakers.ir

Page 5: å Ò˙ æ Ò˙ ϭ Sampling Period Ϯ ϭdl.controlmakers.ir/books/AVR_SOUND_RECORDER-www... · ˇ˙Ò ﻲﺒﻧ ﺪﯾﺮﻓ : ˙ﺮﺟ˙ æ ﮫﯿﮭﺗ mmc æ avr Ò˙ åˇﺎﻔﺘﺳ˙

ÒÇ åÏستفاÇ با Çپخش صد æ ضبطAVR æMMC ÇجرÇ æ تھیھ :ÏÇÒ فرید نبي

ϵشكل æ كنترلرæطبقھ میكرMMC

www.ControlMakers.ir

Page 6: å Ò˙ æ Ò˙ ϭ Sampling Period Ϯ ϭdl.controlmakers.ir/books/AVR_SOUND_RECORDER-www... · ˇ˙Ò ﻲﺒﻧ ﺪﯾﺮﻓ : ˙ﺮﺟ˙ æ ﮫﯿﮭﺗ mmc æ avr Ò˙ åˇﺎﻔﺘﺳ˙

ÒÇ åÏستفاÇ با Çپخش صد æ ضبطAVR æMMC ÇجرÇ æ تھیھ :ÏÇÒ فرید نبي

ãطبقھ سو áمبد íچیپ ھا ÒÇ åÏستفاÇ äæنالوگ بد بھ áیجیتاÏ áتبدیل سیگناD/A

åشد åÏستفاÇ نالوگ بھ áیجیتاÏ áتبدیل سیگنا íÇبر íÑبتكاÇ ÔæÑ یك ÒÇ كاھش ھزینھ íÇبر ÑÇین مدÇ ÑÏ

Ζγ. ÔæÑ ینÇR-2R Ladder ÒÇ åÏستفاÇ تنھا با æ با كم ترین ھزینھ æ Ïمي شو åمقا 16نامید Ïمت عدæ

شما مي توÇنید ÑÏ صوÊÑ تمایل بجاÇ íستفاÇ ÒÇ åÏین æ ÒÇ ÔæÑ یك خاäÒ سرÇمیكي قابل ÇجرÇ مي باشد

íچیپ ھاD/A 8 äھمچو ÑÇÒبا ÑÏ Ïبیتي موجوDAC0808 نمایید åÏستفاÇ

áین مبدÇ ÒÇ åÏستفاÇ ÑÏDAC یر توجھ كنیدÒ Êمي بایست بھ نكا

یني ÇÑÇ ÇÑئھ مي كند ºبنابرÇین مي بایست برíÇ تقویت ÑϺ خرæجي جریاä پای DACچوÇ äین شبكھ *

ϚϳίϝΎϨϴγOPAMP Ïشو åÏستفاÇ

* Ïæحد ÑÏ كنترلرæمیكر íپایھ ھا ÒÇ جيæخر äجریا ä20چو íجلوگیر íÇین برÇست بنابرÇ مپر میلي

ÒÇ تلفاÊ مي بایست مقدÑÇ مقاæمت بیش ÒÇ چند åÏ كیلو باشد

% æϮ یا ÑÏ1 خرæجي سعي كنید ÒÇ مقاæمت ھایي با ضریب خطاí برÏ íÇستیابي بھ حدÇكثر كیفیت *

. ÇستفاåÏ نمایید

.شكل كلي Çین مبدá بصوÒ ÊÑیر Çست

ÇستفاÇ ÑÏ100KΩ æ50KΩ åÏین پرæژÒÇ å مقاæمت ÑÏ نظر گرفتھ شوæÏRÏ برÇبر مقاæمت 2Rمقاæمت

شدÇ åست

w مقاæمتي DACنماí كلي یك مبدá : 10شكل ww.ControlMakers.ir

Page 7: å Ò˙ æ Ò˙ ϭ Sampling Period Ϯ ϭdl.controlmakers.ir/books/AVR_SOUND_RECORDER-www... · ˇ˙Ò ﻲﺒﻧ ﺪﯾﺮﻓ : ˙ﺮﺟ˙ æ ﮫﯿﮭﺗ mmc æ avr Ò˙ åˇﺎﻔﺘﺳ˙

ÒÇ åÏستفاÇ با Çپخش صد æ ضبطAVR æMMC ÇجرÇ æ تھیھ :ÏÇÒ فرید نبي

ÇستفاåÏ شدÇ ÑÏ åین مدDAC ÑÇمبدá :11شكل

ãÑطبقھ چھا: ÒÇ جيæخر áتقویت سیگناDAC äھدفو ÒÇ åÏستفاÇ íÇبلنیابرΪگو

ÒÇ جيæخر áتقویت سیگنا íÇبر åژæین پرÇ ÑÏDAC º صوتي åتقویت كنند ÒÇLM386 åشد åÏستفاÇ

Ζγ.ھدÏ مي äنشا ÇÑ ین طبقھÇ یرÒ شكل

جزئیاäÂ Ê خوíÑÇÏÏ مي شوÏبدلیل ساÏگي Çین طبقھ ÇÑÇ ÒǺئھ

خرæجي بلندگو:11شكل

www.ControlMakers.ir

Page 8: å Ò˙ æ Ò˙ ϭ Sampling Period Ϯ ϭdl.controlmakers.ir/books/AVR_SOUND_RECORDER-www... · ˇ˙Ò ﻲﺒﻧ ﺪﯾﺮﻓ : ˙ﺮﺟ˙ æ ﮫﯿﮭﺗ mmc æ avr Ò˙ åˇﺎﻔﺘﺳ˙

ÒÇ åÏستفاÇ با Çپخش صد æ ضبطAVR æMMC ÇجرÇ æ تھیھ :ÏÇÒ فرید نبي

ÒÇ جيæخر íÇتقویت صد íÇتي كھ برÑصو ÑÏ>Dϯϴϲ شتھÇÏ یر توجھÒ Êبھ نكاº مي كنید åÏستفاÇ

باشید

æϭϩΪηέΪϣΩέϭϪϳάϐΗςΧίجوÏ مدÑÇ فوÑϺ Þ ھنگاã ظبط صدÇ موجب تولید نویز شدÇ æ åین نویز

íæÑ فن برæمیكر ÒÇ íÏæÑæ íÇبا صد åÇھمرMMC جي نویزæخر íÇینكھ صدÇ نتیجھ æ ھدÇخو åخیرÐ

Ïمي شو ÑÇÏ تغذیھ Çظبط صد ãھنگا ÑÏ نیدÇین حالت مي توÇ ÒÇ íجلوگیر íÇبر>Dϯϴϲ äبوسیلھ فرما ÇÑ

Çین پرæژÇ åین ÑÏ.(بھ یكي ÒÇ پایھ ھاÏÇÒ í میكرæ قطع نموÑÏ æ åÏ ھنگاã پخش صدÇ مجدæº ÇÏصل نمایید

حالت پیش بیني نشدÇ åست

تشریح برنامھ ÑÏADC گر فركانسÇ كھ íÑبطوº ÏÑÇÏ نسبت بھ بقیھ تبدیل ھا íبیشتر äماÒ بھ Òلین سیكل تبدیل نیاæÇ º

سیكل Òماä خوÇھد ϴϯϮسیكل ÑÏϰϰϴ º نظر گرفتھ شوºÏ تبدیل áæÇ بجا8MHz íكالß میكرæكنترلر

ÏستیابرÏ íÇینجا برÇ ÑÏ فركانسº كثر سرعت تبدیلÇبي بھ حدADC íæÑ250KHz åتنظیم شد

Ζγ. بھ Òین ھر تبدیل نیاÇ448بنابر áÏمعاº 56سیكلus شتÇÏ ھدÇخوÒنیا äماÒ íمایش ھاÒ طبق

Ïæیك ثانیھ حد ÑÏ ندÇمي تو ÑÇین مدÇ گرفتھ ãنجاÇ 15عملي ÒÇ ÑسكتوMMC نتیجھ ÑÏ پر نماید كھ ÇÑ

مي توäÇ با ÇفزÇیش فركانس كالß بھ Çست 8KHzس نمونھ برíÑÇÏ مدÑÏ ÑÇ حدÏæ مي توäÇ گفت كھ فركان

ϭϲD,nj تا ÇÑ íÑÇÏنمونھ بر ÏÇتعد º23 بھ فركانس نمونھ äÇكھ بدین ترتیب مي تو ÏÇÏ یشÇفزÇ نیز

ϱέΩήΑ12KHz ست یافتÏ

åیر تبدیل شدÏمقاADC نجي بینÑAGND æAVCC ینجاÇ ÑÏ ند كھÑÇÏϬ æϱ ستÇ لتæ ینÇ لبتھ باید بھÇ

بنابرÇین æلت محدÏæ شدÇ åست Çϯϱلي Ϯϰ3نكتھ توجھ ÇÏشت كھ سیگناá خرæجي ÒÇ میكرæفن Ñ ÑÏنج

برæ íÇلتاژ Ç íÏæÑæست º كم شوMin Ïمي بایست ÒÇ مقدÑÇ معیني كھ نشاÏ äھندADC åنتیجھ تبدیل

Ϯϰ3 ÑÇین مقدÇ لتæϰϵϴ شدمي باίζϴΑϱήϳΩΎϘϣϪϛΕΎϋϼσίϲϳΎϫζΨΑ3.5 ند باÑÇÏ لتæ

ϭΩϦΘηΩήΑmsb íæÑ بر ÊطالعاÇ نوشتن ãھنگا ÑÏ توماتیكÇ Ñبطو Ñین كاÇ ºندæÑ بین مي ÒÇmmc

Ïمي شو ãنجاÇ

ΩϮΟϭ˭ϪϴϟϭϲϫΩέΪϘϣίβϭϪϣΎϧήΑϱΪΘΑέΩMMC ä Ïصحت عملكر æ Ïچك مي شو ÊÑصو ÑÏ

ÑÏ ÊÑكا Ïجوæ º ÊسالÇLED Ïمي شو Ôخامو åÑباæÏ æ åشن شدæÑ یك ثانیھ Êین سبز بھ مدÇ غیر ÑÏ

ΕέϮλLED ھد شدÇشن خوæÑ یك ثانیھ Êقرمز بھ مد

ÒÇ حلقھ خاÌÑ شدREC æ åپس ä ÒÇ برنامھ ÑÏ یك حلقھ قرÑÇ مي گیرÏ كھ ÑÏ صوåÏÒ ÊÑ شدä كلید

شرÚæ بھ ظبط ÇطالعاÊ مي كند

Ç ÒÇ íجلوگیر Ñكلید بھ منظو äماÒ ÝتالSTOP جيÑقفھ خاæ بھϬستÇ åیدÏین متصل گرÇ ھنگامي كھ

مي ماند Çما نھ برíÇ ظبط RECكلید فشرåÏ شوÏ ظبط متوقف گرÏیدæ å برنامھ منتظر åÏÒ شدä مجدÏ كلید

åظبط شد ÊطالعاÇ پخش íÇبلكھ بر Ïتي كلید ! مجدÑبھ عباREC ظیفھæ ھم æ ÊطالعاÇ ظیفھ ظبطæ ھم

ÇنرÂ پخشÏÑÇÏ åبرعھد.

www.ControlMakers.ir

Page 9: å Ò˙ æ Ò˙ ϭ Sampling Period Ϯ ϭdl.controlmakers.ir/books/AVR_SOUND_RECORDER-www... · ˇ˙Ò ﻲﺒﻧ ﺪﯾﺮﻓ : ˙ﺮﺟ˙ æ ﮫﯿﮭﺗ mmc æ avr Ò˙ åˇﺎﻔﺘﺳ˙

ÒÇ åÏستفاÇ با Çپخش صد æ ضبطAVR æMMC ÇجرÇ æ تھیھ :ÏÇÒ فرید نبي

ÒÇ åضبط شد ÊطالعاÇ ھمزماني íÇبرº یر برنامھ پخشÒ ÑÏ یك توقفϭϭϳ åشد åÏستفاÇ íÇ ثانیھæمیكر

Ζγ . ÏÑÇæ Èæحافظھ بھ تنا ÒÇ åندÇخو ÊطالعاÇPORTC Ïنالوگ شوÂ áتا تبدیل بھ سیگنا Ïمي شو

ÔæÑ ÒÇ ÊطالعاÇ پخش íÇبر äÇمي توPWM ςγϮΗϩΪηϡΎΠϧϱΎϬθϳΎϣίέΩΎϣΩϮϤϧϩΩΎϔΘγΰϴϧ

æ ÏیاÒ جيæین حالت نویز خرÇ ÑÏ åنویسندº Çصدϱ ãیدنامفھوÏگر åمشاھد

برنامھ $regfile = "m32def.dat"

$crystal = 8000000

$swstack = 64

$hwstack = 128

$framesize = 128

Config Portc = Output : Portc = 0

Config Pind.1 = Input : Portd.1 = 1

Rec_key Alias Pind.1

Config Porta.1 = Output : Porta.1 = 0

Led_rec Alias Porta.1

Config Porta.2 = Output : Porta.2 = 0

Led_play Alias Porta.2

Config Int0 = Falling

On Int0 Request

Enable Interrupts

Enable Int0

'****************************************************************

Waitms 1

$include "Config_MMC.bas"

$external _mmc

Gbdriveerror = Driveinit()

If Gbdriveerror <> 0 Then

Led_rec = 1 : Wait 1 : Led_rec = 0

Else

Led_play = 1 : Wait 1 : Led_play = 0

End If

www.ControlMakers.ir

Page 10: å Ò˙ æ Ò˙ ϭ Sampling Period Ϯ ϭdl.controlmakers.ir/books/AVR_SOUND_RECORDER-www... · ˇ˙Ò ﻲﺒﻧ ﺪﯾﺮﻓ : ˙ﺮﺟ˙ æ ﮫﯿﮭﺗ mmc æ avr Ò˙ åˇﺎﻔﺘﺳ˙

ÒÇ åÏستفاÇ با Çپخش صد æ ضبطAVR æMMC ÇجرÇ æ تھیھ :ÏÇÒ فرید نبي

Gbdriveerror = Drivecheck()

'****************************************************************

Config Adc = Single , Prescaler = 32 , Reference = Avcc

'****************************************************************

Declare Sub No_key

Dim Abuffer(512) As Byte

Dim Wsrampointer As Word

Dim Lsectornumber As Long

Dim Cop_lsec As Integer

Lsectornumber = 100

Dim I As Integer

For I = 1 To 512

Abuffer(i) = 0

Next

I = 1

'************************************WRITING PROCEDURE*************

Do

If Rec_key = 0 Then

Call No_key

Led_rec = 1

Start Adc

Goto Main

End If

Loop

Main:

Wsrampointer = Varptr(abuffer(1))

Do

For I = 1 To 512

Abuffer(i) = Getadc(0)

www.ControlMakers.ir

Page 11: å Ò˙ æ Ò˙ ϭ Sampling Period Ϯ ϭdl.controlmakers.ir/books/AVR_SOUND_RECORDER-www... · ˇ˙Ò ﻲﺒﻧ ﺪﯾﺮﻓ : ˙ﺮﺟ˙ æ ﮫﯿﮭﺗ mmc æ avr Ò˙ åˇﺎﻔﺘﺳ˙

ÒÇ åÏستفاÇ با Çپخش صد æ ضبطAVR æMMC ÇجرÇ æ تھیھ :ÏÇÒ فرید نبي

Abuffer(i)=Abuffer(i)-498

Next

Gbdriveerror = Drivewritesector(wsrampointer , Lsectornumber)

Lsectornumber = Lsectornumber + 1

I = 1

Loop

Request:

Stop Adc

Cop_lsec = Lsectornumber

Led_rec = 0

Lsectornumber = Lsectornumber - 1

'********************************READING PROCEDURE*****************

From_one:

Do

If Rec_key = 0 Then

Call No_key

Goto Start_play

End If

Loop

Start_play:

Led_play = 1 : Led_rec = 0

Lsectornumber = 100

Wsrampointer = Varptr(abuffer(1))

Gbdriveerror = Drivereadsector(wsrampointer , Lsectornumber)

Do

I = 1

For I = 1 To 512

Portc = Abuffer(i)

Waitus 117

Next

Lsectornumber = Lsectornumber + 1

www.ControlMakers.ir

Page 12: å Ò˙ æ Ò˙ ϭ Sampling Period Ϯ ϭdl.controlmakers.ir/books/AVR_SOUND_RECORDER-www... · ˇ˙Ò ﻲﺒﻧ ﺪﯾﺮﻓ : ˙ﺮﺟ˙ æ ﮫﯿﮭﺗ mmc æ avr Ò˙ åˇﺎﻔﺘﺳ˙

ÒÇ åÏستفاÇ با Çپخش صد æ ضبطAVR æMMC ÇجرÇ æ تھیھ :ÏÇÒ فرید نبي

Gbdriveerror = Drivereadsector(wsrampointer , Lsectornumber)

Loop Until Cop_lsec = Lsectornumber

'*************************************

Portc = 0

Led_play = 1 : Led_rec = 1

Goto From_one

Return

End *************************************

Sub No_key

Do

Loop until Pind.1=1

Waitms 5

End Sub

نكاÊ پایاني ϭ ßÑÏ برنامھ كاھش یابد تا íكدھا äمكاÇ تا حد åین سعي شدÇبنابر ÏÑÇÏ شيÒمو تنھا جنبھ åژæین پرÇ

بھ ھمین Ïلیل مدÒÇ ÑÇ جنبھ ھاí گوناگوني شاید عیب ھایي ÇÏشتھ باشد ÒÇ جملھ باشدعملكرÇÑ ä Ïحت تر

Çینكھ پس Ñ ÒÇیست شدǺ äمكاä ظبط ÇÏÇ ÒÇمھ æجوÏ ندÇ æ ÏÑÇطالعاÊ جدید Ç íæÑطالعاÊ قبلي نوشتھ

ھ åÏÒ شوϺÏیگر Çمكاä ضبط æجوÏ نخوÇھد ÇÏشت مگر Çینك æSTOP یا Çینكھ ºھنگامي كھ كلید خوÇھد شد

Ïشو ãنجاÇ یستÑ عمل Ñیكبا

Ïمي شو ÑÇگذÇæ ãمحتر åنندÇبھ خو ä íÒتي شخصي ساÑبھ عبا æ ÑÇمد Ïعملكر ÍصالÇ

2 ( ÊÑكا Úھر نو ÒÇ Òنید بستھ بھ نیاÇشما مي توMMC یا æSD كنید åÏستفاÇ íÇ حافظھ äÇمي با ھر میز

ÊÑیك كا ÒÇ åÏستفاÇ با äÇتوϭ' ÇÏæحد º34 ÇÑ ÊطالعاÇ ساعتÏپخش نمو æ ضبط

3 ( ÒÇ åژæین پرÇ ÑÏ äچوSystem File ستÇ åنشد åÏستفاÇ ÊÑكا íæÑ åشد åخیرÐ ÊطالعاÇ ینÇبنابر

Ñصو ÑÏ æ Ïھد بوÇتوسط كامپیوتر قابل شناسایي نخو íÇكامپیوتر برºÏبھ كامپیوتر متصل شو ÊÑتي كھ كا

Ïھد كرÇخو áÇشما سو ÒÇ ÊÑكا äÏنید با ھر فرمتي فرمت كرÇشتھ مي توÇÏ ما توجھÇ فرمت كنید ÇÑ ÊÑكا

Ïھد بوÇقابل پخش خو ÑÇتوسط مد åنوشتھ شد ÊطالعاÇ ھم Òباº ÊÑكا äÏفرمت كر ÒÇ باشید كھ حتي پس

ΪηΎΑϲϣΎϫέϮΘϜγϥϱϭέΪϳΪΟΕΎϋϼσϦΘηϮϧ˭ϩΪηϪΘηϮϧΕΎϋϼσϥΩήΑϦϴΑίϩέΎϬϨΗϭ.

www.ControlMakers.ir

Page 13: å Ò˙ æ Ò˙ ϭ Sampling Period Ϯ ϭdl.controlmakers.ir/books/AVR_SOUND_RECORDER-www... · ˇ˙Ò ﻲﺒﻧ ﺪﯾﺮﻓ : ˙ﺮﺟ˙ æ ﮫﯿﮭﺗ mmc æ avr Ò˙ åˇﺎﻔﺘﺳ˙

ÒÇ åÏستفاÇ با Çپخش صد æ ضبطAVR æMMC ÇجرÇ æ تھیھ :ÏÇÒ فرید نبي

ÇستفاÒÇ åÏ حتما ÒÇ كریستاá خاÑجي ÇستفاåÏ كنید 8KHzیابي بھ فركانس نمونھ برíÑÇÏ تبرÏ íÇس) 4

Ïæنس حدÇخلي بدلیل تلرÇÏ Ò3نوسانسا% Ïتوصیھ نمي شو º

Þعایت حقوÑíمعنو

مرÇجع æ منابع

گرفتھ شدÇ åستبرÒÇ سایت Çتمل æApp Note 335 بخش ھایي ÒÇ توضیحاÇ Êین پرæژÇÒÇ åیدæÇ åلیھ

www.atmel.com/dyn/resources/prod_documents/doc1456.pdf

áمبدDAC متيæمقا

ltutorial.net/avr_en/AVR_DAC.htm-asm-www.avr

ÏMMCیتاشیت كاÊÑ حافظھ

http://ec.transcendusa.com

LF33CVº LM324 ºLM386 æATMEGA32ھاÏ íیتاشیت چیپ

www.datasheet4u.com

ÑلكتوÇ مجلھ ÓÑ26صفحھ 2008ما ­Data Logger deLuxe

www.elektor.com

ÈكتاAVR & Codevision مین مصالیيÇ نشنوشتھ محمدÇÏ Ôæسر ÊÇÑنتشاÇ ­ ãæÏ 1386چاپ

www.ControlMakers.ir

Page 14: å Ò˙ æ Ò˙ ϭ Sampling Period Ϯ ϭdl.controlmakers.ir/books/AVR_SOUND_RECORDER-www... · ˇ˙Ò ﻲﺒﻧ ﺪﯾﺮﻓ : ˙ﺮﺟ˙ æ ﮫﯿﮭﺗ mmc æ avr Ò˙ åˇﺎﻔﺘﺳ˙

ÒÇ åÏستفاÇ با Çپخش صد æ ضبطAVR æMMC ÇجرÇ æ تھیھ :ÏÇÒ فرید نبي

Ï ÑÏ ºنیاÇ íمرÒæ جایگاھي ندÇϲ ÏÑÇنحصاÑ طلبي علم

بیائید تا ÇÏنستھ ھاí خوÇÑ Ï ھر چند Çند٬ß با ÏیگرäÇ بھ ÇشترßÇ بگذÑÇیم

فرھنگ æ تمدä بي ھمتاÇ íیرÇنیاä بھ سبب حملھ æحشیانھ مغوالä نابوÏ شد

æ

گذشتھ جایگاå بي ھمتاÇϥϪΑέϥήϳΩíمرÒæ نوبت من æ توست كھ با ÇنتشاÇÏ Ñنستھ ھاí خو

باÒگرÇÏنیم

Fuba unlimited intelligent Building A Sound recorder with AVR & MMC

2009-05-08

Rev:1.0

http://electroway.blogfa.com

[email protected]

www.ControlMakers.ir