0% found this document useful (0 votes)
17 views

Emccard

Uploaded by

Sunno Julian
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views

Emccard

Uploaded by

Sunno Julian
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

using System.Runtime.InteropServices;

namespace _24Cxx

public partial class Form1 : Form

[DllImport("umf.DLL", EntryPoint = "fw_init")]

public static extern Int32 fw_init(Int16 port, Int32 baud);

[DllImport("umf.DLL", EntryPoint = "fw_exit")]

public static extern Int32 fw_exit(Int32 icdev);

[DllImport("umf.DLL", EntryPoint = "fw_rdCardStatus")]

public static extern Int32 fw_rdCardStatus(Int32 icdev, Int32 [] pSt);

[DllImport("umf.DLL", EntryPoint = "fw_read_24cxx")]

public static extern Int32 fw_read_24cxx(Int32 icdev, Int32 address, Int32 rlen, byte[] pDataR);

[DllImport("umf.DLL", EntryPoint = "fw_write_24cxx")]

public static extern Int32 fw_write_24cxx(Int32 icdev, Int32 address, Int32 wlen, byte[] pDataW);
Int32 gl_icdev = -1;

public Form1()

InitializeComponent();

private void Form1_Load(object sender, EventArgs e)

tb_address.Text = "0";

tb_data.Text = "This is a test";

tb_length.Text = tb_data .Text.ToString ().Length .ToString ();

private bool checkReadOpenState()

if (-1 == gl_icdev)

MessageBox.Show("Reader is not opened");

return false;

else

return true;
}

private bool checkCardInsertState()

Int32[] cardSt = new Int32[2];

Int32 opst;

opst = fw_rdCardStatus(gl_icdev, cardSt);

if (opst != 0)

MessageBox.Show("Check card state error");

return false ;

if (0 == cardSt[0])

MessageBox.Show("Found no card insert");

return false ;

return true;

private void btn_open_Click(object sender, EventArgs e)


{

gl_icdev = fw_init(100, 115200);//100->USB port, other value serial port

if (-1 == gl_icdev)

MessageBox.Show("Open reader failed");

return;

MessageBox.Show("Open reader ok");

private void btn_read_Click(object sender, EventArgs e)

int address, length;

byte[] bufData = new byte[1024];

int opst;

if (false == checkReadOpenState())

return;

if(false == checkCardInsertState())

return;
address = int.Parse (tb_address.Text.ToString ());

length = int.Parse(tb_length.Text.ToString());

opst = fw_read_24cxx(gl_icdev, address, length, bufData);

if (opst != 0)

MessageBox.Show("read error");

return;

tb_data.Text = System.Text.Encoding.Default.GetString(bufData);

MessageBox.Show("Read ok");

private void btn_write_Click(object sender, EventArgs e)

int address, length;

byte[] bufData = new byte[1024];

int opst;

if (false == checkReadOpenState())
return;

if (false == checkCardInsertState())

return;

address = int.Parse(tb_address.Text.ToString());

length = int.Parse(tb_length.Text.ToString());

bufData = System.Text.Encoding.Default.GetBytes(tb_data.Text.ToString());

opst = fw_write_24cxx(gl_icdev, address, length, bufData);

if (opst != 0)

MessageBox.Show("Write error");

return;

MessageBox.Show("Write ok");

private void tb_data_TextChanged(object sender, EventArgs e)

tb_length.Text = tb_data.Text.ToString().Length.ToString();

}
}

You might also like