专题2-通过按键玩中断\2440按键中断编程lesson2
1、程序优化
修改Makefile
把main.c里面的mmu代码复制到mmu.c并修改如下
main.c的修改
由于在bootloader当中一般不会使用MMU,所以
main.c
加入led.c文件
makefile
2440中断源初始化
打开开发板底板与核心板原理图
底板
比如K1对应EINT1,然后到核心板去搜EINT1
然后去2440芯片手册去找到GPF这一组IO口
创建一个button.c,加入到makefile里面去button.o
按键初始化
编写button.c文件
#define GPFCON (volatile unsigned long *)0x56000050
#define GPF0_msk (3<<(0*2))
#define GPF1_msk (3<<(1*2))
#define GPF2_msk (3<<(2*2))
#define GPF4_msk (3<<(4*2))
#define GPF0_int (2<<(0*2))
#define GPF1_int (2<<(1*2))
#define GPF2_int (2<<(2*2))
#define GPF4_int (2<<(4*2))
void button_init()
{
*(GPFCON )&=~(GPF0_msk|GPF1_msk|GPF2_msk|GPF4_msk);
*(GPFCON )|=GPF0_int|GPF1_int|GPF2_int|GPF4_int;
}
加入到main.c中,
初始化中断控制器
创建interrupt.c文件,修改makefile,加入interrupt.o
专题2-通过按键玩中断\2440按键中断编程lesson2的更多相关文章
- 2、CC2541芯片中级教程-OSAL操作系统(进一步了解-OLED && 普通按键和5方向按键-中断!!!)这个系统驱动层和应用层不一样~
本文根据一周CC2541笔记汇总得来—— 适合概览和知识快速索引—— 全部链接: 中级教程-OSAL操作系统\OSAL操作系统-实验01 OSAL初探 [插入]SourceInsight-工程建立方法 ...
- TI-RTOS 之 GPIO中断(按键)
TI-RTOS 之 GPIO中断(按键) 前面已经用过LED, 定时器,这次来了解GPIO的中断是怎么用的,从CC1310+TI-RTOS的例程可以直接找到相应的例子程序,它的关键是在于要使能中断,也 ...
- 字符设备驱动笔记——中断方式按键驱动之linux异常处理结构(四)
.中断方式获取按键值 单片机: )按键按下 )cup发生中断,跳转到异常向量入口执行 )b 函数 a.保存被中断的现场 b.执行中断处理函数 c.恢复 linux: )trap_init()函数构造异 ...
- STM32基本GPIO操作:按键输入(扫描+外部中断)
(涉及专有名词较多,难免解释不到位,若有错误还请指出,谢谢!) 硬件连接图如下: 一.扫描 思路是在main函数中通过死循环来扫描端口电平状态检测,以此判断按键是否按下.实现较为简单. 1.初始化(注 ...
- 纯C语言写的按键驱动,将按键逻辑与按键处理事件分离~
button drive 杰杰自己写的一个按键驱动,支持单双击.连按.长按:采用回调处理按键事件(自定义消抖时间),使用只需3步,创建按键,按键事件与回调处理函数链接映射,周期检查按键. 源码地址:h ...
- [置顶] Android事件—单选按键和下拉按键
在平常的开发中单选按键和下拉按键是非常常用的2个点击事件.首先介绍下单选按键 1:单选按键,单选的主键是radiogroup 这个主键也是很重要的 首先介绍下主键的布局 <?xml versio ...
- nRF52832 矩阵按键调试 同一列上的按键 任意两个按键 按下 检测不到低电平(电平拉不下来)
参考链接:https://blog.csdn.net/zhanghuaishu0/article/details/78505045 调试过程中发现 同一列上的按键 任意两个按键 按下 检测不到低电平( ...
- 十天学会单片机Day1点亮数码管(数码管、外部中断、定时器中断)
1.引脚定义 P3口各引脚第二功能定义 标号 引脚 第二功能 说明 P3.0 10 RXD 串行输入口 P3.1 11 TXD 串行输出口 P3.2 12 INT0(上划线) 外部中断0 P3.3 1 ...
- Linux中断 - 驱动申请中断API
一.前言 本文主要的议题是作为一个普通的驱动工程师,在撰写自己负责的驱动的时候,如何向Linux Kernel中的中断子系统注册中断处理函数?为了理解注册中断的接口,必须了解一些中断线程化(threa ...
随机推荐
- 关于modelsim添加库的说明
声明:以下纯属个人习惯. 1.工程建好后添加一个编译好的库的方法是:file->new->library选择a map to an existing library.然后将这个库在你这工程 ...
- Mac各个文件夹表示的意思
ca参考链接:http://www.jb51.net/os/MAC/130901.html
- Yii 一些小的问题
是否验证 ======================= $model->save()执行时,如何不要验证? 我用的是表单模型,表单模型已经验证了,保存时不想用表模型验证,如何不让表模型验证.也 ...
- poj1011---DFS
题目的大意是给了你有限个棍子以及每个棍子的长度,而且所有的棍子都是由有限个长度相同的棍子截断得到的,让你求被截棍子的最小长度 搜索剪枝神题,做的我够呛 提供一个比较好的解题报告 http://www ...
- Delphi下遍历文件夹下所有文件的递归算法
{------------------------------------------------------------------------------- 过程名: MakeFileLis ...
- git的操作
学习源头: https://www.cnblogs.com/yaoxc/p/3946280.html https://www.cnblogs.com/jeremylee/p/5715289.html ...
- Server Error in '/' Application. IIS拒绝访问
昨天将改好的网站重写发布更新了一下,就出现这种问题.那是一个头两个大呀. 刚开始以为是文件夹没有IIS的访问权限,在网上找的好多答案都是temp文件夹没有权限,,但将IIS的权限都加上后,还是不行,同 ...
- HTTP-POST
POST方式:用来向目的服务器发出请求,要求它接受被附在请求后的实体,并把它当作请求队列中请求URI所指定资源的附加新子项,Post被设计成用统一的方法实现下列功能: 1:对现有资源的解释: 2:向电 ...
- AppCan使用注意问题
1.文件上传的时候尽量使用uexUploadMsg,然后注意文件名,文件名一定要正确才能传上去.
- mybatis foreach标签的解释 与常用之处
情景:查询数据库中文章的相关文章 文章为一个表 字段tags为相关文章字符串中间用','逗号进行啦分割 查询完一个文章后可以把tags字段构造为一个List<String> 然后利用这 ...