INCLUDE "MODEDEFS.BAS"
KEY_WORD VAR BYTE
KEY_MOED VAR BYTE
KEY VAR WORD
PASS VAR BYTE
LOCK CON 4
'***************************** PASS SELECT CONTRO****************************
'*****************************************************************************
A VAR BYTE 'กำหนดไว้เพื่อเก็บตัวแปล
B VAR BYTE 'กำหนดไว้เพื่อเก็บตัวแปล
G VAR BYTE 'กำหนดไว้เพื่อเก็บตัวแปล
P var byte 'กำหนดไว้เพื่อเก็บตัวแปล
PASS_ENTER VAR BYTE
PASS_ENTER = 4321 'ใส่รหัสให้ตรง ถึงผ่าน"เปลี่ยนได้ตามใจชอบ."
PASS_CONTRO VAR BYTE'............DATA OUTPUT.............
...................
..
KEY_PASS VAR BYTE '.............INPUT KEY WORD...............
.................
pass_all var byte
TRISB=%11111111
PORTB=%11111111
START: P=1
MAIN_PASS1:
PORTA=0
IF PORTB =%00000001 Then
KEY=1 :GOTO SAVE_KEY1
ELSE
IF PORTB =%00000010 Then
KEY=2 :GOTO SAVE_KEY1
ELSE
IF PORTB =%00000011 Then
KEY=3 :GOTO SAVE_KEY1
ELSE
IF PORTB =%00000100 Then
KEY=4 :GOTO SAVE_KEY1
ELSE
IF PORTB =%00000101 then
KEY=5 :GOTO SAVE_KEY1
ELSE
IF PORTB =%00000110 Then
KEY=6 :GOTO SAVE_KEY1
ELSE
IF PORTB =%00000111 Then
KEY=7 :GOTO SAVE_KEY1
ELSE
IF PORTB =%00001000 Then
KEY=8 :GOTO SAVE_KEY1
ELSE
IF PORTB =%00001001 Then
KEY=9 :GOTO SAVE_KEY1
ELSE
IF PORTB =%00001010 THEN
KEY=0 :GOTO SAVE_KEY1
ELSE
IF PORTB=%00001011 Then
KEY="*":gosub Beep_Beep:GOTO ENTER
ELSE
IF PORTB=%00001100 THEN
KEY="#":PAUSE 100
ELSE
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
GOTO MAIN_PASS1
pause 100
'//////////////////////CODE KEY PASSWORD///////////////////////////////////
SAVE_KEY1:gosub Beep_Beep:goto sav_key
sav_key: A[P]=KEY
KEY_ALL=(A[1]*1000)+(A[2]*100)+(A[3]*10)+(A[4]*1) '>>>>>>>>>>>>>>>>>>>
IF P=LOCK THEN ENTER '>>>>>>>>>>>>>>>>>>>
P=P+1 '>>>>>>>>>>>>>>>>>>>
PAUSE 400
GOTO MAIN_PASS1
ENTER: IF KEY_ALL = pass_enter then OUT_LOOP
IF KEY_ALL!= PASS_ENTER THEN ERROR
OUT_LOOP:TOGGLE porta.1 ให้ led ติดครัง และดับอีกครัง เมื่อใส่รหัสถูกอีกครั้งครับ
ERROR :HIGH PORTA.2 เมื่อใส่พลาสเวิสไม่ถูก porta.2ทามงาน หน่วงเวลา 2 "วินาที แล้วส่งไป รอรับการใส่คีย์อีกครั้ง
PAUSE 200
GOTO MAIN_PASS1
END
''''''ไม่รู้ว่าทำาเสร็จยังน่ะครับไงก็ลองเอาไปใช้ดูแล้วกันครับ