1. 程式人生 > >(6)mifare卡讀寫器開發心得『轉』--整理重發貼

(6)mifare卡讀寫器開發心得『轉』--整理重發貼

發信人:qishi00 發表時間:2003-02-20 11:18:32
--------------------------------------------------------------------------------
各位大俠:
    本人在設定卡密碼時遇到下列情況:
儲存控制,另c1x c2x c3x =110
           c1x3 c2x3 c3x3 =011
拼出來的儲存控制是 08 77 8f 69 ,第四位元組好像沒用,是我隨便寫的
A密碼我設定成 aa aa aa aa aa aa,B密碼設定成 bb bb bb bb bb bb
結果A密碼可以驗證通過,並且可以進行讀卡以及減值操作。
但是B密碼就一直驗證不通過。
所以我用預設的儲存控制: FF 07 80 69 ,此時密碼B可讀,目的是想看讀出的是否跟寫進去的是否一致。
結果,讀出來的B密碼是 BB BB BB BB BB B5,
有哪位知道是什麼問題嗎?
     

發信人:
qishi00 發表時間:2003-02-20 11:28:11
--------------------------------------------------------------------------------
然後我回過頭用bb bb bb bb bb b5的密碼去驗證之前B密碼不可讀的塊,則又驗證不通過。

發信人:baysky 發表時間:2003-02-20 14:37:57
--------------------------------------------------------------------------------
不知道有誰用過 Philips RF632, 用SAM認證,不知道怎麼寫程式,哪位大俠能指點一下嗎? 專案需要

發信人:
tony0418 發表時間:2003-02-21 10:42:35
--------------------------------------------------------------------------------
   我最近測試北京握奇公司的timecos卡,有他們提供的源程式,但是測試結果不理想,請教老手指點一下讀寫要注意的問題,如果有測試過的 源程式就更好,謝謝!!!

發信人:hjmc 發表時間:2003-02-21 11:17:06
--------------------------------------------------------------------------------

可是哪裡有13.56M晶振?
我使用13.5M根本不讀卡,
市面上又沒有13.56M賣?

發信人:cxshj 發表時間:2003-02-21 12:12:04
--------------------------------------------------------------------------------
不知是什麼原理

發信人:StevenCh 發表時間:2003-02-21 17:32:52
--------------------------------------------------------------------------------
作為Philips,我們歡迎大家開發MF RC500,其實我們的資料在網站很容易下載,而且經過我們不斷的PUSH,很多以前需要密碼的資料現在已經公開。如果大家需要帶密碼的文件,那需要簽訂NDA,手續很簡單,請大家和我聯絡。
謝謝大家!
下載資料網站:http://www.semiconductors.com/markets/identification/customer/download/

發信人:StevenCh 發表時間:2003-02-21 17:35:24
--------------------------------------------------------------------------------
作為Philips,我們歡迎大家開發MF RC500,其實我們的資料在網站很容易下載,而且經過我們不斷的PUSH,很多以前需要密碼的資料現在已經公開。如果大家需要帶密碼的文件,那需要簽訂NDA,手續很簡單,請大家和我聯絡。
謝謝大家!
下載資料網站:http://www.semiconductors.com/markets/identification/customer/download/

發信人:tpu 發表時間:2003-02-21 17:40:34
--------------------------------------------------------------------------------
我有一個模組,用一個PIC微控制器加上外圍電路,可以讀TypeA和TypeB的,以及ISO-15693卡。老外作的。

發信人:StevenCh 發表時間:2003-02-21 17:40:36
--------------------------------------------------------------------------------
Philips確實有Light卡,但現在已經基本停產,Ultra Light是新的替代產品。
Handf如果感興趣,可以和我聯絡,我提供你資料

發信人:zbs9013 發表時間:2003-02-24 17:06:26
--------------------------------------------------------------------------------
我諮詢過華虹的工程師,好象不行,雖然都符合ISO14443標準,但是因為內部的加密演算法不一樣,而且該部分沒有對使用者的相應介面,所以無法統一。

發信人:fmc 發表時間:2003-02-25 08:42:22
--------------------------------------------------------------------------------
請教開發過RC500的前輩,你們從代理那裡拿到的程式編譯能通過嗎!要做些什麼修改??我是在偉福裡編譯的,提示有錯誤:SPACE ADDRESS OVERLOW,還有volatile是定義什麼變數用的,謝謝!

發信人:handf 發表時間:2003-02-25 11:49:13
--------------------------------------------------------------------------------
發信人:handf 發表時間:2003-02-25 11:54:01
--------------------------------------------------------------------------------
不好意思現在才看到,剛才手誤。有客戶在用light卡,為了能更好的做支援,所以也希望能夠對這方面做一些測試。如果可以的話可將相關文件發到我的郵箱裡,您是上海飛利浦的steven chang吧。
我的郵箱:[email protected],非常感謝!

發信人:yaoji104 發表時間:2003-02-25 18:08:21
--------------------------------------------------------------------------------
在demo的程式: 函式M500piccvlue 中的引數定義了一個 uchar的指標,這個指標指向了一個4位元組的陣列。這4 bytes是何意義?增加量、減少量還是另有其他意思。謝謝

發信人:jiangbo123 發表時間:2003-02-26 09:14:49
--------------------------------------------------------------------------------
要注意的是好像只有低31bit參加運算,最高bit無效。

發信人:yaoji104 發表時間:2003-02-26 09:25:06
--------------------------------------------------------------------------------
只有低31個bits參加運算,最高位無效--不懂??
還有這個函式的計算結果只能存在card`s internal register,not EEPROM。用什麼方法把結果寫進EEPROM呢。?

發信人:jiangbo123 發表時間:2003-02-26 09:38:15
--------------------------------------------------------------------------------
用transfer和restore實現register與eeprom之間的資料傳遞。

發信人:StevenCH 發表時間:2003-02-26 10:12:13
--------------------------------------------------------------------------------
你說的完全正確,其實ISO/IEC 14443 A Part 3只定義了從REQUEST到SELECT指令,AUTHENTICATION,READ,WRITE,DEC,INC,RESTORE,TRANSFER等都是APPLICATION端的應用。
華虹和MIFARE應該在AUTHENTICATION有差別,加密演算法也是有國際標準的,但具體實現可以不同,所以你可以得到序列號,但讀不到其中的資料。

發信人:StevenCH 發表時間:2003-02-26 10:24:26
--------------------------------------------------------------------------------
021-63541088 ext.5973

發信人:zbs9013 發表時間:2003-02-26 12:40:24
--------------------------------------------------------------------------------
加密演算法好象都是DES的,但肯定金鑰不同,所以肯定讀不出來資料。

發信人:zbs9013 發表時間:2003-02-27 12:48:45
--------------------------------------------------------------------------------
有誰開發過非接觸式CPU卡,可以聊聊嗎?

發信人:cwcyxy 發表時間:2003-02-27 14:52:24
--------------------------------------------------------------------------------
發信人:zbs9013 發表時間:2003-02-27 17:00:38
--------------------------------------------------------------------------------
請問老兄有沒有相關的資料呢,給我發點,讓我見識見識啊,謝謝了,
[email protected]

發信人:cwcyxy 發表時間:2003-02-28 08:27:28
--------------------------------------------------------------------------------
request ,anticoll和select與mifare1一樣,其他的參看
ISO14443-3/4。不明白時動動腦子。

發信人:wood1 發表時間:2003-03-02 10:51:48
--------------------------------------------------------------------------------

發信人:whf_27 發表時間:2003-03-02 21:21:37
--------------------------------------------------------------------------------
我在RC500晶片復位後,立即讀取內部0x10-0x2f的暫存器值,具體如下所示:
0x00 0x58 0x3F 0x3F 0x19 0x13 0x00 0x00
0x00 0x73 0x08 0xAD 0xFF 0x00 0x41 0x08
0x00 0x06 0x03 0x63 0x63 0x00 0x00 0x05
0x00 0x08 0x07 0x06 0x0A 0x02 0x05 0x05
發現在地址為0x27、0x2e、0x2f處本來為Preset值(0x00),可是現在為0x05,我對此晶片除了復位和寫page register外,什麼也沒有操作過?幾個晶片情況都是這樣,請問這是那邊出了問題?請各位大俠不吝指點。-是不是我燒晶片了? :(

發信人:srz 發表時間:2003-03-03 08:30:32
--------------------------------------------------------------------------------
發信人:whf_27 發表時間:2003-03-03 10:06:28
--------------------------------------------------------------------------------
在jiangbo123帖子裡面說把以下程式的第一個while註釋掉:
while (((ReadRawIO(RegCommand) & 0x3F) != 0x3F) && !T2IR);
   // while reset sequence in progress
while ((ReadRawIO(RegCommand) & 0x3F) && !T2IR);
我認為這不是一概而論的。當系統比較快的時候,沒有第一句,可能就會導致RC500沒有復位完就開始往裡面寫資料了。會有出錯的可能。(用模擬器單步除錯時,第一句應該註釋掉的,否則會有問題。)---個人觀點,僅供參考,因為我還沒有除錯成功呢。:)

發信人:longfree 發表時間:2003-03-04 23:35:34
--------------------------------------------------------------------------------
本人在開發MF RC500中遇到用KEYA驗證後讀資料塊完全正確,但用KEYB驗證正確後,讀資料塊發生錯誤:接收資料長度位1而非16,何故?請各位大俠指教。
    另有:是否有直接讀寫值塊的命令?我是讀資料塊加校驗(寫同理),可行否?
發信人:cxshj 發表時間:2003-03-05 11:20:27
--------------------------------------------------------------------------------
http://www.insidefr.com/products/couplers_m210.htm

發信人:cxshj 發表時間:2003-03-05 13:01:20
--------------------------------------------------------------------------------
原來為:
#define OSC_FREQ                22118400L
#define RCAP2_50us             65536L - OSC_FREQ/240417L
#define RCAP2_1ms              65536L - OSC_FREQ/12021L
改為11。0592應是多少。
我改了,但怕改錯,大夥是如何改的。

發信人:cwcyxy 發表時間:2003-03-05 13:27:13
--------------------------------------------------------------------------------
發信人:cxshj 發表時間:2003-03-05 13:52:20
--------------------------------------------------------------------------------
我的板子有是會沒有波形,我怕時鐘算錯,所以就來問大夥了

發信人:whf_27 發表時間:2003-03-05 15:43:58
--------------------------------------------------------------------------------
改的時候,修改預定義語句,不要在程式中直接一一修改(難免有遺漏的嗎 ^_^)#define OSC_FREQ  22118400L
改快沒有問題的。由於demo程式採用中斷和定時方式,速度快,不會有問題的。(只要滿足RC500介面的讀寫時序)。
改慢了,就要小心了,譬如復位時查詢0x3f復位控制命令語句可能會導致永遠跳不出來(此時可以註釋掉)。其它地方基本沒有問題的。
發信人:cxshj 發表時間:2003-03-05 16:00:33
--------------------------------------------------------------------------------
while (((ReadRawIO(RegCommand) & 0x3F) != 0x3F) && !T2IR);
while ((ReadRawIO(RegCommand) & 0x3F) && !T2IR);
在這條語句裡是否要加狗啊

發信人:whf_27 發表時間:2003-03-05 17:08:34
--------------------------------------------------------------------------------
憑感覺可以了。上面不是已經有定時了嗎。(T2IR=1時退出)

發信人:longfree 發表時間:2003-03-05 21:51:28
--------------------------------------------------------------------------------
,但用KEYB驗證正確後,讀資料塊發生錯誤:接收資料長度位1而非16,何故?請各位大俠指教。

發信人:longfree 發表時間:2003-03-05 21:58:26
--------------------------------------------------------------------------------
,是IC卡的安全機制引起的,與讀卡器無關.

發信人:longfree 發表時間:2003-03-05 23:38:38
--------------------------------------------------------------------------------
在Demo程式中,KEYA密碼和KEYB密碼是分別應用的,也就是KEYA密碼使用的是32個密碼中的0,2,4,...14,而KEYB密碼使用的是1,3,5,...15.但實際上32個密碼沒有分類,對KEYA及KEYB都能認證.因此程式中
   unsigned short e2addr = 0x80 key_sector * 0x18;
   unsigned char *e2addrbuf = (unsigned char*)&e2addr;
   
   if (auth_mode == PICC_AUTHENT1B)
      e2addr = 12; // key B offset   
的 key_sector * 0x18 和 e2addr = 12 是有意分成兩類密碼.
如改為
   unsigned short e2addr = 0x80 key_sector * 0x0b; // 0<=key_sector<=31
   unsigned char *e2addrbuf = (unsigned char*)&e2addr;
   
而取消下兩行
   if (auth_mode == PICC_AUTHENT1B)
      e2addr = 12; // key B offset   
則能用任一EEPROM密碼來認證KEYA或KEYB
不知是否合適,請各位發表意見.

發信人:longfree 發表時間:2003-03-05 23:44:53
--------------------------------------------------------------------------------
在剛才的帖子中  
   unsigned short e2addr = 0x80 key_sector * 0x0b; // 0<=key_sector<=31
   unsigned char *e2addrbuf = (unsigned char*)&e2addr;
   
應為
   unsigned short e2addr = 0x80 key_sector * 0x0c; // 0<=key_sector<=31
   unsigned char *e2addrbuf = (unsigned char*)&e2addr;
0x0b改為0x0c,輸入有誤!
   
發信人:cwcyxy 發表時間:2003-03-06 11:26:58
--------------------------------------------------------------------------------
keyA,keyB的功能就在於此。

發信人:zhbd 發表時間:2003-03-06 21:14:05
--------------------------------------------------------------------------------
請問:  在demo程式中,通過哪個函式來選中mifare卡中的某個扇區的四個塊呢?
就是說,我第一次對某個扇區block 0進行讀寫等操作,第二次對這個扇區block 1讀寫,第三次修改這個扇區密碼A .我知道通過存取控制能辦到,但具體的實現方法在程式中應該怎麼做呀?  從上班到現在,在程式中也沒找出來,實在想不出從哪下手, 還請各位指教.
還有, 對卡進行讀寫操作也是奇次失敗,偶次成功(jiangbo123和boilink都提到過)
從本論壇裡我獲取了很多資訊,在此特別感謝大家.
  

發信人:longfree 發表時間:2003-03-06 22:44:59
--------------------------------------------------------------------------------
在每次選卡時,都執行一次
      status1 = M500PcdConfig();
再執行
      if (status1==MI_OK)
          status1 = M500PiccRequest(PICC_REQALL, tt1);
                
      if (status1==MI_OK)
          status1 = M500PiccAnticoll(0,cardserialno);
      if (status1==MI_OK)
          status1=M500PiccSelect(cardserialno,sak1);
就沒問題了.
發信人:longfree 發表時間:2003-03-06 22:56:56
--------------------------------------------------------------------------------
1.選卡,得卡SN
2.密碼驗證,對SN,密碼,BLOCK:
     status1=M500PiccAuthKey(PICC_AUTHENT1B,cardserialno,ls0,Block);
   BLOCK指定了某一扇區的資料塊編號,此時BLOCK可為此扇區的任一資料塊編號,即可認證整個扇區,下一步整個扇區的資料塊操作都可進行
3.讀、寫操作

發信人:yjrshhic 發表時間:2003-03-07 11:49:13
--------------------------------------------------------------------------------
請教個問題。RC500的晶片在對什麼暫存器操作時容易損壞?要注意點什麼問題?請各位高手指教!

發信人:jiangbo123 發表時間:2003-03-07 12:50:38
--------------------------------------------------------------------------------
可以參見以前的帖子

發信人:jiangbo123 發表時間:2003-03-07 12:53:30
--------------------------------------------------------------------------------
比如KEYA(KEYB)許可權的問題,尋卡一次成功一次不成功的問題。

發信人:rfcard 發表時間:2003-03-08 19:22:43
--------------------------------------------------------------------------------
rc500技術轉讓,詳情請見:www.rf-card.com

發信人:yjrshhic 發表時間:2003-03-10 12:12:26
--------------------------------------------------------------------------------
請問有沒有philips提供的demo程式嗎?能發一份給我嗎?謝謝

發信人:cxshj 發表時間:2003-03-12 14:51:00
--------------------------------------------------------------------------------
不知此M500PiccRead函式有什麼特別的地方

發信人:cxshj 發表時間:2003-03-12 16:38:19
--------------------------------------------------------------------------------
呼叫完M500PiccRead後還正常,可再呼叫M500PiccHalt函式復位了。
搞不懂

發信人:sheng 發表時間:2003-03-13 16:16:49
--------------------------------------------------------------------------------
發信人:jiangbo123 發表時間:2003-03-13 21:35:55
--------------------------------------------------------------------------------
發信人:cxshj 發表時間:2003-03-14 14:34:13
--------------------------------------------------------------------------------
發信人:jack_chen 發表時間:2003-03-14 14:52:00
--------------------------------------------------------------------------------
我們是飛環電子--philips一級代理
剛才有人要資料,請與我們聯絡,只要簽訂保密協議,就可以免費提供給你,謝謝!
028-85438805
Mr Chen

發信人:srz 發表時間:2003-03-15 10:15:30
--------------------------------------------------------------------------------
SAK幀包括1位元組SAK及2個位元組CRC,那SAK資料是多少?

發信人:qgque 發表時間:2003-03-15 21:14:40
--------------------------------------------------------------------------------
MCM200、MCM500和MF RC500有什麼區別?

發信人:qgque 發表時間:2003-03-15 21:25:59
--------------------------------------------------------------------------------
Mifare系列卡包括那些卡?他們的效能引數是什麼?哪裡有資料下載啊?

發信人:qgque 發表時間:2003-03-16 17:37:20
--------------------------------------------------------------------------------
能把RC500的程式碼和Reader的PCB資料發給我嗎?非常感謝!!!

發信人:jiangbo123 發表時間:2003-03-17 09:39:56
--------------------------------------------------------------------------------
發信人:jack_chen 發表時間:2003-03-17 10:35:58
--------------------------------------------------------------------------------
我發現這裡面有些人動不動就開口問,為什麼不自己去先動手看看資料再說呢??是不是別人告訴你,比較方便?但是很多人還是有自己的工作阿,另外RC500等資料是保密的,我知道你是沒法看,但是基本的效能指標在很多地方都有辦法找到,最好的方法就是多用用搜索器,比如google等,另外S50,70等晶片資料也是開放的阿,都可以看的,多看看,想想再問,如果純粹找別人來問,那我請問你的價值何在?自學能力也是很重要的!

發信人:jiangbo123 發表時間:2003-03-17 12:18:41
--------------------------------------------------------------------------------
jack_chen是成都飛環電子的嗎?他們可是philips的代理喲。呵呵。

發信人:StevenCH 發表時間:2003-03-17 16:42:16
--------------------------------------------------------------------------------
Dear all,
大家都可以開發RC 500 family的讀卡器。我們的資料都是免費的,可以從philips的網站下載,有些可能是保密的,但只要簽訂NDA就可以得到密碼。你可以聯絡我們的代理 “飛環電子“,當然,你也可以直接聯絡我。[email protected] 021-63541088-5973.
有什麼不明白,儘管打我電話!
資料下載網址:
http://www.semiconductors.philips.com/markets/identification/customer/download/

發信人:StevenCH 發表時間:2003-03-18 13:45:36
--------------------------------------------------------------------------------
4位元組序列號卡(Mifare1 S50,S70),SAK=0X08
7位元組序列號卡(Mifare Ultralight),SAK=0X04

發信人:StevenCH 發表時間:2003-03-18 13:51:54
--------------------------------------------------------------------------------
So many:
Mifare classic:
  - Mifare 1 S50(1k bytes).S70(4k bytes)
  - Mifare Ultralight(512 bits without 3-pass authenfication
  - Mifare Desfire (New product with 3-des co-processor
    inside,supported file operation)
  - Mifare Light( stopped)
Duel interface:
  - Mifare Pro
  - Mifare ProX
  - Smart Mx

發信人:StevenCH 發表時間:2003-03-18 14:07:18
--------------------------------------------------------------------------------
控制條件為
0xFF,0x07,0x80
注意此時Key B 是可讀的,不能作為真正可認證讀寫的key。你會發現用Key B認證是正確的,讀寫總報錯。
要使Key B生效,很簡單,只要把KeyB變為不可讀就好,例如:
0x7F,0x07,0x88
後面的那個0x69位元組是用於: Mifare Application Directory的,可以忽略。

發信人:StevenCH 發表時間:2003-03-18 14:19:59
--------------------------------------------------------------------------------
CM500,CM200是比較老的模組產品,體積很大,功耗較高,價錢大家也知道,MF RC500是全球第一個整合化的單顆讀卡晶片。
從效能來講,CM 500 為10cm,CM200為2.5cm,RC500為10cm,RC500給使用者提供了更自由的應用,尤其在只需要按照ISO 14443 A介面的應用中(使用者自己軟體實現加密)非常簡單。
其它的比較還很多,比如天線匹配不同,EEPROM等等。反正整個結構都變了。
不想寫了,太多了。。。。。。。

發信人:cxshj 發表時間:2003-03-19 11:21:49
--------------------------------------------------------------------------------
發信人:StevenCH 發表時間:2003-03-19 14:27:46
--------------------------------------------------------------------------------
Please take a note two registers value.
0x11 TxControl
0x12 CwConductance

發信人:cxshj 發表時間:2003-03-19 14:59:00
--------------------------------------------------------------------------------
發信人:stevenshao 發表時間:2003-03-19 16:15:15
--------------------------------------------------------------------------------
發信人:cxshj 發表時間:2003-03-19 16:31:07
--------------------------------------------------------------------------------
0x11 TxControl
0x12 CwConductance
兩個標準值應是多少。
0x11 = 0x03
0x12 = 0x36????e

發信人:srz 發表時間:2003-03-19 17:17:03
--------------------------------------------------------------------------------
發信人:StevenCH 發表時間:2003-03-20 15:50:29
--------------------------------------------------------------------------------
Hi,cxshj,
0x11 = 0x58,0x12 = 0x3f 是初始值,在config模組中沒有更改,但在Request中,將其低兩位置位,這個時候可以明顯看到TX1和TX2上有對稱的,相位差180度的波形,你可以通過Test模式來觀察波形。

發信人:StevenCH 發表時間:2003-03-20 16:32:43
--------------------------------------------------------------------------------
發信人:cxshj 發表時間:2003-03-21 15:15:52
--------------------------------------------------------------------------------
讀TxControl(0x11),CwConductance(0x12)的值不是0x58,0x3f,而是0x10,0x12。同樣的程式在其它的板上是正確的,且有波形。
初始化模組時資料亂了,還是晶片已經over了  

發信人:cxshj 發表時間:2003-03-21 15:38:32
--------------------------------------------------------------------------------
原來是一個腳虛焊,555555555

發信人:LYPD96 發表時間:2003-03-21 22:40:15
--------------------------------------------------------------------------------
mifare卡的資料是用MANCHESTER調製還是用FSK調製,或PSK調製?有人知道嗎?[email protected]

發信人:StevenCH 發表時間:2003-03-24 14:39:46
--------------------------------------------------------------------------------
Mifare 完全遵守ISO/IEC 14443 A.
PCD => PICC
ASK 100%
Modified Miller coding
PICC=> PCD
Load Modulation
Machester coding

發信人:DavidQi 發表時間:2003-03-26 14:38:13
--------------------------------------------------------------------------------
我對RC500 對RSTPD 軟體復位後,讀暫存器00-07的內容
80 00 2D 05 00 60 00 01
01 單元 應為 3F ,其他也不全對!復位不正確!!!請朋友指點!我一定會表示謝意。

發信人:mrd180 發表時間:2003-03-26 14:53:28
--------------------------------------------------------------------------------
。。。。。。。。。

發信人:morton 發表時間:2003-03-27 14:19:45
--------------------------------------------------------------------------------
   請問CL632在程式設計時,Config和Reset的區別?
   CL632在程式設計時,需要注意什麼?
   謝謝!

發信人:fyhgod 發表時間:2003-03-28 20:11:02
--------------------------------------------------------------------------------
發信人:msp2001 發表時間:2003-03-29 20:41:04
--------------------------------------------------------------------------------
缺乏這方面的東西。大蝦們幫忙

發信人:cxshj 發表時間:2003-03-31 13:22:35
--------------------------------------------------------------------------------
我的裝置一讀白卡就宕機。寫一點資料後,再讀就不宕機了。奇怪

發信人:jiangbo123 發表時間:2003-03-31 16:04:57
--------------------------------------------------------------------------------
白卡里面的資料除了第0扇區第0塊外都是0,所有的密碼都是6位元組的0xff。你說的情況我覺得是不應該的,可能是其他的錯誤導致的。

發信人:xujie3u 發表時間:2003-04-01 08:46:55
--------------------------------------------------------------------------------
  舊mifare卡能否初始成空白卡,在不知金鑰情況下?

發信人:jiangbo123 發表時間:2003-04-01 11:12:35
--------------------------------------------------------------------------------
先看看文件再來問吧。

發信人:l101_0 發表時間:2003-04-02 11:37:16
--------------------------------------------------------------------------------
能不能給我發一份菲利普的原始碼啊
我的郵箱是[email protected]
非常感謝

發信人:handf 發表時間:2003-04-02 17:23:57
--------------------------------------------------------------------------------
我用的是SLE66CL160S卡,第一步REQB都不行。我查波形沒有問題。包括SOF、05H、00H、00H、CRC2和EOF,現在不能確定的就是CRC初值是什麼。快幫幫我吧,我都快鬱悶死了,資料有不全,全是一些無關緊要的與操作沒有任何幫助的東西。

發信人:tpu 發表時間:2003-04-03 13:17:29
--------------------------------------------------------------------------------
可能是暫存器設定不對.我是這樣設定的:
0x11=0x4b
0x13=0x06
0x14=0x20
0x17=0x23
0x19=0x73
0x1a=0x19
0x1c=0x44
0x1d=0x3e
0x22=0x2c
0x23=0xff
0x24=0xff
可以參考一下.

發信人:handf 發表時間:2003-04-03 17:05:00
--------------------------------------------------------------------------------
我仔細核對了這幾個暫存器的狀態值,沒有問題。我開始懷疑是等待時間不夠長,但是我發現設定到450ms時卡片依然沒有任何響應資料。無奈,卡片不相應的原因會是哪些?tpu兄再麻煩你一下,也請各位高手多指點一下小弟,都快一週了,一點線索也沒有。

發信人:tpu 發表時間:2003-04-04 10:17:02
--------------------------------------------------------------------------------
可能我們的硬體不一樣,引數設定也不同吧。

發信人:wuyuehua 發表時間:2003-04-07 13:15:25
--------------------------------------------------------------------------------
請教jiangbo123:
對M1,密碼B可見時,操作該扇區只須驗證A即可,
而設密碼B不可見後,怎樣操作該扇區()->是驗證A後再接著驗證B嗎?順序如何?   

發信人:jiangbo123 發表時間:2003-04-10 09:24:18
--------------------------------------------------------------------------------
兩者沒有依賴關係,對於A密碼和B密碼,只要給它設定了相應的許可權,以後驗證通過該密碼就可以進行相應許可權的操作了。

發信人:qgque 發表時間:2003-04-10 15:46:08
--------------------------------------------------------------------------------
我現在正在用rc500做讀卡器,想參考一下你的程式碼和PCB,不知可否?謝謝!

發信人:qgque 發表時間:2003-04-10 17:25:02
--------------------------------------------------------------------------------
謝謝stevenCH的回覆!我正在做rc500讀卡器,到時候還有什麼問題還請多多指教!

發信人:avansyslee 發表時間:2003-04-10 22:10:24
--------------------------------------------------------------------------------
天線按照手冊實際即可,很好使用

發信人:jiangbo123 發表時間:2003-04-11 08:43:29
--------------------------------------------------------------------------------
發信人:handf 發表時間:2003-04-11 11:00:00
--------------------------------------------------------------------------------
原來卡片沒反應是因為我的調幅度設定的太小,我改到20%後卡片有應答。但是531返回幀錯誤的資訊,按照資料的描述應該是SOF標示符錯誤,我不知道原因在哪裡,不知道你有沒有碰到過。

發信人:qgque 發表時間:2003-04-14 09:41:48
--------------------------------------------------------------------------------
在MFREG500.h檔案裡0x14處的暫存器巨集定義是這樣的:
#define RegcoderControl 0x14;
但是看MFRC500的電子文件裡0x14處的暫存器應該是RFU,不知道是電子文件錯了還是程式裡面有問題?請指正。

發信人:qgque 發表時間:2003-04-14 09:52:50
--------------------------------------------------------------------------------
同樣的問題在0x3f處也出現:
#define RegTestDigAccess 0x3f;
但電子文件裡0x3f也是RFU
請stevenCH指教。
發信人:qgque 發表時間:2003-04-14 10:05:15
--------------------------------------------------------------------------------
在rc500檔案中
#ifdef __cplusplus
extern "C"
{
#endif
實現什麼功能?
是不是讓程式在c和c 編譯環境下不需改動就能使用?還是其他什麼功能?請指教!

發信人:zhoujj 發表時間:2003-04-14 10:32:47
--------------------------------------------------------------------------------
謝謝,還有如何判斷rc500已經損壞啊?
我是新手

發信人:qgque 發表時間:2003-04-14 16:49:09
--------------------------------------------------------------------------------
#define MI_NOTAGERR  (-1);
這條語句中有必要用括號嗎?直接
#define MI_NOTAGERR   -1;
不行嗎?

發信人:whf_27 發表時間:2003-04-14 16:57:37
--------------------------------------------------------------------------------
我想您說的應該都沒有錯的。但是作為一個優秀的程式設計師編寫的程式不僅僅是能用。還有其它一些要考慮的。無論是程式設計的風格還是思路,都應該往盡善盡美方向發展。
譬如上面的括號一般有沒有都沒有關係,但是加上就不會在某些場合出錯。如
#define dif (65536-a/b)[/#]
..
..
dif*23      // (65536-a/b)*23
如果不加括號,就會成了: 65536- a/b*23
這就是明顯錯的。我認為mifare的example程式寫的還是很好的。無論是風格還是思路,國內一般的硬體程式設計人員還做不到-可能偏頗了。
發信人:qgque 發表時間:2003-04-14 17:03:50
--------------------------------------------------------------------------------
我想明白了,很有道理,謝謝whf_27,希望以後繼續指點!

發信人:tpu 發表時間:2003-04-14 19:10:53
--------------------------------------------------------------------------------
是不是CRC,奇偶校驗等沒有設定好?你可以分析一下讀出的資料,是否是正確的。

相關推薦

(6)mifare開發心得整理

發信人:qishi00 發表時間:2003-02-20 11:18:32-------------------------------------------------------------------------------- 各位大俠:     本人在設定卡密碼時

C#操作明華澳漢M1往扇區塊寫入讀取值小結

    近期因為專案中需要用到往IC卡的扇區塊中寫入值 並讀取值,並且是漢字。官方給的demo示例不是很規範,過程也有很多坑。先總結如下: 1、調整mifareone類中寫入的函式引用 最後一個寫入的文字引數由原 改為:    因為根據幫助文件,寫

T5557|T5567|T5577芯片藍牙RFID||讀卡器HX5577RU-BT在水電行業充值的應用

inf 分享 window bubuko 自動 蜂鳴器 輸入 alt ima HX5577RU-BT低頻藍牙RFID讀寫器|寫卡器|讀卡器是華翔天誠科技研發的一款支持125KHZ低頻RFID芯片卡讀寫設備,采用藍牙4.0通訊模式、支持安卓、蘋果、Windows系

【ALB學習筆記】基於.NET環境的高頻RFID設備的基本操作案例

範例 write load rgs 顯示 職業 ner num cte 基於.NET環境的高頻RFID卡讀寫設備的基本操作案例 廣東職業技術學院 歐浩源 1、引言 RFID高頻卡在我們的日常生活中隨處可見,是物聯網應用中不可或缺的一個重要部分,也是全國職業

sd——sd example閱讀

constant aligned sta beginning pri format lba () sdn 改mss後import example 主要是用fat的函數讀寫sd 1 /*******************************************

Android獲取外接SD路徑

1. 外接SD卡的一些問題 1.1 關於外接SD卡上的讀寫路徑 Android 4.4及以上版本,應用的外接SD卡讀寫路徑被限定在固定路徑上(外接SD卡根路徑/Android/data/包名/files)。 Android4.4以下版本,申請了外接SD卡讀寫許可權的應用在整個

Android 6.0系統檔案出現FileNotFoundException:EACCES (permission denied)解決辦法

先檢查你的AndroidManifest.xml是否已經有讀寫許可權: <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-

RFID技術、RFID電子標籤、

先說下,在目前這家公司做的中介軟體系統中,我負責裝置套件開發,這裡簡稱DK。 本文章的目的,只是介紹下物聯網中RFID無線射頻技術中相關概念,讓初入該行業的,有個基礎的認識。 整個完整的RFID整合應用系統的互動流程 關於讀寫器DK,即裝置套件(使用者軟體應用程式),它

關於 Delphi 中流的使用(6) 用流結構化檔案

unit Unit1; interface uses   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,   Dialogs, StdCtrls; type   TF

STM32CubeMX的SDIO模式下對SD測試(附原始碼)

1.問題描述:使用STM32CubeMX,配置SDIO的4bit模式,對SD卡進行讀寫測試。 2.準備工作: 軟體版本:STM32CubeMX–4.22.0 ;KEIL5 硬體平臺:原子戰艦V3 (1)軟體設定: I. SDIO選擇,這裡選擇4

ZYNQ系統中實現FAT32檔案系統的SD之三 SDK程式設計除錯

匯入到SDK後直接模板生成一個HELLO WORLD專案,之後在XILINX TOOLS-》BOARD SUPPORT PACKAGE SETTING裡面設定選擇XILFFS。 XILFFS各項可以設定引數按照預設,如下圖: 之後修改main函式所在檔案

C#中流的BinaryReader、BinaryWriter,StreamReader、StreamWriter詳解

 問題一:為什麼要出現與檔案流配套的讀寫器型別呢?                    主要是因為檔案流物件在讀寫位元組的效率是相當高的,但是在處理其他型別的資料時會比較麻煩,                    所以就出現了二進位制讀寫器和文字讀寫器來解決這一問題。 

AS399X R1000/2000等晶片架構的簡單分析

進入RFID的超高頻行業後,一直用AS399X開發超高頻讀寫器, 下面對其及其其他晶片架構設計的讀寫器做些簡單的總結(部分選自RFID世界網) 1.     選AS3992有原始碼提供,R1000/R2000原始碼需付費.一旦掌握原始碼,選用R1000/R2000進行超高頻產品的開發,是非常容易和質量保

專案總結 -- RFID 上位機軟體

物聯網方向的課程專案:RFID 讀寫器上位機軟體,是一個基於MFC的軟體,通過與連線的裝置(這裡是讀卡器)與IC卡進行資料的交換,舉個例子來說:校園卡,公司的門禁卡等等,這個屬於物聯網的終端資訊互動的一個流程。 我理解這裡主要是兩個大的模組:一個是資料的收

ZYNQ系統中實現FAT32檔案系統的SD之四 經驗總結

在上述的三篇BLOG裡面主要介紹了步驟和設定,這裡簡答羅列一下此軟體硬體環境中進行FAT32讀寫的經驗總結。 1,SD卡要格式成FAT32格式。否則寫大檔案失敗,上幾M的就寫不了了。 2,每次建議寫256的整數倍位元組,否則餘數部分就會不能寫入,比如f_write函式

測試sd速度與判斷是否是擴容的假貨

買了個32G micro sd卡,官方標稱class10,就是說寫能達到10M/S,於是檢測是否真實 速度檢測 ATTO Disk Benchmarks 如圖 當資料達到256KB以上時,讀寫速度都達標了 有些sd卡是擴容的,就是看起來很大,但是資料寫入再讀出是不對的 這

物聯12:基於基站晶片U2270B的低頻介紹

    目前,射頻技術在低頻有廣泛應用。在低頻讀寫器工作頻率主要是在125KHZ。應用於門禁、汽車防盜、動物識別上。這時介紹一個基於晶片:U2270B晶片的低頻讀寫器。   U2270B晶片,是ATMEL公司(全球性的業界領先企業,致力於設計和製造各類微控制器、電容式觸控解

20141227 【 RFID 2.4GHz 及標籤程式碼 】

結構: AppDemo /* 讀寫器及標籤應用功能實現 */     RFID_2.4GHz_Reader_Demo.c // RFID的2.4G讀寫器應用程式     RFID_2.4GHz_Tag_Demo.c // RFID的2.4G標籤應用程式 READER /*

搭建基於springboot輕量級分離開發框架

#何為讀寫分離 讀寫分離是指對資源的修改和讀取進行分離,能解決很多資料庫瓶頸,以及程式碼混亂難以維護等相關的問題,使系統有更好的擴充套件性,維護性和可用性。 一般會分三個步驟來實現: 一. 主從資料庫搭建 資訊管理系統的絕大部分瓶頸在資料庫,通過搭建主從資料庫,寫到主資料庫,讀取從資料庫,提高資料庫的吞吐量

在C#中INI配置文件()

換行 value .config pri mas 文本 data- ini文件 def 在作應用系統開發時,管理配置是必不可少的。例如數據庫服務器的配置、安裝和更新配置等等。由於Xml的興起,現在的配置文件大都是以xml文檔來存儲。比如Visual Studio.Net自身