作為一個電氣工作者,在調試的時候經常會遇到找不到號的調試工具的苦惱,在網上下載時,經常都時廣告,今天給大家分享一個超級好用的串口調試助手。該串口調試助手界面簡單、清晰。校驗方式、波特率、數據位、停止位都可以設置。端口號可以根據使用端口號隨便輸入。
此串口調試助手最牛逼的功能是,可以一次發送多條命令。
比如遇到讀一個設備的數據時需要兩條命令的時候,一般的調試助手只能一條一條的發,之間的間隔時間就可能存在問題。此串口調試助手就可以完美的解決此問題。
比如需要延時500ms發送12 23 0D和45 56 0D兩條命令。此時就可以在發送區輸入:
12 23 0D \d500 45 56 0D
打開串口,點擊發送。這兩條命令就會在第一條命令發送完成后延時500ms發送第二條命令。并能同時接收第一條和第二條命令的返回數據。
該串口調試助手支持win7 /win10系統。
接收數據可以進行十六進制和ASCII切換。
高級參數中還可以對數據流參數進行設置等等。
HEX轉換功能更是強大,如圖2所示。16進制轉換工具可以進行校驗碼計算,浮點數轉換等。集中了在通訊調試過程中基本所需的算法。
主界面如下圖:
圖1:主界面
圖2:16進制轉換工具
有需要的關注,私信我。
使用 JavaScript,HTML 和 CSS 構建跨平臺的桌面應用程序
只要你會javascript html css 就可以構建自己想要做的PC桌面和MACos app 應用,是不是很強大。
今天的重點是通過它來實現串口通信的功能,想要實現這部分功能不得不做些準備工作
下面跟我一步一步的來操作吧
想構建electron 必須要有支持的基礎環境,node 和 npm
node想必大家并不陌生,前端的小伙伴太熟悉不過了,Node.js 就是運行在服務端的 JavaScript
檢測你的電腦環境中是否安裝了node.js
檢測是否安裝node,的命令是
node -v
我這里是win10 開發環境
打開命令行工具
我這里已經安裝過了,看到有版本信息v10.16.1 說明已經安裝成功
接下來再檢查下是否安裝了npm 工具
npm -v
我這里也已經安裝了npm ,顯示版本6.9.0
有的同學小伙伴不知道npm是什么
PS:是nodejs內置的軟件包管理器, 在項目開發中,需要用到說明包就拿這個下載就行了,下面有介紹
好了,有了基礎的環境,我們就開始構建一個桌面程序吧
在工作的根目錄創建一個文件夾eletest
在創建一個普通的index.html 文件,這樣就有了一個基本的前端界面,electron 在node.js基礎上構建的,下面是應用的基本目錄結構,我們已經創建了index.html
eletest/
├── package.json
├── main.js
└── index.html
mian.js文件也是electron的入口文件
const electron = require('electron')
// Module to control application life.
const app = electron.app
// Module to create native browser window.
const BrowserWindow = electron.BrowserWindow
const path = require('path')
const url = require('url')
// Keep a global reference of the window object, if you don't, the window will
// be closed automatically when the JavaScript object is garbage collected.
let mainWindow
function createWindow() {
// Create the browser window.
mainWindow = new BrowserWindow({
width: 1920,
height: 1080,
frame:false,
resizable: false,
fullscreen:true,
webPreferences: {
nodeIntegration: true,
// preload: path.join(__dirname, 'preload.js')
}
})
// and load the index.html of the app.
mainWindow.loadURL(url.format({
pathname: path.join(__dirname, 'index.html'),
protocol: 'file:',
slashes: true
}))
// Open the DevTools.
mainWindow.webContents.openDevTools()
// Emitted when the window is closed.
mainWindow.on('closed', function() {
// Dereference the window object, usually you would store windows
// in an array if your app supports multi windows, this is the time
// when you should delete the corresponding element.
mainWindow = null
})
}
// This method will be called when Electron has finished
// initialization and is ready to create browser windows.
// Some APIs can only be used after this event occurs.
app.on('ready', createWindow)
// Quit when all windows are closed.
app.on('window-all-closed', function() {
// On OS X it is common for applications and their menu bar
// to stay active until the user quits explicitly with Cmd + Q
app.quit()
})
app.on('activate', function() {
// On OS X it's common to re-create a window in the app when the
// dock icon is clicked and there are no other windows open.
if (mainWindow === null) {
createWindow()
}
})
這里的方法 函數不在過多的解釋了,復制代碼到你創建的main.js中去就可以了,也可以去electron文檔中查看對應的API
package.json 這是一個包構建信息的文件 在eletest文件下運行命令
npm init -y
就會自動生成package.json文件 ,是不是很簡單啊
要想運行你寫的hml界面 打開這個文件修改一處
"scripts": {
"start": "electron ."
},
這樣就完成了幾個基本的配置
下面安裝electron 包了 運行命令
npm i --save-dev electron
你的運行結果和上面的圖片里的信息說明就成功安裝了electron 默認安裝的最新穩定的依賴包
前期的工作都做完了,來運行它,看看是否出現我們想要的界面
運行命令
npm start
hello world! 是不是很熟悉,很驚喜,很意外。
出現了平時我們打開windows應用窗口
以上步驟都是構建一個electron的桌面應用的,串口是如何實現的呢?
如果你不熟悉串口是說明,先去補補串口的基本概念和相關信息
串口、COM口是指的物理接口形式(硬件)
你也可以打開設備管理器看到相應的串口,我這里有COM11和COM10 ,串口是成對出現的
了解了說明是串口后,來實現我們的應用串口通信吧
運行命令
npm install serialport
出現serialport 的版本信息 說明已經安裝成功
electron 通信或者一些交互都是在node上完成的
查看了文檔后 我們可以在html頁面上
引入serialport包
設置要監聽的串口端口 比如COM11
配置寫端口基本信息
serialPost.on 接收發過來的信息,如果在控制臺上打印出信息,就說明串口通信成功
再次運行electron npm start
打印控臺看到 信息:打印端口成功,正在監聽數據中,就說明實現了串口的通信最重要一部打開通道
為了驗證是否能通信,我們找個串口精靈 發送一寫信息 ,再次看控制臺收到了發送的信息
如圖 在測試串口工具中輸入aaaa, 運行的控制臺收到了aaaa ,說明已經成功實現串口通信。
是不是很簡單,是不是很驚喜,是不是你在今后項目當中有需要串口通信的就可以復制粘貼了。