CE下操作IO无反应

tiandi8734   2009-3-27 17:44 楼主
很奇怪的事情,是这样的:
在OAL初始化里添加了对GPIO的操作,很简单的操作,就是拉高拉低的操作;
写代码的地方是在OEMInit函数里的OALTimerInit,里面对GPB2操作(电路上接的是蜂鸣器),操作顺序如下:
1.设置GPB的控制寄存器,设定其为输出;
2.设定GPB的DATA寄存器使GPB2输出高电平;

接下来很奇怪的事情,为了证明操作成功,在对GPB的DATA寄存器设定值后,后面用while(1),企图让程序停在此处,但是当添加while死循环时,IO无任何输出,去掉while死循环,IO有输出;

很奇怪,一个while的死循环能让IO输出无反应?

拜各位~

回复评论 (2)

1. 你在 OALTimerInit 內的 GPIO 設定有問題, 所以沒輸出, 可否將程式碼放上來, 大家參詳

2. 拿掉 while(1) 後, 繼續往下跑, 所以是不知哪一個地方有輸出了

"很奇怪,一个while的死循环能让IO输出无反应?"  這種問題是不會的, 所以一定是哪裡搞錯了

Paul, Chao @ Tehcware
点赞  2009-3-27 17:52
楼主,你直接操作它的虚拟地址,不用while(1),我经常这样做,甚至中断,主频等我都可以用应用程序控制,

点赞  2009-3-27 19:28
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复