اطلاعیه

Collapse
No announcement yet.

قفل رمز دیجیتال - کمک

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    قفل رمز دیجیتال - کمک

    سلام دوستان برنامه قفل رمز رو نوشتم که روی مدار بسته شده به درستی کار میکنه.برای استفاده از کیپد بصورت عملی دکمه ها رو فشار دادم و عددی که هرکدوم نمایش می دادن رو توی یک ثابت قرار دادم و در برنامه استفاده کردم.وبرنامه رو روی میکرو پروگرام کردم کاملا صحیحه.
    اما وقتی توی پروتئوس شبیه سازیش کردم چون دکمه های کیپد عددی که نشون میده با عددهای کیپد واقعی فرق داره نمی تونم رمز رو وارد کنم .اگر برنامه رو هم تغییر بدم خوب روی میکرو فرق میکنه و دوباره همه چی بهم میریزه :sad:
    حالا من چی کار کنم ؟؟؟؟؟؟؟؟؟؟؟ :angry:

    #2
    برنامه قفل رمز دیجیتال - کمک

    $regfile = "m32def.dat"
    $crystal = 8000000
    $hwstack = 128
    $swstack = 128
    $framesize = 128

    '============================================ ===================
    Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.3 , Rs = Portb.2
    Config Lcdbus = 4
    'Config Lcdmode = Port
    Config Lcd = 16 * 2
    Cursor Off
    Cls

    Config Portc = Input
    Config Pind.7 = Output : Rlay Alias Portd.7 : Rlay = 0

    Enable Interrupts
    Enable Int0
    Config Int0 = Rising
    On Int0 Int11

    '============================================ ===================Dim A As Byte
    Dim Key As Byte
    Dim S As String * 10
    Dim L As Byte
    Dim Code As Eram String * 10
    Dim Firstboot As Eram Byte
    Dim T As String * 10
    '____________________________________________ ___________________________________
    Const One = 12
    Const Two = 13
    Const Three = 14
    Const Four = 8
    Const Five = 9
    Const Six = 10
    Const Seven = 4
    Const Eight = 5
    Const Nine = 6
    Const Ziro = 1
    Const Startt = 0
    Const Stopp = 2
    Const Enter = 3
    Const Esc = 15
    Const F1 = 11
    Const F2 = 7
    '============================================ ===================If Firstboot = 255 Then
    Code = "1234" : Waitms 10
    Firstboot = 240 : Waitms 10
    End If

    Key = 128
    S = ""
    Cls
    Locate 1 , 1 : Lcd "ENTER PASSWORD:"

    Do
    If Key < 16 Then
    Select Case Key
    Case One : S = S + "1"
    Case Two : S = S + "2"
    Case Three : S = S + "3"
    Case Four : S = S + "4"
    Case Five : S = S + "5"
    Case Six : S = S + "6"
    Case Seven : S = S + "7"
    Case Eight : S = S + "8"
    Case Nine : S = S + "9"
    Case Ziro : S = S + "0"
    Case Enter : Gosub Analyzer
    Case Esc : S = ""
    End Select
    '_____________DISPLAY____________________
    L = Len(s)
    Locate 2 , 1
    For A = 1 To L
    Lcd "*"
    Next A
    '_________________________________
    Key = 128
    End If
    If Len(s) > 4 Then
    Cls : Locate 1 , 1 : Lcd "ERR" : Locate 2 , 1 : Lcd "MAX= 4 DIGIT"
    S = ""
    Wait 2
    L = Len(s)
    Cls : Locate 1 , 1 : Lcd "ENTER PASSWORD:"
    Locate 2 , 1
    For A = 1 To L
    Lcd "*"
    Next A
    End If
    Loop
    '============================================ ==================End 'end program
    '============================================ ==================Int11:
    Key = Pinc And &B00001111
    Return

    Analyzer:
    T = Code : Waitms 10
    If S = T Then
    Cls : Locate 1 , 1 : Lcd "OK..." : Locate 2 , 1 : Lcd "TNX"
    Rlay = 1
    Wait 2
    Rlay = 0
    Cls
    Locate 1 , 1 : Lcd "CH PASWORD=ENTER"
    Locate 2 , 1 : Lcd "BACK=STOP"
    Key = 128
    Do
    If Key < 16 Then
    If Key = Enter Then
    Gosub Chang_password
    Cls : Locate 1 , 1 : Lcd "ENTER PASSWORD:" : Goto Endofanalyzer
    Elseif Key = Stopp Then
    Cls : Locate 1 , 1 : Lcd "ENTER PASSWORD:" : Goto Endofanalyzer
    End If
    Key = 128
    End If
    Loop

    Else
    Cls : Locate 1 , 1 : Lcd "ERR" : Locate 2 , 1 : Lcd "WARNING..."
    Wait 2
    Cls : Locate 1 , 1 : Lcd "ENTER PASSWORD:"

    End If
    Endofanalyzer:
    S = ""
    Return

    Chang_password:
    Cls
    Locate 1 , 1 : Lcd "ENTER NEW PAS:"
    S = ""
    Key = 128
    Wait 1
    Do
    If Key < 16 Then
    Select Case Key
    Case One : S = S + "1"
    Case Two : S = S + "2"
    Case Three : S = S + "3"
    Case Four : S = S + "4"
    Case Five : S = S + "5"
    Case Six : S = S + "6"
    Case Seven : S = S + "7"
    Case Eight : S = S + "8"
    Case Nine : S = S + "9"
    Case Ziro : S = S + "0"
    Case Enter :
    Cls : Locate 1 , 1 : Lcd "SAVEING..."
    Code = S : Wait 2 : Goto Endofchpas
    Case Esc : S = ""
    End Select
    '_________________________________
    Locate 2 , 1 : Lcd S ; " "
    '_________________________________
    Key = 128
    End If
    Loop
    Endofchpas:
    Return


















    دیدگاه


      #3
      پاسخ : قفل رمز دیجیتال - کمک

      شماره ای که کی پد بر میگردونه به ترتیب از سمت راست پایین 15 هست تا سمت چپ بالا 0 حالا ببین معادل این ها توی برنامت چیه و بعدش توی پروتئوس اعمال کن.
      الهم عجل لولیک الفرج

      فقط 313 نفر...

      دیدگاه


        #4
        پاسخ : قفل رمز دیجیتال - کمک

        چقدر برنامه طولانی شده قفل رمز چهار رقمی نهایت 20 خط برنامه با قابلیت ذخیره در eeprom میشه نوشت حتی میتونی رمز رو هم تو برنامه عوض کنی اگه خواستی بپو واست بزارم
        بهتره از loockup استفاده کنی راحت تره
        بعد تو پروتوس با استفاده از button کی پد رو درست کن کی پد پروتوس اذیت می کنه کلیدهاش جابه جا هستش

        دیدگاه


          #5
          پاسخ : قفل رمز دیجیتال - کمک

          شما باید از جدول lookup استفاده کنید.اینطوری به راحتی میتونید کدهای صفحه کلید را با توجه به استاندارد صفحه کلیدی که دارید در بیارید.توی help بسکام میتونید طریقه ی استفاده از این دستور رو ببینید.
          اگر مشکلی بود همینجا بپرسید.
          موفق باشید

          دیدگاه


            #6
            پاسخ : قفل رمز دیجیتال - کمک

            نوشته اصلی توسط tofan_2050
            چقدر برنامه طولانی شده قفل رمز چهار رقمی نهایت 20 خط برنامه با قابلیت ذخیره در eeprom میشه نوشت حتی میتونی رمز رو هم تو برنامه عوض کنی اگه خواستی بپو واست بزارم
            بهتره از loockup استفاده کنی راحت تره
            بعد تو پروتوس با استفاده از button کی پد رو درست کن کی پد پروتوس اذیت می کنه کلیدهاش جابه جا هستش
            تشکر از همه دوستان
            مرسی از لطفتون اگه برام برنامه رو بذارید ممنون میشم.

            دیدگاه


              #7
              پاسخ : قفل رمز دیجیتال - کمک

              نوشته اصلی توسط shadi_computer
              تشکر از همه دوستان
              مرسی از لطفتون اگه برام برنامه رو بذارید ممنون میشم.
              واستون میل کردم
              شرمنده دیر شد سوالی داشتی میتونی بپرسی

              دیدگاه


                #8
                پاسخ : قفل رمز دیجیتال - کمک

                سلام،با تشکر از مطالب خوب و مفیدتون.
                یه سوال داشتم:من مدار قفل رمز دیجیتال رو بستم و تست کردم اما مدارم هیچ عکس العملی نشون نمیده!انگار اصلا ولتاژ نداره ولی با ولت متر تست کردم ولتاژ داره اما اصلا هیچ کدوم از المان هام روشن نمیشه!!!!
                میشه راهنماییم کنین؟
                ممنون

                دیدگاه


                  #9
                  پاسخ : قفل رمز دیجیتال - کمک

                  نوشته اصلی توسط fahimeh20
                  سلام،با تشکر از مطالب خوب و مفیدتون.
                  یه سوال داشتم:من مدار قفل رمز دیجیتال رو بستم و تست کردم اما مدارم هیچ عکس العملی نشون نمیده!انگار اصلا ولتاژ نداره ولی با ولت متر تست کردم ولتاژ داره اما اصلا هیچ کدوم از المان هام روشن نمیشه!!!!
                  میشه راهنماییم کنین؟
                  ممنون
                  ما ازکجا بدونیم چی برنامه نوشتید یا چجوری مدار رو بستید؟!!!
                  یه فایلی ،کدی ،شماتیکی. :c :agree: :nerd:
                  به سمت نور خورشید حرکت کن،تو میتونی تابش خورشید رو حس کنی ،حتی اگه کور باشی.
                  (پیش به سوی هدف)

                  دیدگاه

                  لطفا صبر کنید...
                  X