linux串口设置命令 linux设置串口内核参数

linux 内核 配置串口由于linux的内核参数信息都存在内存中 , 因此可以通过命令直接修改,并且修改后直接生效 。但是,当系统重新启动后,原来设置的参数值就会丢失 , 而系统每次启动时都会自动去/etc/sysctl.conf文件中读取内核参数,因此将内核的参数配置写入这个文件中,是一个比较好的选择 。
首先打开/etc/sysctl.conf文件,查看如下两行的设置值,这里是:
kernel.shmall = 2097152
kernel.shmmax = 4294967295 如果系统默认的配置比这里给出的值大,就不要修改原有配置 。同时在/etc/sysctl.conf文件最后,添加以下内容:
fs.file-max = 6553600
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
这里的“fs.file-max = 6553600”其实是由“fs.file-max = 512 * processes”得到的,我们指定processes的值为12800,即为“fs.file-max =512 *12800” 。
sysctl.conf文件修改完毕后,接着执行“sysctl -p”使设置生效 。
【linux串口设置命令 linux设置串口内核参数】[root@localhost ~]# sysctl -p 常用的内核参数的含义如下 。
kernel.shmmax:表示单个共享内存段的最大值,以字节为单位 , 此值一般为物理内存的一半,不过大一点也没关系,这里设定的为4gb , 即“4294967295/1024/1024/1024=4g” 。
kernel.shmmni:表示单个共享内存段的最小值,一般为4kb,即4096bit.
kernel.shmall:表示可用共享内存的总量,单位是页,在32位系统上一页等于4kb,也就是4096字节 。
fs.file-max:表示文件句柄的最大数量 。文件句柄表示在linux系统中可以打开的文件数量 。
ip_local_port_range:表示端口的范围 , 为指定的内容 。
kernel.sem:表示设置的信号量 , 这4个参数内容大小固定 。
net.core.rmem_default:表示接收套接字缓冲区大小的缺省值(以字节为单位) 。
net.core.rmem_max :表示接收套接字缓冲区大小的最大值(以字节为单位)
net.core.wmem_default:表示发送套接字缓冲区大小的缺省值(以字节为单位) 。
net.core.wmem_max:表示发送套接字缓冲区大小的最大值(以字节为单位) 。
Linux串口相关的操作及绑定@ toc
可在控制台输入
也可以用stty设置串口参数
使用后相当于串口回传 , 发什么回什么
发送数据
可以对串口发送数据比如对com1口
一般情况下串口linux串口设置命令的名称全部在dev下面,如果你没有外插串口卡的话默认是dev下的ttyS* ,一般ttyS0对应com1,ttyS1对应com2 , 当然也不一定是必然的linux串口设置命令;
如果有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

推荐阅读