单步运行程序正常,全速执行不正常

babyyuan 2011-01-06 11:05:29
我的源程序很简单,就是一个蜂鸣器鸣叫的程序;代码如下:
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
功能:蜂鸣器滴滴一直鸣叫;

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
#include "config.h"

#define keysound (1<<7)
//--------------------------------------------------------//
void delay(uint32 dly) //延时函数;
{ uint32 i;

for(; dly>0; dly--)
for(i=0; i<5000; i++);
}
//--------------------------------------------------------//
int main(void) //按键音
{
PINSEL0=0x00000000;
PINSEL1=0x00000000;
IO0DIR=keysound;

while(1)
{
IO0CLR=keysound; //keysound-0,鸣叫;
delay(50);
IO0SET=keysound; //keysound-1,停止;
delay(50);
}
}




这段程序刚开始我在用ZLG的LPC2200模板时完全正常;后来换了2100的模板就出现这样的问题;不知道是不是哪里设置不对?
开发板用的是ARM2200,选择内部FLASH引导,JTAG烧录器FLASH选择的是LPC2200,ads调试时生成目标用的是DdbugInFlash
...全文
934 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
schlafenhamster 2011-01-06
  • 打赏
  • 举报
回复
delay(50);与时钟有关,是不是太小了?
houyu123 2011-01-06
  • 打赏
  • 举报
回复
全速跑后,程序停在什么地方??
babyyuan 2011-01-06
  • 打赏
  • 举报
回复
谢谢各位,是延时的问题,延时时间加长就OK了~~~~~~~~~~
jnwsh 2011-01-06
  • 打赏
  • 举报
回复
你可以用示波器看看管脚是不是有波形出现,人耳朵的分辨率很难分辨这么短的时间
jnwsh 2011-01-06
  • 打赏
  • 举报
回复
delay(500)也不一定行
zmami 2011-01-06
  • 打赏
  • 举报
回复
DELAY不一定准的

27,508

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧