2017-06-16 117 views
0

我一直在將PN544設置直接交給串行接口,沒有使用任何代碼包裝器或驅動程序。我的問題是,我必須設置一些價值,我不知道,導致此問題的一些註冊:NFC控制器恩智浦PN548標籤檢測已停止工作

每當我把它放在輪詢模式讀卡,它不檢測任何標籤,除非我將2個標籤靠近設備。 (!)

在我這樣做之前,我從每個單獨標記的「61 05 17 01 01 02 00 ff [其餘標記信息]」串行端口獲取通知。

[TX]: 20 00 01 00 (RESET_NCI) 
[RX]: 40 00 03 00 10 00 (OK) 
[TX]: 20 01 00 (INIT_NCI) 
[RX]: 40 01 16 00 03 0E 02 00 05 00 01 02 03 80 02 80 02 FF 02 00 04 0D 02 01 23 (OK) 
[TX]: 2f 02 00 (PROPR_FEATURES) 
[RX]: 4F 02 05 00 00 00 B1 AE (OK) 
.... Default init packets used as before the issue 
.... Enter polling mode: 
[TX]: 20 02 05 01 a0 39 01 01 
[RX]: 40 02 02 00 00 (OK) 
[TX]: 20 02 0e 04 18 01 01 32 01 20 50 01 00 00 02 2c 01 
[RX]: 40 02 02 00 00 (OK) 
[TX]: 21 03 0d 06 00 01 01 01 02 01 80 01 81 01 82 01 
[RX]: 41 03 01 00 (OK) 

^ At this point it should receive notifications when a tag approaches, 
like it used to before I messed up. 

我必須有設置一些寄存器,用於設置發送通知要求的標籤的最小量,或者可能與天線的設置弄亂,並沒有足夠的動力。

我已經設法從另一個相同的設備讀取並獲取所有寄存器,但僅用於寄存器0x00至0xff和A0 00-AO FF。必須有我缺少的另一個寄存器範圍。

我無法找到關於此的很多信息,不僅對於PN548,而且對於具有類似寄存器的544/547都沒有。我試圖找到我設置的所有更改並將其設置回來,但仍然只檢測到兩個標籤,一個還不夠。

有誰知道所需的寄存器,我可以嘗試改變? 我對實際的數據包感興趣,而不是庫中的任何函數。任何提示都會受到歡迎,如更改天線功率,設置標籤技術檢測,或者可能需要多少標籤?我有另一個工作設備,從我可以複製所有設置,但我只知道如何讀/寫NCI_CONFIG_PARAM(0x00-0xff)和NXP_CONFIG_PARAM寄存器,(0xA000- 0xA0FF)。如果你知道如何獲得所有其他寄存器,它也會有幫助。

我只關心我可以發送/接收到串口的數據包,而不是任何庫或驅動程序的功能。

預先感謝您

回答

0

最終,這是一個天線RF_TRANSITION_CMD設置。

我從其他設備讀取所有值並將它們傳遞給我,現在工作正常。