下載安裝 com0com

下載

在 sourceforge 網站下載安裝器:下載鏈接
在這里插入圖片描述

安裝完成后可以在設備管理器中看到默認創建的一對虛擬串口
在這里插入圖片描述

使用串口調試助手收發

使用串口調試助手分別打開。如下圖所示,在端口選擇的下拉列表中可以看到剛才在設備管理器中看到的 COM3 和 COM5
在這里插入圖片描述

分別打開
在這里插入圖片描述

在這里插入圖片描述
在 COM3 中發送 你好 COM5,我是 COM3
在這里插入圖片描述
在 COM5 就可以收到數據了
在這里插入圖片描述
反過來也一樣
在這里插入圖片描述
在這里插入圖片描述
除了 COM3 和 COM5 以外,還可以看到如下 2 個虛擬串口
在這里插入圖片描述
這 2 個也是一對,同樣可以互相收發
在這里插入圖片描述
在這里插入圖片描述

readme

開始菜單中可以找到如下文件夾
在這里插入圖片描述
打開 ReadMe

下面是 ReadMe 內容的翻譯

                 =============================  虛擬串口模擬器(com0com)  =============================  簡介  
============  虛擬串口模擬器是一款開源的Windows內核模式虛擬串口驅動程序,遵循GPL許可協議免費提供。  
您可以創建無限數量的虛擬COM端口對,并通過任意端口對連接兩個應用程序。  
每個COM端口對提供兩個默認名稱為CNCA0和CNCB0的COM端口。一個端口的輸出即為另一個端口的輸入,反之亦然。  通常端口對中的一個端口由需要與設備通信的Windows應用程序使用,另一個端口由設備模擬程序使用。  例如要通過IP傳真,您可以將Windows傳真應用程序連接到CNCA0端口,將t38modem(http://t38modem.sourceforge.net/)連接到CNCB0端口。此時t38modem充當傳真調制解調器模擬程序。  結合hub4com使用,com0com可實現以下功能:  - 讓多個應用程序共享單個真實串口設備的數據和信號。例如多個應用程序可共享同一個GPS設備的數據;  - 像使用本地計算機的真實串口一樣使用遠程計算機的串口(支持RFC 2217協議)。  com0com項目主頁:http://com0com.sourceforge.net/。  安裝指南  
==========  注意(基于x64的Windows Vista/Windows Server 2008/Windows 7/8系統):  com0com.sys是經過測試簽名的內核模式驅動程序,默認不會加載。要啟用測試簽名,請執行命令:  bcdedit.exe -set TESTSIGNING ON  然后重啟計算機。  注意:  啟用測試簽名會降低計算機安全性。  直接運行安裝程序(setup.exe)。安裝向導將引導您完成必要步驟。  
如果彈出"找到新硬件向導":  - 選擇"否,暫時不",點擊下一步;  - 選擇"自動安裝軟件(推薦)",點擊下一步。  
安裝完成后,系統中將出現名為CNCA0和CNCB0的COM端口對。  您可以通過安裝命令提示符添加更多端口對:  1. 運行"安裝命令提示符"快捷方式  2. 輸入安裝命令,例如:  命令> install - -  系統將創建3個新的虛擬設備。其中一個設備名為"com0com - 串口對模擬器總線",另外兩個名為"com0com - 串口模擬器"并位于CNCAn和CNCBn端口。  輸入help命令獲取更多信息,例如:  命令> help  作為替代方案,您可以通過運行"設置"快捷方式調用基于GUI的設置工具(需要Microsoft .NET Framework 2.0)。  測試方法  
=======  1. 在CNCA0端口啟動超級終端  2. 在CNCB0端口啟動超級終端  3. CNCA0端口的輸出應顯示為CNCB0端口的輸入,反之亦然  卸載指南  
============  直接通過開始菜單中的com0com卸載快捷方式,或通過控制面板"添加/刪除程序"中的"虛擬串口模擬器(com0com)"條目進行卸載。卸載向導將引導您完成必要步驟。  提示:要卸載舊版com0com(無安裝程序的版本),請先安裝新版再執行卸載。  常見問題解答  
=============  問:能在Windows 9x平臺上運行com0com嗎?  
答:不能。需要Windows 2000或更新版本的操作系統。  問:能否以靜默方式安裝/卸載com0com(無需用戶干預和界面)?  
答:可以,使用/S參數,例如:  setup.exe /S  "%ProgramFiles%\com0com\uninstall.exe" /S  可使用/D參數指定安裝目錄,例如:  setup.exe /S /D=C:\Program Files\com0com  注意:靜默安裝默認不會創建任何端口對(可通過設置CNC_INSTALL_CNCA0_CNCB0_PORTS和/或CNC_INSTALL_COMX_COMX_PORTS環境變量覆蓋此行為)。  問:setup.exe還有哪些命令行參數?  
答:setup.exe和uninstall.exe的命令行參數列在NSIS用戶手冊第3.2節:  http://nsis.sourceforge.net/Docs/Chapter3.html#3.2  此外還可使用以下環境變量:  影響setup.exe行為的環境變量:  CNC_INSTALL_START_MENU_SHORTCUTS={是|否}   - 選擇/取消"開始菜單快捷方式"  CNC_INSTALL_CNCA0_CNCB0_PORTS={是|否}      - 選擇/取消"CNCA0 <-> CNCB0"  CNC_INSTALL_COMX_COMX_PORTS={是|否}        - 選擇/取消"COM# <-> COM#"  CNC_INSTALL_SKIP_SETUP_PREINSTALL={是|否}  - 跳過驅動預安裝/更新  影響uninstall.exe行為的環境變量:  CNC_UNINSTALL_SKIP_SETUP_UNINSTALL={是|否} - 跳過設備和驅動卸載  問:能否將CNCA0和CNCB0改名為COM8和COM9?  
答:可以。改名步驟:  1. 運行"安裝命令提示符"快捷方式  2. 輸入修改命令,例如:  命令> change CNCA0 PortName=COM8  命令> change CNCB0 PortName=COM9  也可設置為'COM#'形式,例如:  命令> change CNCA0 PortName=COM#  命令> change CNCB0 PortName=COM#  使用'PortName=COM#'參數時,將調用端口類安裝程序設置實際端口名。端口類安裝程序會選擇COM端口號并將實際端口名設為COM<n>。安裝后可通過list命令查看實際端口名,使用RealPortName=COM<n>參數修改實際端口名,例如:  命令> list  CNCA0 PortName=COM#,RealPortName=COM3  CNCB0 PortName=COM#,RealPortName=COM4  命令> change CNCA0 RealPortName=COM8  命令> change CNCB0 RealPortName=COM9  命令> list  CNCA0 PortName=COM#,RealPortName=COM8  CNCB0 PortName=COM#,RealPortName=COM9  問:波特率設置似乎無效:數據傳輸速度始終相同。如何啟用波特率模擬?  
答:要為CNCA0到CNCB0的數據傳輸啟用波特率模擬:  1. 運行"安裝命令提示符"快捷方式  2. 輸入修改命令,例如:  命令> change CNCA0 EmuBR=yes  問:超級終端測試成功,但使用CreateFile("CNCA0", ...)打開端口時失敗。GetLastError()返回ERROR_FILE_NOT_FOUND。  
答:必須在端口名前添加特殊字符"\\.\"。嘗試使用CreateFile("\\\\.\\CNCA0", ...)打開端口。  問:我的應用程序在啟動時向配對的COM端口發送數據會掛起。唯一的恢復方法是運行連接到另一個配對端口的超級終端。使用物理串口時沒有這個問題。  
答:應用程序掛起是因為默認禁用接收緩沖區溢出。可以通過為接收端口啟用接收緩沖區溢出來解決此問題。同時為避免流控制問題,需要為發送端口啟用波特率模擬。如果您的應用程序使用CNCA0端口,配對端口是CNCB0,則:  1. 運行"安裝命令提示符"快捷方式  2. 輸入修改命令,例如:  命令> change CNCB0 EmuOverrun=yes  命令> change CNCA0 EmuBR=yes  問:當配對端口未打開時,部分字符會保留在發送端口的輸出緩沖區中,并在下次連接時輸出。有什么解決方法?  
答:如果接收緩沖區溢出被禁用(默認),這是正常行為。如果需要像真實零調制解調器那樣丟失這些字符的行為,請為接收端口啟用接收緩沖區溢出。同時為避免流控制問題,為發送端口啟用波特率模擬。如果發送端口是CNCA0,接收端口是CNCB0,則:  1. 運行"安裝命令提示符"快捷方式  2. 輸入修改命令,例如:  命令> change CNCB0 EmuOverrun=yes  命令> change CNCA0 EmuBR=yes  問:我需要編寫一個連接到com0com端口對一側的應用程序,但不想讓用戶"看到"com0com創建的所有虛擬端口,只顯示真正可用的端口。  
答:如果您的應用程序使用CNCB0端口,用戶使用的配對端口是CNCA0,則可以通過以下方式"隱藏"CNCB0并在應用程序打開CNCB0時"顯示"CNCA0:  1. 運行"安裝命令提示符"快捷方式  2. 輸入修改命令:  命令> change CNCB0 ExclusiveMode=yes  命令> change CNCA0 PlugInMode=yes  問:添加端口對時,為什么Windows XP總是彈出"找到新硬件向導"?驅動程序已經存在,它可以靜默安裝并在后臺報告設備就緒狀態。  
答:這是因為缺少已簽名的com0com.cat目錄文件。可在測試計算機上按以下方式創建:  1. 創建目錄文件,例如:  cd "C:\Program Files\com0com"  inf2cat /driver:. /os:XP_X86  2. 創建測試證書,例如:  makecert -r -n "CN=com0com (test)" -sv com0com.pvk com0com.cer  pvk2pfx -pvk com0com.pvk -spc com0com.cer -pfx com0com.pfx  3. 用測試證書簽名目錄文件,例如:  signtool sign /v /f com0com.pfx com0com.cat  4. 將測試證書安裝到"受信任的根證書頒發機構"和"受信任的發布者"證書存儲區,例如:  certmgr -add com0com.cer -s -r localMachine root  certmgr -add com0com.cer -s -r localMachine trustedpublisher  inf2cat、makecert、pvk2pfx、signtool和certmgr工具包含在Windows驅動工具包(WDK)中。  或者您可以取消"找到新硬件向導"并通過update命令安裝驅動,例如:  setupc install - -  setupc update  此外可以臨時禁用即插即用相關UI消息,例如:  reg add HKLM\Software\Policies\Microsoft\Windows\DeviceInstall\Settings /v SuppressNewHWUI /t REG_DWORD /d 1 /f  setupc install - -  setupc update  reg add HKLM\Software\Policies\Microsoft\Windows\DeviceInstall\Settings /v SuppressNewHWUI /t REG_DWORD /d 0 /f  更多信息參見http://support.microsoft.com/kb/938596。  問:如何監控和獲取配對端口的設置(波特率、數據位、校驗位和停止位)?  
答:可通過擴展IOCTL_SERIAL_LSRMST_INSERT實現。示例參見:  http://com0com.sourceforge.net/examples/LSRMST_INSERT/tstser.cpp  問:如何將狀態傳輸到DCD和RING?CTS和DSR已連接到RTS和DTR。  
答:OUT1可連接到DCD,OUT2連接到RING。使用擴展IOCTL_SERIAL_SET_MODEM_CONTROL和IOCTL_SERIAL_GET_MODEM_CONTROL來改變OUT1和OUT2的狀態。示例參見:  http://com0com.sourceforge.net/examples/MODEM_CONTROL/tstser.cpp  問:如何查看當前運行版本?  
答:在設備管理器中,驅動程序屬性頁顯示INF文件的版本和日期,而驅動程序詳細信息頁顯示com0com.sys文件的版本。com0com.sys文件的版本即為您正在運行的版本。  問:當com2tcp的"服務器"和"客戶端"都運行在同一臺計算機上時,我可以用某些應用程序通過com2tcp與硬件通信。但當嘗試將客戶端移到遠程計算機時,應用程序顯示超時消息且沒有增加超時時間的設置。如何解決?  
答:嘗試調整應用程序COM端口的AddRTTO和AddRITO參數:  1. 運行"安裝命令提示符"快捷方式  2. 輸入修改命令,例如:  命令> change CNCA0 AddRTTO=100,AddRITO=100  問:能否通過自定義應用程序添加、刪除和重命名虛擬串口?是否有可用API或命令行工具?  
答:setupc.exe是完成此任務的命令行工具。輸入以下命令獲取更多信息:  setupc help  注:setupg.exe是setupc.exe的GUI封裝。  問:需要使用com0com端口的應用程序不識別com0com端口為"真實"COM端口。即使我已將端口名改為COMx,它仍然看不到com0com端口。是否有設置能讓端口顯示為"真實"COM端口?  
答:可以。您應將端口放入端口類,例如:  1. 運行"安裝命令提示符"快捷方式  2. 安裝端口對,其中一個端口名為COM#,例如:  命令> install PortName=COM# -  問:我需要在設備管理器中添加"模擬"PNP設備并使其連接到COM3。我使用PNPComSimulator(http://www.bds.dogma.net/pnp_part2.htm),它可以在DevManager輪詢時模擬PNP串口設備的響應。能否讓設備管理器通過com0com查找PNP設備?  
答:可以。最簡單的方法是將端口放入端口類,例如:  1. 運行"安裝命令提示符"快捷方式  2. 安裝端口對,其中一個端口名為COM#,例如:  命令> install 0 PortName=COM# -  安裝端口類端口后,可通過list命令獲取實際端口名,例如:  命令> list  CNCA0 PortName=COM#,RealPortName=COM3  CNCB0 PortName=-  問:能否配置com0com隨機損壞數據?這個功能對測試應用程序魯棒性很有用。  
答:可以,通過設置EmuNoise參數實現:  1. 運行"安裝命令提示符"快捷方式  2. 輸入修改命令,例如:  命令> change CNCA0 EmuNoise=0.00001,EmuBR=yes,EmuOverrun=yes  命令> change CNCB0 EmuNoise=0.00001,EmuBR=yes,EmuOverrun=yes  現在每個字符幀(包括空閑幀)都有0.00001的概率被損壞。  問:最多可以定義多少個端口對?  
答:取決于您的系統。com0com本身有1000000個端口對的內部限制。  問:我的應用程序用戶可能需要安裝多達250個COM端口對。初始安裝相當快,但每個額外的COM端口安裝時間通常比前一個更長。用戶無法接受長時間等待安裝。  
答:這是因為每安裝一個新的端口對都需要為所有已安裝的對更新驅動程序。可以通過使用帶--no-update參數的install命令批量安裝多個COM端口對,最后再執行不帶該參數的install命令來提高速度,例如:  命令> --no-update install - -  命令> --no-update install - -  ...  命令> --no-update install - -  命令> install  批處理程序示例:  cd /D "%ProgramFiles%\com0com"  FOR /L %%i IN (0,1,249) DO setupc --no-update install - -  setupc install  問:我使用64位版本的com0com遇到問題。想調試但找不到適用于64位操作系統的免費串口監控軟件(如portmon)。有人知道有什么可用的嗎?  
答:可以嘗試使用com0com內部跟蹤功能進行調試:  - 從com0com源碼獲取trace.reg文件;  - 將trace.reg導入注冊表;  - 重新加載驅動(或重啟系統);  - 執行測試并查看C:\com0com.log文件中的結果。  要禁用跟蹤,請重新安裝com0com或將trace_disable.reg導入注冊表后重新加載驅動。  

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/87772.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/87772.shtml
英文地址,請注明出處:http://en.pswp.cn/web/87772.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C++ 應用軟件開發從入門到實戰詳解

目錄 1、引言 2、IDE 開發環境介紹 2.1、Visual Studio 2.2、Qt Creator 3、 C語言特性 3.1、熟悉泛型編程 3.2、了解C/C異常處理 3.3、熟練使用STL容器 3.4、熟悉C11新特性 4、Windows 平臺的編程技術與調試技能 4.1、需要掌握的若干編程技術和基礎知識 4.2、需…

Python爬蟲實戰:研究slug相關技術

1. 引言 1.1 研究背景與意義 隨著互聯網技術的快速發展,網絡上的信息量呈爆炸式增長。如何從海量的非結構化數據中提取有價值的信息,成為當前數據科學領域的重要研究方向。網絡爬蟲作為一種自動化數據采集工具,可以高效地獲取網頁內容,為數據分析提供豐富的數據來源。 Sl…

人工智能-基礎篇-18-什么是RAG(檢索增強生成:知識庫+向量化技術+大語言模型LLM整合的技術框架)

RAG&#xff08;Retrieval-Augmented Generation&#xff0c;檢索增強生成&#xff09;是一種結合外部知識檢索與大語言模型&#xff08;LLM&#xff09;生成能力的技術框架&#xff0c;旨在提升生成式AI在問答、內容創作等任務中的準確性、實時性和領域適應性。 1、核心概念 …

CppCon 2018 學習:What do you mean “thread-safe“

什么是“線程安全”&#xff1f; “線程安全”指的是一個函數、方法或代碼塊能夠在多個線程同時執行時&#xff0c;不會出現意外的交互或破壞共享數據&#xff0c;能夠安全地運行。 POSIX 對線程安全的定義很清楚&#xff1a; “一個線程安全的函數可以在多個線程中被安全地并…

熱方程初邊值問題解法

已知公式&#xff1a; u ( x , t ) ∫ ? ∞ ∞ G ( x , y , t ) g ( y ) d y . u(x,t)\int_{-\infty}^{\infty}G(x,y,t)g(y)dy. u(x,t)∫?∞∞?G(x,y,t)g(y)dy. &#xff08;1&#xff09; 其中 G ( x , y , t ) 1 2 k π t e ? ( x ? y ) 2 4 k t G(x,y,t)\frac{1}{2…

怎樣理解:source ~/.bash_profile

場景復現 $ source ~/.bash_profileAnalysis 分析 一句話概括 source ~/.bash_profile “在 當前 終端會話里&#xff0c;立刻執行并加載 ~/.bash_profile 中的所有命令&#xff0c;讓其中定義的環境變量、函數、alias 等即時生效&#xff0c;而無需重新登錄或開新 Shell。…

搜索問答技術概述:基于知識圖譜與MRC的創新應用

目錄 一、問答系統應用分析 二、搜索問答技術與系統 &#xff08;一&#xff09;需求和信息分析 問答需求類型 多樣的數據源 文本組織形態 &#xff08;二&#xff09;主要問答技術介紹 發展和成熟度分析 重點問答技術基礎&#xff1a;KBQA和DeepQA KBQA&#xff08;…

TCP數據的發送和接收

本篇文章結合實驗對 TCP 數據傳輸中的重傳機制、滑動窗口以及擁塞控制做簡要的分析學習。 重傳 實驗環境 這里使用兩臺騰訊云服務器&#xff1a;vm-1&#xff08;172.19.0.3&#xff09;和vm-2&#xff08;172.19.0.6&#xff09;。 超時重傳 首先 vm-1 作為服務端啟動 nc…

python 保存二維數組到本地

Python中保存二維數組有多種方法&#xff0c;以下是常用的幾種方式&#xff1a;1. 使用NumPy&#xff08;推薦&#xff09;import numpy as np# 創建二維數組 arr np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])# 保存為.npy文件&#xff08;NumPy專用格式&#xff09; np.save…

LIN總線通訊中從節點波特率同步原理

波特率同步原理&#xff1a;從節點如何通過0x55校準時鐘&#xff1f; 一、同步場的核心作用&#xff1a;統一“時間標尺” 在LIN總線中&#xff0c;主節點與從節點各自擁有獨立的時鐘源&#xff08;如MCU內部RC振蕩器&#xff09;&#xff0c;但由于制造工藝差異&#xff0c;…

【Unity筆記02】訂閱事件-自動開門

流程 當玩家移動到觸發區域的時候&#xff0c;門自動打開 事件系統 using System; using System.Collections; using System.Collections.Generic; using UnityEngine;public class EventSystem : MonoBehaviour {public static EventSystem Instance { get; private set; }…

控制臺字符動畫

旋轉的立方體 #include <cstdint> #include <cstdio> #include <iostream> #include <cstring> #include <cmath> #include <cstdlib> #include <ctime> #include <thread> using namespace std;float angleX .0f; float a…

基于 PyTorch 的貓狗圖像分類實戰

基于 PyTorch 的貓狗圖像分類實戰 項目背景簡介 深度學習框架 PyTorch 因其動態計算圖和靈活易用性&#xff0c;被廣泛應用于圖像分類等計算機視覺任務。在入門計算機視覺領域時&#xff0c;常常以手寫數字識別&#xff08;MNIST&#xff09;作為 “Hello World”&#xff0c…

SwiftUI 7(iOS 26 / iPadOS 26)中玻璃化標簽頁的全新玩法

&#x1f378; Liquid Glass 登場&#xff1a;界面設計煥然一新 WWDC25 可謂驚喜連連&#xff0c;其中最引人矚目的變革之一&#xff0c;莫過于蘋果推出的全新跨平臺設計語言 —— Liquid Glass&#xff08;液態玻璃&#xff09;。這一設計風格涵蓋了從按鈕到導航欄&#xff0…

PDF處理控件Spire.PDF教程:在Java中讀取PDF,提取文本、圖片和表格

在數據驅動的現代開發中&#xff0c;高效處理 PDF 文檔已成為 Java 開發者不可或缺的核心能力。無論是處理各類發票掃描件、業務分析報告&#xff0c;還是包含豐富圖表的技術文檔&#xff0c;掌握 Java 版的 PDF 解析技術都將大幅提升數據處理效率&#xff0c;充分釋放文檔中的…

跨平臺游戲引擎 Axmol-2.7.0 發布

Axmol 2.7.0 版本是一個以錯誤修復和功能改進為主的次要LTS長期支持版本 &#x1f64f;感謝所有貢獻者及財務贊助者&#xff1a;scorewarrior、peterkharitonov、duong、thienphuoc、bingsoo、asnagni、paulocoutinhox 重大變更 Android Studio 最低版本要求升級至 2025.1.1…

XML 筆記

<image src"hue.gif" width"100" height"auto" align"left"/> <br/> 換行 在 XML 中&#xff0c;<![CDATA[ 和 ]]> 用于定義一個 CDATA 節&#xff08;Character Data Section&#xff09;。CDATA 節是用于將一段…

Python實現優雅的目錄結構打印工具

Python實現優雅的目錄結構打印工具 在軟件開發、系統管理和日常工作中&#xff0c;我們經常需要查看和分析目錄結構。 工具功能概述 這個DirectoryPrinter類提供了以下功能&#xff1a; 遞歸打印目錄結構可配置是否顯示隱藏文件可設置最大遞歸深度自定義縮進和文件/文件夾符…

【Python】文件打開:with open具體解析

示例 # 使用 with 語句打開文件并讀取內容 with open(pi.txt, r) as file_object:contents file_object.read()print(contents) # 文件在代碼塊結束后自動關閉with 解析 with 是 Python 中的上下文管理器語法&#xff0c;用于確保某個操作完成后自動執行清理操作。它常用于文…

Acrel-1000系列分布式光伏監控系統在湖北荊門一馬光彩大市場屋頂光伏發電項目中應用

摘 要&#xff1a;分布式光伏發電能夠對日益嚴重的環境壓力起到有效緩解作用,在當前對環境保護需求越來越大情況下,發電行業在發展中不但要提升發電效率,同時也需要降低成本。分布式光伏發電主要是利用風能和太陽能等可再生清潔能源進行發電,對于空氣質量具有改善效果,和傳統發…