
嵌入式Linux
文章平均质量分 76
月上柳梢free
喜爱电子行业
展开
-
linux中通用GPIO接口的操作--文件IO方式
0 前言 本文描述如果通过文件IO sysfs方式控制EasyARM GPIO端口。通过sysfs方式控制GPIO,先访问/sys/class/gpio目录,向export文件写入GPIO编号,使得该GPIO的操作接口从内核空间暴露到用户空间,GPIO的操作接口包括direction和value等,direction控制GPIO方向,而value可控制GPIO输出或获得GPIO输入。转载 2017-09-14 22:27:35 · 1843 阅读 · 0 评论 -
Linux平台设备驱动模型(platform)-以tq2440的按键为例
弄懂平台设备驱动模型对字符设备驱动的理解是非常有帮助的。在linux2.6设备模型中,关心总线,设备,驱动这三个实体,总线将设备和驱动绑定,在系统每注册一个设备的时候,会寻找与之匹配的驱动。相反,在系统每注册一个驱动的时候,寻找与之匹配的设备,匹配是由总线来完成的。 一个现实的Linux 设备和驱动通常都需要挂接在一种总线上,对于本身依附于PCI、USB、I2C、SPI 等的设备而言,这自然...原创 2018-03-15 15:19:29 · 301 阅读 · 0 评论 -
Linux串口驱动解析之s3c2440
一、Linux TTY子系统软件架构参考文档1、前言 在Linux kernel中,TTY就是各类终端(Terminal)的简称。为了简点击打开链接化终端的使用,以及终端驱动程序的编写,Linux kernel抽象出了TTY framework:对上,向应用程序提供使用终端的统一接口;对下,提供编写终端驱动程序(如serial driver)的统一框架。2、软件架构Linux kernel ...原创 2018-03-19 11:46:56 · 848 阅读 · 0 评论 -
openwrt中br-lan,eth0,eth0.1,eth0.2
转自:https://blog.phpgao.com/openwrt-interface.html首先盗openwrt-wiki中的一张图,这张图对理解这些接口很重要!网络配置有线网配置openwrt的有线网络配置文件位于/etc/config/network,配置如下:config interface 'loopback' op转载 2018-03-13 22:11:04 · 2003 阅读 · 0 评论 -
openWrt各目录分析
前言这段时间总是在和openwrt打交道,之前也零零散散地写过一点,还是希望能有点体系。还记得我刚看到源代码的时候,觉得无从下手.我想从Makefile的整个执行过程入手,搞清楚编译源代码的几个小时中,到底发生了哪些故事. 本文是这个系列的第一篇.主要讲一下我对openwrt整个目录结构的理解.我们将源代码从官方下载而来的目录称之为原始目录,将编译后生成的目录称之为生成目录,分两部分介绍各个目录....转载 2018-03-14 08:59:55 · 1731 阅读 · 0 评论 -
Openwrt通用固件make menuconfig配置
Openwrt通用固件make menuconfig配置选择CPU型号(平台选择)Target System --->AtherosAR7xxx/AR9xxx选择路由型号Target Profile --->TP-LINKTL-WR843N/ND (QCA9531)要省空间可去掉dnsmasq和firewall添加luci相关项LuCI ---> Collections ---&...转载 2018-03-14 12:10:35 · 8540 阅读 · 0 评论 -
一个不错的shell 脚本教程
一个很不错的bash脚本编写教程,至少没接触过BASH的也能看懂!建立一个脚本 Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行shell编程,因为bash是免费的并且很容易使用。所以在本文中笔者所提供的脚本都是使用bash(但是在大多数情况下,这些脚本同样可以在 bash的大姐,bourne shell中运行)。 如同其他语言一样...转载 2018-04-07 22:54:03 · 284 阅读 · 0 评论 -
iptables命令详解和举例
防火墙,其实说白了讲,就是用于实现Linux下访问控制的功能的,它分为硬件的或者软件的防火墙两种。无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘。而我们的任务就是需要去定义到底防火墙如何工作,这就是防火墙的策略,规则,以达到让它对出入网络的IP、数据进行检测。 目前市面上比较常见的有3、4层的防火墙,叫网络层的防火墙,还有7层的防火墙,其实是代理层的网关。 对于TCP/IP的七层模...转载 2018-03-27 10:25:47 · 98533 阅读 · 3 评论 -
linux下socket keep alive讲解
【需求】不影响服务器处理的前提下,检测客户端程序是否被强制终了。【现状】服务器端和客户端的Socket都设定了keepalive属性。服务器端设定了探测次数等参数,客户端、服务器只是打开了keepalive机能服务器端起了一个监视线程,利用select来检测socket是否被关闭。。。下面这是我的一点肤浅理解。1.关于keep alive无论windows,还是linux,keepalive就三个...转载 2018-04-27 15:57:58 · 751 阅读 · 0 评论 -
嵌入式Linux系统时间设置
Linux系统的很多功能都需要读取时间为基础。比如:日志系统需要时间戳以记录log,为后期的问题排查提供支撑;cron服务需要正确的时间设置以支撑周期性、特定时间点执行某个任务;等等。大多数Linux桌面系统都提供了丰富、友好的时间设置接口,很方便用户进行时间设置,但是在定制化、特殊性很强的嵌入式设备中,时间的设置有时不是那么容易。本文全面剖析linux-arm嵌入式设备的时间设置细节。硬件时...转载 2018-08-15 10:44:46 · 1665 阅读 · 0 评论 -
Linux源码目录结构和Linux文件系统目录结构
学习Linux也有一段时间了,具体来整理一下Linux源码的目录结构和文件系统的目录结构,以便加深记忆。一、Linux源码的目录结构首先上一张截图,如下所示:再看各个文件的介绍,借用一下其他资源。arch:这个为目录是架构相关,里面存放了许多CPU架构,比如arm,x86,MIPS,PPC等,处理器原厂提供一套Linux内核的源码,那么在这个目录下都有一套针对具体处理器CPU的子目录。每个CPU的...原创 2018-03-14 18:03:34 · 17123 阅读 · 1 评论 -
linux RTC 驱动模型分析
linux RTC 驱动模型分析 RTC(real time clock)实时时钟,主要作用是给Linux系统提供时间。RTC因为是电池供电的,所以掉电后时间不丢失。Linux内核把RTC用作“离线”的时间与日期维护器。当Linux内核启动时,它从RTC中读取时间与日期,作为基准值。在运行期间内核完全抛开RTC,以软件的形式维护系统的当前时间与日期,并在需要时将时间回转载 2017-10-26 11:13:54 · 469 阅读 · 0 评论 -
[基于Video4Linux的视频采集模块开发
linux系统中,摄像头驱动程序安装好后,为了进行视频采集必须加入Video4Linux模块,从而可以通过Video4Linux模块提供的编程接口(API)从摄像头设备中获取图像帧。下面具体研究基于V4L的视频采集程序设计。转载 2017-09-24 19:14:23 · 361 阅读 · 0 评论 -
input子系统整体流程全面分析
【驱动】input子系统整体流程全面分析(触摸屏驱动为例)1 input输入子系统整体流程本节分析input子系统在内核中的实现,包括输入子系统(Input Core),事件处理层(Event Handler)和设备驱动层。查看/dev/input/eventX是什么类型的事件, cat /proc/bus/input/devices在开头部分会从设备驱动层做为线索,分析输入子系统和事件...转载 2017-09-16 13:34:47 · 572 阅读 · 0 评论 -
编译linux内核前用make menuconfig设置时 Unable to find the ncurses libraries的解决办法
我们在更新CentOS或者Ubuntu的内核时,执行make menuconfig可能看如这样的错误:*** Unable to find the ncurses libraries or the*** required header files.*** ‘make menuconfig’ requires the ncurses libraries.****** Inst转载 2017-09-01 23:03:51 · 836 阅读 · 0 评论 -
CentOS查看和修改PATH环境变量的方法
查看PATH:echo $PATH以添加MongoDB server为列修改方法一:export PATH=/usr/local/mongodb/bin:$PATH//配置完后可以通过echo $PATH查看配置结果。生效方法:立即生效有效期限:临时改变,只能在当前的终端窗口中有效,当前窗口关闭后就会恢复原有的path配置用户局限:仅对当前用户 修改方法转载 2017-09-01 23:05:26 · 333 阅读 · 0 评论 -
linux中class_create和class_register说明
linux中class_create和class_register说明 本文介绍linux中class_create和class_register的相关使用方法1 class结构体介绍 内核中定义了struct class结构体,顾名思义,一个struct class结构体类型变量对应一个类,内核同时提供了class_create(…)函数,可以用它来创建一个转载 2017-09-12 21:34:57 · 303 阅读 · 0 评论 -
Linux SPI设备驱动框架
转载出处:http://blog.youkuaiyun.com/vanbreaker/article/details/7733476 一 、 Linux的SPI子系统采用主机驱动和外设驱动分离的思想,首先主机SPI控制器是一种平台设备,因此它以platform的方式注册进内核,外设的信息是以boardinfo形式静态定义的,在创建spi_maste转载 2017-10-15 15:06:26 · 351 阅读 · 0 评论 -
Linux下IP地址配置方法
Linux下IP地址配置可分为4种配置方法 1. ifconfig命令临时配置IP地址 2. setup工具永久配置IP地址 3. 修改网络配置文件 4. 图形界面配置IP地址下面具体介绍一下各种配置方法一、ifconfig命令配置(此命令还可以查看网络状态) 只能临时配置IP地址,一旦系统重启就会重置IP地址,需要再次配置原创 2017-10-15 20:23:53 · 23540 阅读 · 0 评论 -
Samba配置
前提:1.能从Windows 上ping通Linux的IP 2.关闭Linux防火墙1. 安装smbcentos:yum install -y samba2. 添加用户(此处使用root用户)设置root用户登录Samba服务器的密码smbpasswd -a root3. 配置Sambavim/etc/samba/smb.conf[root] co原创 2017-09-13 19:44:05 · 312 阅读 · 0 评论 -
Linux下SPI驱动的移植和应用程序的测试
Linux2.6.32下SPI驱动的移植如下图所示:下面需要修改部分内核代码,具体操作如下:1. 修改arch/arm/mach-s3c2440/mach-mini2440.c文件在include头文件代码行之后增加如下代码//spi add by shiguang #include #inclu转载 2017-10-15 22:49:34 · 1021 阅读 · 1 评论 -
VMware 虚拟机 Ubuntu 登录后蓝屏问题
VMware 虚拟机 Ubuntu 登录后蓝屏问题问题起因在一次下班收工时关闭虚拟机 Ubuntu,出现异常:关机好久没有完成,进而导致 VMware 软件卡死。后来强行杀死 VMware。第二天上班,启动 VMware 后开启 Ubuntu,输入密码登录后整个 Ubuntu 蓝屏(非 Windows 蓝屏)。重启多次结果还是一样。VMware 版本:10.0.0Ubuntu 版本...转载 2019-05-22 18:48:54 · 5334 阅读 · 2 评论