天嵌 ARM开发社区

 找回密码
 注册
查看: 2792|回复: 4

TQ2440-I/O中断试验

[复制链接]
qiang1092 发表于 2009-8-12 17:14:37 | 显示全部楼层 |阅读模式
您可以来我的blog:http://chenjunqiang08.blog.163.com
试验目的:熟悉2440的中断,明白中断过程。

试验环境:tq2440开发板+J-link+ADS

试验过程:

1.连上j-link,开发板上电。

2.c语言编写试验代码,并包含所需要的启动代码等文件。

3.设置ADS的RO Base为0x40000000。注意:设为0x40000000不用其它设置。设为0x30000000的话, 发 生中断时,会去0地址找入口,所以要在0x0地址下载上中断跳转表。设为0x00000000的话不能仿真,因为2440init.s会把nandflash开始的代码复制到o地址,会覆盖你的代码。

4.仿真,可设中断等,观察中断流程。

5.试验参考代码:

#include "2440addr.h"
void __irq Int0()
{
int a=30000;
ClearPending(BIT_EINT0);//清除中断标志
rGPBDAT = ~(1<<5);
while(a--)
  ;
}
void EINT_Init()
{
rGPFCON=0x002;//设置按键K4为EINT0中断

rEXTINT0=0x2;//设置为下降沿触发
pISR_EINT0=(unsigned int)Int0;//中断处理函数
rINTMOD=0;//所用中断都是IRQ
rINTMSK=0xfffffffe;//开EINT0中断
}
void Main(void)
{
// 将LED1-4对应的GPB5/6/7/8四个引脚设为输出
rGPBCON =0x55555554;
rGPBDAT=~0;//关闭led
EINT_Init();
  while(1)
{
  rGPBDAT=~0;//关闭led
}
}
xlj2004 发表于 2009-8-13 00:05:50 | 显示全部楼层
学习中,想问一下:TQ2440中有多少GPIO可以用户自己用,另外I/O的电平是多少?谢谢!!
回复

使用道具 举报

 楼主| qiang1092 发表于 2009-8-14 20:32:39 | 显示全部楼层
很多引脚复用,用的时候选其中一种功能即可,也就是说所有的都能自己用,除了不得不做其他功能的。
回复

使用道具 举报

wuweiil 发表于 2010-1-8 09:23:22 | 显示全部楼层
这个程序跑步起来,我就这样设置的,
我让灯初始亮起,随便按那个键都能把灯熄灭,再按任何键都没反应了
如果我让灯初始是熄灭的,怎么也点不亮灯
回复

使用道具 举报

亚瑟王 发表于 2010-1-9 15:03:36 | 显示全部楼层
你的main函数中导致的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号-2 )

GMT+8, 2025-6-18 02:13 , Processed in 2.039516 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表