簡體   English   中英

NXP PN532 能否以 38400 波特率在 UART 上工作?

[英]Can the NXP PN532 work on UART at a 38400 baud rate?

我正在嘗試將使用 NXP PN532的 RFID1356MIFARE 與使用其 UART 功能的ESP32-EVB集成。

NXP 文檔指出 PN532 能夠在高速 UART 上進行通信。

我正在嘗試使用 38400,因為這是我正在使用的閱讀器固定的波特率。

我發現了一個修改后的 Adafruit PN532 庫,它添加了 HSU 支持。 該庫聲明HSU uses 115200 baud rate

現在,我修改PN532_HSU.cpp ,我們可以在其中找到:

void PN532_HSU::begin()
{
    _serial->begin(115200);
}

進入

void PN532_HSU::begin()
{
    _serial->begin(38400, SERIAL_8N1, 36, 4);
}

不幸的是,我無法使用這種方法在閱讀器和 ESP 之間建立通信。

我可以使用普通的 Serial.read Serial.read()獲得可讀的 output ,因此 UART 通信有效,但這不是您閱讀 MIFARE 卡的方式。

我不知道問題是什么。

你怎么看?

[編輯]

我瀏覽了文檔,這是我的建議:如果你有一個 USB 到串行設備,使用它直接將讀卡器模塊連接到計算機,否則使用模塊中的迷你 USB 端口直接連接它。 請執行以下步驟:

  1. 根據您將設備連接到計算機的方式,將設備置於 UART/USB CDC 模式。 文檔的操作部分提供了執行此操作的確切方法
  2. 使用 picoterm / screen 或其他串行終端(如果您使用 Linux)或僅使用具有正確波特率的 Arduino 串行監視器來連接設備。(115200 用於 USB 和 38400 用於 UART)
  3. 鍵入文檔中 COMMAND SET FOR CDC AND UART MODE 部分中列出的命令,以檢查模塊是否正常工作。
  4. 將一些卡放在讀卡器上以檢查模塊在檢測到卡時發送什么響應。
  5. 使用此信息為讀者開發您自己的圖書館。

它不適用於常規 PN532 庫。 相反,您需要使用常規的串行讀寫進行通信。

[原來的]

PN532 數據表中說主機接口是通過上拉/下拉設備的 I0、I1 引腳來選擇的。 對於 HSU,兩個引腳都必須拉低。 這是在硬件中實現的,因此您需要驗證是否設置了要使用的模式。

查看您為模塊發布的鏈接,它說它使用板上的另一個微控制器來擴展通信能力,所以也許您需要使用特定 controller 固件的驅動程序? 該鏈接似乎有文檔說明如何在文檔部分設置不同的通信系統,請查看並檢查它是否有效。 鏈接: https://www.olimex.com/wiki/MOD-RFID1356MIFARE

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM