From e491cdb48129752324c4e3764f99bd9203c56dec Mon Sep 17 00:00:00 2001
From: lgq <1015864684@qq.com>
Date: 星期二, 31 三月 2026 09:48:44 +0800
Subject: [PATCH] 1.新增VF205门禁机代码

---
 vf205_access/src/main.js |   78 +++++++++++++++++++++++++++++++++++++++
 1 files changed, 78 insertions(+), 0 deletions(-)

diff --git a/vf205_access/src/main.js b/vf205_access/src/main.js
new file mode 100644
index 0000000..a4b9565
--- /dev/null
+++ b/vf205_access/src/main.js
@@ -0,0 +1,78 @@
+/**
+ * 搴旂敤涓诲叆鍙f枃浠�
+ * 璐熻矗鍒濆鍖栫郴缁熷悇缁勪欢銆侀┍鍔ㄥ拰鏈嶅姟锛屽惎鍔ㄥ簲鐢ㄧ▼搴�
+ */
+import log from '../dxmodules/dxLogger.js'
+import std from '../dxmodules/dxStd.js'
+import bus from '../dxmodules/dxEventBus.js'
+import screen from './screen.js'
+import driver from './driver.js'
+import pool from '../dxmodules/dxWorkerPool.js'
+import config from '../dxmodules/dxConfig.js'
+import face from '../dxmodules/dxFace.js'
+import net from '../dxmodules/dxNet.js'
+import mqtt from '../dxmodules/dxMqtt.js'
+import dxNfc from '../dxmodules/dxNfc.js'
+import dxUart from '../dxmodules/dxUart.js'
+import dxGpioKey from '../dxmodules/dxGpioKey.js'
+
+/**
+ * 浜嬩欢鎬荤嚎涓婚鍒楄〃
+ * 鍖呭惈绯荤粺涓墍鏈夐渶瑕佺洃鍚殑浜嬩欢涓婚
+ */
+let topics = ["getCode", face.RECEIVE_MSG, dxGpioKey.RECEIVE_MSG, "netGetWifiSsidList", "switchNetworkType", "access", "setConfig", dxNfc.RECEIVE_MSG, net.STATUS_CHANGE, mqtt.CONNECTED_CHANGED, mqtt.RECEIVE_MSG, dxUart.VG.RECEIVE_MSG + driver.uart485.id, dxUart.VG.RECEIVE_MSG + driver.uartCode.id, "trackResult"]
+
+/**
+ * 鍒濆鍖栨帶鍒跺櫒
+ * 鍒濆鍖栫郴缁熸墍鏈夐┍鍔ㄦā鍧�
+ */
+function initController() {
+    driver.gpio.init()         // 鍒濆鍖朑PIO
+    driver.watchdog.init()     // 鍒濆鍖栫湅闂ㄧ嫍
+    driver.config.init()       // 鍒濆鍖栭厤缃�
+    driver.gpiokey.init()      // 鍒濆鍖朑PIO鎸夐敭
+    driver.net.init()          // 鍒濆鍖栫綉缁�
+    driver.sqlite.init()       // 鍒濆鍖栨暟鎹簱
+    driver.alsa.init()         // 鍒濆鍖栭煶棰�
+    driver.nfc.init()          // 鍒濆鍖朜FC
+    driver.nfc.eidInit()       // 鍒濆鍖朎ID锛堢數瀛愯韩浠借瘉锛�
+    driver.uart485.init()      // 鍒濆鍖朥ART485
+    driver.uartCode.init()     // 鍒濆鍖朥ART鐮�
+    driver.capturer.init()     // 鍒濆鍖栨憚鍍忓ご
+    std.sleep(100)             // 绛夊緟100ms
+    driver.face.init()         // 鍒濆鍖栦汉鑴歌瘑鍒�
+    std.sleep(100)             // 绛夊緟100ms
+    driver.pwm.init()          // 鍒濆鍖朠WM
+    std.sleep(100)             // 绛夊緟100ms
+    driver.mqtt.init()         // 鍒濆鍖朚QTT
+    driver.autoRestart.init()  // 鍒濆鍖栬嚜鍔ㄩ噸鍚�
+}
+
+/**
+ * 搴旂敤绋嬪簭鍚姩鍑芥暟
+ * 鍒濆鍖栨帶鍒跺櫒銆佸睆骞曘�佸垱寤哄伐浣滅嚎绋嬪拰鏈嶅姟姹�
+ */
+(function () {
+    initController()                      // 鍒濆鍖栨帶鍒跺櫒
+    screen.init()                         // 鍒濆鍖栧睆骞�
+    bus.newWorker('controller', '/app/code/src/controller.js')  // 鍒涘缓鎺у埗鍣ㄥ伐浣滅嚎绋�
+    pool.init('/app/code/src/services.js', bus, topics, 5, 100) // 鍒濆鍖栨湇鍔℃睜
+    const appVersion = 'vf105_v12_access_2.0.1.1'  // 搴旂敤鐗堟湰鍙�
+    config.setAndSave('sys.version', appVersion)    // 淇濆瓨鐗堟湰鍙峰埌閰嶇疆
+    config.setAndSave('sys.appVersion', appVersion) // 淇濆瓨搴旂敤鐗堟湰鍙峰埌閰嶇疆
+    log.info("=================== version:" + appVersion + " ====================")
+})();
+
+/**
+ * 涓诲惊鐜�
+ * 瀹氭湡鍠傜嫍銆佹墽琛岀湅闂ㄧ嫍寰幆鍜屽睆骞曞惊鐜�
+ */
+std.setInterval(() => {
+    try {
+        driver.watchdog.feed("main", 30) // 鍠傜嫍锛岃缃�30绉掕秴鏃�
+        driver.watchdog.loop()           // 鎵ц鐪嬮棬鐙楀惊鐜�
+        screen.loop()                    // 鎵ц灞忓箷寰幆
+    } catch (error) {
+        log.error(error)                 // 璁板綍閿欒
+    }
+}, 5) // 姣�5ms鎵ц涓�娆�
\ No newline at end of file

--
Gitblit v1.9.3