導航:首頁 > 編程系統 > linux串口映射

linux串口映射

發布時間:2023-01-24 00:01:21

Ⅰ 怎麼在linux下通過串口通信啊樹莓派!

首先是你的平台是什麼(cpu),用ioremap函數映射相關寄存器地址,然後就設置串口(uart)寄存器。我只會ARM平台,linux下串口的驅動。

Ⅱ Linux串口相關的操作及綁定

@ toc

可在控制台輸入

也可以用stty設置串口參數

使用後相當於串口回傳,發什麼回什麼

發送數據

可以對串口發送數據比如對com1口

一般情況下串口的名稱全部在dev下面,如果你沒有外插串口卡的話默認是dev下的ttyS* ,一般ttyS0對應com1,ttyS1對應com2,當然也不一定是必然的;

如果有ttyS設備,再看/dev/有沒有ttyS*,如沒有就建立一個:

如果板子的設備中沒有標准串口設備ttyS0,也沒有ttySAC0。/dev下應該有一個USB串口:/dev/ttyUSB0.

當一個串列卡或數據卡被偵測到時,它會被指定成為第一個可用的串列設備。通常是/dev/ttyS1(cua1)或/dev/ttyS2(cua2),這完成看原已內建的串口數目。ttyS*設備會被報告在/var/run/stab內。

PC上的串口一般是ttyS,板子上Linux的串口一般叫做ttySAC

可能是linux下的串口設備沒有打開,需要改變串口設備
的許可權,或者根據文章頭添加用戶到組處理

可以通過以下命令 查看 板子上的硬體埠的內核設備名

該條命令會將 ttyUSB0所對應的硬體埠的kernel設備名 顯現出來, 得到KERNEL== '1-5.5.4', 而不是之前的ttyUSB0

cmd.sh如下:

./getUSB.py 調用當前路徑下的getUSB.py這個Python語言,明確此次是哪個,ttyUSB0,或者ttyUSB1掛載在埠3-1.1上

getUSB.py:

完成之後 ,設置開機啟動cmd.sh(在/etc/rc.local中設置)則每次開機之後,會從/dev/ttydata獲取到固定埠的數據

方式一

寫入內容如下:

方式二

我的硬體序列號:ATTRS{serial}=="FTSYWCXZ"這個號是唯一的

可以通過/dev/usb_0打開串口設備

常用的匹配類型:

Ⅲ linux ssh 怎麼埠映射

本地埠映射(Local Port Forwarding):
目標:將本地埠的數據轉發到遠端埠
應用場景:當我內們需要擁有公網IP的遠程主機做跳板,登陸到與遠程主機同一個區域網的容一台非公網IP機器時,可以在公網IP的遠程主機做本地埠映射,轉發到非公網IP機器上。這樣就只要一次ssh到公網IP主機做了映射的埠就登陸到非公網IP主機上了。
遠端埠映射(Remote Port Forwarding):
目標:將遠端埠的數據轉發到本地埠
應用場景:區域網主機可以通過公網IP訪問遠程主機,但是反過來的時候,如果不建立VPN,則可以通過在區域網機器上做遠端埠映射,這樣通過公網機器就能直接ssh到區域網機器。
動態埠映射(Dynamic Port Forwarding):
目標:充當SOCKS代理
應用場景:在瀏覽器中訪問某些受區域網防火牆限制的網頁時,就可以通過在本地機器做動態埠映射,代理到未受限制的主機上去訪問。

Ⅳ Linux埠映射

可以。請參考下面的設定:
【實現功能】

PC A是

eth0 172.18.10.212 內網

eth1 219.239.xx.xx 外網

PC B是 172.18.10.205 內網

A的8080埠映射到B的80埠

【步驟】

1、 首先應該做的是/etc/sysctl.conf配置文件的 net.ipv4.ip_forward = 1 默認是0

這樣允許iptalbes FORWARD。

2、 在/etc/rc.d/init.d目錄下有iptables 文件,使用格式如下

Usage: ./iptables {start|stop|restart|condrestart|status|panic|save}

相當與service iptables {....}

把iptables 服務停止,清除以前的規則,存檔

到/etc/rc.d/init.d目錄下,運行

./iptables stop

iptalbes -F

iptalbes -X

iptalbes -Z

./iptables save
3、 重新配置規則

iptables -t nat -A PREROUTING -d 219.239.xx.xx -p tcp --dport 8080 -j DNAT --to-destination 172.18.10.205:80

iptables -t nat -A POSTROUTING -d 172.18.10.205 -p tcp --dport 80 -j SNAT --to 172.18.10.212

iptables -A FORWARD -o eth0 -d 172.18.10.205 -p tcp --dport 80 -j ACCEPT

iptables -A FORWARD -i eth0 -s 172.18.10.205 -p tcp --sport 80 -j ACCEPT

DNAT SNAT 的請參考幫助,這里不再陳述。

4、 新的規則存檔

./iptables save

規則存檔後在/etc/sysconfig/iptables這個文件裡面,若你對這個文件很熟悉

直接修改這里的內容也等於命令行方式輸入規則。

5、 啟動iptables 服務

./iptables start

在/proc/net/ip_conntrack文件里有包的流向,如下面

tcp 6 53 TIME_WAIT src=../../221.122.59.2 dst=219.239.xx.xx sport=7958 dport=8080 packets=9 bytes=1753

src=../../172.18.10.205 dst=172.18.10.212 sport=80 dport=7958 packets=9 bytes=5777 [ASSURED] use=1

Ⅳ Linux下埠映射問題

這個是你的防火牆阻止了你對49988埠的訪問,你可以用一下命令解決你的版問題
iptables -A INPUT -p tcp --dport 3306 -j ACCEPT #允許訪問本機3306tcp埠
iptables -t nat -A PREROUTING -p tcp --dport 49988 -j DNAT --to 61.X.X.X:3306 #將對權本機的49988映射到3306
最後保存,再開機也會生效

Ⅵ linux串口無法配置波特率

我們用一條交叉網線把NPort5110 和PC機的網口連接起來,並把NPort上電。

首先,打開控制面板,網路連接。

在本地連接上點右鍵,選擇屬性。

雙擊進入 Internet協議(TCP/IP),點擊「使用下面的IP地址」

寫入 IP 地址和子網掩碼,記住要和NPORT 的IP 地址在同一子網段內。如NPORT 默認IP

為192.168.127.254,255.255.255.0;就需要把PC 機的IP 地址設為192.168.127.XXX,

255.255.255.0,最後一個數字不同即可。

點擊確定。

第二章:網路和串口參數配置

搜索 NPort

打開NPort Administrator(可以在光碟的對應位置找到這個軟體,安裝好),點擊Search,此

時請確認網路防火牆已經關閉。

會搜索到我們的NPort5110,點擊stop,停止搜索。

網路參數配置

雙擊右邊空白處的NPort 設備,會出現以下界面,點擊選擇Network 選項卡,點擊Modify

修改。可以看到以下界面:

我們可以在裡面修改NPort的以下參數:

IPAddress:IP地址。

Netmask:子網掩碼。

Gateway:網關。

IP Configuration:可以配置為靜態IP(Static),或者為DHCP(動態IP)。

DNS Server1和2:DNS,域名解析伺服器。

串口參數配置

點擊 Serial選項卡,點擊Modify修改,雙擊埠進去,可以看到以下界面:

我們可以在裡面修改以下參數:

Baud Rate:波特率,NPort5000 系列只能支持標准波特率,如9600,115200bps 等。

Parity:校驗。

None:無校驗

Even:偶校驗。

Odd:奇校驗。

Space:空。

Mark:標志。

Data Bits:數據位。

Stop Bits:停止位。

Flow Control:流量控制。

None:無流量控制。

XON/XOFF:軟體流控。

RTS/CTS:硬體流控。

FIFO:64bit先進先出,為了降低CPU負載,提高設備性能。可以選擇Enable啟用,或Disable

禁用。

Interface:可選擇RS232,RS422,RS485 2線,或者RS485 4線。(NP5110 只能為RS232)

設置好後,點擊OK,設置保存,設備重新啟動。

第三章:操作模式設置

Real COM映射埠

打開 NPort Administrator(可以在光碟的對應位置找到這個軟體,安裝好),點擊Search,此

時請確認網路防火牆已經關閉。

會搜索到我們的NPort5110,點擊stop,停止搜索。

雙擊右邊的5110,選擇Operating Mode選項卡,確認為Real COM模式:

點擊左邊的第四項:COM MAPPING,

再點擊Add

點擊「OK」,

點擊「Apply」保存

點擊「Yes」,點擊「OK」。

這樣,埠就映射好了。

TCP Server模式的設置(用軟體)

打開 NPort Administrator(可以在光碟的對應位置找到這個軟體,安裝好),點擊Search,此

時請確認網路防火牆已經關閉。

會搜索到我們的NPort5110,點擊stop,停止搜索。如果打開防火牆,可以使用Search IP,

在下面選項框里輸入NPort的IP地址,

點擊 OK,就可以搜索到NPort設備。

雙擊右邊的NP5110,切換到OperatingMode選項卡,點擊Modify,雙擊進去。可以把模式

修改成TCP Server 模式。

裡面的名詞解釋:

Local TCP Port:本地數據埠,指的是NP5110 的數據埠。

Command Port:NP5110 的命令埠。

Max Connection:最大連接數,也就是說同時最大可以有幾台上位機採集到下面串口設備

的數據,NPort5000 系列最大是4 個,NPort6000 和CN2600 系列是8 個。

當最大連接數為2 或以上的時候,右邊的選項Allow Driver Control 和Ignore Jammed IP會開

啟。

Allow Driver Control:當最大連接數為2 或以上時,且此功能打開時,上位機A 需要以

4800bps打開串口,上位機B需要以9600bps打開串口,是可以的。如果此功能關閉,則波

特率需以固件中的設置一致。

Ignore Jammed IP:當最大連接數為2 或以上時,且此功能打開時,其中一台上位機A死

機,上位機B 依然可以正常接收數據。如果此功能關閉,則上位機B 也不能收到串口的數

據了。

Ⅶ 如何在linux上使用串口設備

簡單的運行 dmesg 命令
$ dmesg | grep tty
輸出:
[ 37.531286] serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
[ 37.531841] 00:0b: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
[ 37.532138] 0000:04:00.3: ttyS1 at I/O 0x1020 (irq = 18) is a 16550A

setserial 命令
setserial 是一個程序用於設定並/或報告某個串口關聯的配置信息。該信息包括串口用到的I/O 埠和中斷號,以及Break鍵是否應被解釋為Secure Attention Key 等等。 僅僅是輸出如下的命令:
$ setserial -g /dev/ttyS[0123]
輸出:
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: 16550A, Port: 0x1020, IRQ: 18
/dev/ttyS2, UART: unknown, Port: 0x03e8, IRQ: 4
/dev/ttyS3, UART: unknown, Port: 0x02e8, IRQ: 3

帶-g選項的setserial幫助找到你的Linux板子上的物理串口。
Linux 串口控制台程序
一旦串口被確定了,你就能使用許多的工具來配置Linux板子:
minicom- 用於控制modem和連接到mp 設備的最好的串口通信程序。
wvidial or other GUI dial up networking program - 一個內建智能PPP 撥號器。
getty / agetty - agetty 打開一個 tty 埠, 提示登錄名稱並調用 /bin/login 命令。
grub / lilo configuration - 配置串口為系統控制台。

Ⅷ linux系統中串口如何通訊

這個難實現,試試iptables的轉發思路能用嗎專?

轉發TCP 8081到屬xx.xx.xx.xx:
#iptables -t nat -I PREROUTING -p tcp –dport 8081 -j DNAT –to xx.xx.xx.xx

Ⅸ Linux串口連接ttyS0、ttyS1是什麼意思

這是通信串口名稱。
在Linux環境下,串口名從ttyS0開始依次是ttyS1、ttyS2等。在本程序中,使用ttyS0作為通信串口。在打開ttyS0的時候,選項 O_NOCTTY 表示不能把本串口當成控制終端,否則用戶的鍵盤輸入信息將影響程序的執行; O_NDELAY表示打開串口的時候,程序並不關心另一端 的串口是否在使用中。在Linux中,打開串口設備和打開普通文件一樣,使用的是open()系統調用。比如我么打開串口設備1也就是COM1,只需要:
fd = open("/dev/ttyS0", O_RDWR | O_NOCTTY | O_NDELAY );
打開的串口設備有很多設置選項。本文中使用int setup_com(int fd)設置。在系統頭文件中 定義了終端控制結構struct termios,tcgetattr()和tcsetattr()兩個系統函數獲得和設置這些屬性。結構 struct termios中的域描述的主要屬性包括:
c_cflag : 控制選項
c_lflag : 線選項
c_iflag : 輸入選項
c_oflag :輸出選項
c_cc :控制字元
c_ispeed :輸入數據波特率
c_ospeed :輸出數據波特率
如果要設置某個選項,那麼就使用"|=「運算,如果關閉某個選項就使用」&=「和」~"運算。本文使用的各個選項的意義定義如下:
c_cflag:
CLOCAL 本地模式,不改變埠的所有者
CREAD 表示使能數據接收器
PARENB 表示偶校驗
PARODD 表示奇校驗
CSTOPB 使用兩個停止位
CSIZE 對數據的bit使用掩碼
CS8 數據寬度是8bit
c_lflag:
ICANON 使能規范輸入,否則使用原始數據(本文使用)
ECHO 回送(echo)輸入數據
ECHOE 回送擦除字元
ISIG 使能SIGINTR,SIGSUSP, SIGDSUSP和 SIGQUIT 信號
c_iflag:
IXON 使能輸出軟體控制
IXOFF 使能輸入軟體控制
IXANY 允許任何字元再次開啟數據流
INLCR 把字元NL(0A)映射到CR(0D)
IGNCR 忽略字元CR(0D)
ICRNL 把CR(0D)映射成字元NR(0A)
c_oflag: OPOST 輸出後處理,如果不設置表示原始數據(本文使用原始數據)
c_cc[VMIN]: 最少可讀數據
c_cc[VTIME]: 等待數據時間(10秒的倍數)

Ⅹ linux怎麼判斷串口接收到數據

虛擬機中的串口連接可以採用兩種方法。一種是指定虛擬機的串口連接到實際的COM上,例如開發機連接到COM1,目標機連接到COM2,然後把兩個串口通過串口線相連接。另一種更為簡便的方法是:在較高一些版本的VMware中都支持把串口映射到命名管道,把兩個虛擬機的串口映射到同一個命名管道。例如,在兩個虛擬機中都選定同一個命名管道 \\.\pipe\com_1,指定target機的COM口為server端,並選擇"The other end is a virtual machine"屬性;指定development機的COM口端為client端,同樣指定COM口的"The other end is a virtual machine"屬性。對於IO mode屬性,在target上選中"Yield CPU on poll"復選擇框,development機不選。
串口是開發者經常要使用到的,我們有些時候需要使用windows開發,然而window裝在了虛擬機中,我們怎麼樣在虛擬機中使用串口呢?
1、在virtualbox中選擇啟用串口,埠模式選擇Host device.
由於現有兩個系統但是只有一個物理串口,所以虛擬機要通過主機的串口文件間接獲取數據,主機是linux,串口設備為/dev/ttyS0
2、埠/文件位置一欄填入:/dev/ttyS0,啟動虛擬機。
3、如果無法啟動虛擬機,很有可能是沒有對ttyS0設備的讀寫許可權,(可以ls -l /dev/ttyS0查看以下許可權)於是我們要修改ttyS0的許可權,在終端中輸入:sudo chmod 777 /dev/ttyS0 這樣就將ttyS0的所有許可權都打開了。啟動虛擬機,這時候就可以在虛擬機中(winXP)使用串口了

閱讀全文

與linux串口映射相關的資料

熱點內容
ps入門必備文件 瀏覽:348
以前的相親網站怎麼沒有了 瀏覽:15
蘋果6耳機聽歌有滋滋聲 瀏覽:768
怎麼徹底刪除linux文件 瀏覽:379
編程中字體的顏色是什麼意思 瀏覽:534
網站關鍵詞多少個字元 瀏覽:917
匯川am系列用什麼編程 瀏覽:41
筆記本win10我的電腦在哪裡打開攝像頭 瀏覽:827
醫院單位基本工資去哪個app查詢 瀏覽:18
css源碼應該用什麼文件 瀏覽:915
編程ts是什麼意思呢 瀏覽:509
c盤cad佔用空間的文件 瀏覽:89
不銹鋼大小頭模具如何編程 瀏覽:972
什麼格式的配置文件比較主流 瀏覽:984
增加目錄word 瀏覽:5
提取不相鄰兩列數據如何做圖表 瀏覽:45
r9s支持的網路制式 瀏覽:633
什麼是提交事務的編程 瀏覽:237
win10打字卡住 瀏覽:774
linux普通用戶關機 瀏覽:114

友情鏈接