Linux
文章平均质量分 61
可乐虎
嵌入式!
展开
-
C语言中给main函数传递参数!
相信大家用C语言定义main函数时,大多数人的写法都是int main(void)。其实main函数是可以向其传递参数的,给个实例://给main函数传参实例:#include #include //int main(int argc, char *argv[])int main(int argc, char **argv){ char *array[3]原创 2014-04-14 16:54:46 · 9495 阅读 · 0 评论 -
Linux内核版本发布时间整理
有了这个Linux内核版本发布时间表(0.00到3.19,当然没有包含全部的版本),大家就可以看看自己用的版本是何时发布的了!或许有同学会大吃一惊,哇(⊙0⊙)我用的版本10年前就有了啊!发展史我也没写全,有时间和必要的话再写吧!版本号时间发展史0.001991.2-4两个进程分别显示AAABBB原创 2015-05-30 23:39:49 · 9262 阅读 · 2 评论 -
Linux mmap函数简介
Linux mmap函数简介 转载▼Linux提供了内存映射函数mmap, 它把文件内容映射到一段内存上(准确说是虚拟内存上), 通过对这段内存的读取和修改, 实现对文件的读取和修改, 先来看一下mmap的函数声明:头文件:原型: void *mmap(void *addr, size_t length, int prot, int flags, i转载 2015-06-05 00:14:55 · 866 阅读 · 0 评论 -
学习linux驱动经典书籍
Linux驱动学习的最大困惑在于书籍的缺乏,市面上最常见的书为《linux_device_driver 3rd Edition》,这是一本很经典的书,无奈Linux的东东还是过于庞大,这本侧重于实战的书籍也只能停留在基本的接口介绍上,更深入的东东只能靠我们自己摸索了。但万事总有一个开头,没有对Linux驱动整体框架的把握是很难做一个优秀的驱动开发者的。除了这本Jonathan Corbet,转载 2015-06-08 12:27:26 · 1168 阅读 · 0 评论 -
详解linux平台芯片烧写流程
详解将持续更新!这里的烧写是针对板子里的nandflash中已经有uboot的情况。目的在于熟悉烧写流程及原理!连接好开发板,重新启动,进入u-boot交互界面,执行如下操作:一、配置网络 # pri# setenv ipaddr 192.168.64.11 (注:ipaddr 为开发板IP)# setenv serverip 192.168.64.12 (注:serverip 为Windows主机IP)# setenv gatewayip原创 2015-05-22 00:32:13 · 3907 阅读 · 0 评论 -
ubuntu 用shell脚本实现将当前目录下所有目录中的某一类文件拷贝到同一目录下
当前目录下有一些文件和目录,其中每个目录里都有若干.txt文件,现在要求在当前目录创建一个新目录all,且将那些目录所有.txt文件都拷贝到目录all。在ubuntu12.04的shell脚本实现如下:#!/bin/sh# 提示信息echo "start:"# 定义变量dst=allpst=.txt# 复制文件到目标文件夹if [ -d原创 2015-07-07 22:24:34 · 5227 阅读 · 2 评论 -
关于根文件系统的整理
根文件系统首先是一种文件系统,该文件系统不仅具有普通文件系统的存储数据文件的功能,但是相对于普通的文件系统,它的特殊之处在于,它是内核启动时所挂载(mount)的第一个文件系统,内核代码的映像文件保存在根文件系统中,系统引导启动程序会在根文件系统挂载之后从中把一些初始化脚本(如rcS,initt原创 2015-05-25 23:34:07 · 955 阅读 · 0 评论 -
详解将驱动程序编译进linux内核
1、进入目录linux-kernel-samsung-dev\drivers\char2、新建目标目录01.led,将驱动相关文件复制到此目录 注:需确保复制的驱动文件是能正常运行的驱动3、在目录01.led里编写Kconfig文件menu "xxx"config XXX_LED tristate "xxx_ggg210_led"原创 2015-05-26 00:02:51 · 3048 阅读 · 0 评论 -
解决shell脚本中 echo 怎么写入换行到文件
测试环境:ubuntu12.04 LTS版本echo >> file.txt即可,这种方法对于脚本开头是bash和sh效果都一样,而echo -e >> file.txt这种只适合与bash对于sh,会输入-e到文件然后再换行。而echo -e "\n" >> file.txt对于bash会连续换2行,对于sh,会输入-e和一个新空行到文件。原创 2015-07-13 00:19:37 · 81063 阅读 · 2 评论 -
ubuntu下Jlink的安装、配置及使用
--PC环境:Ubuntu12.10 32bit--开发板:友善之臂mini2440--Jlink版本:J-Link ARM V8PS:本文主要参考资料:1、Ubuntu 10.04下J-Link配置及使用:http://bbs.chinaunix.net/thread-3641789-1-1.html2、JLink_Linux_V422.tgz中的README文档。安装过转载 2015-07-21 21:42:46 · 6737 阅读 · 0 评论 -
linux最简单的驱动编写及测试流程
本文采用nfs挂载网络文件系统的方式,手动创建设备节点,动态加载驱动模块,对理解驱动编写流程有很大好处!一、初级驱动执行流程:1、写好Makefile文件,里面包含将应用程序编译成app文件,将驱动程序编译成mydrv.ko文件的脚本2、在ubuntu里执行sudo make3、确保mydrv.ko和app被拷贝到nfs挂载的根文件系统的/modules目录原创 2015-05-21 00:20:50 · 3119 阅读 · 0 评论 -
linux /proc/devices文件与/dev目录区别
关于标题内容的几点解释:1、proc目录是一个虚拟文件系统,可以为linux用户空间和内核空间提供交互它只存在于内存中,而不占实际的flash或硬盘空间2、/proc/devices/里的设备是加载驱动程序时生成的3、/dev/下的设备是通过创建设备节点生成的,用户通过此设备节点来访问内核里的驱动原创 2015-05-20 23:53:21 · 4887 阅读 · 1 评论 -
解决gcc提示:从不兼容的指针类型赋值 从不兼容的指针类型初始化
今天在ubuntu里编程,用gcc编译时,遇到两个警告,半天不得其解,苦查良久,搞定。快哉!警告: 从不兼容的指针类型赋值 [默认启用]警告: 从不兼容的指针类型初始化 [默认启用]typedef struct single_list{ int data; struct singlelist *p_next;}single_list;原因:singl原创 2014-04-16 15:31:38 · 14108 阅读 · 6 评论 -
Linux 内核Kconfig 与 Makefile 文件分析
内核Kconfig 与 Makefile 文件分析分类: 嵌入式 2012-04-25 11:36 1506人阅读 评论(0)收藏 举报makefilesystemdocumentationfilestringmodule一.内核构造系统简介 内核是个复杂庞大的系统,对它进行配置、裁剪、编译原本非常地复杂和困难,但现在却只需要简单的两个转载 2014-09-06 17:44:13 · 1121 阅读 · 0 评论 -
Linux input 子系统应用之按键驱动
硬件平台:s5pv210软件平台:Linux2.6.35.7应用程序:inputk2_app.c#include #include #include #include #include int main(int argc, char** argv){ int fd; int count; int i = 0; int j = 0原创 2014-08-26 02:49:59 · 2079 阅读 · 0 评论 -
lcd fb参数如何计算——Linux 内核framebuffer LCD 驱动
本文参考了:http://www.linuxidc.com/Linux/2011-01/31800.htm感谢该文的作者。Linux内核的amba lcd控制器使用clcd_panel结构体表示一个LCD屏的硬件参数:/* include/linux/fb.h */struct fb_videomode { const char *name; /* opti转载 2014-08-28 15:25:39 · 1753 阅读 · 0 评论 -
Linux LCD驱动(一)——硬件分析和FrameBuffer
Linux 2440 LCD 控制器嵌入式Linux之我行,主要讲述和总结了本人在学习嵌入式linux中的每个步骤。一为总结经验,二希望能给想入门嵌入式Linux的朋友提供方便。如有错误之处,谢请指正。共享资源,欢迎转载:http://hbhuanggang.cublog.cn一、开发环境主 机:VMWare--Fedora 9 开发板:Mini244转载 2014-08-28 17:13:34 · 4323 阅读 · 0 评论 -
解决:cant't run '/etc/init.d/rcS':No such file or directory
Linux内核启动时提示这样的错误:cant't run '/etc/init.d/rcS':No such file or directory请用vim打开文件:/etc/init.d/rcS观察里面是否有“^M”这样的乱码,有的话删除即可!原创 2014-08-29 23:24:03 · 6004 阅读 · 0 评论 -
Linux内核驱动将多个C文件编译成一个ko文件的方法——每个C文件里都有module_init与module_exit
以两个C文件为例:将本该被分别编译成adc_device.ko和adc_driver.ko的adc_device.c、adc_driver.c编译成一个ko文件!采用方法: 第一步、修改C文件1、去掉adc_device.c文件里module_init(xxx)、module_exit(yyy)中xxx、yyy 函数原型的关键字static2、注销adc_devic原创 2014-09-04 01:28:26 · 5617 阅读 · 1 评论 -
理解“统一编址与独立编址”,“I/O端口与I/O内存”
从CPU连出来一把线:数据总线、地址总线、控制总线,这把线上挂着N个接口,有相同的,有不同的,名字叫做存储器接口、中断控制接口、DMA接口、并行接口、串行接口、AD接口……一个设备要想接入,就用自己的接口和总线上的某个匹配接口对接……于是总线上出现了各种设备:内存、硬盘,鼠标、键盘,显示器…… 对于CPU而言,如果它要发数据到某个设备,其实是发到对应的接口,接口电路里有多个寄转载 2015-04-15 00:09:52 · 3624 阅读 · 0 评论 -
linux内核链表使用
Linux内核链表的核心思想是:在用户自定义的结构A中声明list_head类型的成员p,这样每个结构类型为A的变量a中,都拥有同样的成员p,如下:struct A{int property;struct list_head p;}其中,list_head结构类型定义如下:struct list_head {struct list_head *next,*prev;转载 2015-08-28 16:40:30 · 1072 阅读 · 0 评论