工具:cmake cutecom/minicom
串口检测:
Centos6
1.检查系统是否支持串口
[root@admin root]# dmesg | grep tty
ttyS0 at 0x03f8 (irq = 4) is a 16550A
ttyS1 at 0x02f8 (irq = 3) is a 16550A
出现以上S0,S1表示支持。
2.添加以下命令到 /etc/inittab 文件中
s0:2345:respawn:/sbin/agetty -L -f /etc/issue.serial 9600 ttyS0 vt100
9600为波特率,可根据自己的需要修改
3.添加以下道/etc/securetty中,表示可以以root身份登录终端
ttyS0
4.修改 /boot/grub/grub.conf文件,在kernel行最后加console=tty0 console=ttyS0,9600n8
title CentOS (2.6.18-238.5.1.el5.centos.plus)
root (hd0,0)
kernel /vmlinuz-2.6.18-238.5.1.el5.centos.plus ro root=/dev/VolGroup00/LogVol00 console=tty0 console=ttyS0,9600n8
initrd /initrd-2.6.18-238.5.1.el5.centos.plus.img
title Red Hat Enterprise Linux Server (2.6.18-164.el5)
9600波特率,8位与/etc/inittab文件中相同
5.重启便可登录串口,登录信息如下:
协议选择:Serial
端口选择:根据本机识别的com来登录(windows可通过设备管理器查看连接的COM几)
波特率选择:根据配置文件inittab中设置
数据位:8
奇偶校验:无
停止位:1
数据流控制处全都不勾选
Centos7
1.检查系统是否支持串口
[root@localhost default]# dmesg |grep tty
[ 0.000000] console [tty0] enabled
[ 2.213169] 00:06: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
出现以上console enabled表示支持。
2.修改配置文件/etc/default/grub,添加一行:
GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,9600"
表明波特率9600,tty0,ttyS0根据第一步命令查出。
3.更新grub2配置文件
命令:grub2-mkconfig -o /boot/grub2/grub.cfg
4.重启即可登录,登录方式如下:
协议选择:Serial
端口选择:根据本机识别的com来登录(windows可通过设备管理器查看连接的COM几)
波特率选择:根据配置文件inittab中设置
数据位:8
奇偶校验:无
停止位:1
数据流控制处全都不勾选
串口更改命令:
确认驱动
dmesg|grep ttyUSB0
[546072.956140] usb 3-14: pl2303 converter now attached to ttyUSB0
如出现类似信息,则说明驱动已正常
2.确认传输速率
[root@101 ~]# stty -a -F /dev/ttyUSB0
speed 9600 baud; rows 0; columns 0; line = 0;
如上9600,就是速率了
一、载 cutecom 源码 及cmake
tar.gz 解压:tar -zxvf 压缩文件名.tar.gz
二、安装
》1)cmake
CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。CMake 可以编译源代码、制作程式库、产生适配器(wrapper)、还可以用任意的顺序建构执行档。“CMake”这个名字是“cross platform make”的缩写。
1. cmake安装
(1)从源码安装
下载cmake源码 cmake-2.8.11.2.tar.gz
http://www.cmake.org/cmake/resources/software.html
这里面包含一个bootstrap 文件,运行这个文件进行安装。
root用户下输入以下命令:
tar xvf cmake-2.8.11.2.tar.gz
cd cmake-2.8.11.2
./bootstrap make make install
make
make install
如果已经安装了cmake,想要安装新版本,则:
cd cmake-*.*.*
cmake .
make
make install
(2)从二进制安装
sudo apt-get install cmake
2、cmake 运行
(1)运行cmake with GUI
如果系统中有curses库的话,cmake将生成一个可执行文件ccmake,它是一个基于文本程序的终端,有点类似windows GUI。
在源码目录中运行ccmake .,生成的二进制文件存放在源码目录下
当然也可以在其他目录下运行ccmake,只是要指定你想编译的源码的路径
ccmake的使用
当我们在源码目录下运行ccmake . 时,终端将显示如下:
当我们键入c时,ccmake将编译
当我们键入方向键时,可以选择cache entry
当我们键入enter时,可以编辑cache entry
当我们键入g时,将生成Makefile,然后退出
当我们键入h时,将弹出帮助文档
当我们键入q时,将退出ccmake
当我们键入t时,可以打开或关闭advanced cache entry
(2)运行cmake from the command line
如果源码没有太多的选项(在CMakeCache.txt文件中),可以只用cmake .来产生Makefile。
如果源码选项太多,比如VTK,可以把参数-i传递给cmake,如:cmake -i .,
cmake将让你为每一个cache file文件中的选项指定一个值,也能让你增加新的选项到文件CMakeCache.txt中,或者使用ccmake,或者使用CMakeSetup。
当然,也可以传递设置选项的参数给cmake,如:
cmake -DVARIABLE:TYPE=VALUE .
3、 CMake cache
cmake第一次运行的时候,它将产生一个文件叫CMakeCache.txt,该文件可以被看作一个配置文件,它里面的内容就像传递给configure命令的参数集,CMake GUI可以帮你很容易修改它,当然也可以直接对该文件做修改;如果你的CMakeLists.txt文件做过较大幅度的修改,你需要从cache中删除相关的选项,如果你还没有手动编辑过cache文件,在你重新运行cmake之前需删除它。
4、 Cmake语法
(1)基本概念
cmake使用Cmake dfjs;dfasfLists.txt文件,该文件用include或者add_subdirectory命令来增加额外的输入文件。
注释行以#开头到该行结尾
命令是由命令名,加括号,括号中的参数用空白隔开,它可以是内建的命令如add_library,或者用户定义的宏或函数
所有的空格,包含空白符,空行,tabs,当然除了用来隔开参数的空白,都被忽略
(2)变量
。字符串
一个字符串是用双引号括起来的,也可以被分隔在多行,如:
set(MY_STRING “this is a string with a
newline in
it”)
在一个字符串中也可以用变量,如:
set(VAR “
hello
world
”)
当执行message(“/${VAR}=${VAR}”)后,将打印:
${VAR}=
hello
world
也可以message(“/n/thello world”)后,将打印:
hello world
。字符串列表
cmake基本的数据类型为字符串,也可以支持字符串列表,如:
set(VAR a;b;c)或set(VAR a b c)将把VAR设置为字符串列表
要使用VAR,可以用${VAR},如:
command(${VAR}),它相当于command(a b c)
如果想把一个字符串列表作为单个参数传递给命令,可以用双引号,如:
command(“${VAR}”),相当于command(“a b c”)
(3)流程控制
。判断
if(var)
some_command(...)
endif(var)
当var的值不为empty,0,N,NO,OFF,FALSE,NOTFOUND
-NOTFOUND,some_command(...)将被执行
。循环
set(VAR a b c)
foreach(f ${VAR})
message(${f})
endforeach(f)
用变量f依次代替a,b,c执行message()
。宏和函数定义
定义一个宏hello
macro(hello MESSAGE)
message(${MESSAGE})
endmacro(hello)
调用宏hello
hello(“hello world”)
定义一个函数hello
function(hello MESSAGE)
message(${MESSAGE})
endfunction(hello)
(4)正则表达式
很多CMake命令如if,会使用正则表达式作为参数,下面是正则表达式会用到的特殊字符:
^:匹配一行或一个字符串的开头
$:匹配一行或一个字符串的结尾
.:匹配单个字符
[]:匹配方括号中任意字符或字符串
[^]:匹配不是方括号中的字符或字符串
[-]:匹配在dash任意一边的字符
*:匹配0或多个先前的字符序列
+:匹配1或多个先前的字符序列
?:匹配0或1个先前的字符序列
():保存一个匹配的表达式,以便以后使用
参考:http://www.cmake.org/cmake/help/documentation.html
》2)cutecom
-
下载 cutecom 源码
-
安装依赖包
sudo yum install -y cmake qt-devel
-
编译
-
cmake .
make
-
运行
./cutecom
Ubuntu
-
安装 cutecom 软件包
sudo apt-get install -y cutecom
-
运行
cutecom
运行 ''cutecom",界面如下: