امروز یکشنبه ۱۵ تیر ۱۴۰۴
دسته بندی سایت
پیوند ها
آمار بازدید سایت
در اینجا برنامه یک قفل رمز دیجیتال ساده (ورژن یک ) را برای شما نوشتم که میتوان از آن بعنوان یک درب بازکن دیجیتالی رمزی استفاده کرده و نیز از این روش برنامه نویسی برای نوشتن سایر برنامه های کاربردی و پیشرفته تر بهره برد.
روش کار بدین صورت میباشد که در ابتدا برای رمز گذاری باید دکمه Button را فشرده نگه داشته و سپس برق دستگاه وصل شود. در این حالت چراغ تغییر رمز Change Password روشن خواهد شد.
رمز را از یک تا 10 رقم به دلخواه وارد نموده و دکمه "*" رافشار دهید. چند بوق متناوب زده و نیز چراغ تغییر رمز هم چند بار چشمک خواهد زد و مجدداً روشن میماند.
در اینجا باید رمز را مجدد وارد نموده و سپس دکمه "*" را بفشارید. در صورت برابری رمزها ، در حافظه ذخیره خواهد شد. در غیر اینصورت بوق خطا داده و آماده تغییر مجدد رمز میشود.
در حین ورود رمز چنانچه رقمی را اشتباه وارد کنید میتوان توسط دکمه "#" آن را پاک و دوباره از اول وارد کنید و چنانچه رقمی را وارد ننموده باشید توسط دکمه مربع میتوان به حالت عادی برگشت.
برای باز کردن درب کافیست رمز صحیح را وارد نموده و دکمه مربع را بزنید. در پست های بعدی قفل رمز پیشرفته تر برای سایر وسایل منزل خواهم گذاشت. با سایت من همراه باشید
شماتیک:
برنامه :
************************************
NAME : Digital Lock
Ver : 1.0
DESIGNER : Esmaeil Mohammad Zadeh
DATE : 1391/7/5
TEL : 09139545140
MAIL : Esmaeil_AVR@yahoo.com
Weblog : www.esmaeil-avr.Mihanblog.com
************************************
$regfile = "m8def.dat" : $crystal = 8000000 : Enable Interrupts
Config Kbd = Portd , Debounce = 50 , Delay = 50
VAR
Dim A(10) As Byte , A2(10) As Byte
Dim B As Byte , Num_of_password As Byte
Dim Result As Byte , K As Byte
Dim Num As Byte , I As Byte
Dim Enum_of_password As Eram Byte
Dim Enum(10) As Eram Byte
Declare Sub Check
I/O
Config Pinb.0 = Input : Button Alias Pinb.0
Config Pinc.2 = Output : Beep Alias Portc.2
Config Portc.3 = Output : Relay Alias Portc.3
Config Portc.4 = Output : Change_led Alias Portc.4
If Button = 1 Then Jmp Chang
********************** START
Begin:
Num_of_password = Enum_of_password
Change_led = 0 : Relay = 0
B = 0 : I = 0 : Result = 0
*******************************************************************************
Main:
Do
K = Getkbd()
Loop Until K < 12
Beep = 1
Waitms 100
Beep = 0
Num = Lookup(k , Dta)
Select Case Num
Case 0 To 9:
If B < 10 Then
Incr B
A(b) = Num
End If
Case 10: * Button
If B <> 0 Then
For I = 1 To Num_of_password
If A(i) = Enum(i) Then Incr Result
Next I
If Result = Num_of_password Then OK Password
Relay = 1 : Wait 1
Relay = 0
Else Error Password
Relay = 0 : Beep = 1
Wait 2
Beep = 0
End If
jmp Begin
End If
Case 11 : Jmp Begin # Button
End Select
Do
K = Getkbd()
Loop Until K > 11
jmp Main
***************************************** CHANGE PASSWORD
Chang:
B = 0 : Change_led = 1
Chang2:
Do
K = Getkbd()
Loop Until K < 12
Beep = 1
Waitms 100
Beep = 0
Num = Lookup(k , Dta)
Select Case Num
Case 0 To 9:
If B < 10 Then
Incr B
A(b) = Num
End If
Case 10: * BUTTON
If B <> 0 Then
Goto Confirm
Else
Goto Chang2
End If
Case 11 : # BUTTON
If B <> 0 Then
B = 0
Else
Goto Begin
End If
End Select
Do
K = Getkbd()
Loop Until K > 11
JMP Chang2
---------------------------------------- CONFIRM ------------------------------
Confirm:
Num_of_password = B
For B = 1 To 10
Toggle Change_led : Toggle Beep
Waitms 100
Next B
Change_led = 1 : Beep = 0
B = 0
Do
K = Getkbd()
Loop Until K > 11
Confirm2:
Do
K = Getkbd()
Loop Until K < 12
Beep = 1
Waitms 100
Beep = 0
Num = Lookup(k , Dta)
Select Case Num
Case 0 To 9:
If B < 10 Then
Incr B
A2(b) = Num
End If
Case 10: * button
If B <> 0 Then
Call Check
If Result = Num_of_password Then verify tel number
For B = 1 To Num_of_password
Enum(b) = A(b)
Waitms 10
Next B
Enum_of_password = Num_of_password
For B = 1 To 6
Toggle Beep
Waitms 50
Next B
Beep = 0
Goto Begin
Else
Beep = 1 : Wait 1
Beep = 0 : Jmp Chang
End If
End If
Case 11: # BUTTON
If B <> 0 Then
B = 0
Else
Goto Begin
End If
End Select
Do
K = Getkbd()
Loop Until K > 11
jmp confirm2
-------------------------------------------------------------------------------
Sub Check
Result = 0
For B = 1 To Num_of_password
If A(b) = A2(b) Then Incr Result
Next B
End Sub
-------------------------------------------------------------------------------
Dta:
Data 1 , 4 , 7 , 10 , 2 , 5 , 8 , 0 , 3 , 6 , 9 , 11
جزوه سیستمهای دیجیتال 1 برای دانلود دانشگاه: صنعتی همدان استاد: مهندس دوست محمدی فرمت: PDF پی دی اف کیفیت: بسیار عالی تعداد صفحات: 108 حجم: 33.7 مگابایت رشته: مهندسی برق دانلود نمونه ...
عنوان پاورپوینت:دانلود پاورپوینت فرش ایران در دوره صفویهفرمت: پاورپوینت قابل ویرایشتعداد اسلاید: 44تم زیبا و متناسب با موضوعپاورپوینت کامل و آماده ارائهفهرست مطالب:چکیدهدوره های فرشبافی عصر صفویهصفو یه که بود ؟ از کجا آمدقالي بافي در عصر صفويه طرح ترنج دار قالي موج دريا ... ...
جزوه مدارهای الکتریکی 1 آماده برای دانلود مشخصات دانشگاه: صنعتی جندی شاپور استاد: سعید وحدت پناه سال: 96 تعداد صفحات: 262 فرمت: پی دی اف PDF کیفیت: عالی حجم: 7 مگابایت نوع جزوه (تایپی یا دست نویس): تایپی با عکس ... ...
اگر به یک وب سایت یا فروشگاه رایگان با فضای نامحدود و امکانات فراوان نیاز دارید بی درنگ دکمه زیر را کلیک نمایید.
ایجاد وب سایت یامحبوب ترین ها
پرفروش ترین ها
پر فروش ترین های فورکیا
پر بازدید ترین های فورکیا