CCS Şifreli kilit Algoritma'da hata yapıyorum ?

Başlatan centeremr1, 28 Haziran 2013, 15:33:58

centeremr1

SelamunAleykum...

Ben pic programlamaya yeni başladım, led yakıp döndürme, grafik ekran yazdırma, motor yön kontrol v.s...
Şimdi ise Hobi olarak Odamın kapısına koymak ve şifreli kasa yapmak için bir çalışma yaptım fakat algoritmasında bir sıkıntı yaşıyorum.
Yaşadığım sıkıntı; Şifrelemeyi herşeyi oluşturdum yalnız şifre sırasını yapamadım... >>> Örneğin; şifre 456 ama bunu ''875467'' yazsanızda şifre kabul ediliyor ''346235'' yazsanızda kabul ediyor yani anlayacağınız içinde koyduğunuz şifrenin geçmesi açmanıza yetiyor...
Sıralama yapamadım yani önce 4 e basılcak sonra 9 a basıldığında hata vericek gibi :)

Yardımcı olabilecek varsa Proteus, .C kodlarını falan gönderebilirim Teşekkürler.

Salih

Öncelikle kod ve şemalarını konu başlığına koyarsan, yardım edilme şansın çok artar.

polleme

Tuş takımından gelen her dijiti ayrı ayrı kontrol edip hata olduğu zaman başa dönmeyi hedefleyen bir algoritma ile yapmıştım. Arkadsşımızın dediği gibi şema ve kod olursa yardımcı olabiliriz.

centeremr1

K bakmayın fazla anlamıyorum forumlar'la haşır neşir olmadığım için, bir mail adresi yazın gönderiyim...

Mr.Java

Algoritması çok basit.Kullanıcıdan girilen tuşları okuyacaksın,bunu bir dizide saklayabilirsiniz.sonra bunu eeproma kayıt edeceksiniz.Eğer doğru ise altprogram(); yanlış ise buzzer(); şeklinde yapacaksınız.

ziyaretci

#5
int sifre_yanlis=0;
char gercek_sifre[8]={'3','5','7','2','3','2','0','1'};
/*Misal*/  int girilen_sifre[8];  /*olsun*/
int x,j=0;
int sifre_onay=0;

while(1){

/*

Bu aralıkta girilen şifreyi değişkene kaydetmek için bir yazılım olacak
(bunun için devre şeman gerekiyor)

*/
if(input(pin_a0)){while(input(pin_a0)); sifre_onay=1;}  
// pin_a0 daki butona basıldığında  
//girilen şifre gerçek şifre ile kontrol ediliyor

if(sifre_onay==1){
for(x=0;x<8;x++){
if(girilen_sifre[x]!=gercek_sifre[x]){sifre_yanlis=1;}
}

if(sifre_yanlis==0){ /*Şifre doğru işlem seçiniz*/ } 
else{
 for(sil=0;sil<8;sil++){

girilen_sifre[sil]=0;
 sifre_yanlis=0;
 sifre_onay=0;}

   }
 }
}


Algoritmayı basit olarak yukarıdaki yazdığım kodlardan inceleyebilirsin.

Bir ara yaptığım sumo robotuna  bilgisayardan arıza test sistemi kurmuştum. Robotda testi başlatmak için ilk önce yönetici şifresi girilmesi gerekli olan bir yazılım yazmıştım(rs232 üzerinden) o sıralar bayağı içli dışlı oldum bu konuyla. Galiba tuş takımı üzerinden şifreleme yapacaksın?

centeremr1

Allah'a Şükürler olsun Hallettim sıralamayı falan artık son rutuşları kaldı...
Yardım isteyen olursa özel mesaj veya mail atsın...
dokmetasemre@hotmail.com