随笔分类 - Linux 设备驱动
摘要:串口的功能: 一:数据传输 二:控制台,用于传送命令用于控制 串口通信格: 串行通信方式分为“异步通信方式”“同步通信方式” 通讯参数: 起始位:当电路空闲时,线路一直是高电平,所起始位位低,当检测到线路电平变为低电平是,表示将要传输数据。 数据位:表示一帧数据中将要传输有效数据。 奇偶校验位:用于
阅读全文
摘要:GCC命令: 格式:gcc -[命令选项] 文件名(这里指需要编译的文件名) 一个C语言程序需要经过这几个过程才能进行一个可以执行的文件 例如hello.c这个源文件 Hello.c——> hello.i——>hello.s——>hello.o——>hello -E -S -C 将一个汇编文件编译成
阅读全文
摘要:驱动:编写任何设备的驱动程序,都需要对该设备的原理有一定了解和认识。对于外部设备的访问总是需要通过一个控制器来间接访问,对于这个控制器的控制程序称为驱动程序 Nandflash 原理: 一:角色分析 数据存储的物理介质 二:Nandflash 分类 根据不同的方式可以将Nandflash 分出不同的
阅读全文
摘要:<触摸屏种类> 常见 电阻式触摸屏 电容式触摸屏 不常见 红外线技术触摸屏 表面声波触摸屏 适量压力传感触摸屏 <原理分析> 电阻式触摸屏 如图所示,在屏幕的上下和左右加上一个5V电压,将这个5V根据屏幕的长度分成不同的电压值,只要将屏幕的上下接触,就可以检测出该点是电压,然后除以总的电压5V就可以
阅读全文
摘要:Linux拥有广泛的硬件支持,能够支持x86 ARM MIPS ALPHA PPOWERPC ,同时拥有广泛的驱动资源。 Linux内核高效稳定。Linux的内核设计相当精巧,分成进程调度,内存管理,进程间通信,虚拟文件系统和网络接口部分。 Linux的一些常用命令: mkdir:建立子目录 du:
阅读全文
摘要:MMU(内存管理) 1:将程序中的虚拟地址映射到具体的物理地址,所谓虚拟地址,即为程序中的地址,对于不同的程序所使用的虚拟地址可能相同,但是通过mmu,可以将其映射到不同的物理地址,防止访问上的冲突。 2:控制访问的权限管理。 深入剖析地址转换 对于一个地址,假设为32位的虚拟地址: 31-20位索
阅读全文
摘要:<LCD硬件体系结构> LCD控制器:位于ARM核内部,为LCD提供需要显示的数据,控制信息,控制时序 <LCD控制器结构> REGBANKK : 寄存器组,总共有17个寄存器 LCDCDMA:LCD 中的DMA模块,该模块位于LCD的控制器中,在嵌入式系统中是内存中 有一个内存区域叫做帧缓存区,告
阅读全文
摘要:Linux中一切皆文件: 文件类型: 一般文件 - 目录文件 d 链接文件 l 块设备 b 字符设备 c soket s 管道文件 p linux 中目录结构: /bin 存放系统可以执行文件 有点类似于Windows中的那个Windows目录 /sbin 存放管理员(super user)用的可以
阅读全文
摘要:中断的概念CPU在处理过程中,经常需要同外部设备进行交互,交互的方式由“轮询方式”“中断方式” 轮询方式: 方式:在同外设进行交互的过程中,CPU每隔一定的时间状态就去查询相关的状态位,所以在交互期间CPU几乎没有干任何事情,仅仅就是是 在一直等待查询,等待查询。 特点:不断查询设备状态,实现方式简
阅读全文
摘要:<bootm作用> 为linux内核的启动准备条件 <bootloader作用总结> (1)初始化软/硬件(内存硬件/外部设备/堆栈) (2)启动操作系统 <uImagine和zImagine之间的关系> zImagine 是最纯粹的Linux内核 在zImagine之上加上一个信息头就成位了uIm
阅读全文
摘要:DMA:如果将一串字符串通过串口传送到外设中去,用传统的方法,则CPU将不断的去扫描UTSTAT这个寄存器,在字符发送期间,CPU将不能做任何其他事情。为了解决这个问题,则在诞生了DMA CPU只需要告诉DMA控制器,目标地址和目的地址就行了,其他事情就直接交由DMA去完成。 DMA控制器控制:通道
阅读全文
摘要:文章具体介绍了关于ARM的22个常用概念。 1.ARM中一些常见英文缩写解释 MSB:最高有效位; LSB:最低有效位; AHB:先进的高性能总线; VPB:连接片内外设功能的VLSI外设总线; EMC:外部存储器控制器; MAM:存储器加速模块; VIC:向量中断控制器; SPI:全双工串行接口;
阅读全文
摘要:《ARP协议介绍》 <以太网通讯格式> 在计算机网络中,数据的发送就是将数据按照网络分层中的各层协议封装的过程,在这个过程中,最终要使用的协议是以太网协议(数据链路成协议) 分析: 目的MAC地址:接受者的物理地址(注意这里是物理地址,一个固化在网卡中的唯一地址, 而不是ip地址) 源MAC地址:发
阅读全文
摘要:ARM相关知识: ARM核:A8,ARM11,ARM9 指令架构:ARMv7,ARMv6,ARMv4 ARM核分为两个阵营: 经典型:ARM7,ARM9,ARM11 Cortex: Cortex A:主要用于面向多媒体应用,如手机 Cortex R:主要用于面向实时的应用场合,可以有操作系统 Cor
阅读全文
摘要:立即数寻址: 操作数本身就在指令中 例子:ADD R0,R0,#0X3F(注意:立即数需要在数据前面加上一个#号) 寄存器寻址: 利用寄存器中的数值作为操作数,数据存在寄存器中 例子:ADD R0,R1,R2 寄存器间接寻址: 数据存放在内存中,寄存其中存放的不是操作数本身,而是其在内存中的地址。通
阅读全文
摘要:ARM 汇编程序的框架结构 .section .data <初始化的数据> .section.bss <未初始化的数据> .section .text .global _start _start: <汇编代码> 注意: 一般是将上面结构进行简化 .text .global _start _start
阅读全文
摘要:ARM总共有37个寄存器 ARM寄存器物理分类 通用寄存器:1:不分组寄存器(R0--R7) 2:分组寄存器(R8-R14) 3:程序计数器(R15)(注意:又名pc指针) 程序状态寄存器:1:CPSR 2:SPSR 应用分类:(有一部分是相同寄存器在不同状态下的不同功能) 31个通用寄存器: 未分
阅读全文
摘要:查找文件位置 1:U-boot 有几千个文件,所以要通过makfile来查找文U -boot文件的入口。 2:查看芯片的配置文件smdk2440 3:在board目录里面的sumsing目录里面查找smdk2440目录里面存放的就是开发板相关的配置文件,其中最重要的是名字叫u-boot.lds的文件
阅读全文
摘要:<Linux内核镜像格式> <Linux内核镜像格式> <Linux内核镜像格式> Linux内核有多种格式的镜像,包括vmlinux、Image、zImage、bzImage、uImage、xipImage、bootpImage等. ➤kernel镜像格式vmlinux vmlinux是可引导的、
阅读全文
摘要:Linux 下对设备的管理方式主要有/dev和sysfs两种,前者是将设备注册为设备节点放入/dev目录下,而后者是在linux2.6内核后引入的新的文件系统。 ➤/dev方式 关于/dev的管理方式,也经历了几代,下面介绍/dev管理方式的发展: ➣静态/dev文件: 在Linux中,老的设备管理
阅读全文

浙公网安备 33010602011771号