串口連接軟體
① 如何使用SecureCRT 串口終端軟體
方法/步驟點擊下圖紅色箭頭所指的按鈕。在出現的「Connect」界面中,點擊下圖回紅色箭頭設置的按鈕答。然後選擇「Serial」選項。接著,點擊「下一步」按鈕。對照下面的參數,進行串口的配置。對配置的串口連接進行命名。然後點擊下圖紅框中的「Connect」按鈕。
② 串口調試助手如何和PLC連接
1、首先,必須了解PLC的通信協議,然後使用串列編程線連接PLC和計算機,打開串列調試助手,並通過與ASCII碼對應的數據將數據發送到PLC。
2、串列調試助手是與串列調試相關的工具,有多個版本。 如:友好的串列調試助手,支持9600、19200等常用的各種波特率和自定義波特率,可以自動識別串口,可以設置校驗,數據位和停止位,可以以ASCII或十六進制接收或 發送任何數據或字元。
3、可以任意設置自動傳輸周期,並且可以將接收到的數據保存為文本文件,並且可以發送任意大小的文本文件。
4、 在硬體連接方面,傳統的台式機支持標準的RS232介面,很少有帶有串列埠的筆記本電腦,因此需要USB / 232轉換介面,並安裝了相應的驅動程序。
(2)串口連接軟體擴展閱讀
1、全面掌握繼電器和接觸器的控制原理和一些常用電路。
2、比如電機正反轉電路,如果沒有機會在工廠里邊做維修電工,接觸這些實物,可以網購一些產品迴路,自己用一塊膠板把這些元件固定起來,根據網上的一些電路圖,來接好線,自己調試一下這些基礎的啟停電路,互鎖電路,強制化自己的電工基礎。
3、找個小型PLC,建議使用日系或者台灣的,入門比較簡單,根據手冊或者網上提供的一些線路圖,自己接好PLC的外圍硬體電路,同時確認它們的輸入輸出不會有問題。
③ 用電腦串口如何跟485口通信
1、首先我們在indows下打開虛擬串口的軟體,這里選擇的相連的串口,是串口4和串口2。
④ 硬體串口和軟體串口有什麼不一樣
我來解釋一下,不知道是否就是你所指的問題.
硬體串口: 一般說來是具有版滿足RS232或其他串口通訊連權接協議的串口,
這些協議不光是通訊協議,還有介面協議.比如RS232介面採用12V的電平信
號互相傳送信號.硬體串口的特點就是,你連接這種設備時要用專用串口線
連接設備和主控機.
軟體串口: 一般說來是在通訊協議上採用串口的設備,但在物理連接上,
不一定遵從該串口的硬體協議,比如在USB線上模擬網路通訊,在usb線上模
擬RS232串口.特點是可以用靈活的介面與現成的設備進行通訊.比如,許多
現成的模塊如GPRS,GPS的介面都是串口的,但這個模塊聲明是5V的或3.3V
的介面,那麼這就不能直接接在通用串口上,而需要直接走TTL信號線與CPU
連接.cpu運行一套串口通信協議即可輕松連接它們.
⑤ 硬體串口和軟體串口有什麼不一樣
我來解釋一下,不知道是否就是你所指的問題.
硬體串口: 一般說來是具有滿足內RS232或其他串口通訊連接容協議的串口,
這些協議不光是通訊協議,還有介面協議.比如RS232介面採用12V的電平信
號互相傳送信號.硬體串口的特點就是,你連接這種設備時要用專用串口線
連接設備和主控機.
軟體串口: 一般說來是在通訊協議上採用串口的設備,但在物理連接上,
不一定遵從該串口的硬體協議,比如在USB線上模擬網路通訊,在usb線上模
擬RS232串口.特點是可以用靈活的介面與現成的設備進行通訊.比如,許多
現成的模塊如GPRS,GPS的介面都是串口的,但這個模塊聲明是5V的或3.3V
的介面,那麼這就不能直接接在通用串口上,而需要直接走TTL信號線與CPU
連接.cpu運行一套串口通信協議即可輕松連接它們.
⑥ 上位機軟體串口通訊怎麼檢測終端是否連接
按協議發送數據,得到准確的反饋數據,就是
⑦ 為什麼有的串口調試工具可以連接上而有的確連不上呢
usb轉串口線一樣,在我的電腦上可以正常收發,別的幾台機都不能收發。系統都是win7的64位。驅動一樣。但下載的串口助手幾個都收發正常。程序接別的usb串口轉ttl也正常。郁悶
⑧ windows 環境串口登錄軟體有哪些
Windows環境下的串口編程與DOS環境下的串口編程有很大不同。Windows環境下的編程的最大特徵之一就是設備無關性,它通過設備驅動程序將Windows應用程序同不同的外部設備隔離。Windows封裝了Windows的通信機制,這種方式稱為通信API,Windows程序可以利用Windows通信API進行編程,不用對硬體直接進行操作。這種體系被稱為Windows開放式服務體系(WOSA,Windows Open Services Architectures)。
早期的Windows3.x與Windows 9x/NT/2000的通信API有很大不同,在16位的串列通信程序中,一般使用16位的Windows API通信函數。為使大家對串口通信有一全面的理解,下面簡單介紹一下16位的Windows API通信函數:
(1) 打開和關閉串口
OpenComm()打開串口資源,並指定輸入、輸出緩沖區的大小(以位元組計);
CloseComm()關閉串口;
例:
int idComDev;
idComdev=OpenComm(「COM1」,1024,512);
CloseComm(idComDev);
(2) 初始化串口
BuildCommDCB()、setCommState()填寫設備控制塊DCB,然後對已打開的串口進行參數配置,例:
DCB dcb;
BuildCommDCB(〝COM1:2400,n,8,1〞,&dcb);
SetCommState(&dcb);
(3) 對串口進行讀寫
ReadComm、WriteComm()對串口進行讀寫操作,即數據的接收和發送。例:
char *m_pReceive; int count;
ReadComm(idComDev,m_pReceive,count);
Char wr[30]; int count2;
WriteComm(idComDev,wr,count2);
通過對以上的描述我們可以看出,16位以下的串口通信程序最大的特點就在於串口等外部設備的操作有自己特有的API函數。
Windows 9x/NT/2000中的API一般都支持32位的操作,因此又稱為Win32API。為了在上述系統中實現串列數據傳送,可以使用Win32通信API。Win32通信API基本上是一個串列埠API,不是很適合於區域網(LAN)通信。雖然在線路上發送數據之前,LAN通常將數據位串列化,這和窗口或數據機發送數據之前所作的工作一模一樣,但區域網使用的線路的位數通常比串口少,而且還使用與串口協議很少有類似之處的訪問、路由、安全性和糾錯協議。區域網通信所需要的協議層使得Win32通信API對於這些應用來說很不理想。因此,在網路通信和連接方面,TCP/IP協議要比Win32通信API更適合一些。
Windows操作系統是一個可搶占式的操作系統,所以Windows應用程序常常有被別的程序搶占時間片的可能,因此Win32通信API也不能用於實時通信。實時通信的質量與時間密切相關。例如,數字化音頻數據是實時數據,因為話音的質量依賴於播放它的速率。在錄制音頻時,它就以某個速度被數字化了,該速度就是人們所熟知的采樣速率。聲音必須以相同的采樣率重放,否則聽起來就會太慢或太快。實際中的視頻播放,也不是實時播放,那僅僅是存放在緩沖中的那部分數據。因此,不需要許多協議層的互動式、非實時的通信可以採用Win32通信API來實現。Win32通信API把串口操作(以及並口等)和文件操作統一起來了,使用類似的操作來實現。
(二) Windows串口通信相關API函數
「工欲善其事,必先利其器」,這一節將從使用的角度出發,對和串口通信相關的32位的Windows API函數進行介紹,力圖使你們對其有個全面、准確的認識。
2.1 打開和關閉串口
1. 打開串口
在32位的Windows系統中,串口和其它通信設備是作為文件處理的。串口的打開、關閉、讀取和寫入所用的函數與操作文件的函數完全一致。
通信會話以調用CreateFile()開始。CreateFile()為讀訪問、寫訪問或讀寫訪問「打開」串口。按照Windows的通常做法,CreateFile()返回一個句柄,隨後在打開的埠的操作中使用CreateFile()函數非常復雜,復雜性的原因之一是它是通用的。可以使用CreateFile打開已存在的文件,創建新文件和打開根本就不是文件的設備,例如串口、並口和數據機。CreateFile()函數聲明如下:
HANDLE CreateFile(
LPCTSTR lpszName,
DWORD fdwAccess,
DWORD fdwShareMode,
LPSECURITY_ATTRIBUTES lpsa,
DWORD fdwCreate,
DWORD fdwAttrsAndFlags,
HANDLE hTemplateFile
)
CreateFile函數中的參數解釋如下:
·lpszName:指定要打開的串口邏輯名,用字元串表示,如「COM1」和「COM2」分別表示串口1和串口2。
·fdwAccess:用來指定串口訪問的類型。與文件一樣,串口也是可以被打開以供讀取、寫入或者兩者兼有。
GENERIC_READ位讀取訪問打開埠,GENERIC_READ位寫訪問打開埠。這兩個常數定義如下:
const GENERIC_READ = 0x80000000h;
const GENERIC_WRITE = 0x40000000h;
用戶可以用邏輯操作將這兩個標識符連接起來,為讀/寫訪問許可權打開埠。因為大部分串口通信都是雙向的,因此常常在設置中將兩個標識符連接起來使用。如:
fdwAccess = GENERIC_READ | GENERIC_WRITE;
·fdwShareMode:指定該埠的共享屬性。該參數是為那些由許多應用程序共享的文件提供的。對於不能共享的串口,它必須設置為0。這就是文件與通信設備之間的主要差異之一。如果在當前的應用程序調用CreateFile()時,另一個應用程序已經打開了串口,該函數就會返回錯誤代碼,原因是兩個應用程序不能共享一個埠。然而,同一個應用程序的多個線程可以共享由CreateFile()返回的埠句柄,並且根據安全性屬性設置,該句柄可以被打開埠的應用程序的子程序所繼承。
·Ipsa:引用安全性屬性結構(SECURITY_ARRTIBUTES),該結構定義了一些屬性,例如通信句柄如何被打開埠的應用程序的子程序所繼承。將該參數設置為NULL將為該埠分配預設的安全性屬性。子應用程序所繼承的預設屬性是該埠不能被繼承的。
安全屬性結構SECURITY_ARRTIBUTES結構聲明如下:
typedef struct_SECURITY_ARRTIBUTE {
DWORD nLength;
LPVOID lpSecurityDescriptor;
BOOL bInheritHandle;
} SECURITY_ARRTIBUTE;
SECURITY_ARRTIBUTES結構成員nLength指明該結構的長度,lpSecurityDescriptor指向一個安全描述字元,bInheritHandle表明句柄是否能被繼承。
·fdwCreate:指定如果CreateFile()正在被已有的文件調用時應採取的動作。因為串口總是存在,fdwCreate必須設置成OPEN_EXISTING。該標志告訴Windows不用企圖創建新埠,而是打開已經存在的埠。OPEN_EXISTING常數定義為:
const OPEN_EXISTING = 3;
·fdwAttrsAndFlags:描述了埠的各種屬性。對於文件來說,有可能具有很多屬性,但對於串口,唯一有意義的設置是FILE_FLAG_OVERLAPPED。當創建時指定該設置,埠I/O可以在後台進行(後台I/O也叫非同步I/O)。FILE_FLAG_OVERLAPPED常數定義如下:
const FILE_FLAG_OVERLAPPED = 0x40000000h
·hTemplateFile:指向模板文件的句柄,當埠處於打開狀態時,不使用該參數,因而必須置成0。
調用CreateFile()函數打開COM1串口操作的例子如下所示:
HANDLE hCom;
DWORD dwError;
hCom=CreateFile(「COM1」, // 文件名
GENERIC_READ | GENERIC_WRITE, // 允許讀和寫
0, // 獨占方式
NULL,
OPEN_EXISTING, // 打開而不是創建
FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED, // 重疊方式
NULL
);
if(hCom = = INVALID_HANDLE_VALUE)
{
dwError=GetLastError(); // 處理錯誤
}
一旦埠處於打開狀態,就可以分配一個發送緩沖區和接收緩沖區,並且通過調用SetupComm()實現其它初始化工作。也可以不調用SetupComm()函數,Windows系統也會分配預設的發送和接收緩沖區,並且初始化埠。但為了保證緩沖區的大小與實際需要的一致,最好還是調用該函數。SetupComm()函數聲明如下:
BOOL SetupComm(
HANDLE hFile, // 通信設備句柄
DWORD dwInQueue, // 輸入緩沖區大小
DWORD dwOutQueue // 輸出緩沖區大小
);
SetupComm()函數中各項含義說明如下:
·hFile: 由GreatFile()返回的指向已打開埠的句柄。
·dwInQueue和dwOutQueue: 接收緩沖區的大小和發送緩沖區的大小。這兩個定義並非是實際的緩沖區的大小,指定的大小僅僅是「推薦的」大小,而Windows可以隨意分配任意大小的緩沖區。Windows設備驅動程序可以獲得這兩個數據,並不直接分配大小,而使用來優化性能和避免緩沖區超限。
注意:當使用CreateFile()函數打開串口時:為實現數據機的排他性訪問,共享標識必須設為零;創建標識必須設為OPEN_EXISTING;模板句柄必須置為空。
2. 關閉串口
關閉串口比打開串口簡單得多,只需要調用CloseHandle()函數關閉由CreateHandle()函數返回得句柄即可。
CloseHandle函數聲明如下:
BOOL CloseHandle(
HANDLE hObject // 需關閉的設備句柄
);
使用串口時一般要關閉它,如果忘記關閉串口,串口就會始終處於打開狀態,其它應用程序就不能打開並使用串口了。
2.2 串口配置和串口屬性
Windows 9x/NT/2000中配置串口提供了比Windows的早期版本更為強大的功能,當然相應也更加復雜。CreateFile函數打開串口後,系統將根據上次打開串口時設置的值來初始化串口,可以集成上次打開操作後的數值,包括設備控制塊(DCB)和超時控制結構(COMMTIMEOUTS)。如果是首次打開串口,Windows操作系統就會使用預設的配置。
1. 串口配置
Windows 9x/NT/2000使用GetCommState()函數獲取串口的當前配置,使用SetCommState()重新分配串口資源的各個參數。
GetCommState()函數聲明如下:
BOOL GetCommState(
HANDLE hFile, // 通信設備句柄
LPDCB lpDCB // 指向device-control block structure的指針
);
其中的參數說明如下:
·hFile:由CreateFile()函數返回的指向已打開串口的句柄。
·lpDCB:一個非常重要的結構—設備控制塊DCB ( Device Control Block )。
DCB結構的主要參數說明如下:
·DCBLength: 一位元組為單位指定的DCB結構的大小。
·Baudrate: 用於指定串口設備通信的數據傳輸速率,它可以是實際的數據傳輸速率數值,也可以是下列數據之一:CBR_110, CBR_19200, CBR_300, CBR_38400, CBR_600, CBR_56000, CBR_1200, CBR_57600, CBR_2400, CBR_115200, CBR_4800, CBR_12800, CBR_9600, CBR_25600, CBR_14400。
·fBinary: 指定是否允許二進制。Win32API不支持非二進制傳輸,因此這個參數必須設置為TRUE,如果設置為FALSE則不能正常工作。
·fParity: 指定是否允許奇偶校驗,如果這個參數設置為TRUE,則執行奇偶校驗並報告錯誤信息。
·fOutxCtsFlow: 指定CTS是否用於檢測發送流控制。當該成員為TRUE,而CTS為OFF時,發送將被掛起,直到CTS置ON。
·fOutxDsrFlow: 指定DSR是否用於檢測發送流控制,當該成員為TRUE,而DSR為OFF時,發送將被掛起,直到DSR置ON。
·fDtrControl: 指定DTR流量控制,可以是表1中的任一值。
表1 DTR流量控制
值
功能描述
DTR_CONTROL_DISABLE
禁止DTR線,並保持禁止狀態
DTR_CONTROL_ENABLE
允許DTR線,並保持允許狀態
DTR_CONTROL_HANDSHAKE
允許DTR握手,如果允許握手,則不允許應用程序使用EscapeCommFunction函數調整線路
·fDsrSensitivity: 指定通信驅動程序對DTR信號線是否敏感,如果該位置設為TRUE時,DSR信號為OFF,接收的任何位元組將被忽略。
·fTXContinueOnXoff: 指定當接收緩沖區已滿,並且驅動程序已經發送出XoffChar字元時發送是否停止。當該成員為TRUE時,在接收緩沖區內接收到了緩沖區已滿的位元組XoffLim,並且驅動程序已經發送出XoffChar字元終止接收位元組之後,發送繼續進行。該成員為FALSE時,接收緩沖區接收到代表緩沖區已空的位元組XonLim,並且驅動程序已經發送出恢復發送的XonChar字元後,發送可以繼續進行。
·fOutX: 該成員為TRUE時,接收到XoffChar之後停止發送,接收到XonChar之後發送將重新開始。
·fInX: 該成員為TRUE時,接收緩沖區內接收到代表緩沖區滿的位元組XoffLim之後,XoffChar發送出去,接收緩沖區接收到代表緩沖區已空的位元組XonLim之後,XonChar發送出去。
·fErrorChar: 當該成員為TRUE,並且fParity為TRUE時,就會用ErrorChar成員指定的字元來代替奇偶校驗錯誤的接收字元。