بازدیدها: 111
تا کنون وسایل مختلفی را دیده اید که سخنگو می باشد مانند سیستم سخنگویی که در خودرو سمند استفاده می شود ،عروسک های سخنگو و… ساختن این سیستم سخنگو کار بسیار راحتی می باشد که در این قسمت برای شما آموزش ساخت یک سیستم سخنگو را اماده کرده ایم که به کمک این سیستم می توانید پروژه های متنوعی که سخنگو باشد را بسازید مثل ساعت گویا و…
ای سی های ضبط صوت مختلف با زمان های متفاوتی در بازار وجود داشته و دارد .در ابتدا ای سی های سری isd با زمان های ۲۰ و ۶۰ و ۱۲۰ ثانیه وارد بازار شد که درنوبه خود عالی بودن ولی دو اشکال اساسی دارند
حال ای سی هایی که در بازار موجود است Apr 9600 , isd4004 می باشد.
ای سی APR9600 ا ی سی ضبط صوت با زمان ۱ دقیقه می باشد ولی از اشکال ان می توان کم بودن حافظه و محدود بودن در تقسیم بندی حافظه ان می باشد به طوری که فقط می توان به چند قسمت از پیش تعیین شده توسط کارخانه ان را تقسیم بندی نمود.
واما ای سی ISD4004 که با مدت زمان ۸ دقیقه و ۱۶ دقیقه ان در بازار موجود می باشد که بهترین کیفیت را ای سی ISD4004 با مدت زمان ۸ دقیقه را دارد. از مزایای مهم ای سی می توان به زیاد بودن زمان ضبط و قابلیت تقسیم بندی حافظه به طور دلخواه می باشد که می توان در هر لحظه به قسمت مورد دلخواه در ای سی دسترسی داشت
در این پست نحوه کار با ای سی ISD4004 را به شما آموزش می دهیم.
آی سی ضبط صوت isd4004
برای استفاده از این ای سی حتما باید از میکرو استفاده نمود . چون برای ارتباط به ای سی ضبط صوت باید از پروتکل SPI استفاده نمود که به همین دلیل در این پروژه از ای سی ATMEGA 8 استفاده شده و کلیه عملیات ضبط و پخش توسط دستورات ارسالی توسط میکرو صورت می گیرد.
در مورد پروتکل SPI قبلا در سایت توضیح داده شده است که می توانید با کلیک بر روی لینک زیر ان مطلب را بخوانید.
در قسمت زیر عکسی از ای سی اورده شده است و همانطور که می بینید تعدادی از پایه های این ای سی NC می باشد که مخفف Not connected است یعنی نباید این پایه ها را به جایی متصل نمایید.
از نکات مهمی که باید گفت تغذیه ای سی می باشد که بر خلاف انتظار تغذیه ان ۳٫۳ ولت می باشد که باید از رگولاتور ۳٫۳ ولت به شماره LF33CV استفاده نمود. اما جالبی کار این جاست که شما می توانید تغذیه میکرو را ۵ ولت قرار دهید و پایه های میکرو را مستقیما به ای سی ضبط صوت متصل نمایید و از این نظر هیچ مشکلی نیست و نیاز نیست ولتاژ را توسط تقسیم مقاومتی کم کنید.که عکس زیر این مطلب را نشان می دهد.
این ای سی دارای یک خروجی صوت می باشد که می توان از یک تقویت کننده مانند lm386 برای تقویت صوت ان استفاده نمود. همچنین دارای ۲ ورودی برای صوت می باشد که طبق عکس زیر می توانید نسبت به کار خود از یکی از دو حالت زیر استفاده نمایید.
در صورتی که می خواهید خروجی کامپیوتر را به ورودی میکرو متصل نمایید یک مقاومت ۱۰ کیلو اهم با ورودی سری نمایید. پایه ۲۴ این میکرو RAC نام دارد که در ای سی ۸ دقیقه این پایه پالسی مانند شکل زیر تولید میکند و در زمان ضبط و پخش ای سی این پایه پالس تولید می کند که می توانید با وصل کردن یک led به این پایه پالس راببینید.
پایه ۲۵ پایه INT می باشد که به صورت معکوس فعال می شود یعنی در حالت عادی پایه ۱(۳٫۳ ولت) می باشد و این خروجی ۲ کار انجام می دهد.
۱:اگر شما ۱۰ پیغام جداگانه بر روی ای سی ضبط نمایید در زمان پخش زمانی که اولین پیغام پخش شد و به اتمام رسید ای سی stop میشود و این خروجی فعال شده و نشان دهنده اتمام پیغام می باشد که دوباره باید توسط میکرو ای سی را play کرده و دوباره خروجی غیر فعال می شود و پیغام دوم را پخش می کند تا پیغام دوم تمام شود و همین طور این سیکل طی می شود که به این عمل End Of Message یا به صورت مخفف EOM می گویند.
۲:اگر در هنگام ضبط یا پخش حافظه ای سی به اتمام برسد این خروجی نیز فعال می شود که به اصطلاح OVF می گویند. حال برای فرمان به ای سی ضبط صوت باید کد ها و دیتاهای خاصی را فرستاده که درعکس زیر مشخص شده است .در مجموع برای هر دستور باید اطلاعاتی را ارسال کرد که این اطلاعات( OPCODES) شامل ادرس و بیت های کنترل می باشد.
در ابتدا باید ای سی ضبط صوت را روشن نماییم که این عمل توسط دستور POWERUP صورت می گیرد. سپس اگر خواسته باشیم بر روی ای سی صدا ضبط نماییم ابتدا باید ادرس خانه مورد نظر را ارسال کنیم که این ادرس ۱۶ بیتی است و باید دو تا دیتا ۸ بیتی درارتباط SPI پشت سر هم ارسال نموده و سپس دستور SETREC را ارسال نمایید و سپس دستور REC را ارسال نمایید.
در صورتی که پیغامی را از ابتدا شروع به ضبط کرده ایم و بعدا بخواهیم پیغام دیگر را ضبط نماییم و ندانیم شماره خانه ایی که پیغام اول به اتمام رسیده کدام است فقط دستور REC را ارسال نمایید و دیگر نیاز به ارسال دستور SETREC نیست و خود ای سی در جایی که قرار دارد (آخر پیغام اول ) عملیات ضبط را آغاز می کند.
اما در زمان پخش صوت ابتدا باید ادرس خانه مورد نظر را ارسال کنیم که این ادرس ۱۶ بیتی است و باید دو تا دیتا ۸ بیتی در ارتباط SPI پشت سر هم ارسال نموده و سپس دستور SETPLAY را ارسال نمایید و سپس دستورPLAY را ارسال نمایید.
در صورتی که پیغامی را از ابتدا شروع به پخش کرده ایم و بعدا بخواهیم پیغام دوم را پخش نماییم و ندانیم شماره خانه ایی که پیغام اول به اتمام رسیده کدام است فقط دستور PLAY را ارسال نمایید و دیگر نیاز به ارسال دستور SETPLAY نیست و خود ای سی در جایی که قرار دارد (آخر پیغام اول ) عملیات پخش را آغاز می کند.
دستورات دیگر نیز هر کدام عملیات خاصی را انجام می دهند که فعلا به همین مقدار بسنده می کنیم. و اما برای پخش پیغام باید طبق عکس زیر مراحل را طی کنیم که در بالا مختصری توضیح دادیم.
و برای ضبط نیز باید طبق عکس زیر مراحل را طی کنیم.
در دو عکس بالا زمانی با نام TPUD قرار دارد که برای ای سی ۸ دقیقه این زمان ۲۵ میلی ثانیه می باشد.
در عکس زیر نیز به صورت کامل مشخصات ای سی ISD4004 می باشد و سری ۸ دقیقه نیز در ان مشخص شده است.
و اما در این پروژه از ای سی ATMEGA8 و از زبان بیسیک برای برنامه نویسی استفاده کرده ایم.
در مداری که طراحی کرده ایم دو کلید به نام های s1 و s2 وجود دارد که کلید s1 به پایه ۲ میکرو و کلید فشاری s2 به پایه ۳ متصل شده است.
زمانی که کلید s1 در حالتی قرار گرفته باشد که سر وسط پایه به تغذیه مثبت متصل باشد ای سی در حالت آماده به کار برای پخش قرار گرفته و زمانی که کلید حالت معکوس حالت بالا را داشته باشد میکرو در حالت آماده به کار برای ضبط می باشد که این حالت کلید توسط led که به پایه ۱۴ میکرو متصل شده نیز نمایش داده می شود.
و در مورد کلید s2 زمانی که دستگاه در حالت پخش یا ضبط باشد این کلید عمل استارت را انجام می دهد یعنی در حالت پخش با زدن این کلید دستگاه شروع به پخش میکند و در حالت ضبط عملیات ضبط را آغاز می کند.
در قسمت زیر می توانید فایل را دانلود نمایید که در ان نقشه شماتیک وفایل بسکام موجود می باشد.