天津理工嵌入式实验5Linux应用程序开发--按键控制LED灯
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《嵌入式系统》实验考核表
实验名称:实验五:嵌入式Linux应用程序开发-按键控制LED灯2015级班时间: 2017年11月28日组号:
表二
注:
●每组1-2人,必须在一个教学班中,学生自由组合完成本课程所有实验,实验过程中不允
许换人换组。
●表1除“成绩”栏外由学生填写,表2由老师填写。每个成员在表1的“分工情况”一栏
中详细填写实验中的分工。
●本页打印,附在实验报告正文前。
●实验报告如发现雷同,一律以0分计。
实验报告
一、实验目的
编写程序运行LED和按键控制程序。
二、实验内容
1. 在Linux的开发环境下,使用GCC、VI、Makefile、GDB等工具完成简单程序开发
2. 基本要求如下:
a. 运行已有的Led程序和按键Key程序;
b.合并Led和Key程序,完成以下功能:在开发板上按键,控制开发板上的灯点亮,再次按开发
板上按键,控制开发板上的灯熄灭。
c. 在ARM端运行可执行程序;
d. 观测实验结果。
三、实验要求
实验报告中体现全部实验内容,可以粘贴代码,运行结果图等。
四、实验步骤
1.进入目录/UP-CPU210-II /SRC/KERNEL/LINUX-
2.6.35.7/
2.使用make menuconfig 指令来配置内核对LED模块的支持
3.退出保存配置,重新编译内核,执行make命令
Scripts/kconfig/comf -s arch/arm/Kconfig
CHK include/linux/version/h
SYMLINK include/asm-arm/arch -> include/agm-arm/arch-s3c2410
Make[1]: ‘include/asm-arm/mach-types.h’ is up to date
CHK include/linux/compile.h
编译LED应用测试程序
1.进入实验目录
2.清除中间代码重新编译
3.生成可执行程序test_led
1、启动Contex-A8的开发板,连上电源线、连好网线、串口线。尝试通过串口终端挂载宿主机实验目录。
2、通过修改Contex-A8的开发板的IP地址与电脑同步,是Contex-A8的开发板挂载主机的文件目录,进入串口终端的共享实验目录。
#include
#include
#include "def.h"
#include "2440addr.h"
#include "2440lib.h"
#include "2440slib.h"
#include "mmu.h"
#include "def.h"
#include "Option.h"
void delay(unsigned long dly)
{
for(; dly > 0; dly--);
}
void __irq IRQ_KEY()
{
if(rINTPND==BIT_EINT8_23)
{
ClearPending(BIT_EINT8_23);//清除中断标志
if(rEINTPEND&(1<<8))
{
rGPBDAT = ~(1<<5);//点亮led1,其他灯灭
}
else if(rEINTPEND&(1<<11))
{
rGPBDAT = ~(1<<6);//点亮led2
}
else if(rEINTPEND&(1<<13))
{
rGPBDAT = ~(1<<7);//点亮led3
}
else if(rEINTPEND&(1<<14))
{
rGPBDAT = ~(1<<8);//点亮led4
}
else if(rEINTPEND&(1<<15))
{
rGPBDAT = ~(0xf<<5);//设置GPB5.GPB6.GPB7.GPB8引脚输出设置成0,则CPU输出电压为3.3V,GPB5.GPB6.GPB7.GPB8引脚对应的LED灯亮
}