摘要: 一、时钟中断由系统的定时硬件以周期性的 时间间隔产生(1/HZ秒),这个间隔(频率)由 HZ决定,HZ是一个与硬件体系无关的常数,可配置(50-1200),在X86平台,默认是1000 每当时钟中断产生时,全局变量 jiffies 就+1,因此 jiffies 记录了自Linux启动后时钟中断发生的 阅读全文
posted @ 2017-11-04 16:29 十指紧扣孤独 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 1、内核链表的定义在include/linux/list.h 容易看出,Linux内核链表为双向链表。 2、Linux链表与普通链表区别我们通常定义的链表是在链表节点中嵌入元素,比如 而Linux为了移植方便性和通用性,在元素结构体中嵌入链表节点 3、Linux内核链表中提供的操作链表函数(1)初始 阅读全文
posted @ 2017-11-04 11:53 十指紧扣孤独 阅读(249) 评论(0) 推荐(0) 编辑
摘要: Linux主机驱动和外设驱动分离思想 SPI驱动总线架构:SPI核心层(x),SPI控制器驱动层(x),SPI设备驱动层(√) 2 Linux SPI驱动总体架构 在2.6的linux内核中,SPI的驱动架构可以分为如下三个层次:SPI 核心层、SPI控制器驱动层和SPI设备驱动层。 Linux 中 阅读全文
posted @ 2017-11-03 10:54 十指紧扣孤独 阅读(2138) 评论(0) 推荐(0) 编辑
摘要: Linux I2C驱动主要分为 1.总线(主机)驱动(I2C BUS Driver) 2.设备(外设)驱动(I2C Clients Driver) Linux主机驱动和外设驱动分离思想 外设驱动→API→主机驱动→板级逻辑--具体的i2c设备(camera,ts,eeprom等等) 主机驱动:根据控 阅读全文
posted @ 2017-11-01 21:29 十指紧扣孤独 阅读(1147) 评论(0) 推荐(0) 编辑
摘要: 按键按下(产生了中断)→跳转到异常向量入口,执行中断函数中断函数要做什么:1.保护现场2.执行中断处理函数3.恢复现场我们需要做什么?学会使用中断注册函数,了解注册中断相关的函数和结构体 中断注册函数 request_irq // 各种Linux下都通用的函数 参数1:irq,中断号。(和平台架构相 阅读全文
posted @ 2017-11-01 16:22 十指紧扣孤独 阅读(425) 评论(0) 推荐(0) 编辑
摘要: 1.有源蜂鸣器和无源蜂鸣器的概念 有源蜂鸣器和无源蜂鸣器(高电平可以响的就是有源蜂鸣器) 2.简单用法 GPD0_0设置为pwm输出GPD0CON[0]=0x02 TCFG0预分频(1-255) TCFG1分频(1.2.4.8.16) 设置占空比: TCMPB0和TCNTB0(TCMPB0<TCNT 阅读全文
posted @ 2017-10-30 10:21 十指紧扣孤独 阅读(390) 评论(0) 推荐(0) 编辑
摘要: Linux中进程和线程的对比与区别 1.概念 进程:正在运行中的程序。 线程:进程中的一条执行路径。 2.区别 (1)通常在一个进程中可以包含若干个线程,它们可以利用进程所拥有的资源。在引入线程的操作系统中,通常都是把进程作为分配资源的基本单位,而把线程作为独立运行和独立调度的基本单位。 (2)线程 阅读全文
posted @ 2017-10-19 13:40 十指紧扣孤独 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 一、信号量 信号量是一个用来描述临界资源的资源个数的计数器。 信号量的本质是一种数据操作锁,它本身不具有数据交换的功能,而是通过控制其他的通信资源(文件、外部设备等)来实现进程间通信, 他本身更只是一种外部资源的标识。信号量在此过程中负责数据操作的同步、互斥等功能。 当请求 一个使用信号量来表示 的 阅读全文
posted @ 2017-10-17 17:26 十指紧扣孤独 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 一、消息队列 消息队列提供了一种从一个进程向另一个进程发送一个数据块的方法。 每个数据块都被认为含有一个类型,接收进程可以独立地接收含有不同类型的数据结构。我们可以通过发送消息来避免命名管道的同步和阻塞问题。 但是消息队列与命名管道一样,每个数据块都有一个最大长度的限制。 消息队列是系统内核地址空间 阅读全文
posted @ 2017-10-17 11:48 十指紧扣孤独 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 一、什么是共享内存 共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段共享内存连接到它们自己的地址空间中,所有进程都可以访问共享内存中的地址,就好像它们是由用C语言 阅读全文
posted @ 2017-10-16 19:52 十指紧扣孤独 阅读(203) 评论(0) 推荐(0) 编辑