打印

死活点不亮LED,请大虾帮忙!感谢!

[复制链接]
1906|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
s700|  楼主 | 2011-6-8 16:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
芯片是LPC2368, 其中P2.0--P2.7各接上一个led,高电平点亮,即是端口输出‘1’,相应led亮。我运用keil写的程序如下,刚接触arm7,始终查不出问题,各位高手帮帮忙,谢谢!



#include <lpc23xx.h>


int NO;



void GPIO_init(void)
{
   PINSEL2 = 0x00000000;
   FIO2DIR |= 0xFF;   //SET OUTPUT
   FIO2CLR |= 0xFF;   //clear all

}


void led_on(int NO)
{
   FIO2SET = (1<<NO);
}


void led_off(int NO)
{
   FIO2CLR = (1<<NO);
}



void delay(int n)
{
   int j;
   for(;n>0;n--)
     for(j=0;j<=5000;j--);
}



int main(void)
{
  GPIO_init();
  while(1)
  {   
     led_on(1);
  delay(2);
  led_off(1);
  delay(2);
  }
  return 0;
}

相关帖子

沙发
s700|  楼主 | 2011-6-8 16:47 | 只看该作者
求教,求教

使用特权

评论回复
板凳
原野之狼| | 2011-6-8 17:15 | 只看该作者
看下IO电源配置了没有

使用特权

评论回复
地板
senioryzc| | 2011-6-8 17:22 | 只看该作者
你先确保你的程序跑起来了
刚开始不懂得话,最好在现成的代码基础上做你的实验

使用特权

评论回复
5
米色落差| | 2011-6-10 22:26 | 只看该作者
你的延时程序有问题吧?第二个for循环没作用吧,延时貌似太短了,导致灯亮了你看不出来。我也是新手

使用特权

评论回复
6
米色落差| | 2011-6-10 22:29 | 只看该作者
哦,错了,是延时太长了吧。不知道你用的什么编译环境。我用的是mdk,int是4个字节,如果这样的话从0减到5000会很久的。

使用特权

评论回复
7
sczhangyl| | 2011-6-21 16:37 | 只看该作者
看下数据手册!上边说的很清楚!

使用特权

评论回复
8
zxfasx| | 2011-6-23 16:20 | 只看该作者
你应该找一个正确的程序模板,确保程序能跑起来

使用特权

评论回复
9
hys0401| | 2011-6-23 17:35 | 只看该作者
本帖最后由 hys0401 于 2011-6-23 17:36 编辑

for(j=0;j<=5000;j--);
====================
用j++才对吧?

使用特权

评论回复
10
re张风| | 2011-6-24 15:14 | 只看该作者
先确认一个IO工作时钟吧!感觉这一节代码中没有使能它。

使用特权

评论回复
11
ycz9999| | 2011-6-25 01:10 | 只看该作者
9L正解

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

8

帖子

1

粉丝