 |
:: مهندس متواجد ::
تاريخ التسجيل: Apr 2009
المشاركات: 59
|
|
نشاط [ moharaul1986 ]
قوة السمعة:
|
|
11-12-2009, 02:00 PM
المشاركة 1274
|
|
بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته..
اود مشاركة الاخوة هدا النرنامج الذي كتبته بلغة mikroc
وهو عبارة عن قفل الكتروني مشفر بكودين (PIN & PUK)
PIN اربعة ارقام .... PUK ثمانية ارقام.... يشتغل كما يلي :
1: يطلب منك النظام ادخال كود pin (اربع محاولات)
2 : ادا ادخلت الكود الصحيح يتم تفعيل المخرج portd0
3 : ادا فشلت في ادخال الكود اربع مرات يطلب منك ادخال الكود puk (اربع محاولات)
4: ادا ادخلت الكود الصحيح يتم تفعيل المخرج portd0
5: ادا فشلت في ادخال الكود اربع مرات يتم تفعيل نظام الانذار لحوالي 5 ثوان
ثم يتوقف النظام
اليكم الدارة
باسم الله :

و الان مع الكود :
كود:
unsigned short kp[]={0,0,10,9,8,0,7,6,5,0,4,3,2,0,0,1,0},kp1, clavier,pin[]={1,9,8,7},chiffr,nmb,error,a,puk[]={1,2,3,4,5,6,7,8} ;
void ok () {
lcd_out(1,1,"code ok");
portd.f0=1;
delay_ms(1000);
}
void delay() {
delay_ms(300);
}
void lcdclv () {
for(nmb=0;nmb<4;nmb++) {
lcd_cmd(lcd_second_row);
error=0;
for(chiffr=0;chiffr<a;chiffr++) {
do {
clavier = Keypad_Released();
kp1=kp[clavier] ;
clavier = kp1;
} while(!clavier);
clavier--;
if(clavier!=pin[chiffr] ) {if (a==4) {error=1;} }
if(clavier!=puk[chiffr] ) { if (a==8) { error=1; } }
lcd_chr_cp(clavier+48);
}
if(error==0) { ok (); break;}
if(error==1) {
lcd_out(1,1,"wrong code");
delay();
lcd_cmd(lcd_clear);
if (nmb<3)
lcd_out(1,1,"try again"); }
delay_ms(300);
}
}
void main () {
int alarm=0;
start:
a=4;
trisd=0;
portd.f0=0;
lcd_init(&portb);
keypad_init(&portc);
lcd_cmd(lcd_cursor_off);
lcd_out(1,1," welcome ");
delay();
lcd_cmd(lcd_clear);
lcd_out(1,1,"enter PIN");
lcdclv();
if (error==0) goto start;
lcd_cmd(lcd_clear);
lcd_out(1,1,"pin blocked");
delay();
a=8;
lcd_out(1,1,"enter PUK");
lcdclv();
if(error==0) goto start;
lcd_out(1,1,"systeme blocked");
while(1) {
portd.f1=0;
delay_us(500);
portd.f1=1;
delay_us(500);
alarm++;
if(alarm==5000) break;
}
}
انا مستعد لاي سؤال
اتمنا ان افيد الاخوة كما اتمنى ان اجد من يعدل على الكود بافكار جديدة ان شاء الله
الحمد لله الدي هدانا لهدا و ماكنا لنهتدي للولا اد هدانا
|
جزاك الله كل خير ويعطيك الف عافية اخي ,اخي الكريم لو سمحت ان تشرح الكود والدوال الجاهزة فيه لكي تعم الفائدة باذن الله ونفهم استخدام بعض الدوال لنستعملها في مشاريع اخرى ,وادعو من الله ان يعلمك ما ينفعك وينفع امة الاسلام
التعديل الأخير تم بواسطة : moharaul1986 بتاريخ 11-12-2009 الساعة 02:05 PM
|