色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何基于EsDA開發套件快速使用射頻讀卡器模塊

ZLG致遠電子 ? 2024-01-11 08:24 ? 次閱讀

無線射頻讀寫卡技術在門禁系統,電子支付領域和物聯網等領域中具有越來越廣泛的應用。本文將基于EsDA開發套件講解如何快速上手并開發射頻讀卡器模塊的相關業務,為開發者大大縮短了學習和開發時間成本。

c8415eda-b017-11ee-aa22-92fbcf53809c.jpg ?項目簡介

無線射頻讀寫卡技術是一種基于無線通信的身份識別技術,由讀寫器和卡片組成,讀寫器可以通過無線射頻信號,實現與卡片之間的數據傳輸與操作。本文將基于EsDA開發平臺,使用EPC6450-AWI開發板,以及圖形化設計工具AWFlow Designer實現ZLG600A的RFID讀寫器模塊與卡片之間無線通信的功能。該項目主要用到了timer,fscript,rfid_zlg600,log節點,具體實現請見下文。
c844dd9e-b017-11ee-aa22-92fbcf53809c.jpg ?項目概述

該項目通過EsDA開發平臺,使用ZLG600A的模塊快速實現類似門禁卡或電子支付場景等業務。該項目的主要步驟如下:

  1. 通過ZLG600A的上位機配置工具,配置讀卡器模塊;
  2. 使用ZLG600A的上位機測試工具,激活卡;
  3. 使用rfid_zlg600節點實現檢驗密鑰,獲取卡uid,寫塊數據,讀塊數據等功能。

c84d81b0-b017-11ee-aa22-92fbcf53809c.png


c844dd9e-b017-11ee-aa22-92fbcf53809c.jpg ?前期準備讀者若有興趣可以閱讀以下文章對EsDA的其他模塊項目進行學習:

  • 【EsDA應用】如何5分鐘快速實現指紋采集與檢測
  • 【EsDA應用】5分鐘快速實現攝像頭圖像采集
  • 【EsDA應用】10分鐘快速實現人臉識別
  • 【EsDA應用】5分鐘快速實現圖像人臉檢測

1. 硬件準備

在標有絲印為TF Card 的卡槽處,插入SD卡;

在標有絲印為DUART的模塊上,將TTL轉USB串口模塊的TX與板子絲印為RXD連接,TTL轉USB串口模塊的RX與板子絲印為TXD相連;并將串口模塊的USB端口接入電腦

在標有絲印為Type-C接口處,插上Type-C線,并將Type-C線的另一端USB口插入電腦;

在標有絲印為NET0或 NET1的RJ45插座處接上網線的水晶頭,網線另一端水晶接頭插在PC的網絡插座上。

ZLG600A模塊支持TTL,RS232以及RS485接口通信,本文采用TTL通信。在標有絲印為 3.3V 的排針針腳處接上ZLG600A模塊的 VCC 引腳;在標有絲印為 GND 的排針針腳處接上ZLG600A模塊的 GND 引腳;在標有絲印為 UTX1 的排針針腳處接上ZLG600A模塊的 RXD 的引腳;在標有絲印為 URX1 的排針針腳處接上ZLG600A模塊的 TXD 的引腳上。

c8575eba-b017-11ee-aa22-92fbcf53809c.jpg

2. 上位機配置模塊

2.1 硬件連接

選擇ZLG600A(支持TTL,RS232以及RS485接口通信)與PC端通信的方式,本文選用TTL通信。將TTL轉USB串口模塊的TX與ZLG600A模塊絲印為 RXD 連接,TTL轉USB串口模塊的RX與ZLG600A模塊絲印為 TXD 相連,TTL轉USB串口模塊的GND與ZLG600A模塊絲印為 GND 相連,TTL轉USB串口模塊的VCC與ZLG600A模塊絲印為 VCC 相連;并將串口模塊的USB端口接入電腦。接線如下圖所示。

c8657590-b017-11ee-aa22-92fbcf53809c.jpg2.2 軟件操作

若想了解該模塊更多信息請訪問致遠電子ZLG600A相關資料進行查閱,本文只講解如何利用EsDA快速使用該模塊。

c8876902-b017-11ee-aa22-92fbcf53809c.png

解壓縮后,雙擊執行ZLG600A_Configure V1.00.exe這個上位機程序。

c88e16bc-b017-11ee-aa22-92fbcf53809c.png

找到在設備管理器中對應的串口設備,選擇波特率為 19200,點擊連接讀卡器,因為使用TTL通信,所以其他配置按默認的即可,點擊配置模塊,若配置成功則如下圖所示。

c89c5114-b017-11ee-aa22-92fbcf53809c.png

雙擊執行ZLG600A_Test V3.00.exe這個上位機程序。c8a3617a-b017-11ee-aa22-92fbcf53809c.png選擇對應通信的串口號,設置波特率為19200后點擊連接讀卡器。若不確定是否已激活卡片,可以點擊卡片激活,此時可以看到被分配的卡片ID號。c8aee8ba-b017-11ee-aa22-92fbcf53809c.png

以上,卡片和讀卡器就已激活配置成功,后續可以使用讀卡器對卡片進行讀寫等操作。


c844dd9e-b017-11ee-aa22-92fbcf53809c.jpg ?項目實施

1. 加載密鑰

本業務是向模塊內加載密碼,而非改變Mifare卡內扇區的密碼。每個區有密鑰A和密鑰B兩個,對應的cmd指令是load_mifare1_keya,load_mifare1_keyb。后續若想改變Mifare卡內的密鑰,可以使用原密碼驗證通過后,直接用寫塊數據指令將密碼塊進行改寫。

1.1 流圖繪制

添加timer,fscript,rfid_zlg600,和log節點到畫布中并連線如下圖,為了和后面的業務進行區分,timer的消費者fscript的顯示名稱在此改為加載密鑰A。

c8bbc558-b017-11ee-aa22-92fbcf53809c.png

1.2 節點配置

雙擊timer節點,配置周期性去加載密鑰的時間。雙擊timer的消費者節點fscript(顯示標簽為加載密鑰A),卡密鑰的類型分為密鑰A和密鑰B,分別代表不同的cmd參數,密鑰A的cmd指令為load_mifare1_keya,密鑰B的cmd指令為load_mifare1_keyb,在fscript中指定驗證密鑰的類型,密鑰的值以及操作的塊區號。

print("load_mifare1_keya")output.cmd = 'load_mifare1_keya'
buf = wbuffer_create()
wbuffer_write_uint8(buf, 0xAA) //低字節wbuffer_write_uint8(buf, 0xFF) wbuffer_write_uint8(buf, 0xFF) wbuffer_write_uint8(buf, 0xFF) wbuffer_write_uint8(buf, 0xFF) wbuffer_write_uint8(buf, 0xFF) //高字節
output.key_data = wbuffer_get_data(buf)output.key_data_len = 6
output.section_id = 1

雙擊rfid_zlg600節點,配置模塊通信參數。c8c55adc-b017-11ee-aa22-92fbcf53809c.png雙擊rfid_zlg600的消費者節點fscript,若加載密鑰的cmd指令成功,則說明密鑰正確。后續針對讀寫卡的其他操作都要進行密鑰驗證。

t('result::::::::::::::::::::')
if (msg.cmd == "load_mifare1_keya") { if(msg.result == 0) { output.payload = "load_mifare1_keya_ok" } else { output.payload = "load_mifare1_keya_err" }}

log節點是用來輸出日志信息到控制臺或調試窗口等。1.3 下載驗證繪制完流圖后,點擊CTRL+S即可保存流圖,點擊下載流圖??梢钥吹酱谥稚巷@示加載密鑰成功的打印信息。

c8cccdf8-b017-11ee-aa22-92fbcf53809c.png

2. 讀卡UID

在本業務中先驗證密鑰再對卡UID進行讀取。

2.1 流圖繪制

添加timer,fscript,rfid_zlg600,和log節點到畫布中并連線如下圖,為了和后面的業務進行區分,timer的消費者fscript的顯示名稱在此改為讀卡號。c8df05ea-b017-11ee-aa22-92fbcf53809c.png

2.2 節點配置

雙擊timer節點,配置周期性去讀卡號的時間。

雙擊timer的fscript節點(顯示標簽為讀卡號),讀之前必需成功進行密鑰驗證。

print("get_mifare1_uid")output.cmd = 'get_mifare1_uid'output.keytype = 0x60
buf = wbuffer_create()
wbuffer_write_uint8(buf, 0xAA) //低字節wbuffer_write_uint8(buf, 0xFF) wbuffer_write_uint8(buf, 0xFF) wbuffer_write_uint8(buf, 0xFF) wbuffer_write_uint8(buf, 0xFF) wbuffer_write_uint8(buf, 0xFF) //高字節
output.key_data = wbuffer_get_data(buf)output.key_data_len = 6
//一個扇區有4個塊output.section_id = 1output.block_id = 4

雙擊rfid_zlg600節點,配置模塊通信參數。c8c55adc-b017-11ee-aa22-92fbcf53809c.png

雙擊rfid_zlg600的消費者節點fscript,若成功驗證密鑰后則將讀取的卡UID進行顯示。

var i = 0print('result::::::::::::::::::::')if(msg.cmd == "get_mifare1_uid") { if(msg.result == 0) { print('mifare1_uid_len: ' + msg.mifare1_uid_len) print('mifare1_uid: start') len = msg.mifare1_uid_len rbuf = rbuffer_create(msg.mifare1_uid, len) for (i = 0; i < len; i = i + 1) { ? ? ? ? ? ?data = rbuffer_read_uint8(rbuf) ? ? ? ? ? ?print('data'+ i + ':' + data) ? ? ? ?} ? ? ? ?print('mifare1_uid: end') ? ? ? ? ? ? ? ?output.payload = "get_mifare1_uid_ok" ? ?} else { ? ? ? ?output.payload = "get_mifare1_uid_err" ? ?} ? ?}

2.3 下載驗證

繪制完流圖后,點擊CTRL+S即可保存流圖,點擊下載流圖??梢钥吹酱谥稚巷@示讀取卡UID的值的打印信息。c9009dd6-b017-11ee-aa22-92fbcf53809c.png

3. 寫塊數據

本業務需要先對卡內操作的塊區驗證密鑰,驗證成功后對同一扇區都可進行寫操作(一個扇區有四個塊區)??梢酝ㄟ^本業務對扇區尾的密碼塊進行修改,這也是更改密碼的唯一方法。

3.1 繪制流圖

添加timer,fscript,rfid_zlg600,和log節點到畫布中并連線如下圖,為了和后面的業務進行區分,timer的消費者fscript的顯示名稱在此改為寫塊數據。

c907336c-b017-11ee-aa22-92fbcf53809c.png

3.2 節點配置

雙擊timer節點,配置周期性去寫塊數據的時間。

雙擊timer的fscript節點(顯示標簽為寫塊數據),寫塊數據之前必需成功進行密鑰驗證。設置需要寫入的指定的扇區和寫入的數據。

print("write_mifare1_data")output.cmd = "write_mifare1_data"output.keytype = 0x60
buf = wbuffer_create()wbuffer_write_uint8(buf, 0xAA) //低字節wbuffer_write_uint8(buf, 0xFF) wbuffer_write_uint8(buf, 0xFF) wbuffer_write_uint8(buf, 0xFF) wbuffer_write_uint8(buf, 0xFF) wbuffer_write_uint8(buf, 0xFF) //高字節
output.key_data = wbuffer_get_data(buf)

buf1 = wbuffer_create()wbuffer_write_uint8(buf1, 0x12) //低字節wbuffer_write_uint8(buf1, 0x34) wbuffer_write_uint8(buf1, 0x56) wbuffer_write_uint8(buf1, 0x78) wbuffer_write_uint8(buf1, 0x90) wbuffer_write_uint8(buf1, 0x01) wbuffer_write_uint8(buf1, 0x02) wbuffer_write_uint8(buf1, 0x03) wbuffer_write_uint8(buf1, 0x04) wbuffer_write_uint8(buf1, 0x05) wbuffer_write_uint8(buf1, 0x06) wbuffer_write_uint8(buf1, 0x07) wbuffer_write_uint8(buf1, 0x08) wbuffer_write_uint8(buf1, 0x09) wbuffer_write_uint8(buf1, 0x11) wbuffer_write_uint8(buf1, 0x12) //高字節
output.data = wbuffer_get_data(buf1)output.data_len = 16
output.section_id = 1 output.block_id = 4

雙擊rfid_zlg600節點,配置模塊通信參數。c8c55adc-b017-11ee-aa22-92fbcf53809c.png

雙擊rfid_zlg600的消費者節點fscript,查看寫入塊數據的結果并打印。

var i = 0print('result::::::::::::::::::::')if (msg.cmd == "write_mifare1_data") { if(msg.result == 0) { output.payload = "write_mifare1_data_ok" } else { output.payload = "write_mifare1_data_err" }}

3.3 下載驗證

繪制完流圖后,點擊CTRL+S即可保存流圖,點擊下載流圖。

可以看到串口助手上顯示寫塊數據成功的打印信息。

c929fe74-b017-11ee-aa22-92fbcf53809c.png

4. 讀塊數據

本業務需要對指定塊區域進行密鑰驗證后,才可對同一扇區內的數據進行讀操作(一個扇區包含四個塊區,且一個扇區共用一個密鑰)。

4.1 繪制流圖

添加timer,fscript,rfid_zlg600,和log節點到畫布中并連線如下圖,為了和后面的業務進行區分,timer的消費者fscript的顯示名稱在此改為讀塊數據。

c931e850-b017-11ee-aa22-92fbcf53809c.png

4.2 節點配置

雙擊timer節點,配置周期性去讀塊數據的時間。

雙擊timer的fscript節點(顯示標簽為讀塊數據),讀塊數據之前必需成功進行密鑰驗證。設置需要讀取的指定的扇區。

print("read_mifare1_data")output.cmd = 'read_mifare1_data'output.keytype = 0x60
buf = wbuffer_create()
wbuffer_write_uint8(buf, 0xAA) //低字節wbuffer_write_uint8(buf, 0xFF) wbuffer_write_uint8(buf, 0xFF) wbuffer_write_uint8(buf, 0xFF) wbuffer_write_uint8(buf, 0xFF) wbuffer_write_uint8(buf, 0xFF) //高字節
output.key_data = wbuffer_get_data(buf)output.key_data_len = 6
//一個扇區有4個塊output.section_id = 1output.block_id = 4

雙擊rfid_zlg600節點,配置模塊通信參數。c8c55adc-b017-11ee-aa22-92fbcf53809c.png

雙擊rfid_zlg600的消費者節點fscript,查看讀取到的塊數據的內容并打印。

var i = 0print('result::::::::::::::::::::')

if (msg.cmd == "read_mifare1_data") { if(msg.result == 0) { print('mifare1_data_len: ' + msg.mifare1_data_len) print('mifare1_data: start') len = msg.mifare1_data_len rbuf = rbuffer_create(msg.mifare1_data, len) for (i = 0; i < len; i = i + 1) { ? ? ? ? ? ?data = rbuffer_read_uint8(rbuf) ? ? ? ? ? ?print('data'+ i + ':' + data) ? ? ? ?} ? ? ? ?print('mifare1_data: end') ? ? ? ? ? ? ? ?output.payload = "read_mifare1_data_ok" ? ?} else { ? ? ? ?output.payload = "read_mifare1_data_err" ? ?} ? ?}

4.3 下載驗證

繪制完流圖后,點擊CTRL+S即可保存流圖,點擊下載流圖??梢钥吹酱谥稚巷@示讀取塊數據內容的打印信息。

c973651e-b017-11ee-aa22-92fbcf53809c.png

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 無線
    +關注

    關注

    31

    文章

    5450

    瀏覽量

    173244
  • ESDA
    +關注

    關注

    0

    文章

    28

    瀏覽量

    7505
  • 射頻讀卡器
    +關注

    關注

    0

    文章

    4

    瀏覽量

    6589
收藏 人收藏

    評論

    相關推薦

    【正點原子STM32H7R3開發套件試用體驗】開發套件開箱報告

    打開盒子,把開發套件,再和之前的STM32F103精英版做個對比: 上下對比,可以看到,兩套開發套件,是一脈相承的,都是開發板,電源,紅外遙控。在盒子的底部,還有連接線。 可以說,
    發表于 12-12 00:54

    充電樁非接觸式讀卡器 FSV-MD5422-01

    1、簡介 FSV-MD5422-01?產品是一款基于?13.56MHZ?頻率射頻技術上開發出來的非接觸式讀卡器模塊,?產品基于?TTL、RS232?串口兩種設計接口,通信協議簡單實用,
    的頭像 發表于 10-29 10:27 ?193次閱讀
    充電樁非接觸式<b class='flag-5'>讀卡器</b> FSV-MD5422-01

    二代身份證識別儀身份證閱讀讀卡器

    掃描儀 工地實名制讀卡器 二代證閱讀 ID/IC讀卡器 NFC讀卡模塊 多合一身份證讀卡
    發表于 09-07 15:09

    TPS63802HDKEVM-硬件開發套件

    電子發燒友網站提供《TPS63802HDKEVM-硬件開發套件.pdf》資料免費下載
    發表于 09-04 10:08 ?0次下載
    TPS63802HDKEVM-硬件<b class='flag-5'>開發套件</b>

    【xG24 Matter開發套件試用體驗】深入了解Silicon Labs xG24 Matter開發套件

    -使用Silicon Labs xG24開發套件支持智能加速以構建聲音感知門鎖”(Creating a Smarthome Device That Is Truly Smart - Building
    發表于 08-27 20:23

    【xG24 Matter開發套件試用體驗】初識xG24 Matter開發套件

    今天帶剛收到xG24 Matter開發套件的快遞,為大家做個xG24 Matter開發套件的視頻介紹,帶大家認識一下這款xG24 Matter開發套件。 EFR32xG24 Explorer
    發表于 07-11 23:31

    DA16200 超低功耗 Wi-Fi 模塊開發套件 Pro數據手冊

    電子發燒友網站提供《DA16200 超低功耗 Wi-Fi 模塊開發套件 Pro數據手冊.rar》資料免費下載
    發表于 05-30 17:53 ?1次下載
    DA16200 超低功耗 Wi-Fi <b class='flag-5'>模塊</b><b class='flag-5'>開發套件</b> Pro數據手冊

    DA16200 超低功耗 Wi-Fi 模塊開發套件數據手冊

    電子發燒友網站提供《DA16200 超低功耗 Wi-Fi 模塊開發套件數據手冊.rar》資料免費下載
    發表于 05-30 17:13 ?0次下載
    DA16200 超低功耗 Wi-Fi <b class='flag-5'>模塊</b><b class='flag-5'>開發套件</b>數據手冊

    音頻語音數據(AVD)模塊開發套件DA14AVDDECTDEVKT數據手冊

    電子發燒友網站提供《音頻語音數據(AVD)模塊開發套件DA14AVDDECTDEVKT數據手冊.rar》資料免費下載
    發表于 05-30 16:39 ?1次下載
    音頻語音數據(AVD)<b class='flag-5'>模塊</b><b class='flag-5'>開發套件</b>DA14AVDDECTDEVKT數據手冊

    SmartBond ? DA14695 低功耗藍牙5.2 模塊開發套件 Pro-子板數據手冊

    電子發燒友網站提供《SmartBond ? DA14695 低功耗藍牙5.2 模塊開發套件 Pro-子板數據手冊.rar》資料免費下載
    發表于 05-28 17:16 ?0次下載
    SmartBond ? DA14695 低功耗藍牙5.2 <b class='flag-5'>模塊</b><b class='flag-5'>開發套件</b> Pro-子板數據手冊

    DA14531 SMARTBOND TINYTM模塊開發套件硬件用戶手冊

    電子發燒友網站提供《DA14531 SMARTBOND TINYTM模塊開發套件硬件用戶手冊.rar》資料免費下載
    發表于 05-20 18:11 ?0次下載
    DA14531 SMARTBOND TINYTM<b class='flag-5'>模塊</b><b class='flag-5'>開發套件</b>硬件用戶手冊

    網絡讀卡器_產品手冊

    電子發燒友網站提供《網絡讀卡器_產品手冊.pdf》資料免費下載
    發表于 05-19 09:33 ?0次下載

    英飛凌推出CYUSBS236 USB轉串行通信(雙通道)開發套件

    英飛凌科技(Infineon Technologies)近日宣布推出全新的CYUSBS236 USB 轉串行通信(雙通道)開發套件。該開發套件基于英飛凌的CY7C65215 USB 串行橋控制,為
    的頭像 發表于 01-24 17:12 ?882次閱讀

    rc522射頻模塊的工作原理

    RC522射頻模塊是一種基于射頻識別技術的讀卡器模塊,廣泛應用于門禁系統、智能家居、智能卡類應用等領域。它具備
    的頭像 發表于 12-28 16:27 ?5465次閱讀
    主站蜘蛛池模板: 97色伦图区97色伦综合图区| 曼谷av女郎| 国产精品久久人妻无码网站一区无| a一级一片免费观看视频| 中文有码中文字幕免费视频| 亚洲人成影院在线播放| 亚洲国产区中文在线观看| 羞羞漫画免费漫画页面在线看漫画秋蝉 | 秋霞伦理手机在线看片| 亚洲AV精品无码喷水直播间| 青青草在线视频| 日本九九热在线观看官网| 日本无码人妻精品一区二区视频 | 含羞草免费完整视频在线观看| 国产精品一区二区AV白丝在线 | 自拍视频亚洲综合在线精品| 在线观看插女生免费版| 18禁无遮挡羞羞污污污污免费| 259luxu高跟黑色丝袜系列| 中国明星16xxxxhd| 97人妻中文字幕免费视频 | 小小水蜜桃视频高清在线播放| 香蕉在线播放| 亚洲人成7777| 伊人免费在线| 99re在线播放| 成人免费公开视频| 姑娘日本大全免费观看版中文翻译| 国产成人精品免费视频大全办公室| 国产精品成人无码久免费| 国产亚洲视频在线观看| 精品视频在线一区| 毛茸茸womansex| 日本漫画无彩翼漫画| 亚洲AV无码乱码国产麻豆穿越 | 秋霞电影在线观看午夜伦| 体育生爆操| 一级毛片免费下载| 99精品免费在线观看 | 诱受H嗯啊巨肉舍友1V1| 99久久99久久久精品齐齐鬼色|