1 中断,很短的时间过去,然后回来。
2 信号,软中断,而中断属于硬中断。
3 实时内核,和分时内核。
4 同步,预先知道发生,异步,预先不知道要发生,中断属于异步。
5 arm一次执行一个中断。
6 irq中断,2现在内核支持这个,fiq,快速中断请求。
7 问题:两个中断同时发生?
更具优先级,一个一个执行,一个执行完后,看PND里边还有中断没有。可以设置的优先级有32个,级联中断的发生顺序是固定的。
8 puts和gets不能同时,因为有两个while循环。
9 SRCPND,SUBSRCPDN,EINTPEND,这3个都是只要有中断发生就自动至1;INTPND里边只能有一个为 1.
10 INTMOD判IRQ,还是fiq
11 60个中断源,0~31号中断。
12 屏蔽0中断,有一种方式,INTMASK
屏蔽8中断,也是只有一种方式,EINTMASK;
13 s3c2440中的ADC和UART中属于片内级联,TIMER LCD属于一级中断,而2410中则不是,正好相反。
14 问题对于寄存器打的清0
void clear_srcpnd(int eintnum)
{
INTERRUPT.SRCPND |= (0x1<<eintnum);
}

void clear_intpnd(void)
{
INTERRUPT.INTPND = INTERRUPT.INTPND;
}

INTPND
INTPND Bit Description Initial State(默认状态)
INT_ADC [31] 0 = Not requested, 1 = Requested 0
INT_RTC [30] 0 = Not requested, 1 = Requested 0
INT_SPI1 [29] 0 = Not requested, 1 = Requested 0
INT_UART0[28] 0 = Not requested, 1 = Requested 0
INT_IIC [27] 0 = Not requested, 1 = Requested 0
INT_USBH [26] 0 = Not requested, 1 = Requested 0
这个寄存器的默认状态时0,没有命令,当有中断发生时,对应的位变1,而当你给他1时,他就行一个命令,这个命令就是清0.(相当于自动,置1,然后你在给他赋一次1,他就变0了,只能这样理解了) 15 只有 INTPND只可能出去一个位的变化,其他不行;所以清0的时候只有他可以自己给就行了。

16 INTMOD选择irq,fiq.
17 INTOFFSET属于方便型的寄存器,为了INTPND的方便,所以他是直接变化的不需要判断。
18 外部中断EXTINT1和EXTMASK放到9章的IO里边。
19 EXTINT0设置出发的方式,中断触发的方式一共有5中,低电平高电平,上升沿,下降沿,双边沿
EXTINT1,EXTINT2,因为3位控制一个触发方式,不够用,需要3个。
20 问题如果外部中断8设置为irq,那么9呢?
一定也是irq, 21 CPU有7张脸,就是异常向量表。
22 按键中断的执行流程。
GPGCON
EXTINT1 选择触发方式。这里有个过滤的寄存器,(就是为了防止外部中断的颤抖,如果有过滤的电容,那么设置的时候多设置 上面的那一位)
EXTMASK 外部中断使能。
INTMSK 中断使能
INTMOD 选择中断的方式irq,fiq(其实默认也行,害怕其他人改了)
23 start.s中
复位后到系统模式。
彼sp非彼SP,sp债地址。
irqhandle 头两行保护现场,最后一行恢复。
24 如果串口不初始化的情况下,用puts函数,的话,会出现一系列不能定位的编译不过去的库错误。 25 注意 SRCPND;INTMOD;INTMSK;INTPND;INTOFFSET;SUBSRCPND;INTSUBMSK;
EINTMASK;EINTPEND;EXTINT1;(外部中断的MASK,有A,PEND有E)。
26 大部分的设备都支持中端和轮询,时间特别的短的时候轮询比中端要好。
27 中端特性,异步和实时。
28 问题中端能进入死循环么? 不能;
29 寄存器内部,SUBSRCPND,
INTSUBMSK

key中断的更多相关文章

  1. TI CC2541的狗日的Key

    被突如其来的一个bug困扰了好几天, 起因是, 按键接的红外接收器, 结果发现, 一旦按下之后, IEN1, P0IE的标识位bit5, 被不知道特么的谁归0了, 也就是说, 按键只能被按下一次, 再 ...

  2. LUA 利用#遍历表的问题

    tb ={ } t = { "hello", , , 'w', , tb } --~ 1 hello --~ 2 1 --~ 3 2 --~ 4 w --~ 5 4 --~ 6 t ...

  3. 1.Linux电源管理-休眠与唤醒

    1.休眠方式 在内核中,休眠方式有很多种,可以通过下面命令查看 # cat /sys/power/state //来得到内核支持哪几种休眠方式. 常用的休眠方式有freeze,standby, mem ...

  4. 1.Linux电源管理-休眠与唤醒【转】

    转自:https://www.cnblogs.com/lifexy/p/9629699.html 1.休眠方式 在内核中,休眠方式有很多种,可以通过下面命令查看 # cat /sys/power/st ...

  5. MySQL主从复制中断,报“Error on master: message (format)='Cannot delete or update a parent row: a foreign key constraint fails' error code=1217” 错误

    前几天,发现从库挂了,具体报错信息如下: 分析思路 1. 因为我采用的是选择性复制,只针对以下几个库进行复制: card,upay,deal,monitor,collect.所以,不太可能出现对于sa ...

  6. GPIOLED配置、key、中断NVIC配置

    #include "stm32f10x.h" #include "stm32f10x_gpio.h" //内核,(NVIC) #include "mi ...

  7. myrocks复制中断问题排查

    背景 mysql可以支持多种不同的存储引擎,innodb由于其高效的读写性能,并且支持事务特性,使得它成为mysql存储引擎的代名词,使用非常广泛.随着SSD逐渐普及,硬件存储成本越来越高,面向写优化 ...

  8. 记录一则ORACLE MOVE操作后重建索引过程被强制中断导致的ORA-8104案例

    环境:SunOS + Oracle 11.2.0.3   对部分表进行Move操作之后,未重建对应的索引,会导致ORA-1502 索引不可用. 此时需要用下面的查询拼接出重建不可用索引的sql语句: ...

  9. STM32的USART中断死循环,形成死机。

    作者:观海  QQ:531622 直接说重点:我用的是 STM32F103 芯片 USART2_IRQHandler 总是中断,程序死循环. 1.出现问题: 原程序的中断处理程序是: void USA ...

随机推荐

  1. jQuery -&gt; 使用andSelf()来包括之前的选择集

    版权声明:本文为博主原创文章.转载请注明出处 https://blog.csdn.net/FeeLang/article/details/26254793 当我们使用Destructive Metho ...

  2. python学习笔记(二十一)构造函数和析构函数

    python中的特殊方法,其中两个,构造函数和析构函数的作用: 比说“__init__”这个构造函数,具有初始化的作用,也就是当该类被实例化的时候就会执行该函数.那么我们就可以把要先初始化的属性放到这 ...

  3. 如何理解PHP的单例模式

    单例模式就是让类的一个对象成为系统中的唯一实例,避免大量的 new 操作消耗的资源. PHP的单例模式实现要求: 1.一个private的__construct是必须的,单例类不能在其它类中实例化,只 ...

  4. php内存溢出,出现Allowed memory size of 8388608 bytes exhausted错误的解决办法

    是因为php页面消耗的最大内存默认是为128M (在PHP的ini件里可以看到) ,如果文件太大或图片太大在读取的时候会发生上述错误. 解决办法: 1.修改 php.ini 将memory_limit ...

  5. 数据结构 练习21-trie的原理分析和应用

    前言 今天具体分析一下trie树,包括:原理分析,应用场合,复杂度分析,与hash的比较,源码展现.大部分内容来自互联网,文中会注明出处. 原理分析 主要是hash树的变种,先看下图: 每一个点存储一 ...

  6. 懒加载 js----例子------图片

    转载自:https://www.jianshu.com/p/9b30b03f56c2 懒加载工具类 <script type="text/javascript"> // ...

  7. vue我的总结+转原理

    我的总结 vue:1 mvvm模型,model,view,viewmodel,自底层向上,逐渐增加的模式2 .vue文件 包含html css js 有最近设计原则,将自己需要的放到最近,2 组件化 ...

  8. CodeForces - 528D Fuzzy Search (FFT求子串匹配)

    题意:求母串中可以匹配模式串的子串的个数,但是每一位i的字符可以左右偏移k个位置. 分析:类似于 UVALive -4671. 用FFT求出每个字符成功匹配的个数.因为字符可以偏移k个单位,先用尺取法 ...

  9. 什么是“HTML”?HTML的“标记”是什么?

    ①文本标记语言 即HTML(Hypertext Markup Language),是用于描述网页文档的一种标记语言. ②HTML 标记标签 通常被称为 HTML 标签 (HTML tag). ③HTM ...

  10. docker issue-Cannot connect to the Docker daemon. Is 'docker -d' running on this host?

    Here is my docker version when i run docker version : Client: Version: 1.8.1 API version: 1.20 Go ve ...