最近在淘寶弄了一組新玩具 STM32F0(Cortex-M0) + RC522 ,想做 RFID 讀卡機
STM32F030 最小系統板
賣場的說明充滿了挑戰,完全正中我的要害,恨不得立即擁有:
特别说明:此小系统板专为有实力的玩家供货,只提供脚位引脚信号图,提供一个利用外部晶振延时闪烁的LED的MDK示例DEMO。由于技术人员在网工作时间有限,暂不提供技术支持。
拍前请慎重考虑。
http://item.taobao.com/item.htm?id=35477227923
RC522 RFID 射頻模組
費了好大的功夫才把功能 PO 好,主要是淘寶賣家通常都沒有提供 Cortex-M0 的 sample code,
可以正常讀寫後,就想說來 copy 一下公司的考勤卡好了,於是又去買了一些 UID卡回來,
賣場的說明,還有當時 google 到的使用者經驗都說寫這種 UID卡不用特殊設備,程序就跟寫標準卡一樣,
可是不管我怎麼試, UID卡的行為就跟標準卡沒兩樣,甚至一度以為買到假貨。
於是又在網路上繼續搜索,我覺得,一定有特別的命令讓我可以寫 sector[0]:block[0]
終於讓我找到一篇,他的流程是這樣:
Sent bits: 26 (7 bits) //尋卡 0x26 / 0x52 都可以
Received bits: 04 00
Sent bits: 93 20 //防衝撞
Received bits: 01 23 45 67 00
Sent bits: 93 70 01 23 45 67 00 d0 6f //選卡
Received bits: 08 b6 dd (SAK)
(不可以認證密鑰,不然後門打不開)
好,重點來了,
Sent bits: 50 00 57 cd //休眠,50 00 就是 PcdHalt()
Sent bits: 40 (7 bits) (特殊指令)//開後門第一條指令,要設定 BitFramingReg 使傳送 7 個位元,必須要 7 個
Received bits: a (4 bits)
Sent bits: 43 (特殊指令)//開後門第二條指令
Received bits: 0a
Sent bits: a0 00 5f b1 //正常的寫區塊第一次交握
Received bits: 0a
Sent bits: 00 dc 44 20 b8 08 04 00 46 59 25 58 49 10 23 02 c0 10 //正常的寫 block 0 資料
Received bits: 0a
重點就是要:
1. 不可以進行 3 Pass Authenticaiton
2. 發 PcdHalt()
3. 發 0x40 in 7-bit
4. 發 0x43
到這邊,我把考勤卡的 sector[0]:block[0] 整個區塊複製過來了,
接著,我又把其餘的 63 個區塊也都一併複製,然後滿心期待的拿去刷考勤機看看,
結果....
...
...
...
...
考勤機根本沒回應....
就是這一台:
http://www.pongee.com.tw/product.php?mode=show&cid=65&pid=250
不知道有沒有機會找到突破的方法...
參考資料
留言列表