@ toc
成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計的開發(fā),更需要了解用戶,從用戶角度來建設(shè)網(wǎng)站,獲得較好的用戶體驗。創(chuàng)新互聯(lián)建站多年互聯(lián)網(wǎng)經(jīng)驗,見的多,溝通容易、能幫助客戶提出的運營建議。作為成都一家網(wǎng)絡(luò)公司,打造的就是網(wǎng)站建設(shè)產(chǎn)品直銷的概念。選擇創(chuàng)新互聯(lián)建站,不只是建站,我們把建站作為產(chǎn)品,不斷的更新、完善,讓每位來訪用戶感受到浩方產(chǎn)品的價值服務(wù)。
可在控制臺輸入
也可以用stty設(shè)置串口參數(shù)
使用后相當(dāng)于串口回傳,發(fā)什么回什么
發(fā)送數(shù)據(jù)
可以對串口發(fā)送數(shù)據(jù)比如對com1口
一般情況下串口的名稱全部在dev下面,如果你沒有外插串口卡的話默認(rèn)是dev下的ttyS* ,一般ttyS0對應(yīng)com1,ttyS1對應(yīng)com2,當(dāng)然也不一定是必然的;
如果有ttyS設(shè)備,再看/dev/有沒有ttyS*,如沒有就建立一個:
如果板子的設(shè)備中沒有標(biāo)準(zhǔn)串口設(shè)備ttyS0,也沒有ttySAC0。/dev下應(yīng)該有一個USB串口:/dev/ttyUSB0.
當(dāng)一個串行卡或數(shù)據(jù)卡被偵測到時,它會被指定成為第一個可用的串行設(shè)備。通常是/dev/ttyS1(cua1)或/dev/ttyS2(cua2),這完成看原已內(nèi)建的串口數(shù)目。ttyS*設(shè)備會被報告在/var/run/stab內(nèi)。
PC上的串口一般是ttyS,板子上Linux的串口一般叫做ttySAC
可能是linux下的串口設(shè)備沒有打開,需要改變串口設(shè)備
的權(quán)限,或者根據(jù)文章頭添加用戶到組處理
可以通過以下命令 查看 板子上的硬件端口的內(nèi)核設(shè)備名
該條命令會將 ttyUSB0所對應(yīng)的硬件端口的kernel設(shè)備名 顯現(xiàn)出來, 得到KERNEL== '1-5.5.4', 而不是之前的ttyUSB0
cmd.sh如下:
./getUSB.py 調(diào)用當(dāng)前路徑下的getUSB.py這個Python語言,明確此次是哪個,ttyUSB0,或者ttyUSB1掛載在端口3-1.1上
getUSB.py:
完成之后 ,設(shè)置開機啟動cmd.sh(在/etc/rc.local中設(shè)置)則每次開機之后,會從/dev/ttydata獲取到固定端口的數(shù)據(jù)
方式一
寫入內(nèi)容如下:
方式二
我的硬件序列號:ATTRS{serial}=="FTSYWCXZ"這個號是唯一的
可以通過/dev/usb_0打開串口設(shè)備
常用的匹配類型:
linux 提供了各種工具, Linux 使用 ttySx 作為一個串口設(shè)備的名稱。例如,COM1 (DOS/Windows 名字) 是 ttyS0, COM2 是 ttyS1 等等。
任務(wù): 顯示檢測到的系統(tǒng)串口支持
簡單的運行 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 是一個程序用于設(shè)定并/或報告某個串口關(guān)聯(lián)的配置信息。該信息包括串口用到的I/O 端口和中斷號,以及Break鍵是否應(yīng)被解釋為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和連接到dump 設(shè)備的最好的串口通信程序。
wvidial or other GUI dial up networking program - 一個內(nèi)建智能PPP 撥號器。
getty / agetty - agetty 打開一個 tty 端口, 提示登錄名稱并調(diào)用 /bin/login 命令。
grub / lilo configuration - 配置串口為系統(tǒng)控制臺。
簡單說幾句吧,linux下的設(shè)備都是文件,流程也無非是open, read/write, close等當(dāng)然,串口你得設(shè)置各種屬性才行對不對,比如在win下的超級終端就設(shè)置了波特率啊,停止位啊,奇偶校驗啊什么的,這些屬性都通過 int tcgetattr(int fd, struct termios *termios_p); int tcsetattr(int fd, int optional_actions, const struct termios *termios_p);函數(shù)來設(shè)置。完整代碼嗎自己去google,一把一把的,其實最重要的是設(shè)置好屬性,剩下的就是read,write的問題咯。希望對你有用對了,了解終端函數(shù)的詳情請在linux命令行終端獲取: man termios