最简单的嵌入式Linux驱动程序模块

注意:开发Arm平台的驱动,需要Arm平台的源码树; 注意:ARM平台的linux内核源码需要先编译,否则无法编译驱动; 一、第一种编译驱动方式,共6步 第1步:建立源码树 解压安装Linux 内核源代码在工作目录/opt/FriendlyARM/mini2440 中执行: #cd /opt/FriendlyARM/mini2440 #tar xvzf /tmp/linux/linux-
阅读本文

第三周作业

阅读笔记 SylixOS是一款为嵌入式系统设计的硬实时操作系统(RTOS)。此系统于2006年开始开发工作。设计之初只是为了验证相关操作系统算法,后来经过多年的持续开发与改进, SylixOS已经不只是一个实时操作系统,它已经成为一个可靠稳定,功能全面,易于开发调试的实时嵌入式系统开发平台(SylixOS至今依然保持以开放源代码的形式存在)。  SylixOS的诞生可以摆脱国内一些关键性设备对国外
阅读本文

实验题目:嵌入式linux驱动程序设计

实验题目:嵌入式linux驱动程序设计  实验目的:1.编写一个字符设备驱动2.掌握添加设备驱动程序的方法3.编写一个应用程序测试添加的驱动 实验步骤:1.在linux环境下编写字符驱动程序和测试驱动的应用程序2.编译驱动程序和应用程序3.使用动态内核模块加载的方法动态的加载驱动4.运行测试驱动的应用程序,查看驱动的加载情况 实验过程:1.驱动中的相关函数说明(详细见代码)static ssize
阅读本文

Qualcomm Camera

1. Clue : Qualcomm HAL -> mm-camera-interface -> kernel kernel <-> mm-camera(qcamserv&ctrl) 2. Threads :   Qcamsvr thread / mctl thread / HAL thread 3. HAL : CameraHardwareInterface CameraHWI, com
阅读本文

Ubuntu14.04阿里云软件源备份

更改源的方法:sudo vim /etc/apt/source.list# deb cdrom:[Ubuntu 16.04 LTS _Xenial Xerus_ - Release amd64 (20160420.1)]/ xenial main restricted deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #
阅读本文

基于IMX6的GPIO驱动程序

Linux内核版本:linux-3.0.35     开发板: IMX6S MY-IMX6-EK200     编译环境:Ubuntu12     主要内容:IMX6S的IO驱动程序编写(ioctl)     实现功能:通过应用层程序控制底层IO的读写 一、驱动层 1、ioctl函数     ioctl函数从应用层传递给驱动层不同的cmd参数,驱动层根据传递的cmd参数,使用
阅读本文

ARM平台嵌入式Linux下网口扩展

1). 简介对于ARM平台,如果有提供PCIE接口,则是扩展网口尤其是千兆网口的最佳选择;而对于有些平台没有提供PCIE或者已经被其他设备占用,则可以考虑使用USB扩展,需要注意的是如果扩展百兆接口则USB2.0接口带宽可以满足需求,而如需扩展千兆网口,则最好使用USB3.0,否则有可能在USB总线处造成网络带宽的瓶颈。 2). 准备a). Toradex Apalis iMX6D 512M 计算
阅读本文

Linux设备驱动第九天(非阻塞、内存管理)

回顾: linux内核等待队列机制: 目的:让进程在内核空间进行休眠 为什么要休眠?进程不能直接在用户空间访问硬件设备!只有在内核空间进行访问! 进程进入内核空间发现访问的设备不可用,就需要休眠等待访问的设备可用为止! 休眠 = 阻塞 编程方法: 两种方法! linux内核非阻塞: 阻塞就是休眠 非阻塞:不进行休眠;在某些场合,当进程陷入内核空间访问设备,如果设备不可用,不想让
阅读本文

OpenWrt笔记---lua环境搭建

1.LUA 获得解释器 一般该解释器源码已存在于 openwrt源码包的dl文件夹中直接拷贝即可 (1)安装依赖库 sudo apt-get install libreadline6 libreadline6-dev (2) 进入lua源码执行 $make linux test cd src 可以看到此时lua解释器已经生成,可以将解释器拷贝到/usr/bin 目录下 或者做一个软连接 sud
阅读本文

学习ardupilot一点心得

uorb:应该是进程间通讯的核心? mavlink:应该是串口通讯? EKF:是卡尔曼滤波,整合陀螺仪和加速度计,罗盘数据的。 AHRS:航子系统。attitude heading reference system 姿态和方位参照系统 UAV:unmanned aerial vehicle 无人驾驶航空器; DCM:Direction Cosine Matrix 方向余弦矩阵 HI
阅读本文

20145328《信息安全系统设计基础》课程总结

20145328《信息安全系统设计基础》课程总结简要内容:翻阅课本内容,使用虚拟机安装linux系统,预习linux基础入门知识,关于学习资源的感想,提出问题。二维码:简要内容:介绍Linux操作系统相关内容,包括一些核心的Linux命令:find/locate/cheat/grep/which/whereis,以及如何使用Linux中用户管理命令/系统相关命令/文件目录相关命令/打包压缩相关命令
阅读本文

Visual Studio 2010下开发VLC播放器环境搭建

今天很高兴能够写一篇文章是关于windos下开发的,我从没在windos下开发过项目,这次一个项目需要在windos下开发,我只好安装VS,说实话在windos下开发效率真的偏低,真的不太习惯,安装软件都会出现各种问题,下面我将写我从安装软件到配置环境,搭建第一个工程,以及第一个测试程序的完整讲解。其他很多Visual Studio安装会出现问题的,下面我这里分享一个,基本不会出现问题。1.VS下
阅读本文

Linux driver model ----- platform

分类: Linux(34) 日期 : 2010-1-25  Platform Device and Drivers 从<linux/platform_device.h>我们可以了解Platform bus上面的驱动模型接口:platform_device,platform_driver。和PCI和USB这些大结构的总线不同,虚拟总线Platform bus使用最小结构来集成SOC proc
阅读本文

20145331《信息安全系统设计基础》课程总结

20145331《信息安全系统设计基础》课程总结第0周作业:巩固了上学期老师所提倡的师生关系“健身教练和健身学员”,针对每一章提出了想要解决的问题。第一周作业:基本的Linux命令、目录结构以及常用的快捷键,这周的东西有些一直考到了期末,本周通过看以前的博客我也把几个不常用的命令又记了记。第二周作业:先学习了vim,会了vim就可以写程序了,接着就是gcc -参数的编译过程,把你写的程序转成不同格
阅读本文

Linux驱动学习 —— 在/sys下面创建目录示例

有时我们需要在/sys下面创建一些目录, 下面给出了一个示例。 在加载驱动模块后, 在/sys下面会创建一个名为sysfs_demo的目录,并在其中在创建几个文件和目录。[root@tiny4412 mnt]# ls -R /sys/sysfs_demo/ /sys/sysfs_demo/: node_one node_two sysfs_demo_2 /sys/sy
阅读本文

20145311 《信息安全系统设计基础》课程总结

20145311 《信息安全系统设计基础》课程总结  ·了解课程上课方式、做好心理预期、快速翻阅一下课本、使用虚拟机VirtualBox安装Linux系统,安装Ubuntu或/各Federa、预习Linux基础入门     ·了解Linux操作系统、掌握核心的Linux命令:find/locate/cheat/grep/which/whereis,熟练应用“搜索”进行举一反三的学习、使用Linux
阅读本文

20145312《信息安全系统设计基础》课程总结

20145312《信息安全系统设计基础》课程总结简要内容:熟悉 linux 开发环境,学会基于 S3C2410 的 linux 开发环境的配置和使用,使用linux的armv4l-unknown-linux-gcc编译,使用基于NFS方式的下载调试,了解嵌入式开发的基本过程,正确使用连接线等实验仪器,并注意保护实验箱。实验结束之后将实验箱送回。二维码: 简要内容:熟悉 linux 开发环境,学会基
阅读本文

20145321 《信息安全系统设计基础》课程总结

20145321 《信息安全系统设计基础》课程总结了解课程上课方式、做好心理预期、快速翻阅一下课本、使用虚拟机VirtualBox安装Linux系统,安装Ubuntu或/各Federa、预习Linux基础入门了解Linux操作系统、掌握核心的Linux命令:find/locate/cheat/grep/which/whereis,熟练应用“搜索”进行举一反三的学习、使用Linux中用户管理命令/系
阅读本文

20145320《信息安全系统设计基础》课程总结

20145320《信息安全系统设计基础》课程总结二维码:第七周作业: 简要内容:课本第六章《存储器层次结构》 1、了解存储设备的类型和特点;重点理解局部性原理和缓存思想在存储层次结构中的应用 2、了解三种常见存储技术:RAM/ROM/磁盘; 3、局部性原理、数据引用局部性、取指令局部性 4、存储层次结构、缓存思想 5、高速缓存结构、映射、命中、缓存管理 6、做重点习题:6.2 6.3 6.4
阅读本文