2014-12-29 114 views
0

我正在與食堂管理項目(公司)合作。我想通過他們的身份證在使用Rfid閱讀器時對用戶進行身份驗證。我瀏覽了幾個網站,但他們不符合我的要求。 我的問題是,我無法從放在Rfid閱讀器上的ID卡中提取序列號。任何人。 PLZ幫助我與此..我與Visual Studio 2012(Windows應用程序)和我使用的語言是C#。 我的代碼如下:從RFID閱讀器提取數據

private void button1_Click(object sender, EventArgs e) 
{ 
    RFID = new SerialPort(); 
    RFID.PortName = "COM1"; 
    RFID.BaudRate = 9600; 
    RFID.DataBits = 8; 
    RFID.Parity = Parity.None; 
    RFID.StopBits = StopBits.One; 
    RFID.Handshake = Handshake.None; 

    RFID.Open(); 
    RFID.DtrEnable = true; 

    RFID.DataReceived += new SerialDataReceivedEventHandler(RFID_DataReceived); 
} 
private void RFID_DataReceived(object sender, SerialDataReceivedEventArgs e) 
{ 
    String data = RFID.ReadExisting(); 
    label8.Text += data; 
} 
+0

和問題是什麼?有沒有例外? – cyberhubert

+0

不..沒有例外。但label8.text保持空白。端口打開成功,我測試了它。但不能提取數據.. – avch

+0

有沒有人可以回答我的問題???我m卡住了..任何人plz幫助我 – avch

回答

0

基於串行通信我從來沒有寫過任何東西,但可以試着幫你,因爲沒有更好的選擇:)

閱讀有關SerialPort.DataReceived事件MS文檔(http://msdn.microsoft.com/en-us/library/system.io.ports.serialport.datareceived%28v=vs.110%29.aspx)我有以下犯罪嫌疑人:

  1. DataReceived事件檢索上引發輔助線程那麼,是事件叫什麼?你是否同步線程?

  2. 上面鏈接的頁面包含一些簡單的例子,它將接收到的數據打印到控制檯上。請嘗試構建它並運行。它工作嗎?如果沒有,您可能會遇到硬件,設備驅動程序或設備設置問題。

希望這有助於

+0

非常感謝你的建議......但我又面臨一個問題。我的RFID_DataReceived方法未被調用。仍然無法從串口讀取數據.. – avch

+0

您是否嘗試過鏈接中的示例代碼?它工作嗎? – cyberhubert

+0

是的,我已經試過該代碼..但沒有用..我沒有得到一個單一的字符作爲輸出。 – avch