PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : تایمر موزیکال توسط avr



moji5
2nd December 2009, 01:16 AM
اين مدار را با استفاده از يك ميكرو ATmega8 طراحي كردم. كه وظيفه اندازه گيري زمان و پخش موزيك را در زمانهاي مورد نظر بر عهده داشت. نحوه عملكرد مدار بدين صورت است كه ابتدا با هر بار فشار دادن كليد تايمر به اندازه 2 ساعت كوك ميشود. پس در صورتي كه بخواهيم مدار هر 6 ساعت يكبار آلارم بدهد بايد 3 مرتبه كليد آنرا فشار داد.البته بدليل اينكه احتمال اين وجود دارد كه فرد استفاده كننده فراموش كند كه چند بار كليد را زده من در مدار يك LED فرمز هم قرار دادم كه با هر بار زدن كليد به همان تعداد روشن و خاموش ميشود و در حين روشن خاموش شدن صداي بوقي نيز از طريق بلندگو پخش ميشود.
مثلا اگر شما كليد را سه مرتبه زده باشد بعد از هر بار زدن كليد LED و بوق متناسب با آن فعال و غير فعال ميشوند بعنوان مثال در بار سوم سه مرتبه LED روشن و خاموش ميشود و سه مرتبه صداي بوق هم شنيده ميشود.
اين موضوع كمك ميكند كه در صورتي فرد استفاده كننده كم شنوا يا ناشنوا باشد از نور LED متوجه تنظيم شود و همچنين افراد كم بينا نيز از طريق صداي دستگاه متوجه تنظيمات آن خواهند بود.
پس از تنظيم دستگاه، تايمر آن فعال ميشود و در زمانهاي تنظيم شده با پخش موزيك و روشن كردن LED فرد استفاده كننده را متوجه زمان استفاده از داروها خواهد كرد.
براي مثال اگر شما دستگاه را براي 6 ساعت تنظيم كرده باشيد در هر 6 ساعت يكبار دستگاه شروع به هشدار دادن ميكند.
حال ممكن است كه اين سئوال پيش آيد كه اين وسيله تا چه بازه زماني قابليت تنظيم دارد؟ كه در پاسخ بايد گفت ماكزيمم زمان قابل تنظيم 24 ساعت است. يعني پس از اينكه شما 12 بار كليد را زديد در بار سيزدهم دستگاه بر روي 2 ساعت كوك ميشود نه 26 ساعت!




'*********************************************
'* This Program Writing By : Hossein Lachini *
'* The AVR Musical Timer *
'* For to get more details visit : *
'* www.HLachini.com (http://njavan.com/forum/redirector.php?url=http%3A%2F%2Fwww.HLachini.com) *
'* Contact to me by : eLachini@Gmail.com *
'* Mobile/SMS : +98 912 381 2060 *
'*********************************************
$regfile="m8def.dat"
$crystal= 1000000
'****************************
ConfigPinb.0 =Output
ConfigPind.0 =Input
ConfigPortc=Output
ConfigPind.1 =Output
ConfigTimer0=Timer, Prescale = 1024
On Ovf0 Tim0_isr
'****************************
Musicpin AliasPortb.1
'****************************
Const La = 114
Const Lad = 107
Const Si = 101
Const Doo = 96
Const Dod = 90
Const Re = 85
Const Red = 80
Const Mi = 76
Const Fa = 72
Const Fad = 68
Const Sol = 64
Const Sold = 60
Const Mt = 1
'****************************

EnableTimer0' enable the timer interrupt
EnableInterrupts


Dim I AsWord
Dim Note AsByte
Dim Length AsByte
Dim Duration AsWord
Dim B AsByte
Dim C AsByte
Dim S AsByte
Dim M AsByte
Dim H AsByte
Dim K AsByte
Dim E AsEramByte

If E > 12 Then E = 0

B = E

C = 0
S = 0
M = 0
H = 0
B = 0

Do
If B = 0 ThenSetPortd.1
IfPind.0 = 1 Then
B = B + 2
If B > 12 Then B = 0
K = B * 5
K = K + 100
Sound Musicpin , 100 , K
K = B / 2
For I = 1 To K
SetPortd.1
Waitms 500
ResetPortd.1
Waitms 500
Next I
E = B
C = 0
S = 0
M = 0
H = 0
EndIf

If H = B And B > 0 Then
C = 0
S = 0
M = 0
H = 0
SetPortd.1
For I = 0 To 149
Note =Lookup(i , Notes)
Note = Note * 2
Length =Lookup(i , Lengths)
Duration = 5000 / Note
Duration = Duration * Length
Sound Musicpin , Duration , Note
Next I
ResetPortd.1
Wait 3
EndIf
Loop
End

Tim0_isr:

Timer0= 191
Incr C
If C = 15 Then
C = 0
Incr S
If S = 60 Then
S = 0
Incr M
If M = 60 Then
M = 0
Incr H
If H = 24 Then H = 0
EndIf
EndIf
EndIf


Return


'****************************
Notes:
Data La , Si , Doo , Mi , Fa , Mi
Data Fa , Mi , Fa , Mi , Fa , Mi , Re , Mi
Data Re , Mi , Re , Mi , Re , Mi
Data Re , Doo , Re , Doo , Re , Doo
Data Si , La , Sold , La , Si , Mt
Data Fa , Mi , Mt
Data La , Si , Doo , Mi , Fa , Mi
Data Fa , Mi , Fa , Mi , Fa , Mi , Re , Mi
Data Re , Mi , Re , Mi , Re , Mi
Data Re , Doo , Re , Doo , Re , Doo
Data Si , La , Sold , La , Si , Mt
Data Fa , Mi , Mt ,
Data La , Sol , Fa , Mi , Fa , Mi
Data Re , Fa , Mi , Re , Fa , Sol
Data Fa , Mi , Re , Mi , Re , Doo
Data Mi , Re , Doo , Mi , Fa , Mi
Data Re , Doo , Re , Doo , Si , Re
Data Doo , Si , Re , Re , Mi , Sol
Data Fa , Mi , Sold , La , Mt
Data La , Sol , Fa , Mi , Fa , Mi
Data Re , Fa , Mi , Re , Fa , Sol
Data Fa , Mi , Re , Mi , Re , Doo
Data Mi , Re , Doo , Mi , Fa , Mi
Data Re , Doo , Re , Doo , Si , Re
Data Doo , Si , Re , Mi , Mi , Doo
Data Si , La , Mt
'****************************
Lengths:
Data 4 , 4 , 4 , 8 , 4 , 8
Data 4 , 8 , 4 , 4 , 4 , 4 , 8 , 4
Data 8 , 4 , 8 , 4 , 4 , 4
Data 4 , 8 , 4 , 8 , 4 , 8
Data 4 , 4 , 4 , 4 , 6 , 4
Data 8 , 4 , 4
Data 4 , 4 , 4 , 8 , 4 , 8
Data 4 , 8 , 4 , 4 , 4 , 4 , 8 , 4
Data 8 , 4 , 8 , 4 , 4 , 4
Data 4 , 8 , 4 , 8 , 4 , 8
Data 4 , 4 , 4 , 4 , 6 , 4
Data 8 , 4 , 4
Data 4 , 4 , 4 , 4 , 6 , 2
Data 4 , 6 , 2 , 4 , 8 , 4
Data 4 , 4 , 4 , 6 , 2 , 4
Data 6 , 2 , 4 , 8 , 4 , 4
Data 4 , 4 , 6 , 2 , 4 , 6
Data 2 , 4 , 8 , 4 , 4 , 4
Data 4 , 12 , 12 , 8 , 4
Data 4 , 4 , 4 , 4 , 6 , 2
Data 4 , 6 , 2 , 4 , 8 , 4
Data 4 , 4 , 4 , 6 , 2 , 4
Data 6 , 2 , 4 , 8 , 4 , 4
Data 4 , 4 , 6 , 2 , 4 , 6
Data 2 , 4 , 8 , 4 , 4 , 4
Data 4 , 4 , 16

جهت دانلود نقشه و برنامه به همراه فایل هگز آن به آدرس زیر مراجعه کنید :

http://www.hlachini.com/Projects/AVR-Timer-Music/ATmega8-Timer-Music.htm (http://njavan.com/forum/redirector.php?url=http%3A%2F%2Fwww.hlachini.com%2 FProjects%2FAVR-Timer-Music%2FATmega8-Timer-Music.htm)

hengameh
17th April 2010, 07:33 PM
http://www.hlachini.com/Projects/AVR-Timer-Music/AVR-Timer-Music-Schematic.gif

استفاده از تمامی مطالب سایت تنها با ذکر منبع آن به نام سایت علمی نخبگان جوان و ذکر آدرس سایت مجاز است

استفاده از نام و برند نخبگان جوان به هر نحو توسط سایر سایت ها ممنوع بوده و پیگرد قانونی دارد