⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sample.frm

📁 控制mifare读卡器
💻 FRM
📖 第 1 页 / 共 3 页
字号:
    st = rf_get_status(ByVal icdev, hardver)
    If st <> 0 Then
        List1.AddItem "Call rf_get_status() error.Exit!"
        Exit Sub
    End If
 
    st = rf_srd_snr(ByVal icdev, 16, ser)
    If st <> 0 Then
        List1.AddItem "Call rf_srd_snr() error.Exit!"
        Exit Sub
    End If
    
    st = lib_ver(libver)
    If st <> 0 Then
        List1.AddItem "Call lib_ver() error.Exit!"
        Exit Sub
    End If
 
    'Read/Write eeprom
    eepromdata = "I Am Sailing,Are You?"
    st = rf_swr_eeprom(ByVal icdev, 0, 20, ByVal eepromdata)
    If st <> 0 Then
        List1.AddItem "Call rf_swr_eeprom() error.Exit!"
        Exit Sub
    End If

    st = rf_srd_eeprom(ByVal icdev, 0, 20, data32)
    If st <> 0 Then
        List1.AddItem "Call rf_srd_eeprom() error.Exit!"
        Exit Sub
    End If
 
    'Data Encrypt
    st = rf_encrypt("12345678", "abcdefghabcdefgh", 16, ptrdest)
    If st <> 0 Then
        List1.AddItem "Call rf_encrypt() error.Exit!"
        Exit Sub
    End If

    st = rf_decrypt("12345678", ptrdest, 16, ptrsource)
    If st <> 0 Then
        List1.AddItem "Call rf_encrypt() error.Exit!"
        Exit Sub
    End If

    'Control by computer
    st = rf_ctl_mode(ByVal icdev, 0)
    If st <> 0 Then
        List1.AddItem "Call rf_ctl_mode(0) error.Exit!"
        Exit Sub
    End If

    st = rf_setbright(ByVal icdev, 6)
    If st <> 0 Then
        List1.AddItem "Call rf_setbright() error.Exit!"
        Exit Sub
    End If

    'Display 8.8.888888
    displaydata(0) = &H8 + &H80
    displaydata(1) = &H8
    displaydata(2) = &H8
    displaydata(3) = &H8
    displaydata(4) = &H8
    displaydata(5) = &H8
    displaydata(6) = &H8
    displaydata(7) = &H8
    st = rf_disp8(ByVal icdev, 8, displaydata(0))
    If st <> 0 Then
        List1.AddItem "Call rf_disp8() error.Exit!"
        Exit Sub
    End If


    'Display time
    st = rf_ctl_mode(ByVal icdev, 1)
    If st <> 0 Then
        List1.AddItem "Call rf_ctl_mode(1) error.Exit!"
        Exit Sub
    End If

    st = rf_disp_mode(ByVal icdev, 1)
    If st <> 0 Then
        List1.AddItem "Call rf_disp_mode(1) error.Exit!"
        Exit Sub
    End If

    'Read/Set time
    st = rf_gettimehex(ByVal icdev, timebuff)
    If st <> 0 Then
        List1.AddItem "Call rf_gettimehex() error.Exit!"
        Exit Sub
    End If

    time = timebuff
    st = rf_settimehex(ByVal icdev, ByVal time)
    If st <> 0 Then
        List1.AddItem "Call rf_settimehex() error.Exit!"
        Exit Sub
    End If

    st = rf_beep(ByVal icdev, 20)
    If st <> 0 Then
        List1.AddItem "Call rf_beep() error.Exit!"
        Exit Sub
    End If
 
    List1.AddItem "Device Function OK !"
End Sub

Private Sub M1_exit_Click()
    quit
    Unload Form1
End Sub

Private Sub M1_high_Click()
    address = 5
    cardmode = 1
    sector = 3
    data32 = "1234567890abcdef1234567890abcdef12345"
    st = rf_HL_writehex(ByVal icdev, cardmode, address, Snr, ByVal data32)
    If st <> 0 Then
        List1.AddItem "Call rf_HL_writehex() error.Exit!"
        Exit Sub
    End If

    st = rf_HL_readhex(ByVal icdev, cardmode, address, Snr, databuff32, Rsnr)
    If st <> 0 Then
        List1.AddItem "Call rf_HL_readhex() error.Exit!"
        Exit Sub
    End If

    st = rf_HL_initval(ByVal icdev, cardmode, sector, wvalue, Snr)
    If st <> 0 Then
        List1.AddItem "Call rf_HL_initval() error.Exit!"
        Exit Sub
    End If

    st = rf_halt(ByVal icdev)
    If st <> 0 Then
        List1.AddItem "Call rf_halt() error.Exit!"
        Exit Sub
    End If
 
    st = rf_HL_increment(ByVal icdev, cardmode, sector, 20, Snr, rvalue, Rsnr)
    If st <> 0 Then
        List1.AddItem "Call rf_HL_increment() error.Exit"
        Exit Sub
    End If
  
    st = rf_HL_decrement(ByVal icdev, cardmode, sector, 10, Snr, rvalue, Rsnr)
    If st <> 0 Then
        List1.AddItem "Call rf_HL_decrement() error.Exit!"
        Exit Sub
    End If
    List1.AddItem "HL Function OK !"
End Sub

Private Sub M1_init_Click()
    Snr = 0
    Rsnr = 0
    loadmode = 0
    sector = 2
    address = 9
    wvalue = 1000

    If icdev < 0 Then
        icdev = rf_init(0, 9600) 'Com1
    End If
    If icdev < 0 Then
        List1.AddItem "Call rf_init() error.Exit!"
        Exit Sub
    End If

    akey(0) = &HFF
    akey(1) = &HFF
    akey(2) = &HFF
    akey(3) = &HFF
    akey(4) = &HFF
    akey(5) = &HFF

    For sector = 0 To 15
        st = rf_load_key(ByVal icdev, loadmode, sector, akey(0))
        If st <> 0 Then
            List1.AddItem "Call rf_load _key() error.Exit!"
            Exit Sub
        End If
    Next
    
    'hexkey = "FFFFFFFFFFFF"
    'st = rf_load_key_hex(ByVal icdev, loadmode, sector, ByVal hexkey)
    'If st <> 0 Then
        'List1.AddItem "Call rf_Load_key_hex() error.Exit!"
        'Exit Sub
    'End If
    
    st = rf_beep(ByVal icdev, 20)
    If st <> 0 Then
        List1.AddItem "Call rf_beep() error.Exit!"
        Exit Sub
    End If

    List1.AddItem "Initalize OK !"
End Sub

Private Sub ML_comm_Click()
    address = 2
    loadmode = 0
    cardmode = 1 '
    st = rf_card(ByVal icdev, cardmode, Snr)
    If st <> 0 Then
        ML_label.Caption = "Call rf_card() error.Exit!"
        Exit Sub
    End If

    st = rf_authentication_2(ByVal icdev, loadmode, 0, 0)
    If st <> 0 Then
        ML_label.Caption = "Call rf_authentication_2() error.Exit!"
        Exit Sub
    End If
  
    data16 = "1234"     'write 4 byte
    st = rf_write(ByVal icdev, address, ByVal data16)
    If st <> 0 Then
        ML_label.Caption = "Call rf_write() error.Exit!"
        Exit Sub
    End If
 
    data16 = "5678"     'write 4 byte
    st = rf_write(ByVal icdev, address + 1, ByVal data16)
    If st <> 0 Then
        ML_label.Caption = "Call rf_write() error.Exit!"
        Exit Sub
    End If

    st = rf_read(ByVal icdev, address, databuff16) ' 8 byte valid
    If st <> 0 Then
        ML_label.Caption = "Call rf_read() error.Exit!"
        Exit Sub
    End If

    st = StrComp("12345678", Mid(databuff16, 1, 8))
    If st <> 0 Then
        ML_label.Caption = "R/W compare error.Exit!"
        Exit Sub
    End If

    ' value operating
    mlwvalue = 100
    st = rf_initval_ml(ByVal icdev, ByVal mlwvalue)
    If st <> 0 Then
        ML_label.Caption = "Call rf_initval_ml() error.Exit!"
        Exit Sub
    End If
 
    st = rf_readval_ml(ByVal icdev, mlrvalue)
    If st <> 0 Then
        ML_label.Caption = "Call rf_readval_ml() error.Exit!"
        Exit Sub
    End If
 
    st = rf_decrement_transfer(ByVal icdev, 0, 20)
    If st <> 0 Then
        ML_label.Caption = "Call rf_decrement_transfer() error.Exit!"
        Exit Sub
    End If

    st = rf_readval_ml(ByVal icdev, mlrvalue)
    If st <> 0 Then
        ML_label.Caption = "Call rf_readval_ml() error.Exit!"
        Exit Sub
    End If

    st = rf_halt(ByVal icdev)
    If st <> 0 Then
        ML_label.Caption = "Call rf_halt() error.Exit!"
        Exit Sub
    End If

    ML_label.Caption = "Card Function OK !"
End Sub

Private Sub ML_device_Click()
    st = rf_get_status(ByVal icdev, hardver)
    If st <> 0 Then
        List1.AddItem "Call rf_get_status() error.Exit!"
        Exit Sub
    End If

    st = rf_srd_snr(ByVal icdev, 16, ser)
    If st <> 0 Then
        ML_label.Caption = "Call rf_srd_snr() error.Exit!"
        Exit Sub
    End If

    st = lib_ver(libver)
    If st <> 0 Then
        ML_label.Caption = "Call lib_ver() error.Exit!"
        Exit Sub
    End If
 
    'Read/Write eeprom
    eepromdata = "I Am Sailing,Are You?"
    st = rf_swr_eeprom(ByVal icdev, 0, 25, ByVal eepromdata)
    If st <> 0 Then
        ML_label.Caption = "Call rf_swr_eeprom() error.Exit!"
        Exit Sub
    End If

    st = rf_srd_eeprom(ByVal icdev, 0, 25, data32)
    If st <> 0 Then
        ML_label.Caption = "Call rf_srd_eeprom() error.Exit!"
        Exit Sub
    End If

    'Data encrypt
    st = rf_encrypt("12345678", "abcdefghabcdefgh", 16, ptrdest)
    If st <> 0 Then
        ML_label.Caption = "Call rf_encrypt() error.Exit!"
        Exit Sub
    End If

    st = rf_decrypt("12345678", ptrdest, 16, ptrsource)
    If st <> 0 Then
        ML_label.Caption = "Call rf_encrypt() error.Exit!"
        Exit Sub
    End If

    'Control by computer
    st = rf_ctl_mode(ByVal icdev, 0)
    If st <> 0 Then
        ML_label.Caption = "Call rf_ctl_mode(0) error.Exit!"
        Exit Sub
    End If

    st = rf_setbright(ByVal icdev, 6)
    If st <> 0 Then
        ML_label.Caption = "Call rf_setbright() error.Exit!"
        Exit Sub
    End If

    'Display 8.7654321
    displaydata(0) = &H8 Or &H80
    displaydata(1) = &H7
    displaydata(2) = &H6
    displaydata(3) = &H5
    displaydata(4) = &H4
    displaydata(5) = &H3
    displaydata(6) = &H2
    displaydata(7) = &H1
    st = rf_disp8(ByVal icdev, 8, displaydata(0))
    If st <> 0 Then
        ML_label.Caption = "Call rf_disp8() error.Exit!"
        Exit Sub
    End If

    'Control by reader
    st = rf_ctl_mode(ByVal icdev, 1)
    If st <> 0 Then
        ML_label.Caption = "Call rf_ctl_mode(1) error.Exit!"
        Exit Sub
    End If

    'Display Date
    st = rf_disp_mode(ByVal icdev, 0)
    If st <> 0 Then
        ML_label.Caption = "Call rf_disp_mode(0) error.Exit!"
        Exit Sub
    End If

    'Read/Set time
    st = rf_gettimehex(ByVal icdev, timebuff)
    If st <> 0 Then
        ML_label.Caption = "Call rf_gettimehex() error.Exit!"
        Exit Sub
    End If

    time = timebuff
    st = rf_settimehex(ByVal icdev, ByVal time)
    If st <> 0 Then
        ML_label.Caption = "Call rf_settimehex() error.Exit!"
        Exit Sub
    End If

    st = rf_beep(ByVal icdev, 20)
    If st <> 0 Then
        ML_label.Caption = "Call rf_beep() error.Exit!"
        Exit Sub
    End If

    ML_label.Caption = "Device Function OK !"
End Sub

Private Sub ML_exit_Click()
    quit
    Unload Form1
End Sub

Private Sub ML_init_Click()
    Snr = 0
    loadmode = 0
    wvalue = 1000
    If icdev < 0 Then
        icdev = rf_init(0, 9600) 'Com1
    End If
    
    If icdev < 0 Then
        ML_label.Caption = "Call rf_init() error.Exit!"
        Exit Sub
    End If

    hexkey = "ffffffffffff"
    st = rf_load_key_hex(ByVal icdev, loadmode, 0, ByVal hexkey)
    If st <> 0 Then
        ML_label.Caption = "Call rf_Load_key_hex() error.Exit!"
        Exit Sub
    End If
    ML_label.Caption = "Initalize OK!"
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -