❶ linux璇诲彇涓插彛鏁版嵁linux璇诲彇涓插彛
濡備綍鏌ョ湅linux涓嬩覆鍙f槸鍚﹀彲鐢?涓插彛鍚嶇О绛夛紵
1銆佹煡鐪嬩覆鍙f槸鍚﹀彲鐢锛屽彲浠ュ逛覆鍙e彂閫佹暟鎹姣斿傚筩om1鍙o紝echolyjie126>/dev/ttyS0
2銆佹煡鐪嬩覆鍙e悕绉颁娇鐢╨s-l/dev/ttyS*涓鑸鎯呭喌涓嬩覆鍙g殑鍚嶇О鍏ㄩ儴鍦╠ev涓嬮潰锛屽傛灉浣犳病鏈夊栨彃涓插彛鍗$殑璇濋粯璁ゆ槸dev涓嬬殑ttyS*,涓鑸瑃tyS0瀵瑰簲com1锛宼tyS1瀵瑰簲com2锛屽綋鐒朵篃涓嶄竴瀹氭槸蹇呯劧鐨勶紱
3銆佹煡鐪嬩覆鍙i┍鍔锛歝at/proc/tty/drivers/serial
4銆佹煡鐪嬩覆鍙h惧囷細dmesg|grepttyS*
linux鏌ョ湅鏌愪釜涓插彛鍙傛暟锛堟尝鐗圭巼锛屾暟鎹浣嶇瓑锛夊懡浠や粈涔堬紵
鐢–AT鍛戒护鏌ョ湅#cat/proc/tty/driver/serial濡傛灉闇瑕侀厤缃涓插彛鍙傛暟锛宮inicom鏄涓寰堝ソ鐨勯夋嫨銆
涓銆佸畨瑁卻udoapt-getinstallminicom
浜屻侀厤缃閰嶇疆minicom鐨勫弬鏁拌繍琛$sudominicom-s渚胯繘鍏ヤ簡minicom鐨勯厤缃鐣岄潰锛屼娇鐢ㄤ笂涓嬮敭閫夋嫨Serialportsetup锛屽洖杞︺傛ゆ椂鍏夋爣鍦ㄢ渃hangewhichsetting鈥濆悗闈㈠仠鐣欙紝瀹冪殑涓婇潰鏈夊備笅鑿滃崟锛氬彧闇杈撳叆涓婇潰瀵瑰簲鐨勫瓧姣嶏紝灏卞彲浠ヨ繘濡傜浉搴旂殑鑿滃崟杩涜岃剧疆銆傝剧疆瀹屾垚锛屽洖杞︼紝鍏夋爣浼氬洖鍒扳渃hangewhichsetting鈥濆悗闈锛屽傛ら噸澶嶃傚畬鏋濇.鎴愭寜鍥炶溅杩斿洖涓昏彍鍗曞嵆鍙銆
linux鏌ユ壘涓插彛锛
1銆佽惧囧叆鍙 鍙浠ユ煡/dev/ttyS*銆/dev/*uart*锛堜富璁惧囧彿4鎴栬204锛夛紝绗涓涓插彛涓鑸涓簍tyS0銆*uart0绛 USB杞涓插彛璁惧囦竴鑸涓/dev/ttyUSB*(涓昏惧囧彿188)锛岀涓鍙d竴鑸涓簍tyUSB0 2銆佷互涓/dev涓嬪彧鏄涓插彛鐨勫叆鍙o紝鍏蜂綋璁惧囧瓨鍦ㄤ笌鍚﹂渶瑕佹寜鍏抽敭瀛楋紙ttyS銆乼tyUSB銆乽art锛夋煡璇/proc/devices浠ョ‘瀹氥 3銆佷覆鍙d负閫氳绔鍙o紝鏈夊氫釜涓插彛璁惧囨椂锛岃佺‘瀹氭e湪琚杩炴帴鐨勪覆鍙f槸鍝涓锛岄渶瑕佹娴嬩竴涓嬶紝濡傦細 cat/dev/ttyS0
linux涓插彛璇诲彇鏁版嵁琚鎴鏂锛屾庢牱涓娆$寷妫浜╁叏閮ㄦ帴鏀讹紵
娌″姙娉曚繚璇佽兘澶熶竴娆″叏閮ㄦ帴鏀讹紝鍙鑳借嚜宸辩紦瀛樿捣鏉ュ勭悊銆傛瘮濡傦紝鍙戦佹暟鎹鏃跺欏炲姞甯︽湁闀垮害鐨勬暟鎹澶翠互鍙婃湯灏剧殑鏍¢獙锛岀敤select瀵逛覆鍙e仛闈為樆濉炶诲彇锛岃绘槬缂哄埌鏁版嵁鍚庢鏌ユ槸鍚﹀畬鏁达紝涓嶅畬鏁村氨鎺ョ潃璇伙紝鐩村埌鑾峰緱瀹屾暣鏁版嵁鍐嶅勭悊銆
❷ Linux下如何测试及使用USB转串口线
如果有,则不需要再装驱动。另外如果有的话最好再用dmesg | grep usb查找如果看到: “drivers/usb/serial/usb-serial.c: USB Serial support registered for Generic” 就说明设备已被识别,然后往下看 drivers/usb/serial/usb-serial.c: USB Serial support registered for PL-2303 usb 2-2: PL-2303 converter now attached to ttyUSB0 (or usb/tts/0 for devfs)如果没有则需要驱动程序,一般硬件厂商都会提供,如果真的没有的话就只有到网上下载了,一般2.6内核以上的都支持。 安装完毕后再输入这个命令瞧瞧,是否安装成功。说明我的usb转串口芯片是PL-2303,对应系统设备是 dev/usb/ttUSB0,最后只需在minicom配置文件里将端口改成/dev/usb/ttyUSB0就可以使用了:) 3、检测步骤,检测步骤如下,只是需要主意的是设置串口设备的时候可能不是ttyS2了,有可能是ttyUSB0或者ttyUSB1等之类的,我这里就是ttyUSB0(我用的是Fedora Core 8)。 因此,最好请您先看一下/dev下面的文件。 USB转串口安装 型号PL2303h 1、插入USB转串口到主机, 2、启动 Linux,打开终端,检查是否存在设备/dev/ttyUSB0,如果没有就建立一个: mknod /dev/ttyUSB0 c 188 0 如果有多个USB口,可以类推,建立/dev/ttyUSB[1-n],注意从设备号要累加, 如:mknod /dev/ttyUSB[1-n] c 188 [1-n] 3、输入命令:#setserial /dev/ttyS0 -aP (COM-1) 显示内容:/dev/ttyS0, Line 0, UART: 16550A, Port: 0x3f8, irq: 4 Baud_base: 115200, clos_delay: 50, divisor: 0 closing_wait: 3000, closing_wait2: infinite Flags: spd_normal skip_test 4、输入命令:#setserial /dev/ttyS2 -a (COM-3) 显示内容:/dev/ttyS2, Line 2, UART: unknown, Port: 0x3e8, irq: 4 Baud_base: 115200, clos_delay: 50, divisor: 0 closing_wait: 3000, closing_wait2: infinite Flags: spd_normal skip_test 第3、4步操作的目的主要是对主机自带串口及PCI扩展串口的区别。区别在于4显示的内容中UART:未知unknow。不过若您检测这一步的时候 UART为16550A而不是unknow,证明你的系统已经认识了扩展的串口,不需要进一步设置,直接跳入第8步测试就可以了。 5、设置好了后是不是需要测试一下是否能够通讯呢?最好的办法是两台pc相连。如果pc为windows操作系统就用超级终端,是linux呢就用minicom吧 6、装有linux的机器,首先需要设置一下监听的串口参数,输入命令 #minicom -s 进入界面后有个框弹出来,如果你学过英文的话,就会知道选择哪个的。应该是第三个吧,串口参数设置。
❸ linux涓插彛閫氫俊
杩欐槸閫氫俊涓插彛鍚嶇О銆
鍦↙inux鐜澧冧笅锛屼覆鍙e悕浠巘tyS0寮濮嬩緷娆℃槸ttyS1銆乼tyS2绛夈傚湪鏈绋嬪簭涓锛屼娇鐢╰tyS0浣滀负閫氫俊涓插彛銆傚湪鎵撳紑ttyS0鐨勬椂鍊欙紝閫夐」 O_NOCTTY 琛ㄧず涓嶈兘鎶婃湰涓插彛褰撴垚鎺у埗缁堢锛屽惁鍒欑敤鎴风殑閿鐩樿緭鍏ヤ俊鎭灏嗗奖鍝嶇▼搴忕殑鎵ц岋紱 O_NDELAY琛ㄧず鎵撳紑涓插彛鐨勬椂鍊欙紝绋嬪簭骞朵笉鍏冲績鍙︿竴绔 鐨勪覆鍙f槸鍚﹀湪浣跨敤涓銆傚湪Linux涓锛屾墦寮涓插彛璁惧囧拰鎵撳紑鏅閫氭枃浠朵竴鏍凤紝浣跨敤鐨勬槸open()绯荤粺璋冪敤銆傛瘮濡傛垜涔堟墦寮涓插彛璁惧1涔熷氨鏄疌OM1锛屽彧闇瑕侊細
fd = open("/dev/ttyS0", O_RDWR | O_NOCTTY | O_NDELAY );
鎵撳紑鐨勪覆鍙h惧囨湁寰堝氳剧疆閫夐」銆傛湰鏂囦腑浣跨敤娌″皹int setup_com(int fd)璁剧疆銆傚湪绯荤粺澶存枃浠朵腑 瀹氫箟杩规福浜嗙粓绔鎺у埗缁撴瀯struct termios锛宼cgetattr()鍜宼csetattr()涓や釜绯荤粺鍑芥暟鑾峰緱鍜岃剧疆杩欎簺灞炴с傜粨鏋 struct termios涓鐨勬灟宸炵呭煙鎻忚堪鐨勪富瑕佸睘鎬у寘鎷锛
c_cflag 锛 鎺у埗閫夐」
c_lflag 锛 绾块夐」
c_iflag 锛 杈撳叆閫夐」
c_oflag 锛氳緭鍑洪夐」
c_cc 锛氭帶鍒跺瓧绗
c_ispeed 锛氳緭鍏ユ暟鎹娉㈢壒鐜
c_ospeed 锛氳緭鍑烘暟鎹娉㈢壒鐜
濡傛灉瑕佽剧疆鏌愪釜閫夐」锛岄偅涔堝氨浣跨敤"|=鈥滆繍绠楋紝濡傛灉鍏抽棴鏌愪釜閫夐」灏变娇鐢ㄢ&=鈥滃拰鈥潂"杩愮畻銆傛湰鏂囦娇鐢ㄧ殑鍚勪釜閫夐」鐨勬剰涔夊畾涔夊備笅锛
c_cflag锛
CLOCAL 鏈鍦版ā寮忥紝涓嶆敼鍙樼鍙g殑鎵鏈夎
CREAD 琛ㄧず浣胯兘鏁版嵁鎺ユ敹鍣
PARENB 琛ㄧず鍋舵牎楠
PARODD 琛ㄧず濂囨牎楠
CSTOPB 浣跨敤涓や釜鍋滄浣
CSIZE 瀵规暟鎹鐨刡it浣跨敤鎺╃爜
CS8 鏁版嵁瀹藉害鏄8bit
c_lflag锛
ICANON 浣胯兘瑙勮寖杈撳叆锛屽惁鍒欎娇鐢ㄥ師濮嬫暟鎹锛堟湰鏂囦娇鐢锛
ECHO 鍥為(echo)杈撳叆鏁版嵁
ECHOE 鍥為佹摝闄ゅ瓧绗
ISIG 浣胯兘SIGINTR锛孲IGSUSP锛 SIGDSUSP鍜 SIGQUIT 淇″彿
c_iflag锛
IXON 浣胯兘杈撳嚭杞浠舵帶鍒
IXOFF 浣胯兘杈撳叆杞浠舵帶鍒
IXANY 鍏佽镐换浣曞瓧绗﹀啀娆″紑鍚鏁版嵁娴
INLCR 鎶婂瓧绗NL(0A)鏄犲皠鍒癈R(0D)
IGNCR 蹇界暐瀛楃CR(0D)
ICRNL 鎶奀R(0D)鏄犲皠鎴愬瓧绗NR(0A)
c_oflag锛 OPOST 杈撳嚭鍚庡勭悊锛屽傛灉涓嶈剧疆琛ㄧず鍘熷嬫暟鎹锛堟湰鏂囦娇鐢ㄥ師濮嬫暟鎹锛
c_cc[VMIN]锛 鏈灏戝彲璇绘暟鎹
c_cc[VTIME]锛 绛夊緟鏁版嵁鏃堕棿(10绉掔殑鍊嶆暟)