
Linux
文章平均质量分 77
jirryzhang
。
展开
-
linux查看某串口(或串口终端)的波特率等属性
要查看某个串口的波特率等信息,可在控制台输入stty -F /dev/ttyS0 -a #ttyS0为要查看的串口也可以用stty设置串口参数stty -F /dev/ttyS0 ispeed 115200 ospeed 115200 cs8该命令将串口1(/dev/ttyS0)设置成115200波特率,8位数据模式。一般情况下设置这两个参数就可以了,如果显示数据乱码,可能还原创 2017-04-11 23:01:28 · 39070 阅读 · 0 评论 -
Linux Socket can使用方法
由于系统将CAN设备作为网络设备进行管理,因此在CAN总线应用开发方面,Linux提供了SocketCAN接口,使得CAN总线通信近似于和以太网的通信,应用程序开发接口更加通用,也更加灵活。此外,通过https://gitorious.org/linux-can/can-utils网站发布的基于SocketCAN的can-utils工具套件,也可以实现简易的CAN总线通信。下面具体原创 2017-09-13 19:12:56 · 8147 阅读 · 1 评论 -
linux挂载NFS
网络配置完成之后(保证本地主机和远程主机在一个网段,即局域网内IP地址前三个值相同),在开发板命令行通过mount命令挂载PC机的目录,mount -t nfs 192.168.0.1:/home/vincent/nfs /home/nfs -o nolock,挂载完成后在开发板/home/nfs中可以访问pc机/home/vincent/nfs目录中的文件,就像访问自己的文件一样,这种方式比FT原创 2017-10-19 18:36:39 · 446 阅读 · 0 评论 -
Ubuntu ibus拼音输入法输入错乱问题的解决方法
使用ubuntu自带的ibus拼音输入法的时候,有时候会出现输入错乱的情况,就像双拼模式,可以打开终端,输入如下命令解决:ibus-daemon –drx原创 2017-12-05 17:33:08 · 7205 阅读 · 2 评论 -
Read-only file system问题的解决方法
Linux有时候会遇到无法写文件、新建保存文件的情况,提示Readonly file system,我们可以在终端输入如下命令即可解决:mount -o remount rw /重新挂载文件系统,添加写权限即可。原创 2017-12-06 18:30:40 · 102664 阅读 · 4 评论 -
粒子物理蒙特卡罗模拟库Geant4源码编译安装手记(Ubuntu16.04+cmake)
Geant (GEometry ANd Tracking)作为一种蒙卡程序,其与常用的MCNP[3] 程序有很大区别。Geant不提供可执行程序,而提供一组C++类库。如果需要进行模拟的话,用户需要使用这些类库,并且按照Geant的程序结构编写代码,然后编译连接生成可执行程序。 Geant 最初的开发是用于模拟高能物理实验 。经过全世界不同国家科研人员的合作,现在Geant已经成为了一款非常强转载 2017-12-29 11:01:57 · 1438 阅读 · 0 评论 -
Linux socket CAN编程示例
如下所示,代码展示了Linux下CAN的发送和接收:#include <stdio.h>#include <stdlib.h>#include <string.h>#include <unistd.h>#include <net/if.h>#include <sys/ioctl.h>#include <sys...原创 2018-03-01 22:16:44 · 12648 阅读 · 10 评论 -
终端自定义颜色
alias ls='ls -G'alias ll='ls -l'alias grep='grep --color'alias vi='vim' alias cd..='cd ..'export CLICOLOR=1export LSCOLORS=fxgxaxdxcxegedabagacadfunction git_branch { ref=$(git symbolic...原创 2018-08-31 23:04:08 · 299 阅读 · 0 评论 -
共享内存实例
demo1writer#include<stdio.h>#include<unistd.h>#include<sys/shm.h>#include<stdlib.h>#include <time.h>int main(){ int shm_id; int *share; int num; ...原创 2018-09-01 19:54:20 · 1652 阅读 · 0 评论 -
ARM-LINUX自动启动相关脚本
/home/lizt/workplace/navigation/zyWorkSpace/naviWithPlotmount -t nfs 192.168.1.112:/home/lizt/workplace/navigation/zyWorkSpace/naviWithPlot /mnt -o nolockmount -t nfs 192.168.1.112:/home/lizt/workp...原创 2018-09-15 16:33:34 · 1026 阅读 · 0 评论 -
Linux awk统计日志中出现过的IP(或出现次数最多的N个IP)
awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。awk的用法awk 'BEGIN{ commands } pattern{ commands } END{ commands }'第一步:运行BEGIN{ commands ...原创 2018-09-06 20:34:22 · 22410 阅读 · 0 评论 -
大端(Big Endian)与小端(Little Endian)详解
1. 什么是大端,什么是小端:所谓的大端模式,是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中;所谓的小端模式,是指数据的低位保存在内存的低地址中,而数据的高位保存在内存的高地址中。2.为什么会有大小端:为什么会有大小端模式之分呢?这是因为在计算机系统中,我们是以字节为单位的,每个地址单元都对应着一个字节,一个字节为8bit。但是在C语言中除了8bit的cha原创 2017-07-08 17:33:50 · 761 阅读 · 0 评论 -
Linux CAN说明文档
文档原名称:can.txt,位于 linux-3.2.0-m3352/Documentation/networking/can.txt。CAN 控制器局域网络协议族之 Readme 文件(aka Socket CAN)。另外在该文档的后边附加一个CAN收发测试程序,用于与下位机通信。目录1 概述 / 什么是 Socket CAN?2 目的 / 为什么要使用 socket API?原创 2017-06-10 20:12:42 · 3766 阅读 · 0 评论 -
ubuntu 下安装配置 telnet server服务
下面我们来对Ubuntu Linux telnet的安装和设置进行一下讲解。首先我们需要加载telnet的服务,之后对于root等有关方面进行设置。 在Windows系统中,telnet的配置相对简单一些。那么在Ubuntu Linux中的telnet的设置就相对比较麻烦了。不少朋友都对这个安装过程不熟悉。没有关系,这里我们就来对Ubuntu Linux telnet的安装设置进行一下讲原创 2017-04-13 22:51:25 · 5192 阅读 · 1 评论 -
交叉编译出现a local symbol' can not be used when making a shared object的解决方法
前几天遇到的一个问题,说明的很清楚是要加上-fPIC重新编译,这个问题只有在64位系统中编译的时候才会出现。-fPIC 作用于编译阶段,告诉编译器产生与位置无关代码(Position-Independent Code),则产生的代码中,没有绝对地址,全部使用相对地址,故而代码可以被加载器加载到内存的任意位置,都可以正确的执行。这正是共享库所要求的,共享库被加载时,在内存的位置不是固定的。原创 2017-05-27 21:20:58 · 8712 阅读 · 1 评论 -
详解/etc/profile、/etc/bash.bahsrc、~/.profile、~/.bashrc的用途
之前安装Linux的一些软件时,总要修改Linux的配置文件。当时也是一知半解。而且,网上有些安装教程,会说,修改配置文件后要重启Linux。但事实上是不需要重启的。 Linux安装时可能要修改的配置文件:/etc/profile、/etc/bashrc(ubuntu没有这个文件,对应地,其有/etc/bash.bashrc文件。我用的是ubuntu系统,所以下面将原创 2017-04-26 23:01:54 · 17003 阅读 · 2 评论 -
CMake交叉编译的入门教程
这是从cmake官网上摘录下来的交叉编译教程,详细解释了各个变量的作用和使用方法。CMake Cross CompilingJump to: navigation, searchCross compiling is supported by CMake starting with version 2.6.0.Cross compiling means that原创 2017-05-28 15:47:02 · 4963 阅读 · 0 评论 -
Linux查看动态链接库的所有函数以及在动态链接库查找某一个函数的方法
查看动态链接库的所有函数:假设要查看的动态链接库为yourLib.so,则如下nm yourLib.so在动态链接库中查找某一个函数是否存在以及函数入口地址:假设动态链接库为yourLib.so,函数名字为yourFunction,则如下:nm -D yourLib.so |grep -w yourFunction原创 2017-05-29 11:25:44 · 17689 阅读 · 1 评论 -
Linux查看链接库的位数
静态链接库objdump -a *.a动态链接库objdump -a *.so原创 2017-05-29 16:55:14 · 1813 阅读 · 0 评论 -
由opencv with qt的imshow源码的一部分联想到在arm上实现highgui
这几天一直在折腾给arm a9的开发板移植opencv,但是移植无法使用highgui部分。索性直接看源码,自己实现这部分界面显示的功能。结果看到了一些熟悉的东西,如下:void DefaultViewPort::updateImage(const CvArr* arr){ CV_Assert(arr); CvMat* mat, stub; int origin =原创 2017-05-30 19:29:53 · 1770 阅读 · 2 评论 -
Linux下opencv通过V4L获取摄像头图像的底层源码icvRetrieveFrameCAM_V4L
以下是icvRetrieveFrameCAM_V4L(CvCaptureCAM_V4L* capture,int)的源码,在Opencv3.1.0源码中cap_v4l.cpp中第1438行,被cap_v4l.cpp中第1794行retrieveFrame(int)调用,retrieveFrame(int)被cap.cpp第100行cvRetrieveFrame( CvCapture* captur原创 2017-06-20 11:39:21 · 3754 阅读 · 0 评论 -
Linux(V4L2驱动)下获得Opencv摄像头属性(图像输出格式和是否发生往RGB的转换)的方法
Opencv可通过cvGetCaptureProperty函数(或者VideoCapture::get(int proID))来获取摄像头输出图像的属性。但返回的是个double的值,如何查看图像输出的编码格式呢?其实可以看到,编码格式是个宏定义,只要有了编码格式的宏定义,我们就可以把得到的doule类型的值和各种编码格式宏对比,即可得知获得的double值是哪种编码格式。V4L2各种编码原创 2017-06-21 22:36:23 · 3869 阅读 · 0 评论