در این پروژه از ATmega8
به سمت عنوان کنترولر و مدار امر رله ها استفاده شده است . در چشم حال برای ارتباط با کامپیوتر از طریق
پورت USB نیز ، از این
میکرو کنترولر استفاده شده است.این میکرو کنترولر از خانواده میکروکنترولر های AVR
است .
پروتکل
USB به چهره رقیق افزاری در برنامه ( Firmware)
میکرو پیاده سازی شده است و باده تواند با استاندارد USB
1.1 Low به تبادل اطلاعات بپردازد.
برنامه
این میکرو بر اساس کامپایلر GCC نوشته شده
است که از بهر کامپایل آن می توان از برنامه
WinAvr استفاده کرد .
LCD
بکار رفته در این پروژه کاراکتری و 16*2 باده باشد که بصورت مستقیم توسط رقیق افزار
کامپیوتری ، متن یا دستوالعمل را افسرده و
اجرا می کند .
در
برنامه کامپیوتری برای ارتباط با پورت USB
از درایور آماده libusb استعمال شده
است .
برنامه
کامپیوتری میانجیگری لسان C++Builder تهیه شده
است. این برنامه مستقیماٌ از میکروفن کامپیوتر صوت را دریافت کرده و پشت از ذخیره
باب بافر اندرونی شروع به تجزیه و تحلیل می کند. روال پیشه به این صورت است که از
اطلاعات ورودی که در بازه زمان هستند تبادل فوریه ( FFT)
گرفته شده تا به سمت بازه فرکانس بروند . سپس با پردازش روی خشم فرکانسی و اندکی کار
آماری حدود شباهت آواز دریافتی را با نمونه های اندوخته شده مقایسه می کند .
1-1-2- لخت افزار Firmware
:
میکرو
میتواند پنج دستورالعمل مختلف را از کامپیوتر دریافت نموده و ادا نماید .
1-
ارسال یک بایت دستورالعمل به سمت LCD : cmdLCD_Command
2-
ایفاد یک بایت دیتا به سمت LCD : cmdLCD_Data
3-
نمایش یک رشته متنی روی LCD : cmdLCD_Str
4-
مشعشع و بیفروغ کردن BackLight : cmdLCD_BL
5-
بازدید رله ها : cmdSWITCH
برای
کنترل LCD سه تابع طراحی شده است :
void
LCD_Command(uchar command)
void
LCD_Data(uchar data)
void
LCD_Init(void)
این
متعلقات برای ایفاد دستورالعمل ودیتا و همچنین تنظیمات اولیه استفاده می شوند .
یکی از
توابعی که در بخش USB آن استعمال باده شود usbFunctionSetup
است که توسط آن به سمت درخواست رسیده شده از کامپیوتر پاسخ داده می شود . از تابع usbFunctionWrite
جهت دریافت اطلاعات از کامپیوتر استفاده می گردد . صفت دیگری که برای ارسال دیتا
به کامپیوتر از ثانیه استفاده باده شود usbFunctionRead
نام دارد که در این پروژه از آن استعمال نگردیده است .