A. 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秒的倍數)
B. linux中deb如何安裝
1)安裝軟體x0dx0a命令行:dpkg -i <.deb file name>x0dx0a示例:dpkg -i avg71flm_r28-1_i386.debx0dx0a2)安裝一個目錄下面所有的軟體包x0dx0a命令行:dpkg -Rx0dx0a示例:dpkg -R /usr/local/srcx0dx0a3)釋放軟體包,但是不進行配置x0dx0a命令行:dpkg _-unpack package_file 如果和-R一起使用,參數可以是一個目錄x0dx0a示例:dpkg _-unpack avg71flm_r28-1_i386.debx0dx0a4)重新配置和釋放軟體包x0dx0a命令行:dpkg _configure package_filex0dx0a如果和-a一起使用,將配置所有沒有配置的軟體包x0dx0a示例:dpkg _configure avg71flm_r28-1_i386.debx0dx0a5)刪除軟體包(保留其配置信息)x0dx0a命令行:dpkg -rx0dx0a示例:dpkg -r avg71flmx0dx0a6)替代軟體包的信息x0dx0a命令行:dpkg _update-avail